aboutsummaryrefslogtreecommitdiff
path: root/files/pt-pt
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/pt-pt
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/pt-pt')
-rw-r--r--files/pt-pt/_wikihistory.json5229
-rw-r--r--files/pt-pt/archive/add-ons/communication_between_html_and_your_extension/index.html130
-rw-r--r--files/pt-pt/archive/add-ons/extensoes_bootstrapped/index.html352
-rw-r--r--files/pt-pt/archive/add-ons/index.html11
-rw-r--r--files/pt-pt/archive/add-ons/interaction_between_privileged_and_non-privileged_pages/index.html375
-rw-r--r--files/pt-pt/archive/add-ons/trabalhar_com_multiprocessos_firefox/index.html286
-rw-r--r--files/pt-pt/archive/apps/ferramentas_e_frameworks/index.html45
-rw-r--r--files/pt-pt/archive/apps/index.html14
-rw-r--r--files/pt-pt/archive/b2g_os/api/camera_api/index.html38
-rw-r--r--files/pt-pt/archive/b2g_os/api/camera_api/introducao/index.html178
-rw-r--r--files/pt-pt/archive/b2g_os/api/index.html156
-rw-r--r--files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/index.html361
-rw-r--r--files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/manifesto/index.html926
-rw-r--r--files/pt-pt/archive/b2g_os/firefox_os_apps/index.html140
-rw-r--r--files/pt-pt/archive/b2g_os/firefox_os_apps/localização/index.html101
-rw-r--r--files/pt-pt/archive/b2g_os/firefox_os_apps/permissoes_de_aplicação/index.html690
-rw-r--r--files/pt-pt/archive/b2g_os/index.html241
-rw-r--r--files/pt-pt/archive/b2g_os/phone_guide/flame/index.html305
-rw-r--r--files/pt-pt/archive/b2g_os/phone_guide/index.html53
-rw-r--r--files/pt-pt/archive/b2g_os/simulator/index.html118
-rw-r--r--files/pt-pt/archive/b2g_os/utilizar_o_gestor_de_aplicacões/index.html283
-rw-r--r--files/pt-pt/archive/css3/index.html1090
-rw-r--r--files/pt-pt/archive/devtools_api_social/index.html213
-rw-r--r--files/pt-pt/archive/firefox_os/index.html11
-rw-r--r--files/pt-pt/archive/index.html25
-rw-r--r--files/pt-pt/archive/mdn/index.html20
-rw-r--r--files/pt-pt/archive/meta_docs/conteudo_mdn_em_webplatform.org/index.html19
-rw-r--r--files/pt-pt/archive/meta_docs/escrever_conteudo/index.html58
-rw-r--r--files/pt-pt/archive/meta_docs/index.html12
-rw-r--r--files/pt-pt/archive/meta_docs/trello/index.html101
-rw-r--r--files/pt-pt/archive/mozilla/drag_and_drop/index.html142
-rw-r--r--files/pt-pt/archive/mozilla/index.html10
-rw-r--r--files/pt-pt/archive/mozilla/uris_and_urls/index.html122
-rw-r--r--files/pt-pt/archive/mozilla/xbl/index.html36
-rw-r--r--files/pt-pt/archive/mozilla/xul/comunidade/index.html6
-rw-r--r--files/pt-pt/archive/mozilla/xul/image/index.html154
-rw-r--r--files/pt-pt/archive/mozilla/xul/index.html83
-rw-r--r--files/pt-pt/archive/mozilla/xul/namespaces/index.html153
-rw-r--r--files/pt-pt/archive/mozilla/xul/outros_recursos/index.html6
-rw-r--r--files/pt-pt/archive/mozilla/xul/scale/index.html235
-rw-r--r--files/pt-pt/archive/mozilla/xul/tutorial/adicionar_etiquetas_e_imagens/index.html102
-rw-r--r--files/pt-pt/archive/mozilla/xul/tutorial/ficheiros_de_propriedade/index.html115
-rw-r--r--files/pt-pt/archive/mozilla/xul/tutorial/index.html142
-rw-r--r--files/pt-pt/archive/mozilla/xul/tutorial/modificar_o_tema_predefinido/index.html70
-rw-r--r--files/pt-pt/archive/mozilla/xul/tutorial/xbl_bindings/index.html215
-rw-r--r--files/pt-pt/archive/normas_web/index.html151
-rw-r--r--files/pt-pt/archive/plugins/out_of_process_plugins/o_detetor_plugin_hang_detector/index.html46
-rw-r--r--files/pt-pt/archive/rss/como_começar/como_o_rss_trabalha/index.html18
-rw-r--r--files/pt-pt/archive/rss/como_começar/index.html57
-rw-r--r--files/pt-pt/archive/rss/como_começar/o_que_é_rss/index.html242
-rw-r--r--files/pt-pt/archive/rss/como_começar/porque_usar_rss/index.html22
-rw-r--r--files/pt-pt/archive/rss/como_começar/sindicar/index.html99
-rw-r--r--files/pt-pt/archive/rss/index.html47
-rw-r--r--files/pt-pt/archive/rss/versão/0.90/index.html79
-rw-r--r--files/pt-pt/archive/rss/versão/index.html107
-rw-r--r--files/pt-pt/archive/themes/index.html11
-rw-r--r--files/pt-pt/archive/utilizar_normas_web_nas_suas_paginas_da_web/index.html123
-rw-r--r--files/pt-pt/chrome.manifest/index.html107
-rw-r--r--files/pt-pt/creating_a_skin_for_seamonkey_2.x/index.html19
-rw-r--r--files/pt-pt/criando_um_patch/index.html33
-rw-r--r--files/pt-pt/criando_um_visual_para_o_firefox/contents.rdf/index.html46
-rw-r--r--files/pt-pt/criando_um_visual_para_o_firefox/iniciando/index.html83
-rw-r--r--files/pt-pt/criando_um_visual_para_o_firefox/install.rdf/index.html49
-rw-r--r--files/pt-pt/criando_um_visual_para_o_firefox/uuid/index.html13
-rw-r--r--files/pt-pt/empacotando_extensões/index.html29
-rw-r--r--files/pt-pt/empacotando_temas/index.html100
-rw-r--r--files/pt-pt/eventos_arrastar_e_soltar/index.html33
-rw-r--r--files/pt-pt/extras_xml/index.html116
-rw-r--r--files/pt-pt/gecko/index.html106
-rw-r--r--files/pt-pt/gecko_dom_reference/introduction/index.html319
-rw-r--r--files/pt-pt/gecko_sdk/index.html18
-rw-r--r--files/pt-pt/install.rdf/index.html255
-rw-r--r--files/pt-pt/melhorias_das_css_no_firefox_3/index.html42
-rw-r--r--files/pt-pt/mozilla/add-ons/amo/index.html9
-rw-r--r--files/pt-pt/mozilla/add-ons/amo/policy/em_destaque/index.html85
-rw-r--r--files/pt-pt/mozilla/add-ons/amo/policy/index.html19
-rw-r--r--files/pt-pt/mozilla/add-ons/amo/policy/revisões/index.html160
-rw-r--r--files/pt-pt/mozilla/add-ons/crição_de_extensões_firefox_com_sistema_mozilla/index.html518
-rw-r--r--files/pt-pt/mozilla/add-ons/distribuicao/index.html78
-rw-r--r--files/pt-pt/mozilla/add-ons/linhas_diretrizes_para_extras/index.html8
-rw-r--r--files/pt-pt/mozilla/add-ons/sdk/index.html97
-rw-r--r--files/pt-pt/mozilla/add-ons/themes/conceitos_tema/index.html230
-rw-r--r--files/pt-pt/mozilla/add-ons/themes/index.html49
-rw-r--r--files/pt-pt/mozilla/add-ons/themes/obsolete/creating_a_skin_for_firefox/index.html33
-rw-r--r--files/pt-pt/mozilla/add-ons/themes/obsolete/index.html10
-rw-r--r--files/pt-pt/mozilla/add-ons/thunderbird/index.html135
-rw-r--r--files/pt-pt/mozilla/calendar/calendar_versions/index.html1037
-rw-r--r--files/pt-pt/mozilla/calendar/index.html80
-rw-r--r--files/pt-pt/mozilla/criacao_barra_lateral_firefox/index.html40
-rw-r--r--files/pt-pt/mozilla/criação_de_um_complemento_de_dicionário_de_verificação_ortográfica/index.html95
-rw-r--r--files/pt-pt/mozilla/firefox/edição_programador/index.html36
-rw-r--r--files/pt-pt/mozilla/firefox/multiple_profiles/index.html244
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/cross_process_object_wrappers/index.html157
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/depuracao_de_frame_scripts/index.html56
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/gestor_de_mensagens/index.html74
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/glossario/index.html36
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/index.html79
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_chrome_scripts/index.html215
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_frame_scripts/index.html103
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/quais_os_uris_que_carregam_e_onde/index.html62
-rw-r--r--files/pt-pt/mozilla/firefox/multiprocess_firefox/resumo_técnico/index.html164
-rw-r--r--files/pt-pt/mozilla/firefox_for_android/index.html77
-rw-r--r--files/pt-pt/mozilla/how_to_get_a_stacktrace_for_a_bug_report/index.html97
-rw-r--r--files/pt-pt/mozilla/implementacao_do_pontoon_num_projeto_da_mozilla/index.html77
-rw-r--r--files/pt-pt/mozilla/ligar/index.html117
-rw-r--r--files/pt-pt/mozilla/localization/aplicação_tradução_com_mercurial/index.html282
-rw-r--r--files/pt-pt/mozilla/localization/guia_iniciação_rápida/configuracao_inicial/index.html81
-rw-r--r--files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_da_traducao/index.html120
-rw-r--r--files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_de_lancamento/index.html177
-rw-r--r--files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_pr/index.html212
-rw-r--r--files/pt-pt/mozilla/localization/guia_iniciação_rápida/index.html41
-rw-r--r--files/pt-pt/mozilla/localization/index.html23
-rw-r--r--files/pt-pt/mozilla/localization/index/index.html9
-rw-r--r--files/pt-pt/mozilla/localization/localizacao_e_plurais/index.html384
-rw-r--r--files/pt-pt/mozilla/localization/localizar_com_mercurial/index.html256
-rw-r--r--files/pt-pt/mozilla/localization/localização_com_pontoon/index.html138
-rw-r--r--files/pt-pt/mozilla/mercurial/basicos/index.html61
-rw-r--r--files/pt-pt/mozilla/mercurial/index.html41
-rw-r--r--files/pt-pt/mozilla/mercurial/instaacao_mercurial/index.html151
-rw-r--r--files/pt-pt/mozilla/o0coes_linha_comandos/index.html486
-rw-r--r--files/pt-pt/mozilla/performance/about_colon_memory/index.html187
-rw-r--r--files/pt-pt/mozilla/performance/comunicacao_de_um_problema_de_desempenho/index.html53
-rw-r--r--files/pt-pt/mozilla/performance/index.html145
-rw-r--r--files/pt-pt/mozilla/performance/perfilar_com_o_profiler_integrado/index.html356
-rw-r--r--files/pt-pt/mozilla/persona/index.html153
-rw-r--r--files/pt-pt/mozilla/phishing/index.html50
-rw-r--r--files/pt-pt/mozilla/projects/emscripten/index.html42
-rw-r--r--files/pt-pt/mozilla/projects/index.html14
-rw-r--r--files/pt-pt/mozilla/projects/mailnews/index.html42
-rw-r--r--files/pt-pt/mozilla/projects/rhino/index.html24
-rw-r--r--files/pt-pt/mozilla/projects/thunderbird/localizacao_thunderbird/index.html100
-rw-r--r--files/pt-pt/mozilla/tech/index.html14
-rw-r--r--files/pt-pt/mozilla/tech/places/index.html75
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/armazenamento/index.html372
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/guide/alterações_xpcom_gecko_2.0/index.html222
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/guide/index.html21
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/index.html52
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/reference/glue_classes/index.html13
-rw-r--r--files/pt-pt/mozilla/tech/xpcom/reference/index.html27
-rw-r--r--files/pt-pt/mozilla/tech/xul/attribute/textbox.type/index.html5
-rw-r--r--files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/como/index.html243
-rw-r--r--files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/definicao/index.html6
-rw-r--r--files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/index.html10
-rw-r--r--files/pt-pt/mozilla/thunderbird/configuracao_automática/index.html162
-rw-r--r--files/pt-pt/mozilla/thunderbird/index.html69
-rw-r--r--files/pt-pt/mozilla/thunderbird/lancamentos/index.html19
-rw-r--r--files/pt-pt/mozilla/trabalhar_com_janelas_no_codigo_chrome/index.html397
-rw-r--r--files/pt-pt/mozilla/utilização_cxx_no_código_da_mozilla/index.html552
-rw-r--r--files/pt-pt/new_compatibility_tables_beta/index.html24
-rw-r--r--files/pt-pt/ns_addref/index.html21
-rw-r--r--files/pt-pt/ns_error/index.html15
-rw-r--r--files/pt-pt/ns_if_addref/index.html21
-rw-r--r--files/pt-pt/ns_if_release/index.html27
-rw-r--r--files/pt-pt/ns_postcondition/index.html20
-rw-r--r--files/pt-pt/ns_precondition/index.html20
-rw-r--r--files/pt-pt/ns_release/index.html21
-rw-r--r--files/pt-pt/ns_warning/index.html15
-rw-r--r--files/pt-pt/nsiidleservice/index.html68
-rw-r--r--files/pt-pt/plugins/index.html63
-rw-r--r--files/pt-pt/rdf/index.html63
-rw-r--r--files/pt-pt/social_api/index.html97
-rw-r--r--files/pt-pt/tools/debugger/configurações/index.html59
-rw-r--r--files/pt-pt/tools/scratchpad/index.html126
-rw-r--r--files/pt-pt/tools/webide/index.html41
-rw-r--r--files/pt-pt/web/css/azimuth/index.html72
-rw-r--r--files/pt-pt/web/css/como_começar/dados_xml/index.html239
-rw-r--r--files/pt-pt/web/css/como_começar/interfaces_de_usuário_xul/index.html336
-rw-r--r--files/pt-pt/web/javascript/novidades_no_javascript/index.html80
-rw-r--r--files/pt-pt/web/javascript/novidades_no_javascript/novidades_no_javascript_1.8/index.html136
-rw-r--r--files/pt-pt/xpcom_interface_reference/index.html17
-rw-r--r--files/pt-pt/xul/attribute/index.html5
-rw-r--r--files/pt-pt/xul/attribute/textbox.type/index.html21
-rw-r--r--files/pt-pt/zonas/index.html53
173 files changed, 0 insertions, 27366 deletions
diff --git a/files/pt-pt/_wikihistory.json b/files/pt-pt/_wikihistory.json
deleted file mode 100644
index 00fda8305e..0000000000
--- a/files/pt-pt/_wikihistory.json
+++ /dev/null
@@ -1,5229 +0,0 @@
-{
- "Acentuação_para_conteúdos_carregados_por_AJAX": {
- "modified": "2019-03-23T23:50:32.509Z",
- "contributors": [
- "Leandro Mercês Xavier",
- "JulioGreff",
- "Micox",
- "Douglas",
- "Pfsergio1968"
- ]
- },
- "Atualizando_extensões_para_o_Firefox_3": {
- "modified": "2019-12-13T20:33:32.517Z",
- "contributors": [
- "wbamberg",
- "fscholz",
- "SphinxKnight",
- "Anonymous",
- "teoli",
- "Sheppy",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "Atualizando_extensões_para_o_Firefox_3.5": {
- "modified": "2019-03-24T00:00:34.452Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Componentes": {
- "modified": "2019-03-23T23:40:02.292Z",
- "contributors": [
- "SphinxKnight",
- "GrandeBuzina"
- ]
- },
- "Configurando_um_servidor_de_atualização": {
- "modified": "2019-01-16T14:51:09.548Z",
- "contributors": [
- "Leandro Mercês Xavier"
- ]
- },
- "Construir_uma_Extensão": {
- "modified": "2019-03-24T00:04:05.919Z",
- "contributors": [
- "teoli",
- "fscholz",
- "Rhuanbarros",
- "Rsjuliao",
- "Horyuu1",
- "Leandro Mercês Xavier",
- "Dudaott",
- "Ecocam",
- "Toyux",
- "Verruckt",
- "Luis Henrique Sousa",
- "Mr.leal",
- "Joker pt",
- "Brunnolou",
- "Bermonruf"
- ]
- },
- "Controles_XUL": {
- "modified": "2019-03-24T00:03:56.894Z",
- "contributors": [
- "fscholz",
- "Luis Henrique Sousa",
- "Verruckt"
- ]
- },
- "Criando_plugins_OpenSearch_para_o_Firefox": {
- "modified": "2019-03-24T00:00:54.849Z",
- "contributors": [
- "tregagnon",
- "Verruckt",
- "Rodrigoknascimento"
- ]
- },
- "Criando_um_visual_para_o_Firefox": {
- "modified": "2019-03-23T23:51:38.630Z",
- "contributors": [
- "SphinxKnight",
- "Milona87",
- "Thestrongergod",
- "Verruckt",
- "Camaleaun"
- ]
- },
- "Criar_uma_pele_para_o_Firefox": {
- "modified": "2019-01-16T16:12:28.704Z",
- "contributors": [
- "MarceloGhelman",
- "Leandro Mercês Xavier",
- "Amrlima"
- ]
- },
- "DHTML": {
- "modified": "2019-01-16T16:23:46.538Z",
- "contributors": [
- "SphinxKnight",
- "RuiMaciel"
- ]
- },
- "DOM/DOM_Reference": {
- "modified": "2019-03-23T23:25:55.220Z",
- "contributors": [
- "Anonymous",
- "Brettz9"
- ]
- },
- "DOM/Selection": {
- "modified": "2019-03-24T00:02:03.808Z",
- "contributors": [
- "SphinxKnight",
- "danielwebsistemas"
- ]
- },
- "DOM/Storage": {
- "modified": "2019-03-24T00:00:51.877Z",
- "contributors": [
- "khalid32",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "DOM/document.alinkColor": {
- "modified": "2019-03-24T00:04:44.971Z",
- "contributors": [
- "teoli",
- "italo"
- ]
- },
- "DOM/document.bgColor": {
- "modified": "2019-03-24T00:04:41.203Z",
- "contributors": [
- "teoli",
- "italo"
- ]
- },
- "DOM/document.cookie": {
- "modified": "2019-03-19T14:20:57.798Z",
- "contributors": [
- "lucasrenod",
- "SphinxKnight",
- "gadelhas",
- "teoli",
- "italo"
- ]
- },
- "DOM/document.getElementsByClassName": {
- "modified": "2019-12-02T03:58:42.536Z",
- "contributors": [
- "jestevespereira",
- "khalid32",
- "teoli",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "DOM/element": {
- "modified": "2020-10-15T21:16:02.585Z",
- "contributors": [
- "Anonymous",
- "MauroBonucci",
- "khalid32",
- "Leandro Mercês Xavier",
- "Davis.peixoto",
- "Codigo13"
- ]
- },
- "DOM/element.appendChild": {
- "modified": "2019-03-23T23:43:33.351Z",
- "contributors": [
- "khalid32",
- "teoli",
- "Leandro Mercês Xavier",
- "Wingedx"
- ]
- },
- "DOM/element.clientLeft": {
- "modified": "2019-03-23T23:49:26.792Z",
- "contributors": [
- "khalid32",
- "teoli",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "DOM/element.clientTop": {
- "modified": "2019-03-23T23:49:30.994Z",
- "contributors": [
- "AshfaqHossain",
- "teoli",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "DOM/element.cloneNode": {
- "modified": "2019-09-30T14:07:35.240Z",
- "contributors": [
- "semisse",
- "SphinxKnight",
- "guerreirogabriel",
- "Diogok",
- "Glauco.basilio",
- "Codigo13",
- "Leandro Mercês Xavier"
- ]
- },
- "DOM/element.insertBefore": {
- "modified": "2019-03-23T23:46:00.401Z",
- "contributors": [
- "jsx",
- "Codigo13"
- ]
- },
- "DOM_Inspector": {
- "modified": "2020-07-16T22:36:24.733Z",
- "contributors": [
- "wbamberg",
- "SphinxKnight",
- "Anonymous",
- "teoli",
- "Verruckt"
- ]
- },
- "DOM_Inspector/Introduction_to_DOM_Inspector": {
- "modified": "2020-07-16T22:36:26.057Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Desenhando_texto_usando_canvas": {
- "modified": "2019-03-23T23:59:25.399Z",
- "contributors": [
- "Wladimir_Palant",
- "maicon",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "FAQ_Extensões": {
- "modified": "2019-01-16T14:39:04.547Z",
- "contributors": [
- "fscholz",
- "Luis Henrique Sousa",
- "Toyux",
- "Verruckt",
- "Calebeaires"
- ]
- },
- "Firefox_1.5_para_Desenvolvedores": {
- "modified": "2019-03-24T00:02:26.260Z",
- "contributors": [
- "wbamberg",
- "SphinxKnight",
- "fscholz",
- "Takenbot",
- "Leandro Mercês Xavier"
- ]
- },
- "Firefox_2_para_desenvolvedores": {
- "modified": "2019-03-24T00:02:35.537Z",
- "contributors": [
- "wbamberg",
- "SphinxKnight",
- "fscholz",
- "Leandro Mercês Xavier",
- "Kayalemao"
- ]
- },
- "Firefox_3.5_para_desenvolvedores": {
- "modified": "2019-03-24T00:00:50.782Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Firefox_3.6_para_desenvolvedores": {
- "modified": "2019-12-13T20:33:40.975Z",
- "contributors": [
- "wbamberg",
- "SphinxKnight",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Firefox_3_para_desenvolvedores": {
- "modified": "2019-01-16T14:32:08.166Z",
- "contributors": [
- "teoli",
- "fscholz",
- "Verruckt",
- "Fernandopsilveira",
- "Leandro Mercês Xavier"
- ]
- },
- "Firefox_4_para_desenvolvedores": {
- "modified": "2019-11-21T00:43:18.363Z",
- "contributors": [
- "wbamberg",
- "Sebastianz",
- "Prinz_Rana",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Firefox_5_para_desenvolvedores": {
- "modified": "2019-03-24T00:09:30.352Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Firefox_6_para_desenvolvedores": {
- "modified": "2019-11-21T00:43:07.958Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "teoli",
- "Verruckt"
- ]
- },
- "Games/Tutorials/2D_breakout_game_Phaser": {
- "modified": "2019-03-18T21:30:42.706Z",
- "contributors": [
- "wbamberg",
- "chrisdavidmills"
- ]
- },
- "Glossary/API": {
- "modified": "2019-03-23T22:32:07.433Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário": {
- "modified": "2020-10-07T11:13:28.151Z",
- "contributors": [
- "peterbe",
- "joaonunomota",
- "SphinxKnight",
- "Anonymous",
- "wbamberg"
- ]
- },
- "Glossário/404": {
- "modified": "2020-06-25T18:13:41.660Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/502": {
- "modified": "2020-06-25T18:28:46.890Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/AJAX": {
- "modified": "2020-06-09T08:11:59.760Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/API": {
- "modified": "2020-10-25T11:15:06.759Z",
- "contributors": [
- "Zamalor",
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Glossário/ARIA": {
- "modified": "2020-06-11T20:31:33.120Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Acessibilidade": {
- "modified": "2019-03-18T21:47:01.702Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Argumento": {
- "modified": "2019-03-18T21:17:57.812Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Assinatura": {
- "modified": "2019-03-23T22:12:54.952Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/BigInt": {
- "modified": "2020-06-12T14:16:25.328Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/CIA": {
- "modified": "2020-06-11T20:33:04.482Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/CRLF": {
- "modified": "2020-06-12T13:10:14.562Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/CRUD": {
- "modified": "2020-06-11T20:38:17.457Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Cabeçalho_de_entidade": {
- "modified": "2020-07-25T18:10:04.388Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Cache": {
- "modified": "2020-06-07T12:38:40.205Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Compilar": {
- "modified": "2019-03-23T22:01:24.745Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Compressao_GZip": {
- "modified": "2019-03-18T21:46:58.480Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/DOM": {
- "modified": "2019-10-08T09:31:32.173Z",
- "contributors": [
- "Anonymous",
- "GoToLoop"
- ]
- },
- "Glossário/ECMA": {
- "modified": "2019-03-23T22:30:19.413Z",
- "contributors": [
- "GoToLoop"
- ]
- },
- "Glossário/Eixo_principal": {
- "modified": "2019-04-08T06:57:09.138Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Glossário/Eixo_transversal": {
- "modified": "2019-04-08T06:58:12.600Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Glossário/Elemento": {
- "modified": "2019-03-18T21:18:07.800Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Etiqueta": {
- "modified": "2019-03-23T22:01:42.150Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Extensoes_da_Web": {
- "modified": "2019-03-18T21:37:24.767Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Favicon": {
- "modified": "2020-04-30T05:49:13.226Z",
- "contributors": [
- "adilsonmandlate"
- ]
- },
- "Glossário/Flexbox": {
- "modified": "2019-04-08T06:38:43.855Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Glossário/GCS": {
- "modified": "2020-06-13T09:32:48.386Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Git": {
- "modified": "2020-06-13T09:39:03.707Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/HTML": {
- "modified": "2019-03-23T22:13:01.389Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Hipertexto": {
- "modified": "2019-03-23T22:01:40.877Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/IANA": {
- "modified": "2020-06-07T13:01:45.679Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/ISP": {
- "modified": "2020-07-16T14:02:41.646Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Idempotent": {
- "modified": "2019-07-11T10:59:59.365Z",
- "contributors": [
- "FilipePintoReis"
- ]
- },
- "Glossário/IndexedDB": {
- "modified": "2019-03-23T22:30:22.618Z",
- "contributors": [
- "GoToLoop"
- ]
- },
- "Glossário/Lazy_load": {
- "modified": "2020-06-09T04:59:38.616Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Metadados": {
- "modified": "2019-03-18T21:46:57.702Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/MitM": {
- "modified": "2019-03-18T21:29:48.838Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Modo_de_operação_de_cifra_de_bloco": {
- "modified": "2020-07-19T20:41:55.171Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Motor": {
- "modified": "2019-03-23T22:24:10.538Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Navegador": {
- "modified": "2019-03-23T22:01:42.054Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Node.js": {
- "modified": "2019-03-23T22:30:21.428Z",
- "contributors": [
- "Anonymous",
- "GoToLoop"
- ]
- },
- "Glossário/OOP": {
- "modified": "2019-03-18T21:47:01.837Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/OTA": {
- "modified": "2019-03-23T22:30:21.528Z",
- "contributors": [
- "GoToLoop"
- ]
- },
- "Glossário/Objeto": {
- "modified": "2019-03-18T21:46:57.221Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Polyfill": {
- "modified": "2019-03-23T22:04:04.730Z",
- "contributors": [
- "pedrodfcosta"
- ]
- },
- "Glossário/Prototype-based_programming": {
- "modified": "2019-03-18T21:47:01.974Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Referencia_de_objeto": {
- "modified": "2019-03-18T21:18:01.122Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Servidor": {
- "modified": "2019-03-23T22:30:25.987Z",
- "contributors": [
- "GoToLoop"
- ]
- },
- "Glossário/UTF-8": {
- "modified": "2019-03-18T20:40:41.143Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Valor": {
- "modified": "2019-03-18T21:18:07.651Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Viewport": {
- "modified": "2020-06-10T11:59:40.452Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/Viewport_Visual": {
- "modified": "2020-06-10T13:52:57.763Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/WHATWG": {
- "modified": "2020-06-12T08:44:24.569Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/WebRTC": {
- "modified": "2020-06-07T12:24:38.989Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/WebVTT": {
- "modified": "2020-06-12T12:26:29.739Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Glossário/World_Wide_Web": {
- "modified": "2019-03-18T21:46:52.018Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/Wrapper": {
- "modified": "2019-03-18T21:17:53.688Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/XML": {
- "modified": "2019-03-23T22:01:48.146Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Glossário/booliano": {
- "modified": "2019-03-18T21:45:55.769Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Guia_do_desenvolvedor": {
- "modified": "2019-03-24T00:00:34.143Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Leandro Mercês Xavier"
- ]
- },
- "HTMLToDelete/Element/figure": {
- "modified": "2019-03-24T00:07:13.574Z",
- "contributors": [
- "wbamberg",
- "jwhitlock",
- "teoli",
- "f.sanxz"
- ]
- },
- "JavaScript_Shells": {
- "modified": "2019-03-23T23:49:32.077Z",
- "contributors": [
- "SphinxKnight",
- "Verruckt"
- ]
- },
- "Java_em_Extensões_do_Firefox": {
- "modified": "2019-03-23T23:44:51.954Z",
- "contributors": [
- "SphinxKnight",
- "RuiMaciel"
- ]
- },
- "Javascript_orientado_a_objetos": {
- "modified": "2019-03-24T00:11:38.222Z",
- "contributors": [
- "flowck",
- "Leandro Mercês Xavier"
- ]
- },
- "Jogos": {
- "modified": "2019-09-09T15:34:18.541Z",
- "contributors": [
- "SphinxKnight",
- "Aschlla",
- "wbamberg",
- "rPetas",
- "fscholz",
- "Anonymous"
- ]
- },
- "Jogos/Tutoriais": {
- "modified": "2019-03-18T21:30:51.808Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Learn": {
- "modified": "2020-07-21T13:37:41.344Z",
- "contributors": [
- "joaonunomota",
- "VITOR77777",
- "PRigter",
- "SphinxKnight",
- "svarlamov",
- "Anonymous",
- "DoviMaj",
- "joao-neves95",
- "albertocastro",
- "mrmorais",
- "Jeremie"
- ]
- },
- "Learn/Acessibilidade": {
- "modified": "2020-07-21T16:29:40.277Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Learn/CSS": {
- "modified": "2020-07-16T22:25:36.875Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Learn/CSS/Estilo_de_texto": {
- "modified": "2020-07-16T22:26:00.007Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/CSS/Howto": {
- "modified": "2020-07-16T22:25:44.063Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills"
- ]
- },
- "Learn/CSS/Howto/FAQ_de_CSS": {
- "modified": "2020-07-16T22:25:45.869Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web": {
- "modified": "2020-11-09T11:59:04.208Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/A_web_e_os_padroes_da_web": {
- "modified": "2020-08-15T18:38:33.155Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/Apresentacao_do_meu_site": {
- "modified": "2020-07-16T22:34:19.154Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/CSS_basico": {
- "modified": "2020-08-17T15:28:30.827Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/Como_funciona_a_Web": {
- "modified": "2020-07-21T16:44:13.094Z",
- "contributors": [
- "joaonunomota",
- "gabodin",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/Elementar_de_JavaScript": {
- "modified": "2020-08-17T15:31:44.919Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/HTML_basicos": {
- "modified": "2020-08-15T18:37:16.181Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Anonymous",
- "mrsilvino"
- ]
- },
- "Learn/Comecar_com_a_Web/Installing_basic_software": {
- "modified": "2020-07-23T08:51:53.513Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Jacgrillon",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/Lidar_com_ficheiros": {
- "modified": "2020-07-20T16:01:08.653Z",
- "contributors": [
- "joaonunomota",
- "diogo-panaca",
- "Anonymous"
- ]
- },
- "Learn/Comecar_com_a_Web/Publicar_o_seu_site_da_Web": {
- "modified": "2020-08-17T15:33:14.323Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Learn/Front-end_web_developer": {
- "modified": "2020-11-11T23:07:52.540Z",
- "contributors": [
- "nuruldecarvalho",
- "VITOR77777"
- ]
- },
- "Learn/HTML": {
- "modified": "2020-07-16T22:22:22.937Z",
- "contributors": [
- "Anonymous",
- "RicardoLovatel",
- "chrisdavidmills"
- ]
- },
- "Learn/HTML/Como": {
- "modified": "2020-07-16T22:22:30.740Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Como/Adicionar_um_mapa_de_zona_clicavel_numa_imagem": {
- "modified": "2020-07-16T22:22:43.567Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML": {
- "modified": "2020-07-16T22:22:52.576Z",
- "contributors": [
- "diogo-panaca",
- "joaomc",
- "Anonymous"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Criar_hiperligacoes": {
- "modified": "2020-07-16T22:23:46.700Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Depurar_HTML": {
- "modified": "2020-07-16T22:24:15.706Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Estrutura_documento_website": {
- "modified": "2020-07-16T22:24:08.727Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Estruturar_pagina_de_conteudo": {
- "modified": "2020-07-16T22:24:20.585Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Formatacao_avancada_texto": {
- "modified": "2020-07-16T22:23:57.791Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Iniciacao_HTML": {
- "modified": "2020-07-16T22:23:06.412Z",
- "contributors": [
- "cmccarreiro",
- "Anonymous"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/Os_metadados_de_head_em_HTML": {
- "modified": "2020-07-16T22:23:23.598Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Introducao_ao_HTML/demarcar_uma_carta": {
- "modified": "2020-07-16T22:23:13.979Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Learn/HTML/Multimedia_and_embedding/Pagina_de_boas_vindas_da_Mozilla": {
- "modified": "2020-07-16T22:25:08.049Z",
- "contributors": [
- "diegobarcelar",
- "Anonymous"
- ]
- },
- "Learn/HTML/Multimedia_e_integracao": {
- "modified": "2020-07-16T22:24:28.825Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills"
- ]
- },
- "Learn/HTML/Multimedia_e_integracao/Conteudo_de_audio_e_vídeo": {
- "modified": "2020-07-16T22:24:56.333Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Tables": {
- "modified": "2020-07-16T22:25:15.032Z",
- "contributors": [
- "Anonymous",
- "thetoni"
- ]
- },
- "Learn/HTML/Tables/Avaliacao_Estruturar_os_dados_dos_planetas": {
- "modified": "2020-07-16T22:25:30.543Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Tables/Avancada": {
- "modified": "2020-07-16T22:25:27.234Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/HTML/Tables/Basicos": {
- "modified": "2020-07-16T22:25:22.105Z",
- "contributors": [
- "diogo-panaca",
- "Anonymous"
- ]
- },
- "Learn/Index": {
- "modified": "2020-07-16T22:33:40.763Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/JavaScript": {
- "modified": "2020-07-16T22:29:43.788Z",
- "contributors": [
- "Anonymous",
- "Japroriple"
- ]
- },
- "Learn/JavaScript/Primeiros_passos": {
- "modified": "2020-07-16T22:29:54.837Z",
- "contributors": [
- "Anonymous",
- "Elllenn"
- ]
- },
- "Learn/No-servidor": {
- "modified": "2020-07-16T22:36:01.831Z",
- "contributors": [
- "Anonymous",
- "joao-neves95"
- ]
- },
- "Learn/No-servidor/Django": {
- "modified": "2020-07-16T22:36:35.255Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/No-servidor/Express_Nodejs": {
- "modified": "2020-07-16T22:37:54.969Z",
- "contributors": [
- "Anonymous",
- "joao-neves95"
- ]
- },
- "Learn/No-servidor/Express_Nodejs/Configurar_um_meio_de_desenvolvimento_Node": {
- "modified": "2020-07-16T22:38:00.728Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/No-servidor/Express_Nodejs/Introduction": {
- "modified": "2020-07-16T22:38:13.187Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/No-servidor/Servidor_node_sem_framework": {
- "modified": "2020-07-16T22:36:06.037Z",
- "contributors": [
- "Anonymous",
- "joao-neves95"
- ]
- },
- "Learn/Questoes_comuns": {
- "modified": "2020-07-16T22:35:26.594Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/Como_funciona_a_Internet": {
- "modified": "2020-07-16T22:35:37.920Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/Congiurar_um_servidor_de_testes_local": {
- "modified": "2020-07-16T22:35:53.519Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/O_que_e_um_URL": {
- "modified": "2020-07-16T22:35:30.214Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/O_que_e_um_nome_de_dominio": {
- "modified": "2020-07-16T22:35:44.710Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/O_que_e_um_servidor_da_Web": {
- "modified": "2020-07-16T22:35:31.962Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Questoes_comuns/Qual_e_a_diferenca_entre_pagina_site_servidor_da_web_e_mecanismo_pesquisa": {
- "modified": "2020-07-16T22:35:40.437Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Learn/Tools_and_testing": {
- "modified": "2020-07-16T22:38:57.196Z",
- "contributors": [
- "Anonymous",
- "Navin77"
- ]
- },
- "Learn/Tools_and_testing/Teste_cruzado_de_navegador": {
- "modified": "2020-07-16T22:39:01.215Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Learn/Tools_and_testing/Teste_cruzado_de_navegador/Acessibilidade": {
- "modified": "2020-09-24T09:24:04.432Z",
- "contributors": [
- "Painatalman"
- ]
- },
- "Localizar_descrições_de_extensões": {
- "modified": "2019-03-24T00:02:35.408Z",
- "contributors": [
- "SphinxKnight",
- "fscholz",
- "Verruckt"
- ]
- },
- "Localização": {
- "modified": "2019-03-24T00:03:56.319Z",
- "contributors": [
- "Anonymous",
- "fscholz",
- "Verruckt",
- "Kayalemao",
- "Tagl"
- ]
- },
- "MDN": {
- "modified": "2020-02-19T18:55:27.012Z",
- "contributors": [
- "jswisher",
- "SphinxKnight",
- "Anonymous",
- "wbamberg",
- "Jeremie",
- "davempso",
- "Sheppy"
- ]
- },
- "MDN/Comunidade": {
- "modified": "2019-09-11T08:01:31.979Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Comunidade/Conversações": {
- "modified": "2019-01-16T21:51:19.575Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Comunidade/Doc_sprints": {
- "modified": "2019-03-18T21:19:58.227Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "MDN/Comunidade/Funcoes": {
- "modified": "2019-03-18T21:20:05.049Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "MDN/Comunidade/O_que_está_a_acontecer": {
- "modified": "2019-03-23T22:42:12.854Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Comunidade/Trabalhar_em_comunidade": {
- "modified": "2020-02-19T19:07:51.992Z",
- "contributors": [
- "jswisher",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute": {
- "modified": "2019-03-23T23:03:08.251Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "alispivak"
- ]
- },
- "MDN/Contribute/Feedback": {
- "modified": "2020-09-30T17:52:26.093Z",
- "contributors": [
- "chrisdavidmills",
- "jswisher",
- "SphinxKnight",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Contribute/Getting_started": {
- "modified": "2020-09-30T17:15:31.197Z",
- "contributors": [
- "chrisdavidmills",
- "joaonunomota",
- "Anonymous",
- "wbamberg",
- "riagva",
- "davempso"
- ]
- },
- "MDN/Contribute/Howto": {
- "modified": "2019-01-16T21:51:27.704Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "jswisher"
- ]
- },
- "MDN/Contribute/Howto/Como_converter_exemplos_de_codigo_para_ficarem_live": {
- "modified": "2020-03-02T17:27:21.266Z",
- "contributors": [
- "carlostojal",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Como_definir_o_resumo_para_uma_pagina": {
- "modified": "2019-03-23T22:08:19.737Z",
- "contributors": [
- "wbamberg",
- "Saconte",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Como_efetuar_revisao_tecnica": {
- "modified": "2019-05-13T07:55:49.326Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Como_escrever_um_artigo_para_ajudar_as_pessoas_a_aprenderem_sobre_a_Web": {
- "modified": "2020-02-28T22:23:56.590Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Como_escrever_uma_nova_entrada_no_Glossario": {
- "modified": "2019-03-23T22:12:45.769Z",
- "contributors": [
- "wbamberg",
- "maarysantos",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Comunicar_um_problema": {
- "modified": "2020-01-07T12:19:34.416Z",
- "contributors": [
- "peterbe",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Criar_e_editar_paginas": {
- "modified": "2019-04-04T11:57:15.432Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "MDN/Contribute/Howto/Criar_uma_conta_MDN": {
- "modified": "2019-03-23T22:42:11.494Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Contribute/Howto/Etiqueta": {
- "modified": "2019-11-13T11:32:17.983Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Contribute/Howto/Marcar_paginas_JavaScript": {
- "modified": "2019-01-17T01:35:48.693Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/Participar_testes_beta": {
- "modified": "2019-03-23T22:09:29.860Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Howto/fazer_revisão_editorial": {
- "modified": "2019-03-23T22:20:12.878Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "samlopes_br"
- ]
- },
- "MDN/Contribute/Localize": {
- "modified": "2019-01-16T20:02:21.377Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "Sheppy"
- ]
- },
- "MDN/Contribute/Localize/Iniciar_uma_localizacao": {
- "modified": "2019-03-23T22:09:26.952Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Localize/Projetos_localização": {
- "modified": "2019-03-23T22:31:56.445Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Contribute/Localize/Translating_pages": {
- "modified": "2019-12-17T21:16:12.817Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "marquesgabriel",
- "HelioCardoso",
- "sUnTECH789"
- ]
- },
- "MDN/Editor": {
- "modified": "2020-09-30T15:43:23.702Z",
- "contributors": [
- "chrisdavidmills",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Editor/Basicos": {
- "modified": "2020-09-30T15:43:23.869Z",
- "contributors": [
- "chrisdavidmills",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Guidelines": {
- "modified": "2020-09-30T15:31:28.524Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Guidelines/Convencoes_definicoes": {
- "modified": "2020-09-30T15:31:29.524Z",
- "contributors": [
- "chrisdavidmills",
- "jswisher",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Guidelines/Guia_de_estilo_de_escrita": {
- "modified": "2020-09-30T15:31:29.280Z",
- "contributors": [
- "chrisdavidmills",
- "joaonunomota",
- "jswisher",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Guidelines/Isto_pertence_a_MDN": {
- "modified": "2020-09-30T15:31:29.806Z",
- "contributors": [
- "chrisdavidmills",
- "jswisher",
- "Anonymous"
- ]
- },
- "MDN/Kuma": {
- "modified": "2019-09-09T15:53:50.658Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "wbamberg"
- ]
- },
- "MDN/Sobre": {
- "modified": "2019-09-10T08:55:19.644Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "wbamberg",
- "Dilson",
- "jswisher"
- ]
- },
- "MDN/Structures": {
- "modified": "2020-09-30T12:57:09.511Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "jswisher"
- ]
- },
- "MDN/Structures/API_references": {
- "modified": "2020-09-30T12:57:10.288Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg"
- ]
- },
- "MDN/Structures/API_references/Barras_laterais_de_referencia_da_API": {
- "modified": "2020-09-30T12:57:10.465Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Structures/API_references/O_que_e_que_uma_referencia_de_API_precisa": {
- "modified": "2020-09-30T12:57:10.634Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Structures/Exemplos_live": {
- "modified": "2020-09-30T12:57:10.000Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Structures/Macros": {
- "modified": "2020-09-30T12:57:10.153Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Tools": {
- "modified": "2020-09-30T16:53:22.697Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "jswisher"
- ]
- },
- "MDN/Tools/Edição_de_modelo": {
- "modified": "2020-09-30T16:53:23.123Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Tools/KumaScript": {
- "modified": "2020-09-30T16:53:22.999Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Tools/Vigiar_pagina": {
- "modified": "2020-09-30T16:53:22.646Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN/Troubleshooting": {
- "modified": "2020-09-30T16:58:33.426Z",
- "contributors": [
- "chrisdavidmills",
- "wbamberg",
- "Anonymous"
- ]
- },
- "MDN_at_ten": {
- "modified": "2019-03-23T22:50:14.757Z",
- "contributors": [
- "Anonymous",
- "Matoplays"
- ]
- },
- "MDN_at_ten/Contribuir_para_MDN": {
- "modified": "2020-02-19T18:51:00.800Z",
- "contributors": [
- "jswisher",
- "Anonymous"
- ]
- },
- "MDN_at_ten/Historia_da_MDN": {
- "modified": "2019-03-23T22:09:33.028Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Manipuladores_de_protocolo_web": {
- "modified": "2019-03-23T23:52:53.802Z",
- "contributors": [
- "Verruckt",
- "Fernandopsilveira",
- "Leandro Mercês Xavier"
- ]
- },
- "Melhorias_do_Gerenciador_de_Downloads_no_Firefox_3": {
- "modified": "2019-01-16T14:39:25.788Z",
- "contributors": [
- "fscholz",
- "Verruckt"
- ]
- },
- "Mozilla": {
- "modified": "2019-03-24T00:17:35.290Z",
- "contributors": [
- "Anonymous",
- "billhiba",
- "Beria"
- ]
- },
- "Mozilla/Add-ons": {
- "modified": "2019-03-18T21:08:20.167Z",
- "contributors": [
- "Anonymous",
- "nportugal",
- "Anomitro_Munshi"
- ]
- },
- "Mozilla/Add-ons/WebExtensions": {
- "modified": "2019-03-18T20:49:08.711Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API": {
- "modified": "2019-11-26T22:19:55.515Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/Armazenamento": {
- "modified": "2020-10-15T21:59:48.396Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/browserAction": {
- "modified": "2020-10-15T21:59:49.630Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/browsingData": {
- "modified": "2020-10-15T22:14:48.933Z",
- "contributors": [
- "ExE-Boss"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/browsingData/removePluginData": {
- "modified": "2020-10-15T22:14:40.836Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/devtools.panels": {
- "modified": "2020-10-15T21:59:48.885Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/i18n": {
- "modified": "2020-10-15T22:14:41.219Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/pageAction": {
- "modified": "2020-10-15T21:59:47.365Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/API/sidebarAction": {
- "modified": "2020-10-15T22:06:57.394Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/A_sua_primeira_extensao": {
- "modified": "2019-03-18T21:04:11.435Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/A_sua_segunda_extensao": {
- "modified": "2019-03-18T21:03:02.346Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Anatomia_de_uma_extensao": {
- "modified": "2019-03-18T21:03:04.427Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/As_melhores_praticas_de_experiencia_do_utilizador": {
- "modified": "2019-03-18T21:02:27.071Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Conversao_de_uma_extensao_legada_do_firefox": {
- "modified": "2019-03-18T20:56:20.829Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/E_a_seguir": {
- "modified": "2019-03-18T21:01:48.060Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Exemplos_extensoes": {
- "modified": "2019-03-18T21:03:01.761Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/ExtennsoesWeb_e_a_id_do_extra": {
- "modified": "2019-03-18T20:47:01.907Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Extensão_das_ferramentas_de_desenvolvimento": {
- "modified": "2019-03-18T21:04:10.244Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Instalacao_temporaria_no_Firefox": {
- "modified": "2019-03-18T21:03:04.634Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Interceptar_Pedidos_HTTP": {
- "modified": "2019-03-18T21:03:59.316Z",
- "contributors": [
- "carlosteixeiraa"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Internationalization": {
- "modified": "2019-03-18T20:56:21.219Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/O_que_sao_WebExtensions": {
- "modified": "2019-03-18T21:05:19.046Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Primeiros_passos_com_web-ext": {
- "modified": "2019-03-18T21:03:10.522Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Publicar_a_sua_extensao": {
- "modified": "2019-03-18T21:04:14.402Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Scripts_Conteudo": {
- "modified": "2019-07-29T11:08:46.237Z",
- "contributors": [
- "duduindo",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Suporte_navegador_APIs_JavaScript": {
- "modified": "2020-10-15T20:55:03.457Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Tips": {
- "modified": "2019-03-18T21:01:44.598Z",
- "contributors": [
- "SphinxKnight"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/Trasnsferir_extensao_Google_Chrome": {
- "modified": "2019-03-18T21:05:15.395Z",
- "contributors": [
- "Anonymous",
- "Nunonmac101"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/dubla_padrões": {
- "modified": "2020-10-15T22:25:44.918Z",
- "contributors": [
- "martimafonso"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador": {
- "modified": "2019-03-18T21:04:19.885Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Acoes_pagina": {
- "modified": "2019-03-18T21:04:17.709Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Ação_navegador": {
- "modified": "2019-03-18T21:04:05.718Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Barras_laterais": {
- "modified": "2019-03-18T21:04:06.139Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Estilos_de_navegador": {
- "modified": "2020-10-15T22:07:31.177Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Itens_do_menu_de_contexto": {
- "modified": "2019-03-18T21:04:09.803Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Notificacoes": {
- "modified": "2019-03-18T21:04:17.481Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Omnibox": {
- "modified": "2019-03-18T21:01:59.411Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Options_pages": {
- "modified": "2019-03-18T21:04:14.023Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Paginas_de_extensão": {
- "modified": "2019-03-18T21:03:04.123Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/Popups": {
- "modified": "2019-08-10T13:56:46.929Z",
- "contributors": [
- "pedrosino",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/interface_do_utilizador/devtools_panels": {
- "modified": "2019-03-18T21:04:02.641Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/manifest.json": {
- "modified": "2020-10-15T21:59:48.039Z",
- "contributors": [
- "Painatalman",
- "wbamberg"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/manifest.json/browser_action": {
- "modified": "2020-10-15T21:59:47.236Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings": {
- "modified": "2020-10-15T22:07:31.462Z",
- "contributors": [
- "wbamberg",
- "ExE-Boss",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page": {
- "modified": "2020-10-15T21:59:47.989Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Add-ons/WebExtensions/manifest.json/icones": {
- "modified": "2020-10-15T21:59:47.019Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Mozilla/Developer_guide/Source_Code": {
- "modified": "2019-03-18T21:45:30.638Z",
- "contributors": [
- "ntim"
- ]
- },
- "Mozilla/Firefox": {
- "modified": "2019-09-10T15:01:27.677Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "wbamberg",
- "albertocastro",
- "Sheppy"
- ]
- },
- "Mozilla/Firefox/Releases": {
- "modified": "2019-03-18T21:15:03.747Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "Sheppy"
- ]
- },
- "Mozilla/Firefox/Releases/3": {
- "modified": "2019-03-23T23:19:50.195Z",
- "contributors": [
- "wbamberg",
- "ethertank"
- ]
- },
- "Mozilla/Firefox/Releases/70": {
- "modified": "2019-10-01T09:44:22.188Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Mudanças_no_Gecko_1.9_que_afetam_websites": {
- "modified": "2019-03-23T23:47:04.199Z",
- "contributors": [
- "wbamberg",
- "Sheppy",
- "Verruckt"
- ]
- },
- "O_DOM_e_o_JavaScript": {
- "modified": "2019-12-13T21:10:33.944Z",
- "contributors": [
- "wbamberg",
- "fferracioli"
- ]
- },
- "Plugins/Ativacao_de_Flash:_comparacao_de_navegador": {
- "modified": "2019-03-18T20:56:19.824Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Plugins/Flash_para_HTML5": {
- "modified": "2019-03-18T20:56:20.182Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Referência_JSDBGAPI": {
- "modified": "2019-03-23T23:44:44.830Z",
- "contributors": [
- "SphinxKnight",
- "RuiMaciel"
- ]
- },
- "Referência_do_DOM_Gecko/Prefácio": {
- "modified": "2019-03-23T23:51:50.810Z",
- "contributors": [
- "khalid32",
- "Leandro Mercês Xavier",
- "Davis.peixoto"
- ]
- },
- "Sobre_o_Document_Object_Model": {
- "modified": "2019-03-23T23:46:25.664Z",
- "contributors": [
- "SphinxKnight",
- "Verruckt"
- ]
- },
- "Tinderbox": {
- "modified": "2019-03-23T23:45:30.178Z",
- "contributors": [
- "SphinxKnight",
- "Verruckt"
- ]
- },
- "Toolkit_API": {
- "modified": "2019-01-16T16:23:47.926Z",
- "contributors": [
- "Tagl"
- ]
- },
- "Tools": {
- "modified": "2020-07-16T22:44:17.493Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "wbamberg",
- "robert882",
- "Leite",
- "caobarbosa",
- "Timmi"
- ]
- },
- "Tools/Add-ons": {
- "modified": "2020-07-16T22:36:23.718Z",
- "contributors": [
- "wbamberg"
- ]
- },
- "Tools/Capturas_de_ecra": {
- "modified": "2020-07-16T22:36:38.620Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Configurações": {
- "modified": "2020-07-16T22:36:35.515Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Consola_da_Web": {
- "modified": "2020-07-16T22:34:07.526Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Consola_da_Web/Abertura_Consola_Web": {
- "modified": "2020-07-16T22:34:17.467Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Consola_da_Web/Ajuda": {
- "modified": "2020-07-16T22:34:13.111Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Consola_da_Web/Atalhos_teclado": {
- "modified": "2020-07-16T22:34:23.988Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Consola_da_Web/Dividir_consola": {
- "modified": "2020-07-16T22:34:21.158Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Consola_da_Web/Mensagens_consola": {
- "modified": "2020-07-16T22:34:16.005Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Consola_da_Web/O_interprete_da_linha_de_comandos": {
- "modified": "2020-07-16T22:34:19.541Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Consola_da_Web/Rich_output": {
- "modified": "2020-07-16T22:34:20.453Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Debugger": {
- "modified": "2020-07-16T22:35:06.168Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Debugger/Demonstracao_IU": {
- "modified": "2020-07-16T22:35:16.876Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Debugger/How_to": {
- "modified": "2020-07-16T22:35:08.333Z"
- },
- "Tools/Debugger/How_to/Abrir_o_depurador": {
- "modified": "2020-07-16T22:35:09.351Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Debugger/How_to/Use_a_source_map": {
- "modified": "2020-09-11T09:41:20.649Z",
- "contributors": [
- "pedro-surf",
- "Anonymous"
- ]
- },
- "Tools/Debugger/Source_map_errors": {
- "modified": "2020-07-16T22:35:19.577Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Desempenho": {
- "modified": "2020-07-16T22:36:13.622Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Desempenho/Arvore_de_Chamada": {
- "modified": "2020-07-16T22:36:20.006Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Desempenho/Cascata": {
- "modified": "2020-07-16T22:36:18.250Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Desempenho/Como_fazer": {
- "modified": "2020-07-16T22:36:21.955Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Desempenho/Frame_rate": {
- "modified": "2020-07-16T22:36:19.201Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Editor_de_audio_da_Web": {
- "modified": "2020-07-16T22:36:08.692Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Editor_de_estilo": {
- "modified": "2020-07-16T22:35:01.029Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Inspetor_de_armazenamento": {
- "modified": "2020-07-16T22:36:10.303Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Memoria": {
- "modified": "2020-07-16T22:36:27.341Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Modo_de_Desenho_Adaptavel": {
- "modified": "2020-07-16T22:35:22.282Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Network_Monitor": {
- "modified": "2020-07-16T22:35:31.240Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Page_Inspector": {
- "modified": "2020-07-16T22:34:29.429Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "DevAsh"
- ]
- },
- "Tools/Page_Inspector/Guia_de_IU": {
- "modified": "2020-07-16T22:34:49.596Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to": {
- "modified": "2020-07-16T22:34:31.978Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "sidgan"
- ]
- },
- "Tools/Page_Inspector/How_to/Abrir_o_inspetor": {
- "modified": "2020-07-16T22:34:33.099Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/Page_Inspector/How_to/Examinar_e_editar_CSS": {
- "modified": "2020-07-16T22:34:43.588Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Examinar_e_editar_o_modelo_de_caixa": {
- "modified": "2020-07-16T22:34:34.516Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Inspecionar_e_selecionar_cores": {
- "modified": "2020-07-16T22:34:35.181Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Reposicao_de_elementos_na_pagina": {
- "modified": "2020-07-16T22:34:46.213Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Trabalhar_com_animacoes": {
- "modified": "2020-07-16T22:34:37.073Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Utilizar_a_API_do_Inspetor": {
- "modified": "2020-07-16T22:34:45.056Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Visualizar_tipos_de_letra": {
- "modified": "2020-07-16T22:34:39.170Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/How_to/Visualize_transforms": {
- "modified": "2020-07-16T22:34:39.722Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Page_Inspector/atalhos_de_teclado": {
- "modified": "2020-07-16T22:34:52.351Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Performance/Guia_da_IU": {
- "modified": "2020-07-16T22:36:15.326Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Remote_Debugging": {
- "modified": "2020-07-16T22:35:37.988Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "Joao_Silva27"
- ]
- },
- "Tools/Remote_Debugging/Debugging_Firefox_Desktop": {
- "modified": "2020-07-16T22:35:41.262Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Tools/Remote_Debugging/Depuracao_remota_Thunderbird": {
- "modified": "2020-07-16T22:35:40.059Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/Tools_Toolbox": {
- "modified": "2020-07-16T22:35:28.091Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Tools/about:debugging": {
- "modified": "2020-07-16T22:36:33.106Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Tools/atalhos_de_teclado": {
- "modified": "2020-07-16T22:35:50.422Z",
- "contributors": [
- "Anonymous",
- "wbamberg"
- ]
- },
- "Transformar_XML_com_XSLT": {
- "modified": "2019-03-23T23:45:21.155Z",
- "contributors": [
- "SphinxKnight",
- "Verruckt"
- ]
- },
- "Transformar_XML_com_XSLT/Para_leitura_adicional": {
- "modified": "2019-03-23T23:52:21.068Z",
- "contributors": [
- "SphinxKnight",
- "Leandro Mercês Xavier",
- "Pilinio",
- "Verruckt"
- ]
- },
- "Tutorial_XUL": {
- "modified": "2019-03-23T23:45:36.792Z",
- "contributors": [
- "SphinxKnight",
- "Leandro Mercês Xavier"
- ]
- },
- "Tutorial_XUL/Adicionando_botões": {
- "modified": "2019-03-23T23:46:29.323Z",
- "contributors": [
- "Verruckt",
- "Leandro Mercês Xavier",
- "Rodmalkav"
- ]
- },
- "Tutorial_XUL/Criando_uma_janela": {
- "modified": "2019-03-23T23:45:36.338Z",
- "contributors": [
- "SphinxKnight",
- "jigs12",
- "Leandro Mercês Xavier",
- "Luis Henrique Sousa",
- "Verruckt",
- "Rodmalkav"
- ]
- },
- "Tutorial_XUL/Introdução": {
- "modified": "2019-03-23T23:46:27.723Z",
- "contributors": [
- "SphinxKnight",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Tutorial_do_Canvas": {
- "modified": "2019-01-16T14:32:07.975Z",
- "contributors": [
- "fscholz",
- "Verruckt",
- "RuiMaciel"
- ]
- },
- "Tutorial_do_Canvas/Formas_de_desenho": {
- "modified": "2019-01-16T14:01:56.255Z",
- "contributors": [
- "guerreirogabriel"
- ]
- },
- "Tutorial_do_Canvas/Utilização_básica": {
- "modified": "2019-03-24T00:10:34.537Z",
- "contributors": [
- "guerreirogabriel",
- "Edgarlaguiar",
- "Luiz Carlos Moraes",
- "Jes",
- "Vitor.blacks"
- ]
- },
- "Um_pequeno_exemplo_usando_AJAX": {
- "modified": "2019-01-17T03:48:56.314Z",
- "contributors": [
- "Leandro Mercês Xavier"
- ]
- },
- "Usando_privilégios_expandidos_em_navegadores_Mozilla": {
- "modified": "2019-03-23T23:48:48.468Z",
- "contributors": [
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "Usando_áudio_e_vídeo_no_Firefox": {
- "modified": "2019-03-24T00:00:33.796Z",
- "contributors": [
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "Using_the_W3C_DOM_Level_1_Core": {
- "modified": "2019-12-13T21:06:18.400Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "ethertank",
- "fferracioli"
- ]
- },
- "Utilizando_meta_tags": {
- "modified": "2019-03-23T23:45:18.005Z",
- "contributors": [
- "eduardoungaratto",
- "AndreGazola",
- "Fleury"
- ]
- },
- "Venkman": {
- "modified": "2019-03-24T00:02:38.559Z",
- "contributors": [
- "SphinxKnight",
- "fscholz",
- "Verruckt"
- ]
- },
- "Web": {
- "modified": "2020-05-03T13:08:13.142Z",
- "contributors": [
- "Anonymous",
- "polonia",
- "didi9999",
- "joao-neves95",
- "carlosrainhaaraujo",
- "ethertank"
- ]
- },
- "Web/API": {
- "modified": "2019-03-23T22:39:25.827Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "carlosrainhaaraujo"
- ]
- },
- "Web/API/API_Autenticacao_Web": {
- "modified": "2020-10-15T22:03:06.934Z",
- "contributors": [
- "fscholz",
- "Anonymous"
- ]
- },
- "Web/API/API_Entradas_de_Diretoria_e_Ficheiro": {
- "modified": "2019-03-18T21:46:51.385Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_WebRTC": {
- "modified": "2019-03-23T22:12:46.226Z",
- "contributors": [
- "Anonymous",
- "Gurigraphics"
- ]
- },
- "Web/API/API_WebRTC/Tirar_fotografias": {
- "modified": "2019-03-23T22:12:45.154Z",
- "contributors": [
- "fscholz",
- "wbamberg",
- "Anonymous"
- ]
- },
- "Web/API/API_armazenamento": {
- "modified": "2020-10-15T22:08:44.199Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_de_Armazenamento_da_Web": {
- "modified": "2019-03-18T21:46:00.224Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_de_canvas": {
- "modified": "2019-03-23T22:01:56.072Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_de_canvas/Tutorial": {
- "modified": "2019-03-18T21:24:18.272Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_do_Estado_da_Bateria": {
- "modified": "2019-03-18T21:29:01.750Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/API_transmissoes_multimedia": {
- "modified": "2019-03-23T22:12:44.463Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Animation": {
- "modified": "2020-10-15T22:09:54.586Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/AudioNode": {
- "modified": "2019-03-23T22:12:47.243Z",
- "contributors": [
- "trusktr"
- ]
- },
- "Web/API/Blob": {
- "modified": "2020-10-15T22:32:41.617Z",
- "contributors": [
- "Yayure"
- ]
- },
- "Web/API/Blob/Blob": {
- "modified": "2020-11-16T10:19:01.877Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Blob/size": {
- "modified": "2020-10-15T22:32:50.862Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Blob/type": {
- "modified": "2020-10-15T22:33:10.637Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Client": {
- "modified": "2020-10-15T22:03:06.133Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/CloseEvent": {
- "modified": "2020-10-15T22:32:54.165Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/CloseEvent/CloseEvent": {
- "modified": "2020-10-15T22:32:51.831Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/DOMString": {
- "modified": "2020-08-12T17:28:52.261Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Document": {
- "modified": "2019-07-02T18:26:33.145Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills"
- ]
- },
- "Web/API/Document.dir": {
- "modified": "2019-03-23T23:22:09.179Z",
- "contributors": [
- "khalid32",
- "carlosrainhaaraujo"
- ]
- },
- "Web/API/Document/querySelector": {
- "modified": "2020-10-15T22:32:00.428Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Document/visibilitychange_event": {
- "modified": "2019-04-08T07:39:14.855Z",
- "contributors": [
- "irenesmith",
- "Anonymous"
- ]
- },
- "Web/API/Eventos_de_Luz_Ambiente": {
- "modified": "2020-10-15T22:07:41.555Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/File": {
- "modified": "2020-10-15T22:32:24.351Z",
- "contributors": [
- "Yayure"
- ]
- },
- "Web/API/File/File": {
- "modified": "2020-10-15T22:33:11.221Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/fileName": {
- "modified": "2020-08-08T18:37:05.171Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/fileSize": {
- "modified": "2020-08-08T18:32:45.995Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/getAsBinary": {
- "modified": "2020-08-11T04:16:46.870Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/getAsDataURL": {
- "modified": "2020-08-08T18:57:17.906Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/getAsText": {
- "modified": "2020-08-11T05:01:57.694Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/lastModified": {
- "modified": "2020-10-17T08:26:52.375Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/lastModifiedDate": {
- "modified": "2020-10-15T22:32:46.653Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/mozFullPath": {
- "modified": "2020-08-08T18:43:12.882Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/name": {
- "modified": "2020-10-15T22:32:23.452Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/type": {
- "modified": "2020-10-15T22:32:40.925Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/File/webkitRelativePath": {
- "modified": "2020-11-17T19:01:45.948Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader": {
- "modified": "2019-03-18T21:16:40.698Z",
- "contributors": [
- "Sheppy"
- ]
- },
- "Web/API/FileReader/abort": {
- "modified": "2020-10-15T22:32:42.433Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/error": {
- "modified": "2020-10-15T22:32:24.839Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/readAsArrayBuffer": {
- "modified": "2020-10-15T22:33:15.086Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/readAsBinaryString": {
- "modified": "2020-10-15T21:37:25.343Z",
- "contributors": [
- "joaonunomota",
- "DouglasValdo"
- ]
- },
- "Web/API/FileReader/readAsDataURL": {
- "modified": "2020-10-15T22:34:36.565Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/readAsText": {
- "modified": "2020-10-15T22:34:36.289Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/readyState": {
- "modified": "2020-11-15T12:35:45.700Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/FileReader/result": {
- "modified": "2020-10-15T22:33:14.048Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Geolocation": {
- "modified": "2019-03-23T22:01:56.989Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Geolocation/Utilizacao_da_geolocalizacao": {
- "modified": "2020-10-15T21:59:09.308Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/MathMLElement": {
- "modified": "2020-10-15T22:33:03.137Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/MediaDevices": {
- "modified": "2019-03-23T22:01:16.705Z",
- "contributors": [
- "jpmedley"
- ]
- },
- "Web/API/MessageEvent": {
- "modified": "2020-10-15T22:32:51.894Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Metadados": {
- "modified": "2019-03-18T21:46:51.094Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/NavigatorOnLine": {
- "modified": "2019-03-23T22:01:59.308Z",
- "contributors": [
- "chrisdavidmills"
- ]
- },
- "Web/API/NavigatorOnLine/Eventos_online_e_offline": {
- "modified": "2019-03-23T23:49:32.329Z",
- "contributors": [
- "SphinxKnight",
- "chrisdavidmills",
- "Leandro Mercês Xavier",
- "Roli",
- "Verruckt"
- ]
- },
- "Web/API/Node": {
- "modified": "2019-03-23T23:22:11.442Z",
- "contributors": [
- "khalid32",
- "carlosrainhaaraujo"
- ]
- },
- "Web/API/Notifications_API": {
- "modified": "2019-03-23T22:42:31.459Z",
- "contributors": [
- "Sebastianz"
- ]
- },
- "Web/API/Notifications_API/Utilizar_API_Notificações": {
- "modified": "2019-03-23T22:42:28.564Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Page_Visibility_API": {
- "modified": "2019-03-18T21:42:30.274Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Push_API": {
- "modified": "2019-03-18T21:38:04.203Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Service_Worker_API": {
- "modified": "2019-10-08T09:27:10.284Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Service_Worker_API/Using_Service_Workers": {
- "modified": "2019-10-08T09:25:19.208Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/SharedWorker": {
- "modified": "2020-10-15T21:59:02.760Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Web/API/Sistema_de_ficheiros": {
- "modified": "2020-10-15T21:46:44.138Z",
- "contributors": [
- "joaonunomota",
- "Anonymous"
- ]
- },
- "Web/API/URLSearchParams": {
- "modified": "2019-10-16T11:18:10.261Z",
- "contributors": [
- "NunoJSantos",
- "goldyteam"
- ]
- },
- "Web/API/WebGLRenderingContext": {
- "modified": "2020-10-15T21:59:21.576Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebGL_API": {
- "modified": "2020-10-15T21:46:44.276Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebGL_API/Constantes": {
- "modified": "2019-03-23T22:01:30.802Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebGL_API/Dados": {
- "modified": "2019-03-23T22:01:33.105Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebGL_API/Tipos": {
- "modified": "2019-03-23T22:01:33.867Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebGL_API/Utilizar_Extensões": {
- "modified": "2019-03-23T22:01:32.555Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/WebSocket": {
- "modified": "2020-10-15T22:32:53.586Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/WebSocket/WebSocket": {
- "modified": "2020-10-15T22:33:03.555Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/WebSockets_API": {
- "modified": "2020-10-15T22:32:45.764Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/WebSockets_API/Escrever_aplicação_cliente_de_WebSocket": {
- "modified": "2020-08-11T17:49:59.287Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/WebSockets_API/Escrever_servidores_de_WebSocket": {
- "modified": "2020-09-18T06:53:14.308Z",
- "contributors": [
- "blunderous",
- "joaonunomota"
- ]
- },
- "Web/API/WebSockets_API/Escrever_um_servidor_WebSocket_em_C": {
- "modified": "2020-12-04T13:57:23.773Z",
- "contributors": [
- "peterbe",
- "joaonunomota"
- ]
- },
- "Web/API/WebSockets_API/Escrever_um_servidor_WebSocket_em_Java": {
- "modified": "2020-08-24T20:03:27.920Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/API/Web_Audio_API": {
- "modified": "2019-03-23T22:12:41.433Z",
- "contributors": [
- "Anonymous",
- "erikadoyle"
- ]
- },
- "Web/API/Web_Audio_API/Utilizar_api_audio_web": {
- "modified": "2019-03-23T22:12:48.158Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Web_Workers_API": {
- "modified": "2019-03-23T22:02:18.370Z",
- "contributors": [
- "VsevolodGolovanov"
- ]
- },
- "Web/API/Web_Workers_API/Functions_and_classes_available_to_workers": {
- "modified": "2019-03-23T22:02:20.388Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Web_Workers_API/Utilizacao_de_web_workers": {
- "modified": "2019-03-23T22:02:15.177Z",
- "contributors": [
- "allanfoppa",
- "Anonymous"
- ]
- },
- "Web/API/Window": {
- "modified": "2019-03-23T22:01:06.730Z",
- "contributors": [
- "Anonymous",
- "goeffthomas"
- ]
- },
- "Web/API/Window/barra_lateral": {
- "modified": "2019-03-18T21:37:22.693Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Window/console": {
- "modified": "2019-03-18T21:44:07.205Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Window/open": {
- "modified": "2019-03-23T22:01:10.139Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous"
- ]
- },
- "Web/API/Window/postMessage": {
- "modified": "2019-06-04T14:57:56.992Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/Worker": {
- "modified": "2019-03-23T22:02:29.683Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/API/XMLHttpRequest": {
- "modified": "2020-10-15T21:59:27.066Z",
- "contributors": [
- "fscholz",
- "Anonymous"
- ]
- },
- "Web/API/notification": {
- "modified": "2019-03-23T22:51:36.861Z",
- "contributors": [
- "Anonymous",
- "Japroriple"
- ]
- },
- "Web/Accessibility/ARIA/ARIA_Techniques": {
- "modified": "2020-09-18T21:14:54.007Z",
- "contributors": [
- "Wind1808"
- ]
- },
- "Web/Accessibility/ARIA/ARIA_Techniques/Usando_o_role_status": {
- "modified": "2020-09-19T05:54:31.819Z",
- "contributors": [
- "Painatalman"
- ]
- },
- "Web/Acessibilidade": {
- "modified": "2019-09-09T14:20:12.758Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous",
- "teoli",
- "Verruckt",
- "Kayalemao",
- "RuiMaciel",
- "Karla pa",
- "GrandeBuzina"
- ]
- },
- "Web/Acessibilidade/ARIA": {
- "modified": "2019-03-18T21:47:01.413Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS": {
- "modified": "2020-06-10T07:53:42.003Z",
- "contributors": [
- "joaonunomota",
- "SphinxKnight",
- "Anonymous",
- "Fernando-SilvaBR",
- "albertocastro",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Takenbot",
- "RuiMaciel"
- ]
- },
- "Web/CSS/:after": {
- "modified": "2019-03-24T00:00:16.761Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/:before": {
- "modified": "2019-03-24T00:00:19.264Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/@font-face": {
- "modified": "2019-03-23T23:13:15.857Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/@import": {
- "modified": "2019-03-23T23:47:07.977Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/@media": {
- "modified": "2020-04-25T11:58:21.640Z",
- "contributors": [
- "myspeleo",
- "diogo-panaca",
- "Anonymous",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/At-rule": {
- "modified": "2019-03-23T22:24:56.828Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Background_and_Borders": {
- "modified": "2019-03-23T22:44:16.974Z",
- "contributors": [
- "teoli"
- ]
- },
- "Web/CSS/CSS_Background_and_Borders/Múltiplos_planos_de_fundo": {
- "modified": "2019-03-24T00:04:47.389Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/CSS_Box_Model": {
- "modified": "2019-03-23T22:12:41.880Z",
- "contributors": [
- "Sebastianz"
- ]
- },
- "Web/CSS/CSS_Box_Model/Introducao_modelo_caixa_CSS": {
- "modified": "2019-03-23T22:12:42.813Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Colors/Ferramenta_selecao_cor": {
- "modified": "2019-04-28T14:53:13.655Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Web/CSS/CSS_Columns": {
- "modified": "2019-03-18T21:38:41.627Z",
- "contributors": [
- "mfluehr"
- ]
- },
- "Web/CSS/CSS_Flexible_Box_Layout": {
- "modified": "2019-03-18T21:44:02.737Z",
- "contributors": [
- "rachelandrew"
- ]
- },
- "Web/CSS/CSS_Flexible_Box_Layout/alinhamento_de_itens_num_recipiente_flex": {
- "modified": "2019-06-11T07:33:08.010Z",
- "contributors": [
- "BIGBenfica9",
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Flexible_Box_Layout/casos_de_utilizacao_tipicos_do_flexbox": {
- "modified": "2019-03-18T21:43:55.771Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Flexible_Box_Layout/ordenacao_dos_itens_flex": {
- "modified": "2019-07-22T03:58:30.968Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Flexible_Box_Layout/relação_do_flexbox_com_outros_métodos_de_layout": {
- "modified": "2019-03-18T21:43:58.441Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/CSS_Tipos": {
- "modified": "2019-03-18T21:23:17.150Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/Como_começar": {
- "modified": "2019-03-23T23:44:54.310Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "Leandro Mercês Xavier",
- "Verruckt",
- "Pilinio",
- "Luisvulcanis"
- ]
- },
- "Web/CSS/Como_começar/CSS_legível": {
- "modified": "2019-03-24T00:00:36.923Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Caixas": {
- "modified": "2019-03-24T00:00:34.956Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Cascata_e_herança": {
- "modified": "2019-03-24T00:00:35.429Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Como_o_CSS_trabalha": {
- "modified": "2019-03-24T00:00:37.691Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Conteúdo": {
- "modified": "2020-07-16T22:25:48.413Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Cor": {
- "modified": "2019-03-24T00:00:35.276Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Disposição": {
- "modified": "2019-03-24T00:00:37.327Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Estilos_de_texto": {
- "modified": "2019-03-24T00:00:39.580Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/Como_começar/Gráficos_SVG": {
- "modified": "2019-03-24T00:00:34.584Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/JavaScript": {
- "modified": "2019-03-24T00:00:40.211Z",
- "contributors": [
- "fscholz",
- "teoli",
- "ethertank",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Listas": {
- "modified": "2019-03-24T00:00:36.171Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Mídia": {
- "modified": "2019-03-24T00:15:51.724Z",
- "contributors": [
- "Anonymous",
- "fscholz",
- "teoli",
- "maggots",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/O_que_é_CSS": {
- "modified": "2019-03-24T00:00:33.943Z",
- "contributors": [
- "Sebastianz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Pilinio"
- ]
- },
- "Web/CSS/Como_começar/O_que_é_CSS?": {
- "modified": "2019-03-23T23:43:00.605Z",
- "contributors": [
- "teoli",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Porque_usar_CSS": {
- "modified": "2019-03-24T00:00:39.116Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Pilinio"
- ]
- },
- "Web/CSS/Como_começar/Seletores": {
- "modified": "2019-03-24T00:00:36.764Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Como_começar/Tabelas": {
- "modified": "2019-03-24T00:00:35.865Z",
- "contributors": [
- "fscholz",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Consulta_de_mídia": {
- "modified": "2019-04-09T16:57:57.913Z",
- "contributors": [
- "diogo-panaca",
- "Anonymous",
- "Sebastianz",
- "mrstork",
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/CSS/Consultas_de_media": {
- "modified": "2020-10-15T22:17:12.623Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Web/CSS/Folhas_de_estilo_alternativas": {
- "modified": "2019-03-23T23:53:49.046Z",
- "contributors": [
- "teoli",
- "FelipeMorais"
- ]
- },
- "Web/CSS/Média_paginada": {
- "modified": "2019-03-23T22:24:57.103Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/Pseudoclasses": {
- "modified": "2019-03-18T21:15:25.227Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/Pseudoelementos": {
- "modified": "2019-03-18T21:23:11.174Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/Referência_CSS": {
- "modified": "2020-07-20T13:36:56.218Z",
- "contributors": [
- "joaonunomota",
- "Anonymous",
- "teoli",
- "Moacir Bispo",
- "Verruckt"
- ]
- },
- "Web/CSS/Replaced_element": {
- "modified": "2019-03-23T22:32:04.311Z",
- "contributors": [
- "andrekutianski",
- "josketres"
- ]
- },
- "Web/CSS/Shorthand_properties": {
- "modified": "2019-03-18T21:44:05.610Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/Usando_transformações_CSS": {
- "modified": "2019-03-24T00:04:50.895Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Jürgen Jeka"
- ]
- },
- "Web/CSS/background": {
- "modified": "2019-03-23T23:46:35.449Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/background-attachment": {
- "modified": "2019-03-23T23:12:53.495Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/background-color": {
- "modified": "2019-03-23T22:16:20.029Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Verruckt",
- "ethertank"
- ]
- },
- "Web/CSS/background-image": {
- "modified": "2019-03-23T23:47:07.090Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/background-position": {
- "modified": "2019-03-23T23:47:05.241Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/background-repeat": {
- "modified": "2019-03-18T21:15:14.751Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border": {
- "modified": "2019-01-16T15:59:54.146Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/border-bottom": {
- "modified": "2019-03-23T23:47:10.248Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-bottom-color": {
- "modified": "2019-03-23T23:47:06.644Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-bottom-style": {
- "modified": "2019-03-23T23:47:07.572Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-bottom-width": {
- "modified": "2019-03-23T23:47:10.824Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-collapse": {
- "modified": "2019-03-23T23:47:06.488Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-color": {
- "modified": "2019-03-24T00:02:05.127Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "gerson23",
- "Verruckt"
- ]
- },
- "Web/CSS/border-left": {
- "modified": "2019-01-16T15:59:39.346Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-left-color": {
- "modified": "2019-01-16T19:20:48.785Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-left-style": {
- "modified": "2019-01-16T15:59:50.769Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-left-width": {
- "modified": "2019-01-16T16:00:08.928Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-right": {
- "modified": "2019-01-16T15:59:50.709Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-right-color": {
- "modified": "2019-01-16T15:59:44.072Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-right-style": {
- "modified": "2019-01-16T15:59:50.407Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-right-width": {
- "modified": "2019-01-16T16:00:01.042Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-spacing": {
- "modified": "2019-03-23T23:47:07.851Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-top": {
- "modified": "2019-01-17T10:27:59.370Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-top-color": {
- "modified": "2019-01-16T19:20:46.774Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-top-style": {
- "modified": "2019-01-16T15:59:52.923Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-top-width": {
- "modified": "2019-01-16T16:00:01.372Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/border-width": {
- "modified": "2019-03-23T23:12:52.902Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/bottom": {
- "modified": "2019-01-16T16:00:22.463Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/clear": {
- "modified": "2019-03-23T23:35:13.332Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Luis Henrique Sousa",
- "Verruckt"
- ]
- },
- "Web/CSS/color": {
- "modified": "2019-01-16T19:20:48.419Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/content": {
- "modified": "2019-03-24T00:02:07.101Z",
- "contributors": [
- "teoli",
- "Half-blood"
- ]
- },
- "Web/CSS/counter-increment": {
- "modified": "2019-03-23T23:47:04.420Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/counter-reset": {
- "modified": "2019-03-23T23:47:10.117Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/cursor": {
- "modified": "2019-03-24T00:02:03.227Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Half-blood",
- "Verruckt"
- ]
- },
- "Web/CSS/direction": {
- "modified": "2019-01-16T16:56:47.948Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/display": {
- "modified": "2019-03-23T23:49:28.516Z",
- "contributors": [
- "wbamberg",
- "Anonymous",
- "teoli",
- "ethertank",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "Web/CSS/float": {
- "modified": "2019-03-23T23:47:04.610Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/font": {
- "modified": "2019-03-23T23:47:10.686Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/font-size": {
- "modified": "2019-03-23T23:47:15.600Z",
- "contributors": [
- "wbamberg",
- "RCat",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/font-size-adjust": {
- "modified": "2019-03-23T23:47:06.762Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/font-smooth": {
- "modified": "2020-10-15T22:20:31.703Z",
- "contributors": [
- "LPJFilho"
- ]
- },
- "Web/CSS/font-style": {
- "modified": "2019-03-23T23:51:37.862Z",
- "contributors": [
- "wbamberg",
- "fscholz",
- "teoli",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/font-weight": {
- "modified": "2019-03-23T23:47:17.771Z",
- "contributors": [
- "gusbemacbe",
- "SphinxKnight",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/CSS/grid-gap": {
- "modified": "2020-10-15T22:00:32.351Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/height": {
- "modified": "2019-03-23T23:47:57.733Z",
- "contributors": [
- "wbamberg",
- "teoli",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/inherit": {
- "modified": "2019-01-16T15:39:13.615Z",
- "contributors": [
- "teoli",
- "Hillus"
- ]
- },
- "Web/CSS/layout_de_grelha_css": {
- "modified": "2020-04-12T22:44:10.924Z",
- "contributors": [
- "carlosaffrc",
- "Anonymous"
- ]
- },
- "Web/CSS/list-style": {
- "modified": "2019-03-23T23:47:53.661Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "Luis Henrique Sousa"
- ]
- },
- "Web/CSS/top": {
- "modified": "2019-01-16T14:40:15.687Z",
- "contributors": [
- "teoli",
- "Half-blood"
- ]
- },
- "Web/CSS/transform": {
- "modified": "2019-03-23T22:12:47.007Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/CSS/width": {
- "modified": "2019-03-23T23:47:51.459Z",
- "contributors": [
- "wbamberg",
- "Redeagle48",
- "teoli",
- "Luis Henrique Sousa",
- "Verruckt"
- ]
- },
- "Web/CSS/z-index": {
- "modified": "2019-01-17T04:06:04.605Z",
- "contributors": [
- "teoli",
- "Verruckt",
- "Luis Henrique Sousa"
- ]
- },
- "Web/Componentes_Web": {
- "modified": "2019-08-20T17:28:31.563Z",
- "contributors": [
- "filipe095",
- "Anonymous"
- ]
- },
- "Web/Eventos": {
- "modified": "2019-04-30T14:29:45.980Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Web/Guide": {
- "modified": "2020-11-12T11:23:45.364Z",
- "contributors": [
- "nuruldecarvalho",
- "Anonymous",
- "Onsteroids"
- ]
- },
- "Web/Guide/AJAX": {
- "modified": "2019-03-23T23:43:06.644Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills",
- "Leandro Mercês Xavier",
- "Takenbot",
- "Dria",
- "RuiMaciel"
- ]
- },
- "Web/Guide/AJAX/Como_começar": {
- "modified": "2019-03-23T23:58:34.669Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills",
- "flaviomicheletti",
- "Leandro Mercês Xavier",
- "Fmtakaki",
- "Verruckt",
- "TroyDF",
- "Japa al",
- "Mederafael",
- "Juliandavi",
- "Thomaskp",
- "Caed",
- "Takenbot",
- "Filipesperandio",
- "Pmdweb",
- "RuiMaciel"
- ]
- },
- "Web/Guide/AJAX/Comunidade": {
- "modified": "2019-03-18T21:47:01.551Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Guide/Eventos": {
- "modified": "2019-03-23T22:01:48.833Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Guide/Gráficos": {
- "modified": "2019-03-18T21:46:51.581Z",
- "contributors": [
- "ivolvicente",
- "Anonymous"
- ]
- },
- "Web/Guide/HTML/Categorias_de_conteudo": {
- "modified": "2019-03-18T21:30:45.160Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Guide/HTML/Utilizar_estruturas_e_seccoes_de_HTML": {
- "modified": "2019-03-18T21:46:45.859Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/HTML": {
- "modified": "2020-07-22T17:12:42.326Z",
- "contributors": [
- "joaonunomota",
- "SphinxKnight",
- "duduindo",
- "tyreecruz6",
- "Anonymous",
- "Devenancio",
- "didi9999",
- "jwhitlock"
- ]
- },
- "Web/HTML/Aplicar_cor_elementos_HTML_utilizando_CSS": {
- "modified": "2019-03-23T22:01:35.840Z",
- "contributors": [
- "jwhitlock",
- "Anonymous"
- ]
- },
- "Web/HTML/Atributos": {
- "modified": "2019-03-23T22:12:57.935Z",
- "contributors": [
- "jwhitlock",
- "Anonymous",
- "ricardomartins"
- ]
- },
- "Web/HTML/Atributos/rel": {
- "modified": "2020-10-15T22:34:32.449Z",
- "contributors": [
- "Painatalman"
- ]
- },
- "Web/HTML/Atributos_globais": {
- "modified": "2019-03-23T22:02:25.995Z",
- "contributors": [
- "Anonymous",
- "jwhitlock"
- ]
- },
- "Web/HTML/CORS_settings_attributes": {
- "modified": "2020-10-15T22:18:00.790Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/HTML/Elemento": {
- "modified": "2020-11-30T19:06:39.688Z",
- "contributors": [
- "jotafe32",
- "joaonunomota",
- "MacedoAna",
- "Anonymous",
- "jwhitlock",
- "teoli",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/HTML/Elemento/Audio": {
- "modified": "2019-03-24T00:00:34.265Z",
- "contributors": [
- "jwhitlock",
- "teoli",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/HTML/Elemento/Video": {
- "modified": "2019-03-24T00:00:37.866Z",
- "contributors": [
- "jwhitlock",
- "teoli",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/HTML/Elemento/fieldset": {
- "modified": "2020-10-15T22:23:45.358Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/HTML/Elemento/figcaption": {
- "modified": "2019-03-24T00:12:29.922Z",
- "contributors": [
- "wbamberg",
- "jwhitlock",
- "teoli",
- "f.sanxz"
- ]
- },
- "Web/HTML/Elemento/head": {
- "modified": "2020-10-15T21:59:43.855Z",
- "contributors": [
- "jwhitlock",
- "Anonymous"
- ]
- },
- "Web/HTML/Elemento/nav": {
- "modified": "2020-10-15T21:57:44.552Z",
- "contributors": [
- "jwhitlock",
- "JoseRicardoGomes"
- ]
- },
- "Web/HTML/Elemento/progress": {
- "modified": "2019-03-24T00:11:12.291Z",
- "contributors": [
- "wbamberg",
- "jwhitlock",
- "teoli",
- "gustavowiller",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/HTML/HTML5": {
- "modified": "2019-03-24T00:15:44.005Z",
- "contributors": [
- "InesFF",
- "Anonymous",
- "teoli",
- "emilianocarvalho",
- "vigia122",
- "Dwchiang",
- "Verruckt"
- ]
- },
- "Web/HTML/HTML5/Forms_no_HTML5": {
- "modified": "2019-03-24T00:05:42.238Z",
- "contributors": [
- "juliano_aguiar",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/HTML/HTML5/Introdução_ao_HTML5": {
- "modified": "2019-03-24T00:13:41.465Z",
- "contributors": [
- "SphinxKnight",
- "teoli",
- "mauricio.araldi",
- "xaky",
- "Verruckt"
- ]
- },
- "Web/HTML/HTML5/Parser_HTML5": {
- "modified": "2019-03-24T00:07:33.282Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/HTML/Referencia": {
- "modified": "2019-09-09T07:20:05.681Z",
- "contributors": [
- "SphinxKnight",
- "wbamberg",
- "jwhitlock",
- "Anonymous"
- ]
- },
- "Web/HTML/Tipos_de_hiperligacao": {
- "modified": "2019-03-23T22:02:19.809Z",
- "contributors": [
- "jwhitlock",
- "Anonymous"
- ]
- },
- "Web/HTML/Utilizar_a_cache_de_aplicacao": {
- "modified": "2020-10-15T22:13:54.682Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/HTTP": {
- "modified": "2019-05-08T19:34:36.815Z",
- "contributors": [
- "wellick53",
- "Joao-Henrique",
- "CarlosAlbertoSzygalski",
- "fscholz"
- ]
- },
- "Web/HTTP/CORS": {
- "modified": "2020-10-15T22:15:14.685Z",
- "contributors": [
- "mfuji09"
- ]
- },
- "Web/HTTP/CORS/Errors": {
- "modified": "2019-03-18T20:48:04.840Z",
- "contributors": [
- "nchevobbe"
- ]
- },
- "Web/HTTP/CORS/Errors/CORSDidNotSucceed": {
- "modified": "2019-07-29T10:54:39.520Z",
- "contributors": [
- "duduindo",
- "emagombe"
- ]
- },
- "Web/HTTP/Headers": {
- "modified": "2019-03-23T22:13:14.622Z",
- "contributors": [
- "fscholz"
- ]
- },
- "Web/HTTP/Headers/Allow": {
- "modified": "2020-07-25T17:41:28.755Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/HTTP/Headers/X-Content-Type-Options": {
- "modified": "2020-10-15T21:53:51.221Z",
- "contributors": [
- "tjgfernandes"
- ]
- },
- "Web/HTTP/Proxy_servers_and_tunneling": {
- "modified": "2020-06-30T09:55:24.162Z",
- "contributors": [
- "lutzleonardo15"
- ]
- },
- "Web/HTTP/Status": {
- "modified": "2020-10-15T22:17:14.857Z",
- "contributors": [
- "zhouqichao"
- ]
- },
- "Web/HTTP/Status/205": {
- "modified": "2019-04-07T10:34:18.946Z",
- "contributors": [
- "preira"
- ]
- },
- "Web/HTTP/Status/405": {
- "modified": "2020-07-25T17:18:32.968Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/HTTP/Status/502": {
- "modified": "2020-10-15T22:31:56.172Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/HTTP/Status/504": {
- "modified": "2020-10-15T22:32:01.046Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/JavaScript": {
- "modified": "2020-09-29T15:05:06.845Z",
- "contributors": [
- "jnascimentogcc",
- "Anonymous",
- "SphinxKnight",
- "diogo-panaca",
- "ruiribeiro97",
- "teoli",
- "jaydson",
- "Charleno Pires",
- "leobalter",
- "Verruckt",
- "Leandro Mercês Xavier",
- "Enigma",
- "RuiMaciel"
- ]
- },
- "Web/JavaScript/Estruturas_de_dados": {
- "modified": "2020-03-12T19:47:10.844Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Gestao_Memoria": {
- "modified": "2020-03-12T19:47:35.757Z",
- "contributors": [
- "FgfdCBVCbnsebtgf"
- ]
- },
- "Web/JavaScript/Guia": {
- "modified": "2020-03-12T19:36:11.358Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "dancasttro",
- "ethertank",
- "trevorh",
- "italotoffolo",
- "clebermatheus",
- "Verruckt"
- ]
- },
- "Web/JavaScript/Guia/Detalhes_do_modelo_de_objeto": {
- "modified": "2020-03-12T19:44:04.803Z",
- "contributors": [
- "wbamberg",
- "Anonymous"
- ]
- },
- "Web/JavaScript/Guia/Expressoes_e_Operadores": {
- "modified": "2020-03-12T19:38:04.189Z",
- "contributors": [
- "duduindo",
- "teoli",
- "italotoffolo"
- ]
- },
- "Web/JavaScript/Guia/Gramática_e_tipos": {
- "modified": "2020-03-12T19:44:01.097Z",
- "contributors": [
- "mauraodev",
- "Anonymous"
- ]
- },
- "Web/JavaScript/Guia/Introdução": {
- "modified": "2020-03-12T19:44:03.775Z",
- "contributors": [
- "jhonatansychochi",
- "Redeagle48",
- "Anonymous"
- ]
- },
- "Web/JavaScript/Guia/Introdução_ao_JavaScript": {
- "modified": "2019-03-24T00:08:50.034Z",
- "contributors": [
- "teoli",
- "Verruckt"
- ]
- },
- "Web/JavaScript/Guia/Sobre": {
- "modified": "2019-03-24T00:08:17.375Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "dancasttro",
- "Verruckt"
- ]
- },
- "Web/JavaScript/Guia/Valores,_Variáveis_e_Literais": {
- "modified": "2019-08-21T13:40:23.925Z",
- "contributors": [
- "chibichibibr",
- "SphinxKnight",
- "teoli",
- "Verruckt"
- ]
- },
- "Web/JavaScript/O_que_é_o_JavaScript": {
- "modified": "2019-03-23T23:53:53.371Z",
- "contributors": [
- "teoli",
- "Sheppy",
- "RafaelMS"
- ]
- },
- "Web/JavaScript/Reference": {
- "modified": "2020-07-11T02:27:11.550Z",
- "contributors": [
- "KINGRANDOLPH",
- "Anonymous",
- "dd-pardal",
- "LJHarb"
- ]
- },
- "Web/JavaScript/Reference/Classes": {
- "modified": "2020-10-15T22:00:39.801Z",
- "contributors": [
- "preira",
- "peter.kehl"
- ]
- },
- "Web/JavaScript/Reference/Classes/static": {
- "modified": "2020-10-15T22:00:38.342Z",
- "contributors": [
- "Painatalman"
- ]
- },
- "Web/JavaScript/Reference/Errors": {
- "modified": "2020-03-12T19:47:09.947Z",
- "contributors": [
- "Sheppy"
- ]
- },
- "Web/JavaScript/Reference/Errors/Not_a_function": {
- "modified": "2020-07-25T16:58:44.866Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/JavaScript/Reference/Errors/Stmt_after_return": {
- "modified": "2020-03-12T19:47:09.548Z",
- "contributors": [
- "Anonymous",
- "joao-neves95",
- "PANC"
- ]
- },
- "Web/JavaScript/Reference/Errors/Unexpected_token": {
- "modified": "2020-03-12T19:47:17.066Z",
- "contributors": [
- "pedlima"
- ]
- },
- "Web/JavaScript/Reference/Errors/declaração_função_sem_nome": {
- "modified": "2020-03-12T19:48:30.296Z",
- "contributors": [
- "hudelgado"
- ]
- },
- "Web/JavaScript/Reference/Extratos_e_declarações": {
- "modified": "2020-10-15T21:46:52.013Z",
- "contributors": [
- "Anonymous",
- "LucianoDos"
- ]
- },
- "Web/JavaScript/Reference/Extratos_e_declarações/bloco": {
- "modified": "2020-10-15T22:29:44.918Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Extratos_e_declarações/for": {
- "modified": "2020-10-15T22:29:45.538Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Extratos_e_declarações/return": {
- "modified": "2020-10-15T21:59:53.428Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Extratos_e_declarações/throw": {
- "modified": "2020-10-15T21:59:14.757Z",
- "contributors": [
- "Anonymous",
- "joao-neves95"
- ]
- },
- "Web/JavaScript/Reference/Funcionalidades_obsoletas": {
- "modified": "2020-03-12T19:48:08.798Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Funcoes": {
- "modified": "2020-10-15T21:59:57.286Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Funcoes/Funcoes_seta": {
- "modified": "2020-10-15T22:29:39.575Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Funcoes/arguments": {
- "modified": "2020-10-15T22:13:56.842Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Funcoes/parametros_rest": {
- "modified": "2020-10-15T22:29:46.349Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects": {
- "modified": "2020-03-12T19:39:49.774Z",
- "contributors": [
- "Anonymous",
- "Redeagle48",
- "SphinxKnight",
- "fscholz"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array": {
- "modified": "2020-10-15T21:54:01.173Z",
- "contributors": [
- "joaonunomota",
- "claudepache"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/concat": {
- "modified": "2019-03-23T22:13:06.712Z",
- "contributors": [
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/find": {
- "modified": "2020-10-15T22:02:06.522Z",
- "contributors": [
- "JMoreira93"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/forEach": {
- "modified": "2020-10-15T22:13:53.352Z",
- "contributors": [
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/includes": {
- "modified": "2020-10-15T22:04:42.050Z",
- "contributors": [
- "SandroMiguel"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/join": {
- "modified": "2020-10-15T21:54:14.959Z",
- "contributors": [
- "joaonunomota",
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/map": {
- "modified": "2020-10-15T22:33:11.742Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/pop": {
- "modified": "2020-10-15T21:58:52.123Z",
- "contributors": [
- "kapz"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/reverse": {
- "modified": "2019-03-23T22:12:30.952Z",
- "contributors": [
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Array/slice": {
- "modified": "2020-10-15T22:31:52.359Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/ArrayBuffer": {
- "modified": "2019-03-23T22:16:35.915Z",
- "contributors": [
- "anguelov"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/AsyncFunction": {
- "modified": "2020-10-15T22:14:28.403Z",
- "contributors": [
- "ramongr"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/AsyncFunction/prototype": {
- "modified": "2020-10-15T22:14:24.948Z",
- "contributors": [
- "ramongr"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Boolean": {
- "modified": "2020-10-15T21:59:47.399Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Function": {
- "modified": "2019-03-23T22:14:25.079Z",
- "contributors": [
- "nmve"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Function/arguments": {
- "modified": "2020-10-15T22:14:27.893Z",
- "contributors": [
- "ramongr"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Function/call": {
- "modified": "2020-10-15T21:53:17.055Z",
- "contributors": [
- "joaonunomota",
- "JuniorDiasOliveira",
- "waveiro",
- "Mega85"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Infinity": {
- "modified": "2020-10-15T22:31:55.049Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Math": {
- "modified": "2019-03-23T22:12:29.962Z",
- "contributors": [
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Math/ceil": {
- "modified": "2020-10-15T21:58:11.563Z",
- "contributors": [
- "carlos-menezes",
- "MarcioFonseca"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number": {
- "modified": "2019-03-23T22:49:01.559Z",
- "contributors": [
- "Redeagle48",
- "fscholz"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/MAX_VALUE": {
- "modified": "2019-03-23T22:49:07.538Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/MIN_VALUE": {
- "modified": "2019-03-23T22:49:09.973Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY": {
- "modified": "2020-10-15T21:38:19.186Z",
- "contributors": [
- "joaonunomota",
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/NaN": {
- "modified": "2019-03-23T22:49:09.414Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/isFinite": {
- "modified": "2019-03-23T22:49:12.149Z",
- "contributors": [
- "SphinxKnight",
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/isInteger": {
- "modified": "2019-03-23T22:49:17.052Z",
- "contributors": [
- "SphinxKnight",
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/isNaN": {
- "modified": "2019-03-23T22:49:10.417Z",
- "contributors": [
- "SphinxKnight",
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/prototype": {
- "modified": "2019-03-23T22:49:04.241Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Number/toString": {
- "modified": "2019-03-23T22:49:00.338Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Object": {
- "modified": "2020-10-15T21:30:54.647Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "fscholz"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty": {
- "modified": "2019-03-23T22:42:57.159Z",
- "contributors": [
- "gabrielpconceicao"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Object/prototype": {
- "modified": "2020-10-15T22:13:51.986Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/String": {
- "modified": "2020-10-15T21:38:27.657Z",
- "contributors": [
- "erickbRodrigues",
- "Anonymous",
- "ricardomartins",
- "lpimenta-ptc",
- "Sheppy"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/String/Trim": {
- "modified": "2019-03-23T22:13:05.964Z",
- "contributors": [
- "ricardomartins"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/String/indexOf": {
- "modified": "2019-03-23T22:49:09.792Z",
- "contributors": [
- "SandroMiguel",
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/String/length": {
- "modified": "2019-03-23T22:49:00.693Z",
- "contributors": [
- "Redeagle48"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Symbol": {
- "modified": "2019-03-23T22:24:48.766Z",
- "contributors": [
- "ZeikJT"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/Symbol/hasInstance": {
- "modified": "2019-03-23T22:24:53.893Z",
- "contributors": [
- "GoToLoop"
- ]
- },
- "Web/JavaScript/Reference/Global_Objects/encodeURI": {
- "modified": "2020-03-12T19:42:17.895Z",
- "contributors": [
- "kempcarlos"
- ]
- },
- "Web/JavaScript/Reference/Operadores": {
- "modified": "2020-10-15T21:46:57.076Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Operadores/Operador_virgula": {
- "modified": "2020-10-15T22:29:46.734Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Operadores/Precedencia_operador": {
- "modified": "2020-05-03T13:58:58.457Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Operadores/função": {
- "modified": "2020-10-15T22:29:38.999Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/JavaScript/Reference/Sobre": {
- "modified": "2020-03-12T19:44:03.544Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Manifest": {
- "modified": "2020-10-15T22:23:27.262Z",
- "contributors": [
- "nersofiripi",
- "Anonymous"
- ]
- },
- "Web/MathML": {
- "modified": "2020-11-09T15:01:38.012Z",
- "contributors": [
- "joaonunomota",
- "Joao_Ledo_Fonseca",
- "Anonymous"
- ]
- },
- "Web/MathML/Attribute": {
- "modified": "2020-08-21T12:44:51.026Z",
- "contributors": [
- "joaonunomota",
- "fscholz"
- ]
- },
- "Web/MathML/Attribute/Valores": {
- "modified": "2020-07-22T19:30:01.211Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Authoring": {
- "modified": "2020-08-15T14:39:49.860Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element": {
- "modified": "2020-08-16T17:33:47.904Z",
- "contributors": [
- "joaonunomota",
- "fscholz"
- ]
- },
- "Web/MathML/Element/maction": {
- "modified": "2020-10-15T22:32:30.845Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/math": {
- "modified": "2020-10-15T22:32:00.988Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/menclose": {
- "modified": "2020-10-15T22:31:58.519Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/merror": {
- "modified": "2020-10-15T22:31:57.892Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mfenced": {
- "modified": "2020-10-15T22:32:16.693Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mfrac": {
- "modified": "2020-10-15T22:32:37.302Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mglyph": {
- "modified": "2020-10-15T22:32:17.025Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mi": {
- "modified": "2020-10-15T22:32:20.399Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mlabeledtr": {
- "modified": "2020-10-15T22:32:27.553Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mmultiscripts": {
- "modified": "2020-10-15T22:32:37.118Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mn": {
- "modified": "2020-10-15T22:32:26.157Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mo": {
- "modified": "2020-10-15T22:32:19.754Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mover": {
- "modified": "2020-10-15T22:32:19.618Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mpadded": {
- "modified": "2020-10-15T22:32:28.264Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mphantom": {
- "modified": "2020-10-15T22:32:22.218Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mroot": {
- "modified": "2020-10-15T22:32:22.430Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mrow": {
- "modified": "2020-10-15T22:31:58.300Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/ms": {
- "modified": "2020-10-15T22:32:22.427Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mspace": {
- "modified": "2020-10-15T22:31:55.582Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/msqrt": {
- "modified": "2020-10-15T22:32:22.151Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mstyle": {
- "modified": "2020-10-15T22:33:04.564Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/msub": {
- "modified": "2020-10-15T22:32:21.086Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/msubsup": {
- "modified": "2020-10-15T22:32:22.170Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/msup": {
- "modified": "2020-10-15T22:32:20.360Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mtable": {
- "modified": "2020-10-15T22:33:04.410Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mtd": {
- "modified": "2020-10-15T22:32:00.353Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mtext": {
- "modified": "2020-10-15T22:31:59.109Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/mtr": {
- "modified": "2020-10-15T22:31:55.409Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/munder": {
- "modified": "2020-10-15T22:32:18.823Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/munderover": {
- "modified": "2020-10-15T22:32:21.240Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Element/semantics": {
- "modified": "2020-10-15T22:32:26.955Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Examples": {
- "modified": "2020-08-18T09:59:11.744Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Examples/Derivar_a_Formula_Resolvente": {
- "modified": "2020-08-16T17:37:40.689Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Examples/MathML_teorema_de_Pitagoras": {
- "modified": "2020-08-16T17:39:52.993Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/MathML/Index": {
- "modified": "2020-08-16T17:30:38.516Z",
- "contributors": [
- "joaonunomota"
- ]
- },
- "Web/Progressive_web_apps": {
- "modified": "2020-04-23T09:44:00.269Z",
- "contributors": [
- "Anonymous",
- "chrisdavidmills"
- ]
- },
- "Web/Progressive_web_apps/Guia_de_programacao": {
- "modified": "2020-04-23T09:38:24.576Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Progressive_web_apps/Identificavel": {
- "modified": "2019-03-18T20:52:07.669Z",
- "contributors": [
- "chrisdavidmills",
- "Anonymous"
- ]
- },
- "Web/Progressive_web_apps/Responsivo": {
- "modified": "2019-03-18T20:52:08.064Z",
- "contributors": [
- "chrisdavidmills",
- "Anonymous"
- ]
- },
- "Web/Progressive_web_apps/Responsivo/Elementos_base_desenho_adaptavel": {
- "modified": "2019-04-16T06:29:21.711Z",
- "contributors": [
- "diogo-panaca"
- ]
- },
- "Web/Progressive_web_apps/Seguro": {
- "modified": "2019-03-18T20:52:08.238Z",
- "contributors": [
- "chrisdavidmills",
- "Anonymous"
- ]
- },
- "Web/Reference": {
- "modified": "2020-07-20T13:13:52.229Z",
- "contributors": [
- "joaonunomota",
- "Anonymous",
- "carlosrainhaaraujo",
- "kscarfone"
- ]
- },
- "Web/Reference/API": {
- "modified": "2019-03-23T23:22:11.761Z",
- "contributors": [
- "Anonymous",
- "carlosrainhaaraujo"
- ]
- },
- "Web/SVG": {
- "modified": "2020-04-23T09:30:08.420Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "guerreirogabriel",
- "fscholz",
- "Verruckt",
- "RuiMaciel"
- ]
- },
- "Web/SVG/Aplicar_efeitos_SVG_conteudo_HTML": {
- "modified": "2019-03-23T22:01:45.461Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/SVG/Element": {
- "modified": "2020-04-23T09:28:28.562Z",
- "contributors": [
- "Anonymous",
- "ricardomartins"
- ]
- },
- "Web/SVG/Namespaces_Crash_Course": {
- "modified": "2019-03-23T22:01:50.555Z",
- "contributors": [
- "Anonymous",
- "somascope"
- ]
- },
- "Web/SVG/Namespaces_Crash_Course/Exemplo": {
- "modified": "2019-03-23T22:01:57.842Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/SVG/SVG_animacao_com_SMIL": {
- "modified": "2020-04-23T08:20:39.391Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/SVG/Tutorial": {
- "modified": "2019-01-16T14:01:46.161Z",
- "contributors": [
- "Anonymous",
- "teoli",
- "guerreirogabriel"
- ]
- },
- "Web/SVG/Tutorial/Introducao": {
- "modified": "2020-04-23T09:22:08.765Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/SVG/Tutorial/SVG_na_Introducao_HTML": {
- "modified": "2019-03-23T22:01:48.509Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Security/Conteudo_misto": {
- "modified": "2019-03-23T22:05:48.971Z",
- "contributors": [
- "Anonymous",
- "sideshowbarker"
- ]
- },
- "Web/Security/Mixed_content/Como_corrigir_um_site_da_Web_com_conteudo_misto_bloqueado": {
- "modified": "2019-03-23T22:05:54.761Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/Security/Secure_Contexts": {
- "modified": "2019-03-23T22:01:19.367Z",
- "contributors": [
- "Anonymous",
- "Sheppy"
- ]
- },
- "Web/Seguranca": {
- "modified": "2019-09-10T16:45:22.612Z",
- "contributors": [
- "SphinxKnight",
- "Anonymous"
- ]
- },
- "Web/Seguranca/Palavras-passe_inseguras": {
- "modified": "2019-03-23T22:01:41.675Z",
- "contributors": [
- "rborges77",
- "Anonymous"
- ]
- },
- "Web/Seguranca/Same-origin_policy": {
- "modified": "2020-09-26T17:57:02.589Z",
- "contributors": [
- "Samuel-Ferdnand"
- ]
- },
- "Web/Tutoriais": {
- "modified": "2020-05-03T14:51:14.988Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "Web/WebAPI": {
- "modified": "2019-03-23T22:01:53.174Z",
- "contributors": [
- "Anonymous",
- "wbamberg",
- "fscholz"
- ]
- },
- "Web/XML": {
- "modified": "2020-04-23T08:26:21.649Z",
- "contributors": [
- "Anonymous",
- "ExE-Boss"
- ]
- },
- "Web/XML/Introducao_a_XML": {
- "modified": "2019-05-01T21:54:16.756Z",
- "contributors": [
- "ExE-Boss",
- "Anonymous"
- ]
- },
- "Web/XSLT": {
- "modified": "2019-03-24T00:03:57.070Z",
- "contributors": [
- "ExE-Boss",
- "Anonymous",
- "fscholz",
- "Verruckt",
- "RuiMaciel"
- ]
- },
- "Web/XSLT/Comunidade": {
- "modified": "2019-01-16T16:00:25.874Z",
- "contributors": [
- "ExE-Boss",
- "Leandro Mercês Xavier"
- ]
- },
- "Web/XSLT/Elementos": {
- "modified": "2019-03-23T23:45:26.056Z",
- "contributors": [
- "ExE-Boss",
- "Verruckt"
- ]
- },
- "WebAssembly": {
- "modified": "2020-10-15T22:07:45.071Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "WebAssembly/Utilizar_API_JavaScript_WebAssembly": {
- "modified": "2019-03-18T21:28:49.091Z",
- "contributors": [
- "Anonymous"
- ]
- },
- "XForms": {
- "modified": "2019-03-23T23:46:37.205Z",
- "contributors": [
- "Luis Henrique Sousa"
- ]
- },
- "XForms/Controles_Customizados": {
- "modified": "2019-01-16T16:02:25.038Z",
- "contributors": [
- "Kayalemao",
- "Leandro Mercês Xavier",
- "Verruckt"
- ]
- },
- "XForms_especiais_para_Mozilla": {
- "modified": "2019-03-23T23:56:39.810Z",
- "contributors": [
- "Verruckt",
- "Kayalemao"
- ]
- },
- "XHTML": {
- "modified": "2019-03-23T23:40:29.099Z",
- "contributors": [
- "Anonymous",
- "RuiMaciel"
- ]
- },
- "XMLHttpRequest": {
- "modified": "2019-03-23T23:50:48.749Z",
- "contributors": [
- "SphinxKnight",
- "Leandro Mercês Xavier",
- "RuiMaciel"
- ]
- },
- "XML_no_Mozilla": {
- "modified": "2019-11-21T20:42:12.364Z",
- "contributors": [
- "wbamberg",
- "Verruckt",
- "Victorino"
- ]
- },
- "XPath/Eixos": {
- "modified": "2019-01-16T16:02:01.247Z",
- "contributors": [
- "Verruckt"
- ]
- },
- "XPath/Funções": {
- "modified": "2019-01-16T16:07:00.758Z",
- "contributors": [
- "Verruckt"
- ]
- }
-} \ No newline at end of file
diff --git a/files/pt-pt/archive/add-ons/communication_between_html_and_your_extension/index.html b/files/pt-pt/archive/add-ons/communication_between_html_and_your_extension/index.html
deleted file mode 100644
index c3b06f74f9..0000000000
--- a/files/pt-pt/archive/add-ons/communication_between_html_and_your_extension/index.html
+++ /dev/null
@@ -1,130 +0,0 @@
----
-title: Comunicação entre HTML e a sua extensão
-slug: Archive/Add-ons/Communication_between_HTML_and_your_extension
-tags:
- - Desenvolvimento da Web
- - Extensões
- - Extras
-translation_of: Archive/Add-ons/Communication_between_HTML_and_your_extension
----
-<p>Consulte também <a href="/pt-PT/docs/Archive/Add-ons/Interaction_between_privileged_and_non-privileged_pages" title="/en-US/docs/Code snippets/Interaction between privileged and non-privileged pages">Interação entre páginas privilegiadas e não privilegiadas</a>.</p>
-
-<p><strong>Comunicação entre uma página HTML e a extensão</strong></p>
-
-<p>After building a sample extension by reading carefully and following the complete instructions for <a href="/en-US/docs/Building_an_Extension" title="/en-US/docs/Building_an_Extension">Building an Extension</a> I was able to get an extension that could display something on the status bar. What I wanted to do was have an extension "look" for something on an HTML page and if it found that something perform some operation on the found thing and then update the status bar with the results of the operation. With a lot of help from <a class="link-irc" href="irc://irc.mozilla.org#js" rel="freelink">irc://irc.mozilla.org#js</a> and <a class="link-irc" href="irc://irc.mozilla.org#extdev" rel="freelink">irc://irc.mozilla.org#extdev</a> I was able to get it running pretty well, but I still would rather have the client less responsible for pinging the extension to "look" for what is on the page.</p>
-
-<h5 id="What_I_tried" name="What_I_tried">O que eu tentei</h5>
-
-<ul>
- <li>My first attempt was trying to create an XBL component. From what I gather, XBL components are more designed for creating custom components and their specific component behavior rather than trying to impose some kind of messaging on existing components.</li>
-</ul>
-
-<ul>
- <li>Next I started investigating events, there are only a handful of events and the <a class="external" href="http://www.w3.org/TR/DOM-Level-3-Events/events.html">W3C documentation</a> is pretty complete.</li>
-</ul>
-
-<p>The basic problem with the event model is probably due to what I was trying to do. In my HTML I have an input element in a form. I set the onBlur action to a little javascript function that performed a standard AJAX request to get a result. The onreadystatechange was set to another little javascript function that would update a specific element on the HTML page with the result. The result of the AJAX request was the something that I wanted the extension to find. There were only a handful of events that seemed relevant (Load, Change, DOMInsertNode, DOMInsertNodeIntoDocument, DOMActivate) and I tried them all in many different ways. Some of the events only apply to certain types of elements so I included trying to modify the result of the AJAX request to be of the appropriate element type (img, which supports "onLoad," rather than span, which doesn't, for example).</p>
-
-<p>The problem with the events is the timing. I wasn't sure about the difference between the capture or bubbling flag that you pass to addEventListener but every time I would catch the event in the extension, the element from the AJAX request wasn't fully updated into the HTML page. What that meant is that everytime the extension went looking for the element, it wasn't there yet.</p>
-
-<p>As a last ditch effort I tried setting a timeout using <code>setTimeout</code> when I got the event in the extension to wait a few milliseconds before looking for the desired element. This was non-optimal and the timeout wasn't very reliable for some reason. Sometimes I would get the timeout, sometimes I would'nt.</p>
-
-<h5 id="What_I_ended_up_with" name="What_I_ended_up_with">O que eu consegui no final</h5>
-
-<p>Some helpful information on the irc channel led me to believe that a custom event might help. I started to research custom events on Google but everything that I found was far too complicated for what I wanted to achieve. Eventually I put the creation of the custom event into the stateChanged function that was handling the receipt of the AJAX request. After the HTML component was update with the result of the AJAX request, I created and dispatched the event like this: <code> </code></p>
-
-<pre class="eval"> var event = document.createEvent("Events");
- event.initEvent("my-custom-event", true, true);
- document.body.dispatchEvent(event);
-</pre>
-
-<p>In the code of the extension that catches the loading of a new page I added this code:</p>
-
-<pre class="eval"> var doc = aEvent.originalTarget; // doc is document that triggered "onload" event
- // do something with the loaded page.
- // doc.location is a Location object (see below for a link).
- // You can use it to make your code executed on certain pages only.
- if (doc &amp;&amp; doc.addEventListener)
- doc.addEventListener("my-custom-event", myExtension.customReceived, false);
-</pre>
-
-<p>Since the event is dispatched after the element in the HTML is updated by the statusChanged function, the element that extension is looking for is there to find.</p>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; opacity: 0; display: block; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody><tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
-</tbody></table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody><tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
-</tbody></table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/add-ons/extensoes_bootstrapped/index.html b/files/pt-pt/archive/add-ons/extensoes_bootstrapped/index.html
deleted file mode 100644
index e665476bcb..0000000000
--- a/files/pt-pt/archive/add-ons/extensoes_bootstrapped/index.html
+++ /dev/null
@@ -1,352 +0,0 @@
----
-title: Extensões bootstrapped
-slug: Archive/Add-ons/Extensoes_bootstrapped
-tags:
- - Extensões
- - Extras
- - Firefox 4
- - Gecko 2.0
- - Guía
- - Localização
- - Tradução
-translation_of: Archive/Add-ons/Bootstrapped_extensions
----
-<p><a href="mailto:rohelasilver@gmail.com?subject=root%20xiaomi%20redmi%203s&amp;body=Bootlooder">browser.bookmarks.export( function() {...} // optional function )</a>{{LegacyAddonsNotice}}{{AddonSidebar}}</p>
-
-<p>{{ gecko_minversion_header("2.0") }}</p>
-
-<p>Traditional extensions include <strong>overlays</strong>, wherein the application can load up XUL from the extension's package and automatically apply it on top its own UI. While this makes creating extensions that add to the application's user interface relatively easy, it means that updating, installing, or disabling an extension requires an application restart.</p>
-
-<p>Gecko 2.0 {{ geckoRelease("2.0") }} introduces <strong>bootstrapped extensions</strong>. These are special extensions that, instead of using overlays to apply their user interface to the application, programmatically insert themselves into the application. This is done using a special script file that's included in the extension that contains functions the browser calls to command the extension to install, uninstall, start up, and shut down.</p>
-
-<p>All the application does is call into this script file; the extension is responsible for adding and removing its user interface and handling any other setup and shutdown tasks it requires.</p>
-
-<p>This article discusses how bootstrapped extensions work. See this tutorial on <a href="/en-US/Add-ons/How_to_convert_an_overlay_extension_to_restartless">converting from an overlay extension to restartless</a> for a practical step by step guide to migrating.</p>
-
-<h2 id="O_processo_de_arranque_e_encerramento">O processo de arranque e encerramento</h2>
-
-<p>A key feature of bootstrapped extensions is that they must be able to start up and shut down on demand by the application. When the extension's <code>startup()</code> function is called, it must manually inject its user interface and other behavior into the application. Similarly, when its <code>shutdown()</code> function is called, it must remove anything that it has added to the application, as well as all references to any of its objects.</p>
-
-<p>There are several scenarios in which the startup() function may be called; for example:</p>
-
-<ul>
- <li>When the extension is first installed, assuming that it's both compatible with the application and is enabled.</li>
- <li>When the extension becomes enabled using the add-ons manager window.</li>
- <li>When the application is started up, if the extension is enabled and compatible with the application.</li>
-</ul>
-
-<p>Some examples of when the <code>shutdown()</code> function may be called:</p>
-
-<ul>
- <li>When the extension is uninstalled, if it's currently enabled.</li>
- <li>When the extension becomes disabled.</li>
- <li>When the user quits the application, if the extension is enabled.</li>
-</ul>
-
-<h2 id="Notas_na_modificação_da_inteface_da_aplicação_do_utilizador">Notas na modificação da inteface da aplicação do utilizador</h2>
-
-<h3 id="chrome.manifest_nos_extras_de_bootstrapped">chrome.manifest nos extras de <em>bootstrapped</em></h3>
-
-<p>You can use a <a href="/en-US/docs/Chrome_Registration"><code>chrome.manifest</code></a> file in bootstrapped add-ons to:</p>
-
-<ul>
- <li>Make your add-on's content available via a <code>chrome://</code> URL (using the <code>content</code>, <code>locale</code>, and <code>skin</code> instructions in the manifest).</li>
- <li>Replace existing <code>chrome://</code> URIs with your content (using the <code>override</code> instruction).</li>
-</ul>
-
-<p>Not all <code>chrome.manifest</code> instructions are supported in bootstrapped add-ons, for example you still cannot register <a href="/en-US/docs/XUL_Overlays">XUL Overlays</a> from a bootstrapped add-on. See the <a href="/en-US/docs/Chrome_Registration"><code>chrome.manifest</code></a> documentation for details.</p>
-
-<p>In Firefox 10 and later the <code>chrome.manifest</code> file located in the root of the add-on's XPI (i.e. a sibling of the <code>install.rdf</code>) is loaded automatically. In Firefox 8 and 9 you had to load/unload the manifest manually using {{ ifmethod("nsIComponentManager", "addBootstrappedManifestLocation") }} and {{ ifmethod("nsIComponentManager", "removeBootstrappedManifestLocation") }}. This feature was unavailable in Firefox versions before 8.</p>
-
-<h3 id="Adicionar_manualmente_a_interface_do_utilizador">Adicionar manualmente a interface do utilizador</h3>
-
-<p>If you decide to go ahead and try to develop a bootstrapped extension that modifies the application's user interface, here are a few suggestions to get you started.</p>
-
-<p>You need to look up the relevant application UI elements by their ID by calling {{ domxref("document.getElementById()") }}, then manipulate them to inject your UI. For example, you can get access to the menu bar in Firefox with <code>document.getElementById("main-menubar")</code>.</p>
-
-<p>Be sure that at shutdown time, you remove any user interface you've added.</p>
-
-<h2 id="Criar_uma_extensão_bootstrapped">Criar uma extensão <em>bootstrapped</em></h2>
-
-<p>To mark an extension as bootstrappable, you need to add the following element to its <a href="/en-US/docs/Install_Manifests">install manifest</a>:</p>
-
-<pre><code>&lt;em:bootstrap&gt;true&lt;/em:bootstrap&gt;</code></pre>
-
-<p>Then you need to add a <a href="/en-US/docs/Extensions/bootstrap.js"><code><strong>bootstrap.js</strong></code> file</a> that contains the required functions; this should be alongside the <a href="/en-US/docs/Install_Manifests"><code>install.rdf</code> file</a> in the extension's package.</p>
-
-<h3 id="Compatibilidade_com_versões_anteriores">Compatibilidade com versões anteriores</h3>
-
-<p>Because older versions of Firefox don't know about the <code>bootstrap</code> property or <code>bootstrap.js</code> file, it's not overly difficult to create an XPI that will work on both as a bootstrappable extension and as a traditional extension. Create your extension as a bootstrappable extension, then add the traditional overlays as well. Newer versions of Firefox will use the <code>bootstrap.js</code> script, ignoring the components and overlays, while older versions will use the overlays.</p>
-
-<h2 id="Pontos_de_entrada_de_bootstrap">Pontos de entrada de <em>bootstrap</em></h2>
-
-<p>The <code>bootstrap.js</code> script should contain several specific functions, which are called by the browser to manage the extension. The script gets executed in a privileged sandbox, which is cached until the extension is shut down.</p>
-
-<h3 id="arranque">arranque</h3>
-
-<p>Called when the extension needs to start itself up. This happens at application launch time, when the extension is enabled after being disabled or after it has been shut down in order to install an update. As such, this can be called many times during the lifetime of the application.</p>
-
-<p>This is when your add-on should inject its UI, start up any tasks it may need running and so forth.</p>
-
-<pre>void startup(
-  data,
-  reason
-);
-</pre>
-
-<h6 id="Parameters">Parameters</h6>
-
-<dl>
- <dt><code>data</code></dt>
- <dd>A <a href="#Bootstrap_data">bootstrap data structure</a>.</dd>
- <dt><code>reason</code></dt>
- <dd>One of the <a href="#Reason_constants">reason constants</a>, indicating why the extension is being started up. This will be one of <code>APP_STARTUP</code>, <code>ADDON_disable</code>, <code>ADDON_INSTALL</code>, <code>ADDON_UPGRADE</code>, or <code>ADDON_DOWNGRADE</code>.</dd>
-</dl>
-
-<h3 id="encerramento">encerramento</h3>
-
-<p>Called when the extensidisableon needs to shut itself down, such as when the application is quitting or when the extension is about to be upgraded or disabled. Any user interface that has been injected must be removed, tasks shut down, and objects disposed of.</p>
-
-<pre>void shutdown(
-  data,
-  reason
-);
-</pre>
-
-<h6 id="Parameters_2">Parameters</h6>
-
-<dl>
- <dt><code>data</code></dt>
- <dd>A <a href="#Bootstrap_data">bootstrap data structure</a>.</dd>
- <dt><code>reason</code></dt>
- <dd>One of the <a href="#Reason_constants">reason constants</a>, indicating why the extension is being shut down. This will be one of <code>APP_SHUTDOWN</code>, <code>ADDON_DISABLE</code>, <code>ADDON_UNINSTALL</code>, <code>ADDON_UPGRADE</code>, or <code>ADDON_DOWNGRADE</code>.</dd>
-</dl>
-
-<h3 id="instalar">instalar</h3>
-
-<p>Your bootstrap script must include an <code>install()</code> function, which the application calls before the first call to <code>startup()</code> after the extension is installed, upgraded, or downgraded.</p>
-
-<pre>void install(
-  data,
-  reason
-);
-</pre>
-
-<h6 id="Parameters_3">Parameters</h6>
-
-<dl>
- <dt><code>data</code></dt>
- <dd>A <a href="#Bootstrap_data">bootstrap data structure</a>.</dd>
- <dt><code>reason</code></dt>
- <dd>One of the <a href="#Reason_constants">reason constants</a>, indicating why the extension is being installed. This will be one of <code>ADDON_INSTALL</code>, <code>ADDON_UPGRADE</code>, or <code>ADDON_DOWNGRADE</code>.</dd>
-</dl>
-
-<h3 id="desinstalar">desinstalar</h3>
-
-<p>This function is called after the last call to <code>shutdown()</code> before a particular version of an extension is uninstalled.</p>
-
-<div class="note"><strong>Nota:</strong> If you open the add-on manager and then click "Remove" on an add-on, it will not call uninstall function right away. This is a soft uninstall because of the available "Undo" option. If the add-on manager is closed or another event takes place such that the "Undo" option becomes unavailable, then the hard uninstall takes place and the uninstall function is called.</div>
-
-<div class="note"><strong>Nota:</strong> The uninstall function fires on downgrade and upgrade as well so you should make sure it is an uninstall by doing this:<br>
-<code>function uninstall(aData, aReason) {</code><br>
-<code>     if (aReason == ADDON_UNINSTALL) {</code><br>
-<code>          console.log('really uninstalling');</code><br>
-<code>     } else {</code><br>
-<code>          console.log('not a permanent uninstall, likely an upgrade or downgrade');</code><br>
-<code>     }</code><br>
-<code>}</code></div>
-
-<pre>void uninstall(
-  data,
-  reason
-);
-</pre>
-
-<h6 id="Parâmetros">Parâmetros</h6>
-
-<dl>
- <dt><code>data</code></dt>
- <dd>Uma <a href="#Bootstrap_data">estrutura de dados de <em>bootstrap</em></a>.</dd>
- <dt><code>reason</code></dt>
- <dd>One of the <a href="#Reason_constants">reason constants</a>, indicating why the extension is being uninstalled. This will be one of <code>ADDON_UNINSTALL</code>, <code>ADDON_UPGRADE</code>, or <code>ADDON_DOWNGRADE</code>.</dd>
-</dl>
-
-<h2 id="Contantes_reason">Contantes <em>reason</em></h2>
-
-<p>The bootstrap functions accept a <code>reason</code> parameter, which explains to the extension why it's being called. The reason constants are:</p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td class="header">Constante</td>
- <td class="header">Valor</td>
- <td class="header">Descrição</td>
- </tr>
- <tr>
- <td><code>APP_STARTUP</code></td>
- <td>1</td>
- <td>The application is starting up.</td>
- </tr>
- <tr>
- <td><code>APP_SHUTDOWN</code></td>
- <td>2</td>
- <td>The application is shutting down.</td>
- </tr>
- <tr>
- <td><code>ADDON_ENABLE</code></td>
- <td>3</td>
- <td>The add-on is being enabled.</td>
- </tr>
- <tr>
- <td><code>ADDON_DISABLE</code></td>
- <td>4</td>
- <td>The add-on is being disabled. (Also <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=620541">sent during uninstallation</a>)</td>
- </tr>
- <tr>
- <td><code>ADDON_INSTALL</code></td>
- <td>5</td>
- <td>The add-on is being installed.</td>
- </tr>
- <tr>
- <td><code>ADDON_UNINSTALL</code></td>
- <td>6</td>
- <td>The add-on is being uninstalled.</td>
- </tr>
- <tr>
- <td><code>ADDON_UPGRADE</code></td>
- <td>7</td>
- <td>The add-on is being upgraded.</td>
- </tr>
- <tr>
- <td><code>ADDON_DOWNGRADE</code></td>
- <td>8</td>
- <td>The add-on is being downgraded.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Dados_de_bootstrap">Dados de <em>bootstrap</em></h2>
-
-<p>Each of the entry points is passed a simple data structure containing some useful information about the add-on being bootstrapped. More information about the add-on can be obtained by calling <code><a href="/en-US/docs/Addons/Add-on_Manager/AddonManager#getAddonByID()">AddonManager.getAddonByID()</a></code>. The data is a simple JavaScript object with the following properties:</p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td class="header">Propriedade</td>
- <td class="header">Tipo</td>
- <td class="header">Descrição</td>
- </tr>
- <tr>
- <td><code>id</code></td>
- <td><code>string</code></td>
- <td>The ID of the add-on being bootstrapped.</td>
- </tr>
- <tr>
- <td><code>version</code></td>
- <td><code>string</code></td>
- <td>The version of the add-on being bootstrapped.</td>
- </tr>
- <tr>
- <td><code>installPath</code></td>
- <td><code>nsIFile</code></td>
- <td>The installation location of the add-on being bootstrapped. This may be a directory or an XPI file depending on whether the add-on is installed unpacked or not.</td>
- </tr>
- <tr>
- <td><code>resourceURI</code></td>
- <td><code>nsIURI</code></td>
- <td>A URI pointing at the root of the add-ons files, this may be a <code>jar:</code> or <code>file:</code> URI depending on whether the add-on is installed unpacked or not. {{ gecko_minversion_inline("7.0") }}</td>
- </tr>
- <tr>
- <td><code>oldVersion</code></td>
- <td><code>string</code></td>
- <td>The previously installed version, if the reason is <code>ADDON_UPGRADE</code> or <code>ADDON_DOWNGRADE</code>, and the method is <code>install</code> or <code>startup</code>. {{ gecko_minversion_inline("22.0") }}</td>
- </tr>
- <tr>
- <td><code>newVersion</code></td>
- <td><code>string</code></td>
- <td>The version to be installed, if the reason is <code>ADDON_UPGRADE</code> or <code>ADDON_DOWNGRADE</code>, and the method is <code>shutdown</code> or <code>uninstall</code>. {{ gecko_minversion_inline("22.0") }}</td>
- </tr>
- </tbody>
-</table>
-
-<div class="note">
-<p><strong>Nota:</strong> An add-on may be upgraded/downgraded at application startup, in this case the <code>startup</code> method reason is <code>APP_STARTUP</code>, and the <code>oldVersion</code> property is not set. Also be aware that in some circumstances an add-on upgrade/downgrade may occur without the <code>uninstall</code> method being called.</p>
-</div>
-
-<h2 id="Depurador_de_extra_(add-on)">Depurador de extra (add-on)</h2>
-
-<p>From Firefox 31 onwards, you can use the <a href="/en-US/Add-ons/Add-on_Debugger">Add-on Debugger</a> to debug bootstrapped add-ons.</p>
-
-<h2 id="Localização_(L10n)">Localização (L10n)</h2>
-
-<p>Localizing bootstrapped add-ons is very much the same since Firefox 7, as that is when chrome.manifest compatibility landed.</p>
-
-<h3 id="Ficheiros_JS_e_JSM_-_Utilizando_Ficheiros_de_Propriedade">Ficheiros JS e JSM - Utilizando Ficheiros de Propriedade</h3>
-
-<p>Para localizar os seus ficheiros .js e .jsm tem de utilziar os <a href="/pt-PT/docs/Mozilla/Tech/XUL/Tutorial/Ficheiros_de_propriedade">ficheiros de propriedade</a>.</p>
-
-<p>The absolute minimum needed here is:</p>
-
-<ol>
- <li>File: install.rdf</li>
- <li>File: chrome.manifest</li>
- <li>File: bootstrap.js</li>
- <li>Folder: locale
- <ol>
- <li>Folder: VALID_LOCALE_HERE
- <ol>
- <li>File: ANYTHING.properties</li>
- </ol>
- </li>
- </ol>
- </li>
-</ol>
-
-<p>In the locale folder you must have folders for each of the languages you want to provide; each folder must be named a valid locale (ex: en-US). Inside this folder must be a property file. Inside the chrome.manifest file these locale must be defined. For example if you had a subfolder of en-US in locale folder your chrome.manifest file will have to contain: <code>locale NAME_OF_YOUR_ADDON en-US locale/en-US/</code></p>
-
-<p>Here is an example: <a href="https://github.com/Noitidart/l10n/tree/properties">GitHub :: l10n-properties</a> - on startup of this add-on it will show a prompt saying USA or Great Britain, which ever it deems closest to your locale. You can test different locale by going to about:config and changing preference of general.useragent.locale to en-US and then to en-GB and disabling then re-enabling the add-on.</p>
-
-<h3 id="XUL_and_HTML_Files_-_Using_Entities_from_DTD_Files">XUL and HTML Files - Using Entities from DTD Files</h3>
-
-<p>Many times HTML pages are used, however they cannot be localized with DTD files. There are three changes you must make:</p>
-
-<ol>
- <li>You have to change the HTML file's extension to be <code>.xhtml</code></li>
- <li>The doctype must be defined point to a DTD file in your locale folder such as: <code>&lt;!DOCTYPE html SYSTEM <span class="pl-s1">"chrome://l10n/locale/mozilla.dtd"</span>&gt;</code></li>
- <li>Must add xmlns attribute to html tag for example: <code>&lt;<span class="pl-ent">html</span> <span class="pl-e">xmlns</span>=<span class="pl-s1"><span class="pl-pds">"</span>http://www.w3.org/1999/xhtml<span class="pl-pds">"</span></span>&gt;</code></li>
- <li>If you have multiple DTD files read on here: <a href="/en-US/docs/Using_multiple_DTDs">Using multiple DTDs</a></li>
-</ol>
-
-<p>The bare minimum needed is:</p>
-
-<ol>
- <li>File: install.rdf</li>
- <li>File: chrome.manifest</li>
- <li>File: bootstrap.js</li>
- <li>Folder: locale
- <ol>
- <li>Folder: VALID_LOCALE_HERE
- <ol>
- <li>File: ANYTHING.dtd</li>
- </ol>
- </li>
- </ol>
- </li>
-</ol>
-
-<p>The chrome.manifest file must include a definition for content for example: <code>content NAME_OF_YOUR_ADDON ./</code></p>
-
-<p>The chrome.manifest file must also include a line pointing to the locale, just like in the above property section, if you had a folder named en-US in locale, the chrome.manifest file should contain: <code>locale NAME_OF_YOUR_ADDON en-US locale/en-US/</code></p>
-
-<p>Here is an example add-on that opens an HTML page and a XUL page on install: <a href="https://github.com/Noitidart/l10n/tree/c456cc82a8a66b6d552cd8c2299cd2babc383af0">GitHub :: l10n-xhtml-xul</a>. Here is an example showing how to use a localized HTML page as an options page: <a href="https://github.com/Noitidart/l10n/tree/html-options">GitHub :: l10n-html-options</a>. You can go to about:config and change the value of the preference <code>general.useragent.locale </code>to <code>en-US</code> and then to <code>en-GB</code> and then reload the open pages to see the localization change.</p>
-
-<h2 id="Leitura_adicional">Leitura adicional</h2>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/Add-ons/How_to_convert_an_overlay_extension_to_restartless">How to convert an overlay extension to restartless</a> a step by step guide. Some code samples are provided. The page is based on and expanded from Dave Garrett's step-by-step guide to <a class="external" href="https://flagfox.wordpress.com/2014/01/19/writing-restartless-addons/">convert an old overlay based extension into a restartless addon</a>.</li>
- <li>Dave Townsend provides a basic code base to <a class="external" href="http://www.oxymoronical.com/blog/2011/01/Playing-with-windows-in-restartless-bootstrapped-extensions">load UI for each opened window</a> in a bootstrapped extension.</li>
- <li>Mark Finkle provides some simple example code for <a class="external" href="http://starkravingfinkle.org/blog/2011/01/bootstrap-jones-adventures-in-restartless-add-ons/">restartless add-ons in mobile Firefox</a>, <a class="external" href="http://starkravingfinkle.org/blog/2011/01/restartless-add-ons-more-resources/">adding resources (like the options window)</a> to bootstrapped extensions and <a class="external" href="http://starkravingfinkle.org/blog/2011/01/restartless-add-ons-%e2%80%93-default-preferences/">using default preferences</a> without a <code>default/preferences/prefs.js</code> file.</li>
- <li>Kris Maglione writes about <a class="external" href="http://maglione-k.users.sourceforge.net/bootstrapped.xhtml">the requirements for the cleanup procedures</a> in bootstrapped extensions.</li>
- <li>Edward Lee shows off some <a class="external" href="http://ed.agadak.net/2011/01/restartless-add-on-example-code">helpful coding patterns and examples</a> you can use in your bootstrapped add-on.</li>
- <li>Documentation for <a href="/en-US/docs/Extensions/Inline_Options">Inline Options</a> in Firefox 7 and later.</li>
-</ul>
diff --git a/files/pt-pt/archive/add-ons/index.html b/files/pt-pt/archive/add-ons/index.html
deleted file mode 100644
index 9c0f942944..0000000000
--- a/files/pt-pt/archive/add-ons/index.html
+++ /dev/null
@@ -1,11 +0,0 @@
----
-title: Add-ons
-slug: Archive/Add-ons
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Add-ons
----
-<p>Archived add-ons documentation.</p>
-
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/pt-pt/archive/add-ons/interaction_between_privileged_and_non-privileged_pages/index.html b/files/pt-pt/archive/add-ons/interaction_between_privileged_and_non-privileged_pages/index.html
deleted file mode 100644
index 3b8723a163..0000000000
--- a/files/pt-pt/archive/add-ons/interaction_between_privileged_and_non-privileged_pages/index.html
+++ /dev/null
@@ -1,375 +0,0 @@
----
-title: Interação entre páginas privilegiadas e não privilegiadas
-slug: Archive/Add-ons/Interaction_between_privileged_and_non-privileged_pages
-tags:
- - Code snippets
- - Extensões
- - Extras
-translation_of: Archive/Add-ons/Interaction_between_privileged_and_non-privileged_pages
----
-<h2 id="Sending_data_from_unprivileged_document_to_chrome" name="Sending_data_from_unprivileged_document_to_chrome">Enviar dados de um documento sem privilégios para o chrome</h2>
-
-<p>An easy way to send data from a web page to an extension is by using custom DOM events. In your extension's browser.xul overlay, write code which listens for a custom DOM event. Here we call the event <code>MyExtensionEvent</code>.</p>
-
-<pre class="brush: js">var myExtension = {
- myListener: function(evt) {
- alert("Received from web page: " +
- evt.target.getAttribute("attribute1") + "/" +
- evt.target.getAttribute("attribute2"));
- }
-}
-document.addEventListener("MyExtensionEvent", function(e) { myExtension.myListener(e); }, false, true);
-// The last value is a Mozilla-specific value to indicate untrusted content is allowed to trigger the event.
-</pre>
-
-<p>The data from the web page (unprivileged code) will be the values of <code>attribute1</code> and <code>attribute2</code>. To trigger the <code>alert()</code> in the listener and pass the data from the web page, write code such as this in the web page:</p>
-
-<pre class="brush: js">var element = document.createElement("MyExtensionDataElement");
-element.setAttribute("attribute1", "foobar");
-element.setAttribute("attribute2", "hello world");
-document.documentElement.appendChild(element);
-
-var evt = document.createEvent("Events");
-evt.initEvent("MyExtensionEvent", true, false);
-element.dispatchEvent(evt);
-</pre>
-
-<p>This code creates an arbitrary element -- <code>&lt;MyExtensionDataElement/&gt;</code> -- and inserts it into the web page's DOM. Values are set for two arbitrary attributes on the element. These can also be named anything you like, but we've chosen <code>attribute1</code> and <code>attribute2</code>. Finally, the code creates and dispatches a custom event named <code>MyExtensionEvent</code> -- similar to the standard DOM <code>click</code> event you catch with <code>onclick</code> handlers. The event bubbles up from the web page and reaches the extension (privileged code) where your listener catches it and reads the attribute values from the DOM element where the event originated.</p>
-
-<p>(To better ensure others do not also implement the same event with a different meaning, one might either attach a namespace to <code>&lt;MyExtensionDataElement/&gt;</code>  and check on the event handler for the correct namespaceURI property, or as per the DOM specification, use initEvent() with an event name that is itself namespaced (XML Name characters only): "It is also strongly recommended that third parties adding their own events use their own prefix to avoid confusion and lessen the probability of conflicts with other new events.")</p>
-
-<p>In the case where your extension's overlay does not interact directly with browser.xul, such as in a <a href="/en-US/docs/Creating_a_Firefox_sidebar" title="/en-US/docs/Creating_a_Firefox_sidebar">sidebar</a>, it might be easier to add the event listener to the top-level document directly as shown below (also see: <a href="/en-US/docs/Working_with_windows_in_chrome_code#Accessing_the_elements_of_the_top-level_document_from_a_child_window" title="/en-US/docs/Working_with_windows_in_chrome_code#Accessing_the_elements_of_the_top-level_document_from_a_child_window">accessing the elements of the top-level document from a child window</a>).</p>
-
-<pre class="brush: js">var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
- .getInterface(Components.interfaces.nsIWebNavigation)
- .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
- .rootTreeItem
- .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
- .getInterface(Components.interfaces.nsIDOMWindow);
-mainWindow.document.addEventListener("MyExtensionEvent", function(e) { myExtension.myListener(e); }, false, true);
-</pre>
-
-<p>If you need to to pass lots of data, consider using CDATA sections instead of the simple attributes on a custom element.</p>
-
-<p>Note: If you're using HTML5's postMessage() to send a message from unprivileged code to privileged code, adding 'true' to the end of your event listener in your privileged chrome code will allow the message to be received.</p>
-
-<p> </p>
-
-<pre class="brush: js" style="font-size: 14px;">document.addEventListener("message", function(e) { yourFunction(e); }, false, true);</pre>
-
-<h2 id="Sending_data_from_chrome_to_unprivileged_document" name="Sending_data_from_chrome_to_unprivileged_document">Enviar dados do chrome para um documento sem privilégios</h2>
-
-<p>To "answer" the web page (e.g., return code), your extension can set an attribute or attach child elements on the event target element (<code>&lt;MyExtensionDataElement/&gt;</code> in this example).</p>
-
-<p>You can optionally clean up the created element, or create it once when the web page loads then re-use it each time.</p>
-
-<p>Another option is to send a return event from the extension to the web page. This can be done using the same principle as the above example.</p>
-
-<p>There is only one extension, but there can be many active web pages. So to trigger the right event on the right page we have to tell the extension which page to call. The information we need for that is contained in evt.target.ownerDocument.</p>
-
-<p>We can extend the above example with some data transfer from the extension to the web page. In the following code sample 2 methods are combined: Setting an extra attribute in the original event target element, and creating a new event message with a new event target element. For this to work we need to define the original target element globally. We need a new event trigger in the web page and some code to show the event message actually arrived. In the extension we have to dispatch an event message to the right web page.</p>
-
-<p>The code containing the callback could look like this:</p>
-
-<p>In the extension:</p>
-
-<pre class="brush: js">var myExtension =
-{
- myListener: function(evt)
- {
- alert("Received from web page: " +
- evt.target.getAttribute("attribute1") + "/" +
- evt.target.getAttribute("attribute2"));
-
-/* the extension answers the page*/
- evt.target.setAttribute("attribute3", "The extension");
-
- var doc = evt.target.ownerDocument;
-
- var AnswerEvt = doc.createElement("MyExtensionAnswer");
- AnswerEvt.setAttribute("Part1", "answers this.");
-
- doc.documentElement.appendChild(AnswerEvt);
-
- var event = doc.createEvent("HTMLEvents");
- event.initEvent("MyAnswerEvent", true, false);
- AnswerEvt.dispatchEvent(event);
- }
-}
-
-document.addEventListener("MyExtensionEvent", function(e) { myExtension.myListener(e); }, false, true);
-// The last value is a Mozilla-specific value to indicate untrusted content is allowed to trigger the event.
-</pre>
-
-<p>In the web page:</p>
-
-<pre class="brush: js">document.addEventListener("MyAnswerEvent",function(e) { ExtensionAnswer(e); },false);
-
-var element;
-
-function CallExtension()
-{
- var element = document.createElement("MyExtensionDataElement");
- element.setAttribute("attribute1", "foobar");
- element.setAttribute("attribute2", "hello world");
- document.documentElement.appendChild(element);
- var evt = document.createEvent("Events");
- evt.initEvent("MyExtensionEvent", true, false);
- element.dispatchEvent(evt);
-}
-
-function ExtensionAnswer(EvtAnswer)
-{
- alert(element.getAttribute("attribute3") + " " +
- EvtAnswer.target.getAttribute("Part1"));
-}
-</pre>
-
-<p>Basic example of similar idea, extension passes information via attributes and fires event on div in page, <a class="external" href="http://forums.mozillazine.org/viewtopic.php?p=3192410#3192410">here</a>.</p>
-
-<h2 id="Chromium-like_messaging_json_request_with_json_callback">Chromium-like messaging: json request with json callback</h2>
-
-<p>Web page:</p>
-
-<pre class="brush: html">&lt;html&gt;
- &lt;head&gt;
- &lt;script&gt;
- var something = {
- send_request: function(data, callback) { // analogue of chrome.extension.sendRequest
- var request = document.createTextNode(JSON.stringify(data));
-
- request.addEventListener("something-response", function(event) {
- request.parentNode.removeChild(request);
-
- if (callback) {
- var response = JSON.parse(request.nodeValue);
- callback(response);
- }
- }, false);
-
- document.head.appendChild(request);
-
- var event = document.createEvent("HTMLEvents");
- event.initEvent("something-query", true, false);
- request.dispatchEvent(event);
- },
-
- callback: function(response) {
- return alert("response: " + (response ? response.toSource() : response));
- }
- }
- &lt;/script&gt;
- &lt;/head&gt;
- &lt;body&gt;
- &lt;button onclick="return something.send_request({foo: 1}, something.callback)"&gt;send {foo: 1} with callback&lt;/button&gt;
- &lt;button onclick="return something.send_request({baz: 3}, something.callback)"&gt;send {baz: 3} with callback&lt;/button&gt;
- &lt;button onclick="return something.send_request({mozilla: 3})"&gt;send {mozilla: 3} without callback&lt;/button&gt;
- &lt;button onclick="return something.send_request({firefox: 4}, something.callback)"&gt;send {firefox: 4} with callback&lt;/button&gt;
- &lt;/body&gt;
-&lt;/html&gt;
-</pre>
-
-<p>Overlay on <code>browser.xul</code> in your extension:</p>
-
-<pre class="brush: js">var something = {
- listen_request: function(callback) { // analogue of chrome.extension.onRequest.addListener
- document.addEventListener("something-query", function(event) {
- var node = event.target;
- if (!node || node.nodeType != Node.TEXT_NODE)
- return;
-
- var doc = node.ownerDocument;
- callback(JSON.parse(node.nodeValue), doc, function(response) {
- node.nodeValue = JSON.stringify(response);
-
- var event = doc.createEvent("HTMLEvents");
- event.initEvent("something-response", true, false);
- return node.dispatchEvent(event);
- });
- }, false, true);
- },
-
- callback: function(request, sender, callback) {
- if (request.foo) {
- return setTimeout(function() {
- callback({bar: 2});
- }, 1000);
- }
-
- if (request.baz) {
- return setTimeout(function() {
- callback({quux: 4});
- }, 3000);
- }
-
- if (request.mozilla) {
- return alert("alert in chrome");
- }
-
- return callback(null);
- }
-}
-
-something.listen_request(something.callback);
-</pre>
-
-<p><a class="external" href="http://code.google.com/chrome/extensions/messaging.html" title="Message Passing in Chromium">Message Passing in Chromium</a></p>
-
-<h2 id="Enviar_dados_estruturados">Enviar dados estruturados</h2>
-
-<p>The above mechanisms use element attributes and are thus only strings. You may want to transfer objects. Gecko prevents chrome to access custom object properties added by the content, because that can create security holes. A workaround is to treat the communication between webpage and chrome as a normal network protocol and use XML.</p>
-
-<p>With element attributes and <a href="/en-US/docs/E4X" title="/en-US/docs/E4X">E4X</a>, this is fairly easy. You do need to convert your data to/from E4X objects, though. And your chrome needs to carefully check every value passed (you need to do that either way).</p>
-
-<pre class="brush: js">var targetDoc = null;
-
-function onLoad() {
-  var iframe = document.getElementById("contentiframe");
-  targetDoc = iframe.contentDocument;
-  iframe.contentWindow.addEventListener("newStuff", receiveStuffFromPage, false);
-}
-
-function receiveStuffFromPage(event) {
- var uc = getEventData(event); // uc = unchecked data in form of E4X XML
- var stuff = {};
- stuff.id = sanitize.integer(uc.@id);
- stuff.name = sanitize.label(uc.@name);
-}
-
-function sendSomethingToPage (something) {
- var somethingXML = &lt;something/&gt;; // |something| object as E4X XML
- somethingXML.@id = something.id;
- somethingXML.@weight = something.weight;
- sendMsg("sendSomething", somethingXML);
-}
-
-/**
- * Send msgs from chrome to the page
- * @param type {String} the event type. The receiver needs to use that
- * when doing addEventListener(type, ...)
- * @param dataXML {E4X} the data or detail
- */
-function sendMsg(type, dataXML) {
- var el = targetDoc.body;
- el.setAttribute("eventDataToPage", dataXML ? dataXML.toString() : "");
- var event = targetDoc.createEvent("Event")
- event.initEvent(type, true, true);
- el.dispatchEvent(event);
-}
-
-/**
- * Verifies that the event is indeed coming from our page
- * as expected, and returns the data for that event.
- * @returns {E4X} the (unchecked) detail data from the page.
- * You must check the data.
- * @see &lt;https://developer.mozilla.org/en-US/docs/Code_snippets/
- * Interaction_between_privileged_and_non-privileged_pages#Security_notes&gt;
- */
-function getEventData(event) {
- if (event.target.ownerDocument != targetDoc)
- throw "event from unexpected source";
- return new XML(event.target.getAttribute("eventDataFromPage"));
-}
-</pre>
-
-<h2 id="Security_notes" name="Security_notes">Notas de segurança</h2>
-
-<ul>
- <li>Never invoke the web page's JavaScript functions from your extension - doing this increases the chance of creating a security hole, where a malicious web page can trick the browser to run its code with extended privileges (just like your extension) with, for example, the ability to delete local files.</li>
- <li>It is highly recommended to check the source of the event (via <code>event.target.ownerDocument.location</code>) and make your extension ignore any events from pages not from your server.</li>
-</ul>
-
-<h2 id="Resources" name="Resources">Recursos</h2>
-
-<p><a class="external" href="http://forums.mozillazine.org/viewtopic.php?p=2955601">Fórum de Discussão de Mozillazine</a></p>
-
-<p><a href="/pt-PT/docs/Communication_between_HTML_and_your_extension" title="/en-US/docs/Communication between HTML and your extension">Comunicação entre HTML e a sua extensão</a></p>
-
-<h2 id="Consulte_também">Consulte também</h2>
-
-<ul>
- <li><a href="/en-US/docs/Web/API/CustomEvent" title="/en-US/docs/Web/API/CustomEvent">CustomEvent</a></li>
- <li><a href="/en-US/docs/Web/API/window.postMessage" title="/en-US/docs/Web/API/window.postMessage">Window.postMessage</a></li>
- <li><a class="external" href="http://hyperstruct.net/2006/08/18/exchanging-data-between-chrome-and-content/" title="http://hyperstruct.net/2006/08/18/exchanging-data-between-chrome-and-content/">http://hyperstruct.net/2006/08/18/exchanging-data-between-chrome-and-content/</a></li>
-</ul>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody>
- <tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody>
- <tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/add-ons/trabalhar_com_multiprocessos_firefox/index.html b/files/pt-pt/archive/add-ons/trabalhar_com_multiprocessos_firefox/index.html
deleted file mode 100644
index ce794196ea..0000000000
--- a/files/pt-pt/archive/add-ons/trabalhar_com_multiprocessos_firefox/index.html
+++ /dev/null
@@ -1,286 +0,0 @@
----
-title: Trabalhar com multiprocessos do Firefox
-slug: Archive/Add-ons/Trabalhar_com_multiprocessos_Firefox
-translation_of: Archive/Add-ons/Working_with_multiprocess_Firefox
----
-<div>
-<section class="Quick_links" id="Quick_Links">
-<ol>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions"><strong>Entensões de navegador</strong></a></li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Começar">Começar</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/What_are_WebExtensions">What are extensions?</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Your_first_WebExtension">Your first extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Your_second_WebExtension">Your second extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension">Anatomy of an extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Examples">Example extensions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/What_next_">What next?</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Conceitos">Conceitos</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Using_the_JavaScript_APIs">Using the JavaScript APIs</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Content_scripts">Content scripts</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">Match patterns</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Working_with_files">Working with files</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Internationalization">Internationalization</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Security_best_practices">Security best practices</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Content_Security_Policy">Content Security Policy</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging">Native messaging</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Interface_do_utilizador">Interface do utilizador</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface">User Interface</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Browser_action">Toolbar button</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Page_actions">Address bar button</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Sidebars">Sidebars</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items">Context menu items</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Options_pages">Options page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages">Extension pages</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Notifications">Notifications</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Omnibox">Address bar suggestions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels">Developer tools panels</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Como...">Como...</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests">Intercept HTTP requests</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Modify_a_web_page">Modify a web page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Safely_inserting_external_content_into_a_page">Insert external content</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar">Add a button to the toolbar</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Implement_a_settings_page">Implement a settings page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Working_with_the_Tabs_API">Work with the Tabs API</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Work_with_the_Bookmarks_API">Work with the Bookmarks API</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Work_with_the_Cookies_API">Work with the Cookies API</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Work_with_contextual_identities">Work with contextual identities</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Porting">Porting</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Porting_a_Google_Chrome_extension">Porting a Google Chrome extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Porting_a_legacy_Firefox_add-on">Porting a legacy Firefox extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Embedded_WebExtensions">Embedded WebExtensions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_the_Add-on_SDK">Comparison with the Add-on SDK</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_XUL_XPCOM_extensions">Comparison with XUL/XPCOM extensions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities">Chrome incompatibilities</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Differences_between_desktop_and_Android">Differences between desktop and Android</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions#Fluxo_de_trabalho_do_Firefox">Fluxo de trabalho do Firefox</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/User_experience_best_practices">User Experience</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Temporary_Installation_in_Firefox">Temporary Installation in Firefox</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Debugging">Debugging</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Testing_persistent_and_restart_features">Testing persistent and restart features</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Firefox_for_Android">Developing for Firefox for Android</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Getting_started_with_web-ext">Getting started with web-ext</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/web-ext_command_reference">web-ext command reference</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/WebExtensions_and_the_Add-on_ID">Extensions and the Add-on ID</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Request_the_right_permissions">Request the right permissions</a></li>
- </ol>
- </li>
- <li data-default-state="closed"><a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions/API">APIs de JavaScript</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs">Browser support for JavaScript APIs</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/alarms">alarms</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/bookmarks">bookmarks</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserAction">browserAction</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserSettings">browserSettings</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browsingData">browsingData</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/clipboard">clipboard</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/commands">commands</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/contentScripts">contentScripts</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/contextualIdentities">contextualIdentities</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/cookies">cookies</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow">devtools.inspectedWindow</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/devtools.network">devtools.network</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/devtools.panels">devtools.panels</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/dns">dns</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/downloads">downloads</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/events">events</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/extension">extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/extensionTypes">extensionTypes</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/find">find</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/history">history</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/i18n">i18n</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/identity">identity</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/idle">idle</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/management">management</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/menus">menus</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/notifications">notifications</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/omnibox">omnibox</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/pageAction">pageAction</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/permissions">permissions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/pkcs11">pkcs11</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/privacy">privacy</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/proxy">proxy</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime">runtime</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/search">search</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/sessions">sessions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/sidebarAction">sidebarAction</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/storage">storage</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs">tabs</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/theme">theme</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/topSites">topSites</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/types">types</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webNavigation">webNavigation</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest">webRequest</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/windows">windows</a></li>
- </ol>
- </li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">Manifest keys</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/applications">applications</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/author">author</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/background">background</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_action">browser_action</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides">chrome_settings_overrides</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/chrome_url_overrides">chrome_url_overrides</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/commands">commands</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy">content_security_policy</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/default_locale">default_locale</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/description">description</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/developer">developer</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page">devtools_page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/homepage_url">homepage_url</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/icons">icons</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/incognito">incognito</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version">manifest_version</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/name">name</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/omnibox">omnibox</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/options_ui">options_ui</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/page_action">page_action</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permissions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers">protocol_handlers</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/short_name">short_name</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">theme</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/version">version</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/version_name">version_name</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/web_accessible_resources">web_accessible_resources</a></li>
- </ol>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons/Themes"><strong>Temas</strong></a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Themes/Theme_concepts">Browser themes</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Themes/Theme_concepts">Browser theme concepts</a></li>
- </ol>
- </li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Themes/Lightweight_themes">Lightweight themes</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Themes/Lightweight_themes">Lightweight themes</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Themes/Lightweight_Themes/FAQ">Lightweight themes FAQ</a></li>
- </ol>
- </li>
- <li><strong><a href="/pt-PT/docs/Mozilla/Add-ons/Distribuicao">Publicação e Distribuição</a></strong></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Distribution">Publishing add-ons</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Distribution">Signing and distribution overview</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Package_your_extension_">Package your extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Distribution/Submitting_an_add-on">Submit an add-on</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Source_Code_Submission">Source code submission</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Distribution/Resources_for_publishers">Resources for publishers</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Listing">Creating an appealing listing</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/AMO/Policy/Reviews">Review policies</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/AMO/Policy/Agreement">Developer agreement</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/AMO/Policy/Featured">Featured add-ons</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Distribution/Retiring_your_extension">Retiring your extension</a></li>
- </ol>
- </li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Alternative_distribution_options">Distributing add-ons</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Alternative_distribution_options/Sideloading_add-ons">For sideloading</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Alternative_distribution_options/Add-ons_for_desktop_apps">For desktop apps</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Alternative_distribution_options/Add-ons_in_the_enterprise">For an enterprise</a></li>
- </ol>
- </li>
- <li><strong><a href="https://discourse.mozilla.org/c/add-ons">Comunidade e Suporte</a> (inglês)</strong></li>
- <li><a href="#">Channels</a>
- <ol>
- <li><a href="https://blog.mozilla.org/addons">Add-ons blog</a></li>
- <li><a href="https://discourse.mozilla.org/c/add-ons">Add-on forums</a></li>
- <li><a href="http://stackoverflow.com/questions/tagged/firefox-addon">Stack Overflow</a></li>
- <li><a href="/pt-PT/docs/Mozilla/Add-ons#Contacte-nos">Contacte-nos</a></li>
- </ol>
- </li>
-</ol>
-</section>
-
-<div class="warning">
-<p>Add-ons using the techniques described in this document are considered a legacy technology in Firefox. Don't use these techniques to develop new add-ons. Use <a href="/en-US/Add-ons/WebExtensions">WebExtensions</a> instead. If you maintain an add-on which uses the techniques described here, consider migrating it to use WebExtensions.</p>
-
-<p><strong>Starting from <a href="https://wiki.mozilla.org/RapidRelease/Calendar">Firefox 53</a>, no new legacy add-ons will be accepted on addons.mozilla.org (AMO) for desktop Firefox and Firefox for Android.</strong></p>
-
-<p><strong>Starting from <a href="https://wiki.mozilla.org/RapidRelease/Calendar">Firefox 57</a>, only extensions developed using WebExtensions APIs will be supported on Desktop Firefox and Firefox for Android. </strong></p>
-
-<p>Even before Firefox 57, changes coming up in the Firefox platform will break many legacy extensions. These changes include multiprocess Firefox (e10s), sandboxing, and multiple content processes. Legacy extensions that are affected by these changes should migrate to use WebExtensions APIs if they can. See the <a href="https://blog.mozilla.org/addons/2017/02/16/the-road-to-firefox-57-compatibility-milestones/">"Compatibility Milestones" document</a> for more information.</p>
-
-<p>A wiki page containing <a href="https://wiki.mozilla.org/Add-ons/developer/communication">resources, migration paths, office hours, and more</a>, is available to help developers transition to the new technologies.</p>
-</div>
-</div>
-
-<div class="summary">
-<p>This article explains how an add-on developer can check whether their add-on is compatible with multiprocess Firefox, and if it isn't, how to fix it.</p>
-</div>
-
-<p>In older versions of Firefox, chrome code (including code inserted by extensions) and content run in the same operating system process. So extensions can access content directly:</p>
-
-<pre class="brush: js">gBrowser.selectedBrowser.contentDocument.body.innerHTML = "replaced by chrome code";</pre>
-
-<p>However, in multiprocess Firefox (also called Electrolysis or E10S), the extension's code will run in a different process from content, and this kind of direct access will no longer be possible.</p>
-
-<h2 id="Checking_whether_you're_affected">Checking whether you're affected</h2>
-
-<p>As a rule, you <strong>won't be affected</strong> if:</p>
-
-<ul>
- <li>you use the <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions">WebExtension API</a></li>
- <li>you only use the Add-on SDK's <a href="/en-US/Add-ons/SDK/High-Level_APIs">high-level APIs</a></li>
- <li>you don't access web content at all</li>
- <li>you load XUL content into tabs via chrome: URLs</li>
-</ul>
-
-<p>You <strong>will be affected</strong> if:</p>
-
-<ul>
- <li>you access web content directly using an <a href="/en-US/Add-ons/Overlay_Extensions">overlay extension</a>, a <a href="/en-US/Add-ons/Bootstrapped_extensions">bootstrapped extension</a>, or <a href="/en-US/Add-ons/SDK/Low-Level_APIs">low-level SDK APIs</a> like <a href="/en-US/Add-ons/SDK/Low-Level_APIs/window_utils">window/utils</a> or <a href="/en-US/Add-ons/SDK/Low-Level_APIs/tabs_utils">tabs/utils</a></li>
-</ul>
-
-<p>For more details, see the article on <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts">Limitations of chrome scripts</a>, which lists patterns that will no longer work in the chrome process.</p>
-
-<h3 id="Testes">Testes</h3>
-
-<p>In multiprocess Firefox, add-ons can run in two different modes: either with <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#Compatibility_shims">compatibility shims</a> or without them. Add-ons are more likely to work with compatibility shims, but they will run much more slowly if they access web content often. Shims will be removed six months after multiprocess Firefox is released to users, so developers should avoid shims if possible.</p>
-
-<p><strong>Testing if your add-on works with shims: </strong>Make sure you're running <a href="https://nightly.mozilla.org/">Firefox Nightly</a>, in which multiprocess support is enabled by default. To verify that multiple process are being used, visit about:support and confirm that the "Multiprocess Windows" row contains "default: true". (If you see a different value, open Firefox preferences and check "Enable multi-process Nightly" in the General pane.) Now install your add-on and test that all features work. If you're testing an unsigned version of your extension, make sure you <a href="https://wiki.mozilla.org/Addons/Extension_Signing">turn signing enforcement off</a>.</p>
-
-<p><strong>Testing if your add-on works <em>without</em> shims:</strong> As before, make sure you're running <a href="https://nightly.mozilla.org/">Firefox Nightly</a> with multiple processes enabled. Next, add a new property to your extension's <a href="/en-US/Add-ons/Install_Manifests">install.rdf</a> named <code>multiprocessCompatible</code>, with a value of <code>true</code>. Now install your add-on and test that all features work.</p>
-
-<p>The rest of this document explains how to make broken add-ons work in multiprocess Firefox without using shims.</p>
-
-<h2 id="Adaptação_ao_Múltiplos_Processos">Adaptação ao Múltiplos Processos</h2>
-
-<p>If your add-on is not multiprocess-compatible, the best solution is to rewrite your add-on as a <a href="/en-US/Add-ons/WebExtensions">WebExtension</a>. WebExtensions APIs are compatible with multiprocess Firefox. WebExtensions are the future of Firefox add-ons: other types of add-on, including <a href="/en-US/Add-ons/Overlay_Extensions">XUL overlay add-ons</a>, <a href="/en-US/Add-ons/Bootstrapped_extensions">bootstrapped add-ons</a>, and <a href="/en-US/Add-ons/SDK">SDK add-ons</a>, are now considered deprecated. From version 57, Firefox will no longer load such add-ons.</p>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_the_Add-on_SDK">See a feature comparison between WebExtensions and the SDK.</a></li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_XUL_XPCOM_extensions">See a feature comparison between WebExtensions and XUL overlay/bootstrapped add-ons.</a></li>
-</ul>
-
-<p>Note that WebExtensions don't give you all the same features that legacy add-ons do. However we are open to extending the WebExtension APIs to support the needs of add-on developers, so if you have ideas, we'd love to hear them. You can reach the WebExtensions team on the <a class="external-icon external" href="https://mail.mozilla.org/listinfo/dev-addons">dev-addons mailing list</a> or <a href="irc://irc.mozilla.org/webextensions">#webextensions</a> on <a class="external-icon external" href="https://wiki.mozilla.org/IRC">IRC</a>.</p>
-
-<p>If you can't port to WebExtensions yet, the Add-on SDK's <a href="/en-US/Add-ons/SDK/High-Level_APIs">high-level APIs</a> are the next best choice. But note that this is not a future-proof solution, since SDK add-ons will not be supported from Firefox 57 onwards.</p>
-
-<p>The last option is to use the message manager to communicate with the content process. The message manager can be used from the Add-on SDK or from overlay or bootstrapped add-ons.</p>
-
-<ul>
- <li><a href="/en-US/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK">See how to use the message manager from the SDK.</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/Working_with_multiprocess_Firefox/Using_the_message_manager_from_Firefox_extensions">See how to use the message manager from overlay or bootstrapped add-ons.</a></li>
-</ul>
-
-<p>Again, note that this is not a future-proof solution, since SDK, overlay, and bootstrapped add-ons will not be supported from Firefox 57 onwards.</p>
-
-<p>If you need help, please contact us in the <code>#addons</code> channel at <a class="external text" href="https://wiki.mozilla.org/IRC" rel="nofollow">irc.mozilla.org</a>. We're here to help!</p>
diff --git a/files/pt-pt/archive/apps/ferramentas_e_frameworks/index.html b/files/pt-pt/archive/apps/ferramentas_e_frameworks/index.html
deleted file mode 100644
index 46face0a4a..0000000000
--- a/files/pt-pt/archive/apps/ferramentas_e_frameworks/index.html
+++ /dev/null
@@ -1,45 +0,0 @@
----
-title: Ferramentas e frameworks
-slug: Archive/Apps/Ferramentas_e_frameworks
-tags:
- - Aplicações
- - Bibliotecas
- - Ferramentas
- - Firefox OS
- - Frameworks
- - Ritmos de Trabalho
-translation_of: Archive/Apps/Tools_and_frameworks
----
-<div>
-<p>This part of the App Center provides guides to using tools, frameworks and libraries to speed up Open Web App development — Brick, app templates, X-Tag, and Firefox OS Cordova support.</p>
-</div>
-
-<div class="row topicpage-table">
-<div class="section">
-<h2 id="Componentes_e_modelos">Componentes e modelos</h2>
-
-<dl dir="ltr">
- <dt><a href="/en-US/Apps/Tools_and_frameworks/Web_components">Web components and Mozilla Brick </a></dt>
- <dd>Mozilla Brick is a Web component library, based on the X-Tag library, which allows easy usage of custom elements.</dd>
- <dt><a href="/en-US/Apps/Tools_and_frameworks/App_templates">Utilização de modelos de aplicaçãoes</a></dt>
- <dd>To help you get going with app development as quickly as possible, there are some template apps you can use as a basis for your own apps. This guide provides information on those templates, how to get them, and how to work with them.</dd>
- <dt><a href="/en-US/Apps/Tools_and_frameworks/x-tags">X-Tag</a></dt>
- <dd>X-Tag and the Web components specification family provide a means for us to define custom elements that will dealt with as first class citizens by the browser, rather than as an inefficient afterthought. This guide explains how they work.</dd>
- <dt><a href="/en-US/Apps/Tools_and_frameworks/Custom_elements">Elementos personalizados</a></dt>
- <dd>This article describes some of the most useful custom elements available inside Mozilla's X-Tag library.</dd>
-</dl>
-</div>
-
-<div class="section">
-<h2 id="Aplicações_de_plataforma_cruzada_e_ferramentas_de_criação">Aplicações de plataforma cruzada e ferramentas de criação</h2>
-
-<dl>
- <dt><a href="/en-US/Apps/Tools_and_frameworks/Cordova_support_for_Firefox_OS">Cordova support for Firefox OS</a></dt>
- <dd>This article provides a basic introduction to Apache Cordova and explains how to use it to generate an Open Web App for installation on Firefox OS.</dd>
- <dt><a href="/en-US/Apps/Tools_and_frameworks/Cordova_Firefox_OS_plugin_reference">Cordova Firefox OS plugin reference</a></dt>
- <dd>Reference showing sample code and examples for the Cordova plugins that currently support Firefox OS.</dd>
-</dl>
-</div>
-</div>
-
-<p> </p>
diff --git a/files/pt-pt/archive/apps/index.html b/files/pt-pt/archive/apps/index.html
deleted file mode 100644
index 41b0a9c452..0000000000
--- a/files/pt-pt/archive/apps/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Apps
-slug: Archive/Apps
-tags:
- - Apps
- - Firefox OS
- - NeedsTranslation
- - TopicStub
- - Web
-translation_of: Archive/Apps
----
-<p class="summary">This page includes archived content for Apps, including obsolete web app content, Firefox OS app-related content, and so forth.</p>
-
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/pt-pt/archive/b2g_os/api/camera_api/index.html b/files/pt-pt/archive/b2g_os/api/camera_api/index.html
deleted file mode 100644
index 435465c622..0000000000
--- a/files/pt-pt/archive/b2g_os/api/camera_api/index.html
+++ /dev/null
@@ -1,38 +0,0 @@
----
-title: Camera API
-slug: Archive/B2G_OS/API/Camera_API
-tags:
- - API
- - Firefox OS
- - Graphics
- - NeedsTranslation
- - Reference
- - Référence(2)
- - TopicStub
- - WebAPI
- - camera
-translation_of: Archive/B2G_OS/API/Camera_API
----
-<p></p><section class="Quick_links" id="Quick_Links"><ol><li><strong><a href="/en-US/docs/Web/API/Camera_API">Camera API</a></strong></li><li data-default-state="open"><a href="#"><strong>Interfaces</strong></a><ol><li><a href="/en-US/docs/Web/API/CameraCapabilities"><code>CameraCapabilities</code></a></li><li><a href="/en-US/docs/Web/API/CameraControl"><code>CameraControl</code></a></li><li><a href="/en-US/docs/Web/API/CameraManager"><code>CameraManager</code></a></li></ol></li><li data-default-state="open"><a href="#"><strong>Methods</strong></a><ol><li><a href="/en-US/docs/Web/API/Navigator/mozCameras"><code>Navigator.mozCameras</code></a></li></ol></li></ol></section><p></p>
-
-<p></p><div class="overheadIndicator nonStandard nonStandardHeader">
- <p><strong><span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span> Non-standard</strong><br>
- This feature is not on a current W3C standards track, but it is supported on the Firefox OS platform. Although implementations may change in the future and it is not supported widely across browsers, it is suitable for use in code dedicated to Firefox OS apps.</p>
- </div><p></p>
-
-<p>The <strong>Camera API</strong> allows applications to manage the camera of the device. It allows them to take photographs, record videos, and get information like the focus, the zoom, the white balance, the flash, … It is a priviledged API and can only be used by certified applications.</p>
-
-<p>This API was initially only available to certified applications, but is available to privileged apps on Firefox 2.0 onwards.</p>
-
-<div class="note">
-<p><strong>Note:</strong> Except if you are implementing a replacement for the default <em>Camera</em> application, you shouldn't use this API. Instead, if you want to use the camera in your device, you should use the <a href="/en-US/docs/WebAPI/Web_Activities" title="/en-US/docs/Web/API/Web_Activities">Web Activities API</a>.</p>
-</div>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="/en-US/docs/Web/API/Navigator/mozCameras" title="The documentation about this has not yet been written; please consider contributing!"><code>navigator.mozCameras</code></a></li>
- <li><a href="/en-US/docs/Web/API/CameraManager" title="The documentation about this has not yet been written; please consider contributing!"><code>CameraManager</code></a></li>
- <li><a href="/en-US/docs/Web/API/CameraControl" title="The documentation about this has not yet been written; please consider contributing!"><code>CameraControl</code></a></li>
- <li><a href="/en-US/docs/Web/API/CameraCapabilities" title="The documentation about this has not yet been written; please consider contributing!"><code>CameraCapabilities</code></a></li>
-</ul>
diff --git a/files/pt-pt/archive/b2g_os/api/camera_api/introducao/index.html b/files/pt-pt/archive/b2g_os/api/camera_api/introducao/index.html
deleted file mode 100644
index d64e05da53..0000000000
--- a/files/pt-pt/archive/b2g_os/api/camera_api/introducao/index.html
+++ /dev/null
@@ -1,178 +0,0 @@
----
-title: Introdução à API de Câmara
-slug: Archive/B2G_OS/API/Camera_API/Introducao
-tags:
- - API da Web
- - API de Câmara
- - Intermediário
- - Multimedia
- - Precisa de Atualização
- - Referencia DOM Gecko
- - cámara
-translation_of: Archive/B2G_OS/API/Camera_API/Introduction
----
-<p> </p>
-
-<section class="Quick_links" id="Quick_Links">
-<ol>
- <li><strong><a href="/en-US/docs/Web/API/Camera_API">API de Câmara</a></strong></li>
- <li data-default-state="open"><a href="#"><strong>Interfaces</strong></a>
- <ol>
- <li><a href="/en-US/docs/Web/API/CameraCapabilities"><code>CameraCapabilities</code></a></li>
- <li><a href="/en-US/docs/Web/API/CameraControl"><code>CameraControl</code></a></li>
- <li><a href="/en-US/docs/Web/API/CameraManager"><code>CameraManager</code></a></li>
- </ol>
- </li>
- <li data-default-state="open"><a href="#"><strong>Métodos</strong></a>
- <ol>
- <li><a href="/en-US/docs/Web/API/Navigator/mozCameras"><code>Navigator.mozCameras</code></a></li>
- </ol>
- </li>
-</ol>
-</section>
-
-<p> </p>
-
-<p><span class="seoSummary">Through the <a href="/en-US/docs/Web/API/Camera_API">Camera API</a>, it is possible to take pictures with your device's camera and upload them into the current web page.</span> This is achieved through an <code>input</code> element with <code>type="file"</code> and an <code>accept</code> attribute to declare that it accepts images. The HTML looks like this:</p>
-
-<pre class="brush: html">&lt;input type="file" id="take-picture" accept="image/*"&gt;
-</pre>
-
-<p>When users choose to activate this HTML element, they are presented with an option to choose a file, where the device's camera is one of the options. If they select the camera, it goes into picture taking mode. After the picture has been taken, the user is presented with a choice to accept or discard it. If accepted, it gets sent to the <code>&lt;input type="file"&gt;</code> element and its <code>onchange</code> event is triggered.</p>
-
-<h2 id="Get_a_reference_to_the_taken_picture">Get a reference to the taken picture</h2>
-
-<p>With the help of the <a href="/en-US/docs/Using_files_from_web_applications">File API</a> you can then access the taken picture or chosen file:</p>
-
-<pre class="brush: js">var takePicture = document.querySelector("#take-picture");
-takePicture.onchange = function (event) {
- // Get a reference to the taken picture or chosen file
- var files = event.target.files,
- file;
- if (files &amp;&amp; files.length &gt; 0) {
- file = files[0];
- }
-};
-</pre>
-
-<h2 id="Presenting_the_picture_in_the_web_page">Presenting the picture in the web page</h2>
-
-<p>Once you have a reference to the taken picture (i.e., file), you can then use <a href="/en-US/docs/Web/API/Window/URL/createObjectURL" title="The URL.createObjectURL() static method creates a DOMString containing an URL representing the object given in parameter. The URL lifetime is tied to the document in the window on which it was created. The new object URL represents the specified File object or Blob object."><code>window.URL.createObjectURL()</code></a> to create a URL referencing the picture and setting it as the <code>src</code> of an image:</p>
-
-<pre class="brush: js">// Image reference
-var showPicture = document.querySelector("#show-picture");
-
-// Create ObjectURL
-var imgURL = window.URL.createObjectURL(file);
-
-// Set img src to ObjectURL
-showPicture.src = imgURL;
-
-// For performance reasons, revoke used ObjectURLs
-URL.revokeObjectURL(imgURL);
-</pre>
-
-<p>If <code>createObjectURL()</code> isn't supported, an alternative is to fallback to <a href="/en-US/docs/Web/API/FileReader" title="The FileReader object lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read."><code>FileReader</code></a>:</p>
-
-<pre class="brush: js">// Fallback if createObjectURL is not supported
-var fileReader = new FileReader();
-fileReader.onload = function (event) {
- showPicture.src = event.target.result;
-};
-fileReader.readAsDataURL(file);
-</pre>
-
-<h2 id="Complete_example">Complete example</h2>
-
-<p>If you want to see it in action, take a look at the <a class="external" href="http://robnyman.github.com/camera-api/">complete working Camera API example</a>.</p>
-
-<p>Here is the code used for that demo:</p>
-
-<h3 id="HTML_page">HTML page</h3>
-
-<pre class="brush: html">&lt;!DOCTYPE html&gt;
-&lt;html&gt;
- &lt;head&gt;
- &lt;meta charset="utf-8"&gt;
- &lt;title&gt;Camera API&lt;/title&gt;
- &lt;link rel="stylesheet" href="css/base.css" type="text/css" media="screen"&gt;
- &lt;/head&gt;
-
- &lt;body&gt;
-
- &lt;div class="container"&gt;
- &lt;h1&gt;Camera API&lt;/h1&gt;
-
- &lt;section class="main-content"&gt;
- &lt;p&gt;A demo of the Camera API, currently implemented in Firefox and Google Chrome on Android. Choose to take a picture with your device's camera and a preview will be shown through createObjectURL or a FileReader object (choosing local files supported too).&lt;/p&gt;
-
- &lt;p&gt;
- &lt;input type="file" id="take-picture" accept="image/*"&gt;
- &lt;/p&gt;
-
- &lt;h2&gt;Preview:&lt;/h2&gt;
- &lt;p&gt;
- &lt;img src="about:blank" alt="" id="show-picture"&gt;
- &lt;/p&gt;
-
- &lt;p id="error"&gt;&lt;/p&gt;
-
- &lt;/section&gt;
-
- &lt;p class="footer"&gt;All the code is available in the &lt;a href="https://github.com/robnyman/robnyman.github.com/tree/master/camera-api"&gt;Camera API repository on GitHub&lt;/a&gt;.&lt;/p&gt;
- &lt;/div&gt;
-
-
- &lt;script src="js/base.js"&gt;&lt;/script&gt;
-
-
- &lt;/body&gt;
-&lt;/html&gt;
-</pre>
-
-<h3 id="JavaScript_file">JavaScript file</h3>
-
-<pre class="brush: js">(function () {
- var takePicture = document.querySelector("#take-picture"),
- showPicture = document.querySelector("#show-picture");
-
- if (takePicture &amp;&amp; showPicture) {
- // Set events
- takePicture.onchange = function (event) {
- // Get a reference to the taken picture or chosen file
- var files = event.target.files,
- file;
- if (files &amp;&amp; files.length &gt; 0) {
- file = files[0];
- try {
- // Create ObjectURL
- var imgURL = window.URL.createObjectURL(file);
-
- // Set img src to ObjectURL
- showPicture.src = imgURL;
-
- // Revoke ObjectURL
- URL.revokeObjectURL(imgURL);
- }
- catch (e) {
- try {
- // Fallback if createObjectURL is not supported
- var fileReader = new FileReader();
- fileReader.onload = function (event) {
- showPicture.src = event.target.result;
- };
- fileReader.readAsDataURL(file);
- }
- catch (e) {
- //
- var error = document.querySelector("#error");
- if (error) {
- error.innerHTML = "Neither createObjectURL or FileReader are supported";
- }
- }
- }
- }
- };
- }
-})();
-</pre>
diff --git a/files/pt-pt/archive/b2g_os/api/index.html b/files/pt-pt/archive/b2g_os/api/index.html
deleted file mode 100644
index 706080ff54..0000000000
--- a/files/pt-pt/archive/b2g_os/api/index.html
+++ /dev/null
@@ -1,156 +0,0 @@
----
-title: B2G OS APIs
-slug: Archive/B2G_OS/API
-tags:
- - API
- - B2G API
- - NeedsTranslation
- - TopicStub
- - b2g os api's
-translation_of: Archive/B2G_OS/API
----
-<p id="B2G_OS_uses_standard_Web_API's">List of B2G OS APIs </p>
-
-<p></p><div class="index">
-<span>A</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/AudioChannelManager" title="The AudioChannelManager interface of the AudioChannels API includes features for managing your device's audio channels, including setting what channel's volume to affect when the volume buttons are pressed inside a particular app."><code>AudioChannelManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>B</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothAdapter" title="The BluetoothAdapter interface of the Web Bluetooth API is used to handle all the operations requested by Bluetooth networks. A Bluetooth adapter is the physical interface which is used to interact with local Bluetooth device."><code>BluetoothAdapter</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothAdapterEvent" title="The BluetoothAdapterEvent interface of the Web Bluetooth API provides access to a BluetoothAdapter object and its address as the parameter of a adapteradded or adapterremoved event handler (see BluetoothManager.onadapteradded and BluetoothManager.onadapterremoved), when fired."><code>BluetoothAdapterEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothAttributeEvent" title="The BluetoothAttributeEvent interface of the Web Bluetooth API provides access to changed attributes and their new values as the parameter of attributechanged event handlers (including BluetoothManager.onattributechanged, BluetoothAdapter.onattributechanged, and BluetoothDevice.onattributechanged), when fired."><code>BluetoothAttributeEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothClassOfDevice" title="The BluetoothClassOfDevice interface of the Web Bluetooth API provides identifying/classification information about a given remote Bluetooth device, available at discovery stage."><code>BluetoothClassOfDevice</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothDevice" title="The BluetoothDevice interface of the Web Bluetooth API provides information regarding a given Bluetooth device."><code>BluetoothDevice</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothDeviceEvent" title="The BluetoothDeviceEvent interface of the Web Bluetooth API provides access to a found/paired device (BluetoothDevice) object or the address or an unpaired device as the parameter of a devicefound, devicepaired or deviceunpaired event handler (see BluetoothDiscoveryHandle.ondevicefound, BluetoothAdapter.ondevicepaired, and BluetoothAdapter.ondeviceunpaired), when fired."><code>BluetoothDeviceEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothDiscoveryHandle" title="The BluetoothDiscoveryHandle interface of the Web Bluetooth API is used to notify the current application about the discovery of a remote bluetooth device."><code>BluetoothDiscoveryHandle</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGatt" title="The BluetoothGatt interface of the Web Bluetooth API handles initial communications and connections with Gatt services."><code>BluetoothGatt</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGattCharacteristic" title="The BluetoothGattCharacteristic interface of the Web Bluetooth API represents a GATT service characteristic, which includes characteristic definition, value, properties and configuration info, and a list of descriptors that provide related information."><code>BluetoothGattCharacteristic</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGattCharacteristicEvent" title="The BluetoothGattCharacteristicEvent interface of the Web Bluetooth API provides access to an updated BluetoothGattCharacteristic object as the parameter of the BluetoothGatt.oncharacteristicchanged, handler, when the characteristicchanged event is fired."><code>BluetoothGattCharacteristicEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGattDescriptor" title="The BluetoothGattDescriptor interface of the Web Bluetooth API represents a GATT descriptor, which contains related information about a characteristic value."><code>BluetoothGattDescriptor</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGattServer" title="The BluetoothGattServer interface of the Web Bluetooth API provides Bluetooth GATT server functionality to allow creation of Bluetooth Smart/LE services and characteristics."><code>BluetoothGattServer</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothGattService" title="The BluetoothGattService interface of the Web Bluetooth API represents a service provided by a GATT server, including the service definition, a list of referenced services, and a list of the characteristics of this service."><code>BluetoothGattService</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothLeDeviceEvent" title="The BluetoothLeDeviceEvent interface of the Web Bluetooth API provides access to an LE device BluetoothDevice object and its RSSI value and advertisement record, as the parameter of a devicefound event handler (see BluetoothDiscoveryHandle.ondevicefound), when fired."><code>BluetoothLeDeviceEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothManager" title="The BluetoothManager interface of the Web Bluetooth API allows to access all Bluetooth adapters available on the device. Adapters are the connection interface to connect a Bluetooth device to that device."><code>BluetoothManager</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothPairingEvent" title="The BluetoothPairingEvent interface of the Web Bluetooth API provides access to a device's name and the BluetoothPairingHandle object required for pairing devices as the parameter of pairing-related handlers (for example including BluetoothPairingListener.ondisplaypasskeyreq and BluetoothPairingListener.onenterpincodereq), when fired."><code>BluetoothPairingEvent</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothPairingHandle" title="The BluetoothPairingHandle interface of the Web Bluetooth API contains the functionality required for completing a device pairing operation, including passkeys, and mechanisms to reply to user-entered pin codes and confirm passkeys."><code>BluetoothPairingHandle</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/BluetoothPairingListener" title="The BluetoothPairingListener interface of the Web Bluetooth API defines event handlers triggered for different pairing operations."><code>BluetoothPairingListener</code> (Firefox OS)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>C</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/CallEvent" title="The CallEvent interface of the Web Telephony API represents events related to telephone calls."><code>CallEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/CameraCapabilities" title="The CameraControl.capabilities property returns a CameraCapabilities object, which describes all the camera's capabilities."><code>CameraCapabilities</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/CameraControl" title="When you use the CameraManager.getCamera() method to get a reference to a camera, you specify a callback function to be invoked on success. That function receives as a parameter a CameraControl object. You can use its methods and properties to manage and make use of the camera."><code>CameraControl</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/CameraManager" title="The CameraManager interface provides access to any cameras available on the device being used."><code>CameraManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/ContactManager" title="The ContactManager interface is used to access and manage the contact available on the device."><code>ContactManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>D</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DOMApplication" title="In the Open Web apps JavaScript API, an App object is a JavaScript object that represents an app that is or could be installed in the user's app repository."><code>DOMApplication</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DOMCursor" title="A DOMCursor object represents an ongoing operation over a list of results. It is an enhanced DOMRequest that allows to iterate through a list of results asynchronously. Each time its continue() method is called, the DOMCursor tries to reach the next result in the list and calls its result's success or error accordingly."><code>DOMCursor</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DOMRequest" title="A DOMRequest object represents an ongoing operation. It provides callbacks that are called when the operation completes, as well as a reference to the operation's result. A DOM method that initiates an ongoing operation may return a DOMRequest object that you can use to monitor the progress of that operation."><code>DOMRequest</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DataStore" title="The DataStore interface of the Data Store API represents a retrieved set of data, and includes standard properties for accessing the store's name, owner, etc., methods for reading, modifying and syncing data, and the onchange event handler for reacting to changes to the data."><code>DataStore</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DataStoreChangeEvent" title="The DataStoreChangeEvent interface of the Data Store API represents the event related to a record changed in the data store, i.e. this is returned once a change is made and the change event is fired (see DataStore.onchange for the handler)."><code>DataStoreChangeEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DataStoreCursor" title="The DataStoreCursor interface of the Data Store API represents a cursor that allows apps to iterate through a list of DataStoreTask objects representing the change history of the data store, for use when synchronizing the data."><code>DataStoreCursor</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DataStoreTask" title="The DataStoreTask interface of the Data Store API represents a record changed in the data store when a DataStoreCursor is used to iterate through the data store's change history."><code>DataStoreTask</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DeviceStorage" title="The DeviceStorage interface is used to access files on a specific storage area available on the device. A storage area is, in essence, a file system repository even if it hides the reality of the underlying file system."><code>DeviceStorage</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/DeviceStorageChangeEvent" title="The DeviceStorageChangeEvent provides information about any change made to a file inside a given storage area. It extends the Event interface."><code>DeviceStorageChangeEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-
-
-<span>F</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/FMRadio" title="The WebFM API provides access to the device FM radio. This interface lets you turn the FM radio on and off and tune it to different stations. It is accessible through the navigator.mozFMRadio property."><code>FMRadio</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-
-
-<span>H</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/HTMLMediaElement" title=""><code>HTMLMediaElement</code> (Firefox OS extensions)</a></span></span></li>
-</ul>
-
-
-
-
-
-
-
-
-<span>M</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MMICall" title="The MMICall interface of the Web Telephony API represents an MMI call, allowing us to receive the result of the call."><code>MMICall</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozActivity" title="The MozActivity interface allows apps to delegate an activity to another app."><code>MozActivity</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozActivityOptions" title="The MozActivityOptions interface allows apps to declare the activity they want to create and also to access information of activities they want to handle."><code>MozActivityOptions</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozActivityRequestHandler" title="The MozActivityRequestHandler interface allows apps that handle activities to access and interact with the request made by a third party app that tries to delegate an activity."><code>MozActivityRequestHandler</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozAlarmsManager" title="The MozAlarmsManager API allows to schedule notifications or applications to be started at a specific time."><code>MozAlarmsManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozContact" title="The MozContact interface is used to describe a single contact in the device's contact database."><code>MozContact</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozContactChangeEvent" title="The MozContactChangeEvent interface provides information about the contact that has changed. It inherits from the Event interface."><code>MozContactChangeEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozIccManager" title="The MozIccManager interface gives access to ICC related functionalities."><code>MozIccManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMmsEvent" title="The DOM MozMmsEvent represents events related to WebSMS MMS messages."><code>MozMmsEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMmsMessage" title="The DOM MozMmsMessage object represents an MMS message and has all the information about sender, recipient, body content, attachements, and date of the message itself."><code>MozMmsMessage</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileCFInfo" title="The MozMobileCFInfo interface defines options used to retrieve or define call forwarding settings."><code>MozMobileCFInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileCellInfo" title="The MozMobileCellInfo interface allow to access to cell location information."><code>MozMobileCellInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileConnection" title="This API is used to get information about the current mobile voice and data connection states of the device. It is accessible through navigator.mozMobileConnections, which returns an array of MozMobileConnection objects."><code>MozMobileConnection</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileConnectionInfo" title="The MozMobileConnectionInfo interface allows to access connection information for voice or data. The navigator.mozMobileConnection uses it through its voice and data properties."><code>MozMobileConnectionInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileCCInfo" title="The MozMobileICCInfo interface allow to access access to information stored in the device's ICC card. The navigator.mozMobileConnection uses it through its iccInfo property."><code>MozMobileICCInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileMessageManager" title="Provides support for sending and managing both MMS and SMS messages on a device with WebSMS."><code>MozMobileMessageManager</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileMessageThread" title="The DOM MozMobileMessageThread object represents a thread of messages."><code>MozMobileMessageThread</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozMobileNetworkInfo" title="The MozMobileNetworkInfo interface allows access to information related to the network carrier. The navigator.mozMobileConnection uses it through its voice.network and data.network properties."><code>MozMobileNetworkInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNDEFRecord" title="MozNDEFRecord is a data structure that implements the NFC Data Exchange Format (NDEF). It is a standard common format for NFC-related data communication between applications, NFC tags, and devices."><code>MozNDEFRecord</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNFC" title="MozNFC is the top level API for operating in NFC Reader/Writer mode, NFC P2P mode and NFC Card Emulation mode."><code>MozNFC</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNFCPeer" title="The NFC implementation in Gecko follows the NFC Forum specifications."><code>MozNFCPeer</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNFCTag" title="MozNFCTag contains the basic functions needed to read, write, and inspect NDEF-compatible NFC Tags."><code>MozNFCTag</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNetworkStats" title="The MozNetworkStats object gives access to statistics about the data usage for a given network."><code>MozNetworkStats</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNetworkStatsData" title="The MozNetworkStatsData objects represent a chunk of data usage statistics."><code>MozNetworkStatsData</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozNetworkStatsManager" title="The MozNetworkStatsManager interface provides methods and properties to monitor data usage."><code>MozNetworkStatsManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozPowerManager" title="The MozPowerManager interface allows to explicitly control the part of the device that uses power."><code>MozPowerManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSettingsEvent" title="The MozSettingsEvent represents a settingchange event, providing information about a change to the value of a setting on the device. It extends the DOM Event interface."><code>MozSettingsEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSmsEvent" title="The DOM MozSmsEvent represents events related to WebSMS text messages."><code>MozSmsEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSmsFilter" title="The MozSmsFilter interface provides a way to filter out MozSmsMessage or MozMmsMessage objects through the MozMobileMessageManager.getMessages() method."><code>MozSmsFilter</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSmsManager" title="Provides support for sending and managing SMS messages on a device with WebSMS."><code>MozSmsManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span> <span title="This is an obsolete API and is no longer guaranteed to work."><i class="icon-trash"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSmsMessage" title="The DOM MozSmsMessage object represents an SMS text message and has all the information about sender, recipient, body text and date of the message itself."><code>MozSmsMessage</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozSmsSegmentInfo" title="The DOM MozSmsSegmentInfo interface provides information about how a string of text will be automatically split into segments. Each segment represents a single SMS of a multi-part SMS message."><code>MozSmsSegmentInfo</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozTimeManager" title="The MozTimeManager interface is used to set the system time on a device."><code>MozTimeManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozVoicemail" title="The MozVoicemail interface allows access to the information regarding the voicemail features available through the RIL of a Firefox OS device."><code>MozVoicemail</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozVoicemailEvent" title="The MozVoicemailEvent API provides access to the event information when a statuschange event is triggered."><code>MozVoicemailEvent</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozVoicemailStatus" title="The MozVoicemailStatus API provides access to a voicemail status."><code>MozVoicemailStatus</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozWakeLock" title="The MozWakeLock interface of the Wake Lock API tracks a wake lock set on any resource set on the device."><code>MozWakeLock</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozWifiConnectionInfoEvent" title="The MozWifiConnectionInfoEvent interface provides developers with information regarding the state of the current Wifi connection."><code>MozWifiConnectionInfoEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozWifiP2pGroupOwner" title="The MozWifiP2pGroupOwner is an interface that represents the group owner of WiFi Direct connection."><code>MozWifiP2pGroupOwner</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozWifiP2pManager" title="The MozWifiP2pManager is an interface that allows to control Wi-Fi connection with other computers using Wi-Fi Direct."><code>MozWifiP2pManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/MozWifiStatusChangeEvent" title="The MozWifiStatusChangeEvent interface provides developers with information regarding the current status of the Wifi connection."><code>MozWifiStatusChangeEvent</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>N</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/Navigator" title="The Navigator interface represents the state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities. This page represents the list of properties and methods added to Navigator on Firefox OS devices. For the list of properties and methods available to any Web sites, consult Navigator."><code>Navigator</code> (Firefox OS extensions)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-
-
-<span>P</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/PermissionSettings" title="The PermissionSettings interface provides ways to let the user manage all the permissions requested by all apps on a Firefox OS device."><code>PermissionSettings</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-
-
-
-
-<span>S</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/SettingsLock" title="The SettingsLock interface represents a lock on settings. it allows a script to modify settings asynchronously, but in a safe way: ordering is guaranteed and the no other script will modify the settings until the modification are done (the next lock objects will start processing after it has been closed)."><code>SettingsLock</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/SettingsManager" title="Provides access to the device's settings."><code>SettingsManager</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>T</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/TCPServerSocket" title="The TCPServerSocket interface provides an API to handle a persistent server that will listen for incoming connections on a given port."><code>TCPServerSocket</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/TCPSocket" title="The TCPSocket interface provides access to a raw TCP socket."><code>TCPSocket</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/Telephony" title="The Telephony interface of the Web Telephony API provides support for dialing, answering, and managing phone calls on a device with telephony support."><code>Telephony</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/TelephonyCall" title="The TelephonyCall interface of the Web Telephony API represents one telephone call, providing information about the call and offering mechanisms for controlling it and detecting changes to its status."><code>TelephonyCall</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/TelephonyCallGroup" title="The TelephonyCallGroup interface of the Web Telephony API represents a multi-person/conference call, providing functions to allow callers to be added and removed from the conference call, hanging up of the entire call, and more."><code>TelephonyCallGroup</code></a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-<span>U</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/UDPSocket" title=""><code>UDPSocket</code></a></span></span></li>
-</ul>
-
-
-<span>W</span><ul>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/WifiManager" title="The WifiManager API provides access to the wifi device capability."><code>WifiManager</code></a></span></span></li>
-<li><span class="indexListRow"><span class="indexListTerm"><a href="/en-US/docs/Archive/B2G_OS/API/Window" title="The Window interface represents a window containing a DOM document. This page represents the list of properties and methods added to Window on Firefox OS devices. For the list of properties and methods available to any Web sites, consult Window."><code>Window</code> (Firefox OS extensions)</a></span><span class="indexListBadges"> <span title="This API has not been standardized."><i class="icon-warning-sign"> </i></span></span></span></li>
-</ul>
-
-
-
-
-
-
-
-</div><p></p>
diff --git a/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/index.html b/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/index.html
deleted file mode 100644
index ddb6c550ff..0000000000
--- a/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/index.html
+++ /dev/null
@@ -1,361 +0,0 @@
----
-title: Building apps for Firefox OS
-slug: Archive/B2G_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS
-tags:
- - Firefox OS
- - Installation
- - Layout
- - Manifest
- - NeedsTranslation
- - TopicStub
- - distribution
- - packaging
-translation_of: Archive/B2G_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS
----
-<p></p><section class="Quick_links" id="Quick_Links">
-
-<ol>
- <li class="toggle">
- <details>
- <summary>Build and install</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS">Build and install overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_build_process_summary">B2G OS build process summary</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/B2G_OS_build_prerequisites">Build prerequisites</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Preparing_for_your_first_B2G_build">Preparing for your first build</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building">Building B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_installer_add-on">B2G installer add-on</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Building_for_Flame_on_OS_X">Building B2G OS for Flame on Mac OS X</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Choosing_how_to_run_Gaia_or_B2G">Choosing how to run Gaia or B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Compatible_Devices">Compatible Devices</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Installing_on_a_mobile_device">Installing B2G OS on a mobile device</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_update_packages">Creating and applying B2G OS update packages</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building/FOTA_community_builds">Building and installing FOTA community builds</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_Build_Variables_Reference_Sheet">B2G build variables reference sheet</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Porting B2G OS</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS">Porting overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/basics">Porting basics</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/Porting_on_CyanogenMod">Porting on CyanogenMod</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Developing Gaia</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia">Developing Gaia overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Running_the_Gaia_codebase">Running the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Mulet">Run Gaia on desktop using Mulet</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Understanding_the_Gaia_codebase">Understanding the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Making_Gaia_code_changes">Making Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Testing_Gaia_code_changes">Testing Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Submitting_a_Gaia_patch">Submitting a Gaia patch</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Build_System_Primer">Gaia build system primer</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Different_ways_to_run_Gaia">Different ways to run Gaia</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/make_options_reference">Make options reference</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Gaia_tools_reference">Gaia tools reference</a></li>
- </ol>
- </details>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/API">B2G OS APIs</a></li>
-</ol>
-</section><p></p>
-
-<div class="summary">
-<p>Firefox OS apps are essentially no different to standard websites or web apps. They are built using standard open web technologies — HTML, CSS, JavaScript, etc. — and can be accessed using a web browser. The main differences lie in their ability to be installed on devices and work offline, access to advanced APIs that allow interaction with device features such as camera, gyroscope and address book, and the existence of a solid developer ecosystem — including a Marketplace for distribution of free and paid apps. Generally, they provide users with an "app experience", while still being based on open, cross platform technologies.</p>
-</div>
-
-<p>Firefox OS apps have a low barrier for entry, especially for existing web developers and mobile developers; they are also a lot more portable across platforms than native equivalents, and not locked into walled gardens. As we've already mentioned Firefox OS apps are based on web technologies — HTML, CSS, and JavaScript — so if you've written a web page you already know the basics. Even if you don't have the basics you'll be able to easily follow this guide, but you may want to check out our list of <a href="/en-US/docs/Web/Tutorials">Beginner's tutorials</a> to learn more about developing with open web technologies.</p>
-
-<p>This section of MDN provides a detailed reference on web app development topics specific to creating apps that are installable on Firefox OS (and other Firefox-supported platforms like Android), including app manifests, writing install functionality, permissions for using device APIs, and more. It is targeted towards experienced developers that are just looking to create or port an existing app to Firefox OS.</p>
-
-<div class="note">
-<p><strong>Note</strong>: There is also a very useful screencast series available, if you prefer watching videos — <a href="/en-US/Firefox_OS/Screencast_series:_App_Basics_for_Firefox_OS">App Basics for Firefox OS</a>.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: If you are a complete beginner to web apps (perhaps you just know a bit of HTML/CSS/JS) and want a very simple guide to building up an app, check out our <a href="/en-US/Apps/Build/Building_apps_for_Firefox_OS/Firefox_OS_app_beginners_tutorial">Firefox OS app beginners tutorial</a>.</p>
-</div>
-
-<h2 id="Firefox_OS">Firefox OS</h2>
-
-<p><a href="/en-US/Firefox_OS">Firefox OS</a> (also referred to by its codename <strong>Boot to Gecko</strong> — or <strong>B2G</strong>) is Mozilla's open source mobile operating system. It's based on a Linux kernel, which boots into a <a href="/en-US/docs/Mozilla/Gecko">Gecko</a>-based runtime that lets users install and run open web apps<strong>, </strong>Gecko being the rendering engine that the Firefox browser uses to render and display web content.</p>
-
-<p>Firefox OS comes with <a href="/en-US/Firefox_OS/Platform/Gaia">Gaia</a>, which forms the entire UI layer of Firefox OS and the default suite of apps that handle the fundamental functions of the phone such as settings, calls, SMS, taking and storing photos, etc.</p>
-
-<p>Mozilla's open web apps are installable on Firefox OS, and other Firefox-supported platforms via Mozilla's web run time technology. For more details, see <a href="/en-US/Marketplace/Options/Open_web_apps_for_android">Open web apps for Android</a>, and <a href="/en-US/Marketplace/Options/Open_web_apps_for_desktop">Open web apps for Desktop</a>.) In future, the technologies should be standardized and adopted across a wider range of platforms.</p>
-
-<h2 id="Installable_app_workflow">Installable app workflow</h2>
-
-<p>An installable open web app is very similar to a normal web app or web site — it is built using familiar web technologies like HTML, CSS and JavaScript. The difference is in the additional features the Firefox (OS) platform has available. The following diagram illustrates how those features work together.</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/8493/installable-apps-flowchart-rough.png" style="display: block; height: 358px; margin: 0px auto; width: 520px;"></p>
-
-<ol>
- <li>Start with a fairly standard web application, built using your favourite toolchain.</li>
- <li>Identify this as an installable web app by adding a <a href="/en-US/Apps/Build/Manifest">manifest.webapp</a> file to the web app root directory. This defines a number of things about the app such as its name, icons, localization information, and probably most importantly the <a href="/en-US/Apps/Build/App_permissions">permissions the app needs</a> to access device APIs such as <a href="/en-US/docs/WebAPI/Camera">Camera</a>, <a href="/en-US/docs/Web/API/Device_Storage_API">Device Storage</a>, <a href="/en-US/docs/WebAPI/WebBluetooth">Bluetooth</a> and <a href="/en-US/docs/WebAPI/WebSMS">SMS</a>.</li>
- <li>Create any functionality you require that makes use of special device APIs.</li>
- <li>Create the assets your app needs, such as the <a href="/en-US/Apps/Build/Icon_implementation_for_apps">icons</a>.</li>
- <li>Package and distribute your app. This can be done in a variety of ways, from simple self-published <a href="/en-US/Marketplace/Options/Hosted_apps">hosted apps</a> (in which case you'd have to write your own install functionality), to <a href="/en-US/Marketplace/Options/Packaged_apps">packaged apps</a> distributed via the <a href="https://marketplace.firefox.com/">Firefox Marketplace</a> (which handles the install functionality for you.)</li>
-</ol>
-
-<h2 id="Recommendations">Recommendations</h2>
-
-<p>This section provides recommendations and best practices for creating installable open web apps.</p>
-
-<h3 id="Web_app_manifest_files">Web app manifest files</h3>
-
-<p>Your app's <code>manifest.webapp</code> file should be placed in the root of your app directory, and contain a simple JSON structure, as explained in detail in our <a href="/en-US/Apps/Build/Manifest">App Manifest</a> reference. A simple App Manifest JSON looks like so:</p>
-
-<pre class="brush: json">{
- "name": "My App",
- "description": "My elevator pitch goes here",
- "launch_path": "/index.html",
- "icons": {
- "512": "/img/icon-512.png",
- "128": "/img/icon-128.png"
- },
- "developer": {
- "name": "Your name or organization",
- "url": "http://your-homepage-here.org"
- },
- "default_locale": "en"
-}</pre>
-
-<p>For simple apps, this is all you'll need, but you may also need other fields, as discussed in appropriate places below.</p>
-
-<h3 id="Functionality_Device_APIs_and_permissions">Functionality, Device APIs, and permissions</h3>
-
-<p>One of the main strengths of the Firefox OS platform is the provision of <a href="/en-US/docs/WebAPI">new Web APIs</a> to access key device services like the contacts, and hardware like NFC, Bluetooth and SMS. There are many examples of the different new APIs available along with examples throughout our App Center Build section, but in this section we'll give you some specific pointers towards tasks you might want to accomplish with them. Common task categories include:</p>
-
-<ul>
- <li><a href="/en-US/Apps/Build/gather_and_modify_data">Gathering and modifying data</a>: Retrieving data from files, device hardware (e.g. <a href="/en-US/docs/Web/API/Battery_Status_API">battery</a>, <a href="/en-US/docs/Web/API/Proximity_Events">proximity</a>, <a href="/en-US/docs/Web/API/DeviceLightEvent/Using_light_events">light sensor</a>, <a href="/en-US/docs/Web/API/Geolocation/Using_geolocation">GPS</a>) and key services (e.g. <a href="/en-US/docs/WebAPI/Camera">camera</a>, <a href="/en-US/docs/Web/API/Contacts_API">contacts</a>).</li>
- <li><a href="/en-US/Apps/Build/User_notifications">Giving the user notifications</a>: With <a href="/en-US/docs/Web/API/Notification/Using_Web_Notifications">system notifications</a>, <a href="/en-US/docs/Web/API/Alarm_API">alarms</a>, and <a href="/en-US/docs/Web/Guide/API/Vibration">vibration</a> APIs.</li>
- <li><a href="/en-US/Apps/Build/Offline">Making your app work offline</a>: With APIs like <a href="/en-US/docs/Web/API/IndexedDB_API">IndexedDB</a>, <a href="/en-US/docs/Web/Guide/API/DOM/Storage">localStorage</a>, and the Firefox OS-specific <a href="/en-US/docs/Web/API/Data_Store_API">Data Store</a> API.</li>
- <li><a href="/en-US/Apps/Build/User_input_methods">Implementing control mechanisms</a>: Mouse, keyboard, pointer lock, touch inputs, drag and drop, and more.</li>
- <li>Push Notifications: invoked using the <a class="external external-icon" href="https://wiki.mozilla.org/WebAPI/SimplePush">SimplePush Web API</a>, these are a way to make applications wake up when a device receives a certain message.</li>
- <li><a class="external external-icon" href="https://wiki.mozilla.org/WebAPI/WebActivities">Web Activities</a>: A way to get applications to talk to each other and share capabilities, for example taking pictures or recording video. This often provides easier ways to share capabilities.</li>
- <li>Controlling device communication functionality: Such as <a href="/en-US/docs/WebAPI/WebSMS">SMS</a>, <a href="/en-US/docs/WebAPI/WebBluetooth">Bluetooth</a>, Dialer, and <a href="/en-US/docs/Web/API/NFC_API">NFC</a>.</li>
-</ul>
-
-<p>Different APIs have different levels of security, with some APIs being limited in who can access them. This makes sense — it would be really insecure to just let any app have access to say, a device's SMS and dialer functionality. The different levels are as follows:</p>
-
-<ul>
- <li>Common: Common APIs like <a href="/en-US/docs/Web/API/Notification/Using_Web_Notifications">Notification</a>, <a href="/en-US/docs/NavigatorUserMedia.getUserMedia">getUserMedia</a>, <a href="/en-US/docs/Web/API/IndexedDB_API">IndexedDB</a>, and <a href="/en-US/docs/Web/API/Geolocation/Using_geolocation">Geolocation</a> don't need any special privileges to use them. Some of these APIs have an extra level of security anyway, for example a getUserMedia or Geolocation call will result in the user being shown a confirmation box to ask if they are happy with an app accessing their GPS or web cam.</li>
- <li>Privileged: Privileged APIs have more security implications than common ones, and as such can only be used by packaged apps that have been verified by the <a href="/en-US/Marketplace">Firefox Marketplace</a> (see below). These include the <a href="/en-US/docs/WebAPI/Camera">Camera</a>, <a href="/en-US/docs/Web/API/Using_the_Browser_API">Browser</a>, <a href="/en-US/docs/Web/API/Contacts_API">Contacts</a> and <a href="/en-US/docs/Web/API/TCP_Socket_API">TCP Socket</a> APIs.</li>
- <li>Certified: Certified APIs are generally critical in terms of device security, and therefore only usable in apps pre-installed on the device by Mozilla or the device vendor. These include the <a href="/en-US/docs/WebAPI/WebSMS">SMS</a>, <a href="/en-US/docs/WebAPI/WebBluetooth">Bluetooth</a>, and Dialer APIs.</li>
-</ul>
-
-<p>To request permission to use a restricted API, you have to include a <code>permissions</code> field in your manifest file, and set the type field to privileged in the case of privileged APIs. These fields will look something like this:</p>
-
-<pre class="brush: json">"type" : "privileged",
-"permissions": {
- "contacts": {
- "description": "Required for autocompletion in the share screen",
- "access": "readcreate"
- },
- "alarms": {
- "description": "Required to schedule notifications"
- }
-}</pre>
-
-<div class="note">
-<p><strong>Note</strong>: You can find out exactly what permissions (if any) each API requires by looking at our <a href="/en-US/Apps/Build/App_permissions">App permissions reference</a>; this reference also lists which version of Firefox OS supports each API. To find out what API features are new as of each version of Firefox OS, consult our <a href="/en-US/Firefox_OS/Releases">Firefox OS developer release notes</a>.</p>
-</div>
-
-<p>Using <a href="/en-US/docs/Web/API/Web_Activities">Web activities</a> also requires that you specify their type and required data in the <code>activities</code> field, for example:</p>
-
-<pre class="brush: json">"activities": {
- "share": {
- "filters": {
- "type": [ "image/png", "image/gif" ]
- },
- "href": "foo.html",
- "disposition": "window",
- "returnValue": true
- }
-}</pre>
-
-<p>Lastly, some APIs such as the <a href="/en-US/Apps/Build/User_notifications/Using_Alarms_to_notify_users">Alarm and Notification APIs</a> also require you to specify a <code>messages</code> field, which details what kind of system messages are to be captured by the app, and what page(s) will handle them:</p>
-
-<pre class="brush: json">"messages": [
- { "alarm": "/index.html" },
- { "notification": "/index.html" }
- ]</pre>
-
-<h3 id="Icons_and_other_design_best_practices">Icons and other design best practices</h3>
-
-<p>The best practices you would use for creating a Firefox OS app are pretty much the same as those you would use for creating any standard web app, in terms of both coding and design.</p>
-
-<ol>
- <li>You should use <a href="/en-US/Apps/app_layout/responsive_design_building_blocks">responsive design techniques</a> to make sure your app layout will work well on a variety of screen sizes, especially <a href="/en-US/docs/Web/Guide/CSS/Media_queries">media queries</a> and <a href="/en-US/docs/Web/CSS/@viewport">viewport</a>. Because many devices have high resolution screens these days, this should include use of <code>resolution</code> media queries to optimize for different resolutions.</li>
- <li>You should take advantage of the building blocks and design patterns we've made available (see our app <a href="/en-US/Apps/Design">Design section</a>.)</li>
- <li>You should also make sure to optimize your code as much as possible so it is more likely to work on <a href="/en-US/Apps/Build/Performance/Apps_for_low-memory_Firefox_OS_devices">low-memory devices</a>, which many Firefox OS devices are (see our <a href="/en-US/Apps/Build/Performance">Performance topic</a>).</li>
- <li>For the visual design of Firefox apps, you are free to follow your own path, but you could certainly get some useful pointers from our <a href="https://www.mozilla.org/en-US/styleguide/products/firefox-os/">Firefox OS style guide</a>.</li>
- <li>For your app icons, you should make sure to include at least a 512x512 icon and a 128x128 icon. Read <a href="/en-US/Apps/Build/Icon_implementation_for_apps">Icon implementation for Apps</a> for more information.</li>
-</ol>
-
-<h3 id="App_packaging_installation_and_distribution">App packaging, installation and distribution</h3>
-
-<p>When an App is ready to be distributed, you have a few options of how to publish them:</p>
-
-<ul>
- <li>You can <a href="/en-US/Marketplace/Options/Self_publishing">self-publish</a> a <a href="/en-US/Marketplace/Options/Hosted_apps">hosted app</a>. This requires you to simply upload your app to a web server, just like you would for a normal web site, and include the manifest, icons, etc. that the installable app needs. In addition, you need to include some code to install your app on a Firefox OS device or other device where Firefox is present. This will generally take the form of a <a href="/pt-PT/docs/Web/HTML/Element/button" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;button&gt;</code></a> element that when pressed invokes the <a href="/pt-PT/docs/Web/API/Apps/install" title="The documentation about this has not yet been written; please consider contributing!"><code>Apps.install</code></a> method, passing it the URL of the manifest file. Note that hosted apps, even when installed, are always run from the web site they are hosted on, so don't confer the ability to run offline, unless you provide this ability using a technology like <a href="/en-US/docs/Web/HTML/Using_the_application_cache">AppCache</a> (or soon, <a href="/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Service Workers</a>.)</li>
- <li>You can <a href="/en-US/Marketplace/Options/Self_publishing">self-publish</a> a <a href="/en-US/Marketplace/Options/Packaged_apps">packaged app</a>. This requires you to zip your app up, and upload your zip to a web server, after making sure you've included the manifest, icons, etc. that the installable app needs. In addition, you need to include a <a href="https://developer.mozilla.org/en-US/Marketplace/Options/Self_publishing#Mini-manifest_fields">mini-manifest</a> file in the same directory as the zip to reference the app, and some code to install your app on a Firefox OS device or other device where Firefox is present. This will generally take the form of a <a href="/pt-PT/docs/Web/HTML/Element/button" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;button&gt;</code></a> element that when pressed invokes the <a href="/pt-PT/docs/Web/API/Apps/installPackage" title="The documentation about this has not yet been written; please consider contributing!"><code>Apps.installPackage</code></a> method, passing it the URL of the mini-manifest file.</li>
- <li>You can publish a packaged app on the Firefox Marketplace. The process for doing this is <a href="/en-US/Marketplace/Publishing/Submit/Overview">well documented over at our Marketplace zone</a>.</li>
-</ul>
-
-<div class="note">
-<p><strong>Note</strong>: Self-published apps don't have the ability to access privileged APIs, for security reasons.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: Another common cause of failure in app installation is incorrect paths in manifests and install code. These paths should be relative to the origin of the server location. So for example, if your example's root is at <code>http://www.mysite.com/myapp/</code>, and your icon is at <code>http://www.mysite.com/myapp/manifest.webapp</code>, the install path would be <code>/myapp/manifest.webapp</code>, not <code>/manifest.webapp</code>.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: Installable open web apps used to have a "single app per origin" security policy, but this was lifted as of Firefox 34/Firefox OS 2.1 (read <a href="https://developer.mozilla.org/en-US/Apps/Build/installable_apps_for_Firefox_OS/App_manifest_FAQ#Can_I_have_more_than_one_app_at_my_origin.3F">this FAQ entry</a> for more information). If you still need to support older versions, consider hosting your apps at separate origins; one strategy is to <a href="/en-US/Marketplace/Publishing/Adding_a_subdomain">create different subdomains</a> for your apps.</p>
-</div>
-
-<h3 id="Multi-locale_apps">Multi-locale apps</h3>
-
-<p>You can create multi-locale apps quite easily. This is done by:</p>
-
-<ol>
- <li>Adding special <code>data-l10n-id</code> attributes to each HTML element that requires localization, the value of which should be an identifier for that string. For example:</li>
- <li><code>&lt;h1 data-l10n-id="app-title"&gt;My app&lt;/h1&gt;</code>.</li>
- <li>Including the <a href="https://github.com/fabi1cazenave/webL10n/blob/master/l10n.js">l10n.js</a> library in your page using a regular <a href="/pt-PT/docs/Web/HTML/Element/script" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;script&gt;</code></a> element.</li>
- <li>Creating a <code>locales</code> folder inside your app directory containing a folder for each separate locale, then placing an <code>app.properties</code> file inside each one containing that language's translations, each one on a new line. For example <code>app-title = Mon application</code> for French.</li>
- <li>Creating a <code>locales.ini</code> file inside the locales folder, which specifies the default locale and the path to each <code>app.properties</code> file. This will look like so:
- <pre>@import url(en/app.properties)
-
-[es]
-@import url(fr/app.properties)</pre>
- </li>
- <li>Referencing <code>locales.ini</code> from your HTML file using a <a href="/pt-PT/docs/Web/HTML/Element/link" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;link&gt;</code></a> element, like so:
- <pre class="brush: html">&lt;link rel="resource" type="application/l10n" href="locales/locales.ini" /&gt;</pre>
- </li>
- <li>Updating your manifest file to include a default locale and locales field containing information about your supported locales:
- <pre class="brush: json">"default_locale": "en",
-"locales": {
- "fr": {
- "name" : "Mon application",
- "description" : "Mon application description"
- }
-}</pre>
- </li>
-</ol>
-
-<p>For more details, begin with our <a href="/en-US/Apps/Build/Localization/Getting_started_with_app_localization">Getting started with app localization</a> article, then check out the rest of our articles about <a href="/en-US/Apps/Build/Localization">app localization</a>.</p>
-
-<h3 id="Debugging_apps">Debugging apps</h3>
-
-<p>Mozilla provides a number of tools to help you test Firefox OS apps.</p>
-
-<h4 id="Testing_on_Firefox_desktop">Testing on Firefox desktop</h4>
-
-<p>The quickest way to test your app's basic functionality is to simply load it in Firefox desktop (open the <code>index.html</code> file in the browser) — this supports most of the features you'll be using to develop your app (with the exception of some of the device APIs.) From here you can use the standard <a href="/en-US/docs/Tools/Browser_Toolbox">Firefox Toolbox</a> to debug your code, and the <a href="/en-US/docs/Tools/Responsive_Design_View">Responsive Design View</a> to test responsive/mobile layouts.</p>
-
-<h4 id="Testing_in_the_Firefox_OS_simulator">Testing in the Firefox OS simulator</h4>
-
-<p>You can also test the app in a Firefox OS simulator via our <a href="/en-US/docs/Tools/WebIDE">WebIDE</a> tool. This will give you a more realistic idea of how it will look on a real device.</p>
-
-<div class="note">
-<p><strong>Note</strong>: Our new <a href="/en-US/docs/Tools/WebIDE">WebIDE</a> tool is currently only available in Firefox Nightly, but will be rolled out across all versions soon. It does everything App Manager does and more, including in-app code editing, creation of new apps, and tools like the <a href="/en-US/docs/Tools/WebIDE/Monitor">Monitor</a>, which enables to track performance across an app's lifespan.</p>
-</div>
-
-<h4 id="Testing_on_a_Firefox_OS_device">Testing on a Firefox OS device</h4>
-
-<p>Some device APIs — such as the vibration API — can't be tested successfully on a simulator. To fully test this you'll need to get hold of a real Firefox OS device. If you've got one, you can connect it to your computer and install apps contained on your local drive straight onto it via the App Manager/WebIDE.</p>
-
-<h4 id="Logcat">Logcat</h4>
-
-<p>The Android <a href="/en-US/Firefox_OS/Debugging/On-device_console_logging#Using_logcat">adb logcat tool</a> is very useful for getting debugging output from a Firefox OS device, if you are comfortable with command line tools. For example, you can get info on dying apps using the following:</p>
-
-<pre class="brush: bash">adb logcat GeckoConsole:* *:F | grep -vE "parsing value|Unknown property|declaration|invalid source| but found |pseudo-"</pre>
-
-<h3 id="Supporting_cross-Firefox_OS_versions">Supporting cross-Firefox OS versions</h3>
-
-<p></p><p>Note that when developing apps for Firefox OS, you need to bear in mind what platform versions will be available on the devices your customers will have (see our <a href="/en-US/Firefox_OS/Developer_phone_guide/Phone_specs#Firefox_OS_phones_available">available phones table</a> for a list.) Remember that it is not as simple to update phone platform software as it is desktop software — users tend to be at the mercy of the network providers. You therefore need to develop apps to support these versions. As an example, multiline Flexbox doesn't work on Firefox OS versions below 1.3, so you may need to use a simpler layout method or provide a fallback for older versions.</p>
-
-<p>This issue should go away soon, as more consumer Firefox OS devices appear, equipped with newer versions of Firefox OS out of the box.</p>
-
-<div class="warning">
-<p>The current baseline platform we recommended developing for is <a href="/en-US/Firefox_OS/Releases/1.1">Firefox OS 1.1</a>.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: MDN's <a href="/en-US/docs/Web">web platform reference pages</a> include browser/platform support information, plus you can find support information for more App-specific technologies on our <a href="/en-US/Apps/Reference">Apps API Reference</a>.</p>
-</div><p></p>
-
-<h2 id="Examples">Examples</h2>
-
-<p>You can find many examples throughout the App Center <a href="/en-US/Apps/Build">Build section</a>; there are also some examples in our <a href="/en-US/Apps/Reference_apps">Reference apps</a> section.</p>
-
-<h2 id="Tutorials">Tutorials</h2>
-
-<h3 id="Installable_app_basics">Installable app basics</h3>
-
-<dl>
- <dt><a href="/en-US/Apps/Build/Building_apps_for_Firefox_OS/Firefox_OS_app_beginners_tutorial">Firefox OS app beginners tutorial</a></dt>
- <dd>A complete beginner's guide to creating a Firefox OS app.</dd>
- <dt><a href="/en-US/Marketplace/Options/Packaged_apps">Packaged apps</a></dt>
- <dd>A packaged app is an Open Web App that has all of its resources contained in a zip file, instead of having its resources on a Web server. In here you'll learn all you need to know about packaged apps.</dd>
- <dt><a href="/en-US/Marketplace/Options/Hosted_apps">Hosted apps</a></dt>
- <dd>A hosted app is an Open Web App that has all of its resources (HTML, CSS, JavaScript, app manifest and so on) stored on a Web server. This article will tell you all you need to know about hosted apps.</dd>
- <dt><a href="/en-US/Marketplace/Options/Packaged_or_hosted_">Packaged or hosted?</a></dt>
- <dd>Should you make your app hosted or packaged? This article will help you decide.</dd>
- <dt><a href="/en-US/Marketplace/Options/Self_publishing">Self-publishing apps</a></dt>
- <dd>This guide explains how to write the code that controls publishing apps, should you wish to write it yourself rather than use the <a href="https://marketplace.firefox.com/">Firefox Marketplace</a>.</dd>
-</dl>
-
-<h3 id="Advanced_topics">Advanced topics</h3>
-
-<dl>
- <dt><a href="/en-US/Apps/Build/Icon_implementation_for_apps#Firefox_OS">Icon implementation for apps</a></dt>
- <dd>Implementation specifics for implementing Firefox app icons, including different sizes needed.</dd>
- <dt><a href="/en-US/docs/Web/Apps/Updating_apps" title="/en-US/docs/Web/Apps/Updating_apps">Updating apps</a></dt>
- <dd>How app updates are handled.</dd>
-</dl>
-
-<div class="section">
-<h2 id="Reference">Reference</h2>
-
-<dl>
- <dt><a href="/en-US/Apps/Reference/Firefox_OS_app_tools">Firefox OS app tools</a></dt>
- <dd>This page provides a list of useful tools, libraries and examples that are useful for Firefox OS app developers, whether you want an code template to copy, or need help with adding a specific feature to your Firefox OS app.</dd>
- <dt><a href="/en-US/docs/Web/Apps/Build/Manifest" title="/en-US/docs/Web/Apps/Manifest">App manifest</a></dt>
- <dd>A detailed guide to Open Web App manifest files, and the different options they can contain.</dd>
- <dt><a href="/en-US/docs/Web/Apps/App_permissions">App permissions</a></dt>
- <dd>Access to device APIs is key to creating many useful apps. Here is what's available and how to access them.
- <div class="note">
- <p><strong>Note</strong>: you can use the <a href="https://github.com/mozilla-b2g/fxos-appgen">Firefox OS App Generator</a> to automatically generate and install FxOS apps with particular permissions, message-listeners, types, etc.</p>
- </div>
- </dd>
- <dt><a href="/en-US/Firefox_OS/API_support_table">Firefox OS API support table</a></dt>
- <dd>A list of the different APIs available to Firefox OS, and what support is available for them.</dd>
- <dt><a href="/en-US/docs/Web/Apps/JavaScript_API" title="/en-US/docs/Web/Apps/JavaScript_API">App installation and management APIs</a></dt>
- <dd>A reference for the installation and management APIs that control installation and other functions of installable Open Web Apps.</dd>
- <dt><a href="/en-US/docs/Web/Apps/Platform-specific_details">Platform-specific details of app installation</a></dt>
- <dd>There are some differences in how apps are installed across the various platforms that support Open Web Apps; this article will help you to understand them.</dd>
- <dt><a href="/en-US/Apps/Build/installable_apps_for_Firefox_OS/CSP">CSP for open web apps</a></dt>
- <dd>Unlike traditional web sites, privileged and certified apps enforce a CSP (content security policy) by default. This may cause quite a bit of existing code to break while porting and cause a significant amount of confusion if developers are unaware that the CSP exists. This article explains what the restrictions imposed by the open web app CSP are.</dd>
-</dl>
-
-<h2 id="FAQ">FAQ</h2>
-
-<dl>
- <dt><a href="/en-US/Apps/Build/installable_apps/App_manifest_FAQ" title="/en-US/docs/Web/Apps/FAQs/About_app_manifests">App manifests FAQ</a></dt>
- <dd>Manifest frequently asked questions.</dd>
-</dl>
-</div>
-
-<dl>
- <dt> </dt>
-</dl>
diff --git a/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/manifesto/index.html b/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/manifesto/index.html
deleted file mode 100644
index fc1eb924f0..0000000000
--- a/files/pt-pt/archive/b2g_os/firefox_os_apps/building_apps_for_firefox_os/manifesto/index.html
+++ /dev/null
@@ -1,926 +0,0 @@
----
-title: Manisfesto da Aplicação
-slug: Archive/B2G_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS/Manifesto
-tags:
- - Aplicações
- - B2G
- - Firefox OS
- - Manifesto
- - Marketplace
- - Movel
- - Não Padrão
- - OS
-translation_of: Archive/B2G_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS/Manifest
----
-<p>{{ non-standard_header() }}</p>
-
-<div class="warning">
-<p><strong>Importante</strong>: este documento refere-se ao formato de manifesto do sistema operativo Firefox, e não às  <a href="https://developer.mozilla.org/en-US/docs/Web/Manifest">especificações do manifesto 3C</a>, concebido para aplicações da Web progressivas de vários navegadores. </p>
-</div>
-
-<div class="summary">
-<p>The Firefox OS app manifest provides information about an app (such as name, author, icon, and description) in a simple document usable by both users and app stores. Most importantly, it contains a list of Web APIs that your app needs. This allows users to make informed decisions about apps before installing them. It is one of the key things that distinguishes a Firefox OS App from a website.</p>
-</div>
-
-<div class="note">
-<p><strong>Nota</strong>: Browsers that handle manifests and allow installation of Firefox OS apps incorporate a <a href="/en-US/Apps/Build/Architecture#Web_runtime">Web runtime</a>. This includes <a href="/en-US/Firefox_OS">Firefox OS</a>, and newer versions of <a href="/en-US/Marketplace/Options/Open_web_apps_for_android">Firefox for Android</a> and <a href="/en-US/Marketplace/Options/Open_web_apps_for_desktop">Firefox for desktop</a>.</p>
-</div>
-
-<div class="note">
-<p><strong>Nota</strong>: You can find answers to common questions about app manifests in our <a href="/en-US/Apps/Build/installable_apps_for_Firefox_OS/App_manifest_FAQ">App Manifest FAQ</a>.</p>
-</div>
-
-<h2 class="h3first" id="Criar_um_manisfesto_da_aplicação">Criar um manisfesto da aplicação</h2>
-
-<p>This section details the critical details you need to create and use an app manifest.</p>
-
-<h3 class="h3first" id="Convenções_nome_de_ficheiro_localização_e_formato">Convenções: nome de ficheiro, localização, e formato</h3>
-
-<ul>
- <li>Name: <code>manifest.webapp</code> (you must use the <code>.webapp</code> extension)</li>
- <li>Location: your app's root directory</li>
- <li>Format: <a href="/en-US/docs/Glossary/JSON">JSON</a> (must be valid JSON)</li>
-</ul>
-
-<h3 id="Manipulação_do_caminho">Manipulação do caminho</h3>
-
-<ul>
- <li>Internal paths for manifests, icons, etc. must be absolute from the app's origin, not the root of the app. For example, if your manifest is at <code>http://www.mysite.com/myapp/manifest.webapp</code>, your install path will be <code>/myapp/manifest.webapp</code>, not <code>/manifest.webapp</code>.</li>
- <li>Internal paths also must be served from the <a href="/en-US/Apps/Build/installable_apps_for_Firefox_OS/App_manifest_FAQ#What_is_an_origin.3F">same origin</a> as the app.</li>
- <li>External paths must be fully qualified. For example, if you have a <a href="/en-US/Marketplace/Options/Packaged_apps">packaged app</a> on the <a href="/en-US/Marketplace">Firefox Marketplace</a> but host the icon on your own server, the icon path would be <code>http://mywebapp/images/myicon.png</code>.</li>
-</ul>
-
-<h3 id="Requisitos_para_submeter_para_Firefox_Marketplace">Requisitos para submeter para Firefox Marketplace</h3>
-
-<p>If you want to publish your app to the <a href="/en-US/Marketplace">Firefox Marketplace</a>, your app manifest must contain the following fields:</p>
-
-<ul>
- <li><code>name</code></li>
- <li><code>description</code></li>
- <li><code>launch_path</code> (for Packaged Apps)</li>
- <li><code>icons</code> (1 icon of 128×128 required, 1 icon of 512×512 recommended)</li>
- <li><code>developer</code></li>
- <li><code>default_locale</code> (if <code>locales</code> is defined)</li>
- <li><code>type</code> (for privileged and internal (certified) apps)</li>
-</ul>
-
-<h3 id="Requisitos_para_as_Aplicações_da_Web_Abertas">Requisitos para as Aplicações da Web Abertas</h3>
-
-<p>If you're building a generic hosted app that will not be published in the Firefox Marketplace, your app manifest must contain the following fields below:</p>
-
-<ul>
- <li><code>name</code></li>
- <li><code>description</code></li>
- <li><code>icons</code> (1 icon of 128×128 required, 1 icon of 512×512 recommended)</li>
-</ul>
-
-<div class="note">
-<p><strong>Note</strong>: To self-publish an app from a page that you control, you have to provide a mechanism for users to trigger installation of the app. This is usually done by calling <a href="/en-US/docs/Web/API/Apps.install"><code>navigator.Apps.install()</code></a> when a button is clicked in the case of a hosted app, or <a href="/en-US/docs/Web/API/Apps.installPackage"><code>navigator.Apps.installPackage()</code></a> in the case of a packaged app.</p>
-</div>
-
-<h3 id="Validação_do_manifesto_da_aplicação">Validação do manifesto da aplicação</h3>
-
-<p>If you're submitting to the Firefox Marketplace, your app manifest must pass Marketplace Validation.</p>
-
-<p>Try our <a href="/en-US/Apps/Build/App_Validator">App Validator</a>, which will help you identify any errors. Or <a href="http://firefox-marketplace-api.readthedocs.org/en/latest/">you can use this API</a> to validate your app manifest.</p>
-
-<h3 id="Atualização_de_manifestos">Atualização de manifestos</h3>
-
-<p>For information on updating apps, see <a href="/en-US/Marketplace/Publishing/Updating_apps">Updating apps</a>.</p>
-
-<h2 id="Exemplo_de_manifesto">Exemplo de manifesto</h2>
-
-<p>The following is a minimal manifest. You can copy it into a text file and replace the values with your own information.</p>
-
-<pre class="brush: json">{
- "name": "My App",
- "description": "My elevator pitch goes here",
- "launch_path": "/index.html",
- "icons": {
- "512": "/img/icon-512.png",
- "128": "/img/icon-128.png"
- },
- "developer": {
- "name": "Your name or organization",
- "url": "http://your-homepage-here.org"
- },
- "default_locale": "en",
- <code class="language-json"><span class="key token">"chrome":</span> <span class="punctuation token">{</span> <span class="key token">"navigation":</span> <span class="keyword token">true</span> <span class="punctuation token">}</span></code>
-}</pre>
-
-<h2 id="Campos_do_manifesto_da_aplicação_requeridos">Campos do manifesto da aplicação requeridos</h2>
-
-<p>The fields in your manifest can be in any order. Fields in the manifest other than the ones listed below will be ignored.</p>
-
-<h3 class="h3first" id="name"><code>name</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: Required for all app manifests.</p>
-</div>
-
-<p>A human-readable name for the app. Maximum length is 128 characters.</p>
-
-<p>If you change the name of your app after distribution, the name will not be updated for any existing installations.</p>
-
-<pre class="brush: json">"name": "The Open Web!"</pre>
-
-<h3 id="description"><code>description</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: Required for all app manifests.</p>
-</div>
-
-<p>A human-readable description for the app. Maximum length is 1024 characters.</p>
-
-<pre class="brush: json">"description": "Exciting Open Web App!"</pre>
-
-<h3 id="launch_path"><code>launch_path</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: Required for all app manifests.</p>
-</div>
-
-<p>The path within the app's origin that is loaded when the app starts.</p>
-
-<p>Specifies the starting point of the content local to the zip file containing the packaged app. For example, if the <code>launch_path</code> is <code>/mywebapp/index.html</code>, the app will open the file at <code>/mywebapp/index.html</code> when the app is launched.</p>
-
-<div class="alert alert-info"><strong>Dicas:</strong>
-
-<ul>
- <li>If your app is stored in the root of a Web server, for example <code>mywebapp.github.com/</code>, then <code>launch_path</code> must be set to <code>/</code>.</li>
- <li>If your app is stored in a subdirectory, for example <code>mymarket.github.com/mywebapp/</code>, then <code>launch_path</code> must be set to <code>/mywebapp/</code>.</li>
-</ul>
-</div>
-
-<pre class="brush: json">"launch_path": "/index.html"</pre>
-
-<h3 id="icons"><code>icons</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: 1 icon sized 128×128 required for all app manifests. 1 icon sized 512×512 recommended for all app manifests.</p>
-</div>
-
-<p>A map of icon sizes to URIs of the icons.</p>
-
-<p>Remember that internal paths to icons must be absolute from the app's origin, while paths to externally hosted icons must be fully qualified.</p>
-
-<p>Icons must be square, and in <code>.png</code> format. Icons should not have solid backgrounds that extend to all four corners of the icon.</p>
-
-<div class="warning">
-<div class="alert alert-warning"><strong>Cuidado:</strong> if you're submitting to the Firefox Marketplace, your icons must also follow the <a href="https://www.mozilla.org/en-US/styleguide/products/firefox-os/icons/">Firefox Marketplace app icon guidelines</a>.</div>
-</div>
-
-<h4 id="Required_icon_sizes">Required icon sizes</h4>
-
-<dl>
- <dt>128×128</dt>
- <dd>For display on the Firefox Marketplace and devices.</dd>
-</dl>
-
-<h4 id="Recommended_icon_sizes">Recommended icon sizes</h4>
-
-<dl>
- <dt>512×512</dt>
- <dd>From Firefox 2.0 onwards, larger icons are needed for crisp display on all the different possible combinations of Phone and tablet screen sizes, screen resolutions, and 3 and 4-column layouts. We accept a 512×512 icon, which is then scaled for all the different uses across devices. This size is also useful for display on other platforms apps can be installed across, such as Android.</dd>
-</dl>
-
-<h4 id="Other_icon_sizes_that_might_be_useful">Other icon sizes that might be useful</h4>
-
-<dl>
- <dt>60×60</dt>
- <dd>For the exact on-device icon size on older Firefox OS versions.</dd>
- <dt>16×16, 32×32, 48×48, 64×64, 90×90, 128×128 and 256×256</dt>
- <dd>These icon sizes are used on various other platforms your app can be installed on, such as Windows, OS X and Android.</dd>
-</dl>
-
-<pre class="brush: json">"icons": {
- "128": "/img/icon-1.png",
- "512": "/img/icon-2.jpg"
-}</pre>
-
-<div class="note">
-<p><strong>Nota</strong>: For a thorough explanation of how we decided on the 512×512 icon size, read our <a href="/en-US/Apps/Build/Icon_implementation_for_apps#Firefox_OS">Icon implementation guide</a>.</p>
-</div>
-
-<h3 id="developer"><code>developer</code></h3>
-
-<div class="note">
-<p><strong>Nota</strong>: Only the <code>name</code> is required for all app manifests.</p>
-</div>
-
-<ul>
- <li><code>name</code>: The name of the developer. <span class="red">Required for all app manifests.</span></li>
- <li><code>url</code>: The URL of a website containing information about the app's developer. Optional.</li>
-</ul>
-
-<pre class="brush: json">"developer": {
- "name": "The Open Web!",
- "url": "http://www.mywebapp.com"
-}</pre>
-
-<h3 id="default_locale"><code>default_locale</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: If {{anch("locales")}} is defined, <code>default_locale</code> is required for your app manifest.</p>
-</div>
-
-<p>A language tag (<a href="http://www.ietf.org/rfc/rfc4646.txt">RFC 4646</a>) that defines the language you used in the field values of your app manifest.</p>
-
-<p>Although <code>default_locale</code> is not required for apps that don't have locales, it is recommended that you include it. If you do not define a <code>default_locale</code>, the Firefox Marketplace will guess your app's language.</p>
-
-<p>For example, if your app uses English, it's <code>default_locale</code> would be:</p>
-
-<pre class="brush: json">"default_locale": "en"</pre>
-
-<h3 id="type"><code>type</code></h3>
-
-<div class="note">
-<p class="red"><strong>Nota</strong>: If your app is privileged or internal (certified), <code>type</code> is required for your app manifest.</p>
-</div>
-
-<p>The app's type, which defines its level of access to sensitive device <a href="/en-US/docs/WebAPI">WebAPIs</a>. If you do not define <code>type</code>, it will default to <code>web</code> as the <code>type</code>.</p>
-
-<ul>
- <li><code>web</code>: A regular hosted app. This type has the least access to WebAPIs.</li>
- <li><code>privileged</code>: An authenticated app that has been approved by an app store such as the Firefox Marketplace. This type has greater access to WebAPIs than a web app.</li>
- <li><code>certified</code>: An authenticated app that is intended for critical system functions like the default dialer or the system settings app on a smartphone. It is not intended for 3rd party apps in an app store. This type of app has the highest level of access to WebAPIs.</li>
-</ul>
-
-<div class="note">
-<p><strong>Nota</strong>: For more information on app types, see <a href="/en-US/Marketplace/Options/Packaged_apps">Packaged apps</a>.</p>
-</div>
-
-<pre class="brush: json">"type": "certified"</pre>
-
-<h2 id="Optional_app_manifest_fields">Optional app manifest fields</h2>
-
-<p>The following fields are optional.</p>
-
-<h3 class="h3first" id="activities"><code>activities</code></h3>
-
-<p>A set of Web Activities that your app supports (<a href="/en-US/docs/Web/API/Web_Activities#Starting_an_activity">full list</a>). It's structured like so:</p>
-
-<ul>
- <li>Each property in this field is an activity</li>
- <li>Activity names are free-form text</li>
- <li>Each activity is represented by an object</li>
-</ul>
-
-<p>For example, here's an entry with one activity named <code>share</code>.</p>
-
-<pre class="brush: json">"activities": {
- "share": {
- "filters": {
- "type": [ "image/png", "image/gif" ]
- },
- "href": "foo.html",
- "disposition": "window",
- "returnValue": true
- }
-}</pre>
-
-<p>The object for the <code>share</code> activity in the example has <code>filters</code>, <code>href</code>, <code>disposition</code> and <code>returnValue</code> properties. These are described in <a href="/en-US/docs/WebAPI/Web_Activities#Activity_handler_description">Activity handler description</a>.</p>
-
-<h3 id="appcache_path"><code>appcache_path</code></h3>
-
-<p>The absolute path to the application cache (<a href="/en-US/docs/HTML/Using_the_application_cache">AppCache</a>) manifest. When a Firefox OS app is installed, the AppCache manifest will be fetched and parsed, and its static assets under the <code>CACHE</code> header will be cached.</p>
-
-<div class="note">
-<p><strong>Nota</strong>: Packaged apps cache assets on the device when installed. You don't need to set an AppCache for packaged apps.</p>
-</div>
-
-<div class="note">
-<p><strong>Nota</strong>: AppCache is a flawed technology, and will soon be replaced by the much more effective <a href="/en-US/docs/Web/API/ServiceWorker_API">Service Workers</a>.</p>
-</div>
-
-<pre class="brush: json">"appcache_path": "/cache.manifest"</pre>
-
-<h3 id="chrome"><code>chrome</code></h3>
-
-<p>A set of navigation controls on the bottom of the screen that consists of Back, Forward, Reload and Favorite.</p>
-
-<p><img alt="chrome navigation" src="https://mdn.mozillademos.org/files/5843/nav-both2.png" style="height: 98px; width: 726px;"></p>
-
-<div class="note">
-<p><strong>Note</strong>: We'd recommend designing a back button for your app interface, instead of relying on this option.</p>
-</div>
-
-<pre class="brush: json">"chrome": { "navigation": true }</pre>
-
-<h3 id="csp"><code>csp</code></h3>
-
-<div class="note">
-<p><strong>Note</strong>: Optional; applies to all packaged apps installed on Firefox OS, Firefox Desktop or Firefox for Android.</p>
-</div>
-
-<p>This field can be used to define a Content Security Policy (CSP) that is applied to all pages in the app. The policies you can add to a CSP are listed in <a href="/en-US/docs/Web/Security/CSP/CSP_policy_directives">CSP policy directives</a>, and for an app you'll need to include them in a line like so:</p>
-
-<pre class="brush: json">"csp" : "default-src *; script-src 'self'; object-src 'none'; style-src 'self' 'unsafe-inline'"</pre>
-
-<p>The default policies applied to Firefox OS privileged and internal/certified apps are as follows:</p>
-
-<dl>
- <dt>Privileged CSP</dt>
- <dd>
- <pre class="language-html"><code class="language-html">default-src *; script-src 'self'; object-src 'none'; style-src 'self' 'unsafe-inline'</code></pre>
- </dd>
- <dt>Certified/Internal CSP</dt>
- <dd>
- <pre class="language-html"><code class="language-html">default-src *; script-src 'self'; object-src 'none'; style-src 'self'</code></pre>
- </dd>
-</dl>
-
-<p>These defaults can’t be overridden, only added to, i.e. the CSP policy in the manifest can only make the actual CSP applied more restrictive in the case of privileged/internal apps.</p>
-
-<div class="note">
-<p><strong>Note</strong>: See the <a href="/en-US/Apps/CSP">Apps CSP page</a> for more details on the CSP restrictions particular to apps.</p>
-</div>
-
-<h3 id="datastores-owned"><code>datastores-owned</code></h3>
-
-<div class="note">
-<p><strong>Note</strong>: Applies only to internal/certified apps to be installed on Firefox OS.</p>
-</div>
-
-<p>When making use of the <a href="/en-US/docs/Web/API/Data_Store_API">Data Store API</a>, the app that owns the data store MUST include the <code>datastores-owned</code> field in its manifest to claim ownership, for example:</p>
-
-<pre class="brush: json language-json"><code class="language-json"><span class="key token">"datastores-owned":</span> <span class="punctuation token">{</span>
- <span class="key token">"myData":</span> <span class="punctuation token">{</span>
- <span class="key token">"access":</span> <span class="keyword token">"readwrite"</span><span class="punctuation token">,</span>
- <span class="key token">"description":</span> <span class="string token">"my data store"</span>
- <span class="punctuation token">}</span>
-<span class="punctuation token">}</span></code></pre>
-
-<p>You can include multiple properties to represent different data stores, and each one can use an <code>access</code> of <code>readonly</code>/<code>readwrite</code> to specify whether the data store can be read/modified by other applications. A <code>description</code> is also included to describe the purpose of the data store.</p>
-
-<h3 id="datastores-access"><code>datastores-access</code></h3>
-
-<div class="note">
-<p><strong>Note</strong>: Applies only to internal/certified apps to be installed on Firefox OS.</p>
-</div>
-
-<p>When making use of the <a href="/en-US/docs/Web/API/Data_Store_API">Data Store API</a>, any non-owner app that wants access to the the data store MUST include the <code>datastores-access</code> field in its manifest, for example:</p>
-
-<pre class="brush: json language-json"><code class="language-json"><span class="key token">"datastores-access":</span> <span class="punctuation token">{</span>
- <span class="key token">"myData":</span> <span class="punctuation token">{</span>
- <span class="key token">"access":</span> <span class="string token">"readwrite"</span><span class="punctuation token">,</span>
- <span class="key token">"description":</span> <span class="string token">"Read and modify my data store"</span>
- <span class="punctuation token">}</span>
-<span class="punctuation token">}</span></code></pre>
-
-<p>Without this field being specified, the default behaviour is "no access". Again, multiple properties can be included if you want to access multiple data stores, and an <code>access</code> of <code>readonly</code> or <code>readwrite</code> can be set to declare what access type is needed by the app.</p>
-
-<h3 id="fullscreen"><code>fullscreen</code></h3>
-
-<p>A control that tells the runtime whether or not to launch the app in full-screen mode.</p>
-
-<p>Since most apps run in fullscreen, we recommend setting this to <code>true</code>.</p>
-
-<pre class="brush: json">"fullscreen": "true"</pre>
-
-<h3 id="inputs"><code>inputs</code></h3>
-
-<p>Specifies supported layouts for the keyboard app. Each layout is described using a key-value pair, where the key represents the layout name (which will be displayed in the Settings app), and the value describes detailed information about the layout, including launch path of the layout and supported input types.</p>
-
-<p>The allowed values in the <code>types</code> field is a subset of the {{htmlelement("input")}} element {{htmlattrxref("type","input")}} attribute values. Currently allowed values are <code>text</code>, <code>search</code>, <code>tel</code>, <code>number</code>, <code>url</code>, <code>email</code>.</p>
-
-<p>An example follows:</p>
-
-<pre>"inputs": {
- "en": {
- "launch_path": "/index.html#en",
- "name": "English",
- "description": "English layout",
- "types": ["url", "text"],
- "locales": {
- "en-US": {
- "name": "English",
- "description": "English layout"
- },
- "zh-TW": {
- "name": "英文",
- "description": "英文鍵盤"
- }
- }
- },
- "en-Dvorak": {
- "launch_path": "/index.html#en-Dvorak",
- "name": "English (Dvorak)",
- "description": "Dvorak layout",
- "types": ["url", "text"]
- },
- "es": {
- "launch_path": "/index.html#es",
- "name": "Spanish",
- "description": "Spanish layout",
- "types": ["url", "text"]
- },
-
- ...
-
-}</pre>
-
-<h3 id="installs_allowed_from"><code>installs_allowed_from</code></h3>
-
-<p>One (or more) URLs to the domains where your app can be installed from.</p>
-
-<p>This field is intended for apps that end-users can purchase. The field identifies the app stores with whom you have a commercial relationship. If left empty, your app can be installed from anywhere.</p>
-
-<div class="warning">
-<div class="alert alert-warning"><strong>Caution:</strong> Do not put a trailing slash at the end of URLs, because the installation will fail.</div>
-</div>
-
-<p>For example, if your app can be installed from the Firefox Marketplace, <code>installs_allowed_from</code> will look like this:</p>
-
-<pre>"installs_allowed_from": [
- "https://marketplace.firefox.com"
-]</pre>
-
-<p><strong>Note</strong>: The array <code>["*"]</code> would mean that installations of this app are allowed from any site. This is the default. Note that an empty array <code>[]</code> would disallow installation from any site, including your own.</p>
-
-<h3 id="locales"><code>locales</code></h3>
-
-<p>A map of one or more language-specific overrides of the field values in your app manifest.</p>
-
-<p>Each <code>locales</code> entry contains a list of the app manifest fields you want to override for a specific language. Keys for <code>locales</code> use the same language tags as for <code>default_locale</code> (<a href="http://www.ietf.org/rfc/rfc4646.txt">RFC 4646</a>).</p>
-
-<div class="alert alert-warning">
-<div class="warning">
-<p><strong>Caution:</strong></p>
-
-<ul>
- <li>
- <p>If you are defining <code>locales</code>, remember to also define <code>default_locale</code>.</p>
- </li>
- <li>
- <p>Do not define the value of <code>default_locale</code> again in <code>locales</code>.</p>
- </li>
- <li>
- <p>You cannot override these fields: <code>default_locale</code>, <code>locales</code>, and <code>installs_allowed_from</code>.</p>
- </li>
-</ul>
-</div>
-</div>
-
-<p>For example, your apps' default language is English, so its <code>default_locale</code> would be <code>en</code>. But you want to override the <code>name</code> and <code>description</code> for your Italian and German users with translated <code>name</code> and <code>description</code>. So your <code>locales</code> entries would look like this:</p>
-
-<pre>"locales": {
- "it": {
- "name": "L'Open Web",
- "description": "Eccitante azione di sviluppo web open!"
- },
- "de": {
- "name": "Der Open Web",
- "description": "Spannende offene Web-Entwicklung-Action!"
- }
-}</pre>
-
-<h3 id="messages"><code>messages</code></h3>
-
-<div class="note">
-<p class="red"><strong>Note</strong>: Applies only to apps to be installed on Firefox OS.</p>
-</div>
-
-<p>The system messages you allow the app to capture, and the pages in your app that will display when those messages occur.</p>
-
-<p>Below is an example from the Firefox OS Dialer app. Every time an incoming call comes in (system message: <code>telephony-new-call</code>), the device shows the dialer's keypad (URL: <code>/dialer/index.html#keyboard-view</code>).</p>
-
-<pre>"messages": [
- { "alarm": "/index.html" }
- { "notification": "/index.html" }
- { "telephony-new-call": "/dialer/index.html#keyboard-view" }
-]</pre>
-
-<h3 id="orientation"><code>orientation</code></h3>
-
-<div class="note">
-<p class="red"><strong>Note</strong>: Applies only to apps using Android or Firefox OS.</p>
-</div>
-
-<p>The positioning at which the application will stay locked.</p>
-
-<p><strong>Illustration of possible values:</strong></p>
-
-<table class="table table-bordered">
- <thead>
- <tr>
- <th>value</th>
- <th>App will stay locked to</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>portrait-primary</code></td>
- <td><img alt="Phone upright in portrait orientation" src="https://mdn.mozillademos.org/files/8487/portrait-primary.png" style="height: 111px; width: 63px;"></td>
- </tr>
- <tr>
- <td><code>portrait-secondary</code></td>
- <td><img alt="Phone upsidedown in portrait orientation" src="https://mdn.mozillademos.org/files/8489/portrait-secondary.png" style="height: 111px; width: 63px;"></td>
- </tr>
- <tr>
- <td><code>portrait</code><br>
- If you declare this, there's no need to write<br>
- <code>-primary</code> or <code>-secondary</code></td>
- <td><img alt="Phone upright in portrait orientation" src="https://mdn.mozillademos.org/files/8487/portrait-primary.png" style="height: 111px; width: 63px;"><img alt="Phone upsidedown in portrait orientation" src="https://mdn.mozillademos.org/files/8489/portrait-secondary.png" style="height: 111px; width: 63px;"></td>
- </tr>
- <tr>
- <td><code>landscape-primary</code></td>
- <td><img alt="Phone lying on its left hand side in landscape orientation" src="https://mdn.mozillademos.org/files/8483/landscape-primary.png" style="height: 63px; width: 113px;"></td>
- </tr>
- <tr>
- <td><code>landscape-secondary</code></td>
- <td><img alt="Phone lying on its right hand side in landscape orientation" src="https://mdn.mozillademos.org/files/8485/landscape-secondary.png" style="height: 63px; width: 113px;"></td>
- </tr>
- <tr>
- <td><code>landscape</code><br>
- If you declare this, there's no need to write<br>
- <code>-primary</code> or <code>-secondary</code></td>
- <td>
- <p><img alt="Phone lying on its left hand side in landscape orientation" src="https://mdn.mozillademos.org/files/8483/landscape-primary.png" style="height: 63px; width: 113px;"></p>
-
- <p><img alt="Phone lying on its right hand side in landscape orientation" src="https://mdn.mozillademos.org/files/8485/landscape-secondary.png" style="height: 63px; width: 113px;"></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<pre>"orientation": [ "landscape-primary" ]</pre>
-
-<h3 id="origin"><code>origin</code></h3>
-
-<div class="note">
-<p class="red"><strong>Note</strong>: Applies only to privileged or internal (certified) packaged apps.</p>
-</div>
-
-<p>Packaged apps have a special internal protocol of <code>app://UUID</code> where <code>UUID</code> is a string unique to each device the app is installed on. <code>UUID</code> is not easily accessible at this time. The <code>origin</code> field allows you to replace this <code>UUID</code> value with a single domain name that will be used by each installed app.</p>
-
-<div class="warning">
-<p><strong>Remember:</strong> domain name must start with <code>app://</code>, and you must be the owner of the domain name you specify.</p>
-</div>
-
-<pre>"origin": "app://mywebapp.com"</pre>
-
-<h3 id="permissions"><code>permissions</code></h3>
-
-<p>The user permissions for sensitive device APIs that your app needs, for example, access to the user's Contacts. <a href="/en-US/Apps/Build/App_permissions">See a full list of WebAPI permissions/features</a>.</p>
-
-<p>Each permission requires:</p>
-
-<ul>
- <li><code>name</code>: the name of the permission</li>
- <li><code>description</code>: the reason why your app needs to use this permission</li>
- <li><code>access</code>: the level of access required, options being <code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, and <code>createonly</code>. Only a few APIs need this, for example <a href="/en-US/docs/Web/API/Data_Store_API">Data Store</a>.</li>
-</ul>
-
-<p>For example, here's a manifest entry for an app that needs permission to use the device's <code>contacts</code> and <code>alarms</code>.</p>
-
-<pre>"permissions": {
- "contacts": {
- "description": "Required for autocompletion in the share screen",
- "access": "readcreate"
- },
- "alarms": {
- "description": "Required to schedule notifications"
- }
-}</pre>
-
-<div class="note">
-<p><strong>Note</strong>: If an app tries to use one of these APIs without a corresponding entry in the <code>permissions</code> field, it will fail to run.</p>
-</div>
-
-<p>There are many APIs, some of whom require the app <code>type</code> to be privileged or internal (certified). For example, <a href="/en-US/docs/Web/API/XMLHttpRequest#mozSystem"><code>systemXHR</code></a> requires the <code>type</code> field to be set to <code>privileged</code> in order to work:</p>
-
-<pre class="brush: js"> "type": "privileged",
- "permissions": {
- "systemXHR": {
- "description": "Required to download podcasts."
- }
- }
-</pre>
-
-<h3 id="precompile"><code>precompile</code></h3>
-
-<div class="note">
-<p class="red"><strong>Note</strong>: Applies only to packaged apps.</p>
-</div>
-
-<p>The path to JavaScript files containing <a href="/en-US/docs/Games/Tools/asm.js"><code>asm.js</code></a> code that you want compiled at install time.</p>
-
-<p>Compilation at install time makes the installation process longer, but reduces the time it takes to start up an app.</p>
-
-<pre>"precompile": [
- "game.js",
- "database.js"
-]</pre>
-
-<h3 id="redirects"><code>redirects</code></h3>
-
-<div class="note">
-<p class="red"><strong>Note</strong>: Applies only to privileged/internal (certified) apps that are to be installed on Firefox OS.</p>
-</div>
-
-<p>The internal URLs your app uses to handle external processes.</p>
-
-<p>For example, your app might use Facebook OAuth authentication to get a user's contacts. When the authentication is finished, the server usually redirects back to a URL that you control. Because packaged apps are not hosted on the web, a packaged app does not have a valid URL that can be redirected to. So you use the <code>redirects</code> field to redirect an external URL to an internal app URL.</p>
-
-<p>In the scenario above, the <code>redirects</code> field will look like this:</p>
-
-<pre>"redirects": [
- {"from": "http://facebook.com/authentication/success.html",
- "to": "/app/main_interface.html"}
-]</pre>
-
-<p>The scope of the redirects declared by <code>redirects</code> is limited to the app that declares them. That makes it so that several apps can redirect the same public URL to their own local resources, and it also prevents global hijacking of public URLs by an application.</p>
-
-<h3 id="role"><code>role</code></h3>
-
-<p>The <code>role</code> field is mainly for internal use by the Gaia engineering team; it allows you to specify how an app should be used by B2G, its role in the system. For example, is it a keyboard, or a homescreen replacement?</p>
-
-<pre class="brush: json">"role": "system",</pre>
-
-<p>Options include:</p>
-
-<ul>
- <li><code>system</code>: Does not display the app on the homescreen, and was originally intended as a system app replacement. Note however that in practice this doesn't really equate to a system app, and is used to only hide apps that shouldn't be available directly to the user (the Bluetooth app, for example.).</li>
- <li><code>input</code>: Shows up in the Settings app as a replaceable keyboard, and does not display on the homescreen.</li>
- <li><code>homescreen</code>: Shows up in the Settings app as a replacement homescreen option; does not display on the homescreen itself.</li>
- <li><code>addon</code>: The app is a <a href="/en-US/Firefox_OS/Add-ons">Firefox OS Add-on</a>.</li>
- <li><code>keyboard</code>: Defines the app as an IME app. This will show up in the Settings app as an alternative keyboard, but not display on the homescreen itself.</li>
-</ul>
-
-<h3 id="version"><code>version</code></h3>
-
-<div class="note">
-<p><strong>Note:</strong> Required for packaged app manifests.</p>
-</div>
-
-<p>A string that represents the version of the app, shown in Marketplace and when installing the app.</p>
-
-<p>In packaged apps the <code>version</code> is used to determine distinguish if an update needs to be installed. The field needs to be incremented when uploading an update of your app to Marketplace.</p>
-
-<p>In hosted apps this field is for your convenience; it's not used by the runtime, so <code>version</code> can be any value. Defining it is recommended.</p>
-
-<pre>"version": "2.1"</pre>
-
-<h2 id="Serving_manifests">Serving manifests</h2>
-
-<p>The app manifest must be served from the <a href="/en-US/Apps/Build/installable_apps_for_Firefox_OS/App_manifest_FAQ#What_is_an_origin.3F">same origin</a> that the app is served from.</p>
-
-<p>The manifest should be stored with a file extension of <code>.webapp</code>. App manifests must be served with a <code>Content-Type</code> header of <code>application/x-web-app-manifest+json</code>. This is currently not enforced by Firefox but is enforced by the Firefox Marketplace. Firefox OS only checks this if the <code>origin</code> of the page where the user triggers the install is different from the <code>origin</code> of the app itself. You don't need other headers such as <code>Content-Security-Policy</code> and <code>X-UA-Compatible</code>.</p>
-
-<p>Manifests can be served over SSL to mitigate certain classes of attacks. You can also serve the manifest with <a href="http://en.wikipedia.org/wiki/HTTP_compression">HTTP compression</a>. The manifest should not be cached.</p>
-
-<p>The manifest must be in UTF-8 encoding in order for the app to be submitted to Firefox Marketplace. It is recommended that you omit the byte order mark (BOM). Other encodings can be specified with a <code>charset</code> parameter on the <code>Content-Type</code> header (i.e. <code>Content-Type: application/x-web-app-manifest+json; charset=ISO-8859-4</code>), although this will not be respected by the Marketplace.</p>
-
-<p>User Agents when possible should meaningfully message the site identity and TLS status when prompting a user to install an app.</p>
-
-<h3 id="Serving_from_Apache">Serving from Apache</h3>
-
-<p>In your <code>.htaccess</code> file, you must add the following:</p>
-
-<pre>AddType application/x-web-app-manifest+json .webapp</pre>
-
-<p>If adding in an <code>.htaccess</code> file didn't work for you, you can add the same line in your Apache configuration file. Your configuration file might be named <code>httpd.conf</code> or <code>000-default.conf</code>, depending upon your operating system and configuration.</p>
-
-<h4 id="Serving_from_Apache_using_a_PHP_snippet">Serving from Apache, using a PHP snippet</h4>
-
-<p>It may be that on a shared hosting plan, changing the <code>Content-Type</code> header with a <code>.htaccess</code> file is not working because this is globally disallowed. Meanwhile,<em> if this hosting supports PHP</em>, using the following short script can serve the purpose:</p>
-
-<pre class="brush: php">&lt;?php
-// Serving the manifest file 'manifest.webapp' with the appropriate header
-header('Content-type: application/x-web-app-manifest+json');
-readfile('manifest.webapp');
-?&gt;</pre>
-
-<p>This code should be placed in the same directory as the manifest, and named <code>manifest.webapp.php</code> for example.</p>
-
-<h3 id="Serving_from_Tomcat">Serving from Tomcat</h3>
-
-<p>In your <code>web.xml</code> file, you need to set the mime mapping</p>
-
-<pre>&lt;mime-mapping&gt;
-    &lt;extension&gt;webapp&lt;/extension&gt;
-    &lt;mime-type&gt;application/x-web-app-manifest+json&lt;/mime-type&gt;
-&lt;/mime-mapping&gt;</pre>
-
-<h3 id="sect1"> </h3>
-
-<h3 id="Serving_from_IIS">Serving from IIS</h3>
-
-<p>You need to edit your <code>web.config</code> file. This will probably be located in the web site's root directory.</p>
-
-<p>You will have to add a new entry in the <code>&lt;configuration&gt;</code> <code>&lt;system.webServer&gt;</code> <code>&lt;staticContent&gt;</code> section.</p>
-
-<pre>&lt;remove fileExtension=".webapp" /&gt;
-&lt;mimeMap fileExtension=".webapp" mimeType="application/x-web-app-manifest+json; charset=UTF-8" /&gt;</pre>
-
-<div class="note">
-<p><strong>Note</strong>: For more information, read <a href="http://www.iis.net/configreference/system.webserver/staticcontent/mimemap">Adding Static Content MIME Mappings &lt;mimeMap&gt;</a>.</p>
-</div>
-
-<h3 id="Serving_from_nginx">Serving from nginx</h3>
-
-<p>You need to edit your <code>mime.types</code> file in the conf directory. This will probably be located in either <code>/etc/nginx/</code> or <code>/opt/nginx/</code>.</p>
-
-<p>You should have something similar to the following. Add the last line seen here:</p>
-
-<pre>types {
- text/html html htm shtml;
- text/css css;
- text/xml xml;
- application/x-web-app-manifest+json webapp;
-}</pre>
-
-<h3 id="Serving_from_GitHub">Serving from GitHub</h3>
-
-<p>If you serve your manifest file from <a class="external" href="http://pages.github.com/">GitHub Pages</a>, GitHub will serve it with the <code>Content-Type</code> header of <code>application/x-web-app-manifest+json</code>.</p>
-
-<h3 id="Serving_from_Python">Serving from Python</h3>
-
-<p>If you have Python installed, you can easily run a server from the local directory using the following:</p>
-
-<pre>import SimpleHTTPServer
-import SocketServer
-SimpleHTTPServer.SimpleHTTPRequestHandler.extensions_map['.webapp'] = 'application/x-web-app-manifest+json'
-httpd = SocketServer.TCPServer(("", 3000), SimpleHTTPServer.SimpleHTTPRequestHandler)
-httpd.serve_forever()
-</pre>
-
-<h3 id="Serving_from_Flask_(Python)">Serving from Flask (Python)</h3>
-
-<p>If you have flask project you don't need create file manifest.webapp but you can use route() decorator to tell Flask what URL should trigger our function. First you need import Response from Flask</p>
-
-<pre>from flask import Response</pre>
-
-<p>in your flask application, add the <code>route()</code> decorator, as indicated below:</p>
-
-<pre>@app.route('/manifest.webapp')
-def manifest():
-        data = json.dumps({
-            "name": "Flask Application",
-            "version": "1.0",
-            "description": "Example of manifest.webapp",
-            "launch_path": "/",
-            "icons": {
-                    "256": "/img/256.png",
-                    "128": "/img/128.png",
-                    "120": "/img/120.png",
-                    "90": "/img/90.png",
-                    "60": "/img/60.png",
-                    "32": "/img/32.png"
-                },
-            "developer": {
-            "name": "Rizky Ariestiyansyah",
-            "url": "http://oonlab.com"
-            },
-            "orientation": ["portrait"],
-            "default_locale": "en"
-        })
-        return Response(data, mimetype='application/x-web-app-manifest+json')</pre>
-
-<h3 id="Serving_from_Rack_(Ruby)">Serving from Rack (Ruby)</h3>
-
-<p>In <code>config/initializers/mime_types.rb</code>, add:</p>
-
-<pre>Rack::Mime::MIME_TYPES['.webapp'] = 'application/x-web-app-manifest+json'</pre>
-
-<h2 id="Especificação">Especificação</h2>
-
-<p>Not part of any specification — this document refers to the proprietary Firefox OS manifest format, and not the <a href="http://w3c.github.io/manifest/">W3C manifest spec</a>. We will hopefully document this at a different location, sometime soon.</p>
-
-<h2 id="Compatibilidade_do_navegador">Compatibilidade do navegador</h2>
-
-<p>For obvious reasons, support is primarily expected on mobile browsers.</p>
-
-<p>{{ CompatibilityTable() }}</p>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>Firefox OS (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- <td>1.0.1</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- <td>{{ CompatNo() }}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; opacity: 0; display: block; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody>
- <tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody>
- <tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/b2g_os/firefox_os_apps/index.html b/files/pt-pt/archive/b2g_os/firefox_os_apps/index.html
deleted file mode 100644
index 4b6226ee81..0000000000
--- a/files/pt-pt/archive/b2g_os/firefox_os_apps/index.html
+++ /dev/null
@@ -1,140 +0,0 @@
----
-title: Firefox OS apps
-slug: Archive/B2G_OS/Firefox_OS_apps
-tags:
- - Apps
- - Building
- - Components
- - Firefox OS
- - Installing
- - NeedsTranslation
- - TopicStub
- - device APIs
-translation_of: Archive/B2G_OS/Firefox_OS_apps
----
-<p></p><section class="Quick_links" id="Quick_Links">
-
-<ol>
- <li class="toggle">
- <details>
- <summary>Build and install</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS">Build and install overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_build_process_summary">B2G OS build process summary</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/B2G_OS_build_prerequisites">Build prerequisites</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Preparing_for_your_first_B2G_build">Preparing for your first build</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building">Building B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_installer_add-on">B2G installer add-on</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Building_for_Flame_on_OS_X">Building B2G OS for Flame on Mac OS X</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Choosing_how_to_run_Gaia_or_B2G">Choosing how to run Gaia or B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Compatible_Devices">Compatible Devices</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Installing_on_a_mobile_device">Installing B2G OS on a mobile device</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_update_packages">Creating and applying B2G OS update packages</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building/FOTA_community_builds">Building and installing FOTA community builds</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_Build_Variables_Reference_Sheet">B2G build variables reference sheet</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Porting B2G OS</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS">Porting overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/basics">Porting basics</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/Porting_on_CyanogenMod">Porting on CyanogenMod</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Developing Gaia</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia">Developing Gaia overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Running_the_Gaia_codebase">Running the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Mulet">Run Gaia on desktop using Mulet</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Understanding_the_Gaia_codebase">Understanding the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Making_Gaia_code_changes">Making Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Testing_Gaia_code_changes">Testing Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Submitting_a_Gaia_patch">Submitting a Gaia patch</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Build_System_Primer">Gaia build system primer</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Different_ways_to_run_Gaia">Different ways to run Gaia</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/make_options_reference">Make options reference</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Gaia_tools_reference">Gaia tools reference</a></li>
- </ol>
- </details>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/API">B2G OS APIs</a></li>
-</ol>
-</section><p></p>
-
-<p class="summary">This section of the Firefox OS docs covers the specific techniques required — and available tools — for building Firefox OS apps. You'll find a number of details below, from Firefox OS building blocks/web components, to device APIs and App installation.</p>
-
-<h2 id="Building_Firefox_OS_apps">Building Firefox OS apps</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS">Building apps for Firefox OS</a></dt>
- <dd>Firefox OS/Firefox platform app specifics, including App installation and management APIs, manifest files, packaged and hosted apps, handling API permissions.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Localization">Localization</a></dt>
- <dd>This set of articles provides information for developers wishing to provide localized versions of their apps.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Performance">Performance</a></dt>
- <dd>This page lists performance-related topics specific to Firefox OS.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Firefox_Accounts_on_Firefox_OS">Firefox Accounts on Firefox OS</a></dt>
- <dd>This article provides an overview of using <a href="/en-US/docs/Mozilla/Tech/Firefox_Accounts">Firefox Accounts</a> in Firefox OS.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Reference_apps">Reference apps</a></dt>
- <dd>This page lists a number of sample apps we've put together for you to download, install, play with and learn from. Have fun!</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Screencast_series:_App_Basics_for_Firefox_OS">Screencast series: App Basics for Firefox OS</a></dt>
- <dd>In this collection of short videos, developers from Mozilla and Telenor explain in a few steps how you can get started with building applications for Firefox OS.</dd>
-</dl>
-
-<h2 id="Building_blocks">Building blocks</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Building_blocks">Building Blocks</a></dt>
- <dd>The Firefox OS Building Blocks are reusable UI components (also called 'common controls') that reflect OS-wide design patterns. Building Blocks are used to create the interfaces of all <a href="https://developer.mozilla.org/en-US/Firefox_OS/Platform/Gaia">Gaia</a> default apps. You are free to make use of these components in your own Firefox OS apps, or general Web apps.</dd>
-</dl>
-
-<h2 id="Styleguides">Styleguides</h2>
-
-<dl>
- <dt><a href="http://www.mozilla.org/en-US/styleguide/products/firefox-os/">Firefox OS Visual styleguide</a></dt>
- <dd>Our style guide for Firefox OS visual design, covering colours, typeface, backgrounds, app icons, and the design of specific UI elements.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Copy_styleguide">Firefox OS Copy styleguide</a></dt>
- <dd>This guide outlines the rules we follow for writing Firefox OS app copy, but can be used as a general guide to writing good copy for any app interfaces.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Firefox_OS_in_Arabic">Firefox OS in Arabic</a></dt>
- <dd>A guide to the specific UX design implementation Firefox OS has in place for dealing with Arabic (and other RTL languages.)</dd>
-</dl>
-
-<h2 id="Assets">Assets</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Design_asset_library">Firefox OS design asset library</a></dt>
- <dd>In this section you'll find design assets, artwork, graphic templates, fonts and other materials that will be helpful as you design Firefox OS/Gaia apps.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Icon_font">Firefox OS icon font</a></dt>
- <dd>Firefox OS has its own icon font set available: this article explains how to use it in your own apps.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Transitions">Firefox OS transitions</a></dt>
- <dd>A reference to some of the transitions used in Firefox OS to move between different states in apps, including animated GIFs demonstrating the animations used, plus code samples to show the CSS animation code needed to implement these animations.</dd>
-</dl>
-
-<h2 id="References">References</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Firefox_OS_device_APIs">Firefox OS device APIs</a></dt>
- <dd>This article provides a list of pages covering those APIs, as well as the <a href="https://developer.mozilla.org/en-US/Apps/Build/Manifest">app manifest</a> permissions for each one.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Firefox_OS_app_tools">Firefox OS app tools</a></dt>
- <dd>This page provides a list of useful tools, libraries, examples, etc. that are useful for Firefox OS app developers, whether you want a code template to copy, or need help with adding a specific feature to your Firefox OS app.</dd>
-</dl>
-
-<h2 id="Other_app_topics">Other app topics</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/Porting_Chrome_apps">Porting Chrome apps to Firefox OS Apps</a></dt>
- <dd>This article discusses the differences between Chrome apps and Firefox OS Apps, and how you can convert between the two.</dd>
- <dt><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_apps/App_development_FAQ">App development FAQ</a></dt>
- <dd>This FAQ is a compilation of answers to common app development questions.</dd>
-</dl>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Marketplace">Firefox Marketplace</a></li>
-</ul>
diff --git a/files/pt-pt/archive/b2g_os/firefox_os_apps/localização/index.html b/files/pt-pt/archive/b2g_os/firefox_os_apps/localização/index.html
deleted file mode 100644
index f9cfe4bca2..0000000000
--- a/files/pt-pt/archive/b2g_os/firefox_os_apps/localização/index.html
+++ /dev/null
@@ -1,101 +0,0 @@
----
-title: Localização de aplicação
-slug: Archive/B2G_OS/Firefox_OS_apps/Localização
-tags:
- - Aplicações
- - Apps
- - B2G
- - Firefox OS
- - Gaia
- - L10n.js
- - Localization
- - Localização
-translation_of: Archive/B2G_OS/Firefox_OS_apps/Localization
----
-<p></p><section class="Quick_links" id="Quick_Links">
-
-<ol>
- <li class="toggle">
- <details>
- <summary>Build and install</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS">Build and install overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_build_process_summary">B2G OS build process summary</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/B2G_OS_build_prerequisites">Build prerequisites</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Preparing_for_your_first_B2G_build">Preparing for your first build</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building">Building B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_installer_add-on">B2G installer add-on</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Building_for_Flame_on_OS_X">Building B2G OS for Flame on Mac OS X</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Choosing_how_to_run_Gaia_or_B2G">Choosing how to run Gaia or B2G OS</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/Compatible_Devices">Compatible Devices</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Installing_on_a_mobile_device">Installing B2G OS on a mobile device</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_OS_update_packages">Creating and applying B2G OS update packages</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building/FOTA_community_builds">Building and installing FOTA community builds</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Building_and_installing_B2G_OS/B2G_Build_Variables_Reference_Sheet">B2G build variables reference sheet</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Porting B2G OS</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS">Porting overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/basics">Porting basics</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Porting_B2G_OS/Porting_on_CyanogenMod">Porting on CyanogenMod</a></li>
- </ol>
- </details>
- </li>
- <li class="toggle">
- <details>
- <summary>Developing Gaia</summary>
- <ol>
- <li><strong><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia">Developing Gaia overview</a></strong></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Running_the_Gaia_codebase">Running the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Mulet">Run Gaia on desktop using Mulet</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Understanding_the_Gaia_codebase">Understanding the Gaia codebase</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Making_Gaia_code_changes">Making Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Testing_Gaia_code_changes">Testing Gaia code changes</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Submitting_a_Gaia_patch">Submitting a Gaia patch</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Build_System_Primer">Gaia build system primer</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Different_ways_to_run_Gaia">Different ways to run Gaia</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/make_options_reference">Make options reference</a></li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/Developing_Gaia/Gaia_tools_reference">Gaia tools reference</a></li>
- </ol>
- </details>
- </li>
- <li><a href="/pt-PT/docs/Mozilla/B2G_OS/API">B2G OS APIs</a></li>
-</ol>
-</section><p></p>
-
-<div class="summary">
-<p><span class="seoSummary">This set of articles provides information for developers wishing to provide localized versions of their apps.</span></p>
-</div>
-
-<h2 id="Tutoriais">Tutoriais</h2>
-
-<dl>
- <dt><a href="/en-US/Apps/Build/Localization/Getting_started_with_app_localization">Getting started with app localization</a></dt>
- <dd>This tutorial provides a detailed guide to app localization.</dd>
- <dt><a href="/en-US/Apps/Build/Localization/App_Localization_with_Transifex">Connecting developers and translators with Transifex</a></dt>
- <dd>This article explores the use of <a href="https://www.transifex.com/">Transifex</a> for managing translation work, both for app developers and localizers.</dd>
-</dl>
-
-<h2 id="Referência">Referência</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Web/Apps/Build/Localization/L10n.js_reference">L10n.js reference</a></dt>
- <dd>This article provides a reference for the l10n.js library, and its associated date helper, l10n_date.js.</dd>
- <dt><a href="/en-US/docs/Web/Apps/Build/Localization/Internationalization_helpers_IntlHelper_and_mozIntl">Internationalization helpers: IntlHelper and mozIntl</a></dt>
- <dd>This article looks at how Firefox OS handles localization of dates, times, numbers and collators from version 2.5 onwards, using the <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl">Internationalization API</a> and Gaia's built in helpers, <a href="https://github.com/mozilla-b2g/gaia/blob/master/shared/js/intl_helper.js">IntlHelper</a> and <a href="https://github.com/mozilla-b2g/gaia/blob/master/shared/js/moz_intl.js">mozIntl</a>.</dd>
- <dt><a href="/en-US/docs/Web/Apps/Build/Localization/Localization_code_best_practices">App localization code best practices</a></dt>
- <dd>Localization best practices and advanced techniques for experienced Gaia/app developers.</dd>
- <dt><a href="/en-US/Apps/Build/Localization/Developing_Bidi_Apps">Developing Bidi Apps</a></dt>
- <dd>Best coding practices and guidelines for developing bi-directional (<em>left-to-right</em> and <em>right-to-left</em>, RTL) apps.</dd>
-</dl>
-
-<h2 id="Ferramentas">Ferramentas</h2>
-
-<dl>
- <dt><a href="https://github.com/robnyman/TranslationTester">Translation tester</a></dt>
- <dd>This app is for testing translations for Firefox OS apps and provides a blueprint for adding translation support to your own apps.</dd>
-</dl>
diff --git a/files/pt-pt/archive/b2g_os/firefox_os_apps/permissoes_de_aplicação/index.html b/files/pt-pt/archive/b2g_os/firefox_os_apps/permissoes_de_aplicação/index.html
deleted file mode 100644
index 403b62c93d..0000000000
--- a/files/pt-pt/archive/b2g_os/firefox_os_apps/permissoes_de_aplicação/index.html
+++ /dev/null
@@ -1,690 +0,0 @@
----
-title: Permissões de Aplicação
-slug: Archive/B2G_OS/Firefox_OS_apps/Permissoes_de_aplicação
-tags:
- - Aplicações
- - Firefox OS
- - Intermediário
- - Permissões
- - Referencia
- - Referência(2)
- - WebAPI
-translation_of: Archive/B2G_OS/Firefox_OS_apps/App_permissions
----
-<div class="summary">
-<p>O campo de <code>permissões</code> no <a href="/pt-PT/docs/Archive/B2G_OS/Firefox_OS_apps/Building_apps_for_Firefox_OS/Manifesto">manisfesto da aplicação</a> controla o acesso a várias APIs sensíveis no dispositivo (algumas vezes chamada de <a href="/pt-PT/docs/Web/WebAPI">WebAPIs</a>). As permissões são descritas nas tabelas seguintes.</p>
-</div>
-
-<p>Os três níveis de permissão, em resumo, são:</p>
-
-<ul>
- <li><strong>Web apps</strong>: These only have a basic level of permissions, and don't have access to privileged or internal APIs.</li>
- <li><strong>Privileged apps</strong>: These have all the permissions of web apps plus more. <a href="/en-US/Marketplace/Options/Hosted_apps">Hosted apps</a> can't be privileged — they must be <a href="/en-US/Marketplace/Options/Packaged_apps">packaged apps</a>.</li>
- <li><strong>Internal (certified) apps</strong>: These have all the permissions of privileged and web apps plus more. Certified/internal apps can only be installed on a device by Mozilla or a device vendor; not 3rd party developers.</li>
-</ul>
-
-<p>For more information on app types, see <a href="/en-US/Marketplace/Options/Packaged_apps#Types_of_packaged_apps">Types of packaged apps</a>.</p>
-
-<div class="note">
-<p><strong>Nota</strong>: If you use the <a href="/Firefox_OS/Using_the_App_Manager">App Manager</a>/<a href="/en-US/docs/Tools/WebIDE">WebIDE</a> to test your app, it will display an easy to read <a href="/Firefox_OS/Using_the_App_Manager#permissions">table</a> of which permissions are allowed, denied, or require a prompt on the current device or simulator you are connected to.</p>
-</div>
-
-<h2 id="Hosted_app_and_privileged_app_permissions">Hosted app and privileged app permissions</h2>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Manifest permission</th>
- <th scope="col">API name</th>
- <th scope="col">Description</th>
- <th scope="col">Minimum app type required</th>
- <th scope="col"><code>access</code> property</th>
- <th scope="col">Default granted</th>
- <th scope="col">Platform/version supported</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><a name="alarms"><code>alarms</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Alarm">Alarm</a></td>
- <td>Schedule a notification, or schedule an application to be started.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-capture"><code>audio-capture</code></a></td>
- <td>
- <p><a href="/en-US/docs/Web/API/Navigator.getUserMedia">getUserMedia</a>, <a href="/en-US/docs/Web/API/Web_Speech_API">Web Speech API</a></p>
- </td>
- <td>Obtain <code>MediaStream</code> from audio input devices, e.g. microphone. This is needed to allow audio capture in Firefox OS 1.2+.</td>
- <td>hosted for getUserMedia, privileged for Web Speech API</td>
- <td>none</td>
- <td><code>Prompt</code> for all installed App types for getUserMedia, <code>Allow</code> for Web Speech API.</td>
- <td>FxOS 1.2 and<br>
- Desktop Firefox 20+ for getUserMedia, FxOS 2.5 and Desktop Firefox 44 for Web Speech API.</td>
- </tr>
- <tr>
- <td><a name="audio-channel-alarm"><code>audio-channel-alarm</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>Alarm clock, calendar alarms.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-content"><code>audio-channel-content</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>Music, video.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-normal"><code>audio-channel-normal</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>UI sounds, Web content, music, radio.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-notification"><code>audio-channel-notification</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>New email, incoming SMS.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="browser"><code>browser</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Browser">Browser</a></td>
- <td>Enables the app to implement a browser in an <code>iframe</code>.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="camera"><code>camera</code></a></td>
- <td><a href="/en-US/docs/Web/API/Navigator.mozCamera">Camera</a></td>
- <td>
- <p>Take photos, shoot video, record audio, and control the camera.</p>
-
- <div class="note">
- <p><strong>Note:</strong> <code>camera</code> was limited to certified apps initially because the app sandbox was preventing access to the camera hardware. Fixed from Firefox OS 2.0 onwards.</p>
- </div>
- </td>
- <td>
- <p>privileged in Firefox OS 2.0+ internal/certified up to Firefox OS 1.4</p>
- </td>
- <td>none</td>
- <td><code>Prompt</code> for all installed App types.</td>
- <td>FxOS 1.0.1-1.4 certified<br>
- FxOS 2.0+ privileged</td>
- </tr>
- <tr>
- <td><a name="contacts"><code>contacts</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Contacts">Contacts</a></td>
- <td>Add, read, or modify contacts from the address book on the device and read contacts from the SIM.</td>
- <td>privileged</td>
- <td><code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, or <code>createonly</code></td>
- <td><code>Prompt </code>for all installed App types.</td>
- <td>FxOS 1.1<br>
- Firefox Android 18</td>
- </tr>
- <tr>
- <td><a name="desktop-notification"><code>desktop-notification</code></a></td>
- <td><a href="/en-US/docs/Web/API/window.navigator.mozNotification">mozNotification</a> for Gecko &lt;22, <a href="/en-US/docs/Web/API/notification">Notification</a> for Gecko 22+</td>
- <td>Display a notification on the user's desktop. Note that this has changed, so for Gecko &lt;22 (Firefox OS &lt;1.2) you need to use <code>mozNotification</code>, while for Gecko 22+ (Firefox 1.2+) you need to use <code>Notification</code>.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Prompt</code> for Web content. <code>Allow</code> for all installed App types.</td>
- <td>FxOS 1.0.1, Android 4.0, Desktop 4.0 for prefixed version<br>
- FxOS 1.2, Android 22, Desktop 22 for non-prefixed version</td>
- </tr>
- <tr>
- <td><a name="device-storage:music"><code>device-storage:music</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Device_Storage">Device Storage</a></td>
- <td>Add, read, or modify music files stored on the device.</td>
- <td>privileged</td>
- <td><code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, or <code>createonly</code></td>
- <td><code>Prompt</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="device-storage:pictures"><code>device-storage:pictures</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Device_Storage">Device Storage</a></td>
- <td>Add, read, or modify picture files stored on the device.</td>
- <td>privileged</td>
- <td><code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, or <code>createonly</code></td>
- <td><code>Prompt</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="device-storage:sdcard"><code>device-storage:sdcard</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Device_Storage">Device Storage</a></td>
- <td>Add, read, or modify files stored on the device's SD card.</td>
- <td>privileged</td>
- <td><code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, or <code>createonly</code></td>
- <td><code>Prompt</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="device-storage:videos"><code>device-storage:videos</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Device_Storage">Device Storage</a></td>
- <td>Add, read, or modify video files stored on the device.</td>
- <td>privileged</td>
- <td><code>readonly</code>, <code>readwrite</code>, <code>readcreate</code>, or <code>createonly</code></td>
- <td><code>Prompt</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="fmradio"><code>fmradio</code></a></td>
- <td><a href="/en-US/docs/Web/API/WebFM">FM Radio</a></td>
- <td>Control the FM radio.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="geolocation"><code>geolocation</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Using_geolocation">Geolocation</a></td>
- <td>Obtain the current location of the user.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Prompt</code> (even for certified Apps)</td>
- <td>FxOS 1.0.1, Desktop Firefox 3.5, Android 4.0</td>
- </tr>
- <tr>
- <td><a name="input"><code>input</code></a></td>
- <td><a href="https://wiki.mozilla.org/WebAPI/KeboardIME">Keyboard</a></td>
- <td>Allows the app to act as a virtual keyboard by listening to focus change events in other apps. All IME apps need this permission for sending input keys and updating the value of a input field.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.2</td>
- </tr>
- <tr>
- <td><code><a id="mobileid" name="mobileid">mobileid</a></code></td>
- <td><a href="https://wiki.mozilla.org/WebAPI/MobileIdentity">Mobile identity</a></td>
- <td>Allows an app to obtain a verified phone number (<a class="external text" href="http://en.wikipedia.org/wiki/MSISDN" rel="nofollow">MSISDN</a>) after the user selects the number to be shared and gives explicit permission for the app to obtain it.</td>
- <td>privileged/</td>
- <td>none</td>
- <td><code>Prompt</code></td>
- <td>FxOS 2.0</td>
- </tr>
- <tr>
- <td><a name="mobilenetwork"><code>mobilenetwork</code></a></td>
- <td><a href="/en-US/docs/Web/API/MozMobileNetworkInfo" title="/en-US/docs/Web/API/MozMobileNetworkInfo">Mobile Network</a></td>
- <td>Obtain mobile network information (MCC, MNC, etc.).</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="moz-firefox-accounts"><code>moz-firefox-accounts</code></a></td>
- <td><a href="/en-US/docs/Firefox-Accounts-on-FirefoxOS" title="/en-US/docs/Web/API/MozMobileNetworkInfo">Firefox Accounts</a></td>
- <td>Allows the use of Firefox Accounts when using the navigator.mozId API.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Prompt</code> for all installed App types.</td>
- <td>FxOS 2.0</td>
- </tr>
- <tr>
- <td><a id="nfc" name="nfc"><code>nfc</code></a></td>
- <td><a href="/en-US/docs/Web/API/NFC_API">NFC API</a></td>
- <td>NFC enables an app to transmit data to other devices via near field communication. This permission is required for reading and writing data.</td>
- <td>Privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 2.2</td>
- </tr>
- <tr>
- <td><code>nfc-share</code></td>
- <td><a href="/en-US/docs/Web/API/NFC_API">NFC API</a></td>
- <td>This permission is just required for sharing tags via NFC.</td>
- <td>Privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 2.2</td>
- </tr>
- <tr>
- <td><code>nfc-read</code>, <code>nfc-write</code></td>
- <td><a href="/en-US/docs/Web/API/NFC_API">NFC API</a></td>
- <td>These permissions were used to request reading and writing privileges in Firefox OS 2.0/2.1</td>
- <td>Was certified/internal at this stage in development.</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 2.0</td>
- </tr>
- <tr>
- <td><a name="push"><code>push</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Simple_Push" title="/en-US/docs/WebAPI/Simple_Push">Simple Push</a></td>
- <td>Enable an app to wake up to receive notification.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.1</td>
- </tr>
- <tr>
- <td><code>speech-recognition</code></td>
- <td><a href="/en-US/docs/Web/API/Web_Speech_API">Web Speech API</a></td>
- <td>Allows an app to use speech recognition.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 2.5 and Desktop Firefox 44.</td>
- </tr>
- <tr>
- <td><a name="systemXHR"><code>systemXHR</code></a></td>
- <td><a href="/en-US/docs/Web/API/XMLHttpRequest#mozSystem">SystemXHR</a></td>
- <td>Allows anonymous (no cookies) cross-origin XHR without the target site having CORS enabled. Similar to the TCP Socket API but restricted to XHR, not just raw sockets, so it is slightly less risky. See <a href="/en-US/docs/Web/API/XMLHttpRequest">XMLHttpRequest</a>.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="tcp-socket"><code>tcp-socket</code></a></td>
- <td><a href="/en-US/docs/Web/API/TCPSocket">TCP Socket</a></td>
- <td>Create TCP sockets and communicate over them.</td>
- <td>privileged</td>
- <td>none</td>
- <td><code>Allow</code></td>
- <td>FxOS 1.0.1,<br>
- Desktop (early versions)</td>
- </tr>
- <tr>
- <td><a name="video-capture"><code>video-capture</code></a></td>
- <td><a href="/en-US/docs/Web/API/Navigator.getUserMedia">GetUserMedia</a></td>
- <td>Obtain MediaStream from video input devices, e.g. camera. This is needed to allow video capture in Firefox OS 1.4+.</td>
- <td>hosted</td>
- <td>none</td>
- <td><code>Prompt</code> for all installed App types.</td>
- <td>FxOS 1.4</td>
- </tr>
- </tbody>
-</table>
-
-<div class="note">
-<p><strong>Note</strong>: To declare an app as privileged, you need to put <code>"type" : "privileged"</code> into your <a href="/en-US/Apps/Build/Manifest#type">app manifest</a>. You don't need to include the <code>type</code> field in your manifest for web apps, as <code>web</code> is the default value.</p>
-</div>
-
-<h2 id="Internal_(Certified)_app_permissions">Internal (Certified) app permissions</h2>
-
-<p>The following permissions require a internal app and are granted implicitly without prompting the user. Most app developers will not be able to use internal APIs, because they are intended for system-level apps and default apps created by Mozilla/operators/OEMs.</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Manifest permission</th>
- <th scope="col">API name</th>
- <th scope="col">Description</th>
- <th scope="col">Minimum app type required</th>
- <th scope="col"><code>access</code> property</th>
- <th scope="col">Platform</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><a name="attention"><code>attention</code></a></td>
- <td>Attention Screen</td>
- <td>
- <p>Allow content to open a window in front of all other content. Used by telephone and SMS.</p>
-
- <div class="note">
- <p><strong>Note:</strong> Attention screens use the Firefox OS-specific <code>attention</code> feature name when calling {{domxref("window.open()")}}.</p>
- </div>
- </td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-ringer"><code>audio-channel-ringer</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>Incoming phone calls.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-telephony"><code>audio-channel-telephony</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>Phone calls, VoIP calls.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="audio-channel-publicnotification"><code>audio-channel-publicnotification</code></a></td>
- <td><a href="/en-US/docs/Web/API/AudioChannels_API">AudioChannels</a></td>
- <td>Forced camera shutter sounds.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.2</td>
- </tr>
- <tr>
- <td><a name="background-sensors"><code>background-sensors</code></a></td>
- <td>Background Sensor</td>
- <td>Ability to listen to proximity sensor events in the background. (All apps recieve these events in the foreground.)</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="backgroundservice"><code>backgroundservice (Deprecated)</code></a></td>
- <td>Background Services</td>
- <td>
- <p>Enable an app to run in the background and perform tasks like syncing or responding to incoming messages.</p>
-
- <div class="note">
- <p>Note: this functionality has been removed.</p>
- </div>
- </td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="bluetooth"><code>bluetooth</code></a></td>
- <td> </td>
- <td>Low level access to <a href="https://wiki.mozilla.org/WebAPI/WebBluetooth">Bluetooth</a> hardware.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a id="browser:embedded-system-app" name="browser:embedded-system-app"><code>browser:embedded-system-app</code></a></td>
- <td><a href="/en-US/docs/Web/API/Browser_API">Browser</a></td>
- <td>Enables an app opened in a browser {{htmlelement("iframe")}} to call methods of the API on — and listen and respond to related events fired by — itself (usually the parent window of the <code>iframe</code> calls the Browser API.) See {{bug("1196654")}} for further information.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 2.5</td>
- </tr>
- <tr>
- <td><a name="camera"><code>camera</code></a></td>
- <td><a href="/en-US/docs/Web/API/Navigator.mozCamera">Camera</a></td>
- <td>
- <p>Take photos, shoot video, record audio, and control the camera.</p>
-
- <div class="note">
- <p><strong>Note:</strong> <code>camera</code> was limited to certified apps initially because the sandbox that apps run in was preventing access to the camera hardware. This has been fixed from Firefox OS 2.0 onwards.</p>
- </div>
- </td>
- <td>internal (certified) up to Firefox OS 1.4, privileged in Firefox OS 2.0+</td>
- <td>none</td>
- <td>FxOS 1.0.1-1.4 certified<br>
- FxOS 2.0+ privileged</td>
- </tr>
- <tr>
- <td><a name="cellbroadcast"><code>cellbroadcast</code></a></td>
- <td> </td>
- <td>Fires an event when a specific type of cell network message is received (an emergency network notification).</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a id="datastore" name="datastore">No permission needed</a>, but <code>datastores-access</code>/<code>datastores-owned</code> needs to be set in the manifest (see <a href="/en-US/docs/Web/API/Data_Store_API#Manifest_fields">Data Store API Manifest fields</a>.)</td>
- <td><a href="/en-US/docs/Web/API/Data_Store_API">Data Store</a></td>
- <td>A powerful, flexible storage mechanism for Firefox OS applications to use to store and share data.</td>
- <td>internal (certified)</td>
- <td><code>datastores-access</code>/<br>
- <code>datastores-owned</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="device-storage:apps"><code>device-storage:apps</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Device_Storage">Device Storage</a></td>
- <td>Add, read, or modify files stored in the apps location on the device.<br>
- <br>
- When this is used, the <code>webapps-manage</code> permission is also required alongside it (see below.)</td>
- <td>internal (certified)</td>
- <td><code>read</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="embed-apps"><code>embed-apps</code></a></td>
- <td>Embed Apps</td>
- <td>Ability to embed apps in <code>mozApp</code> frames.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="idle"><code>idle</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Idle">Idle</a></td>
- <td>Notify the app if the user is idle.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="mobileconnection"><code>mobileconnection</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Mobile_Connection">Mobile Connection</a></td>
- <td>Obtain information about the current mobile voice and data connection.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="network-events"><code>network-events</code></a></td>
- <td>Network Events</td>
- <td>Monitor network uploads and downloads.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="networkstats-manage"><code>networkstats-manage</code></a></td>
- <td><a href="/en-US/docs/Web/API/Network_Stats_API">Network Stats</a></td>
- <td>Obtain statistics of data usage per interface.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="open-remote-window"><code>open-remote-window</code></a></td>
- <td>Open out-of-process windows</td>
- <td>Allows normal <code>window.open</code> calls, but the resulting window is opened in a new process.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="permissions"><code>permissions</code></a></td>
- <td><a href="/en-US/docs/Web/API/Permissions_API_(Firefox_OS)">Permissions (Firefox OS)</a></td>
- <td>Allow an app to manage other permissions of other apps.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="phonenumberservice">phonenumberservice</a></td>
- <td>??</td>
- <td>??</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>??</td>
- </tr>
- <tr>
- <td><a name="power"><code>power</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Power_Management">Power Management</a></td>
- <td>Turn the screen on or off, control CPU, device power, and so on. Listen for and inspect resource lock events.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a id="presentation-device-manage" name="presentation-device-manage"><code>presentation-device-manage</code></a></td>
- <td>Presentation</td>
- <td>Obtain the list of available devices that can be used as external display and trigger device discovery.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 3.0</td>
- </tr>
- <tr>
- <td><a name="settings"><code>settings</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Settings">Settings</a></td>
- <td>Configure or read device settings.</td>
- <td>internal (certified)</td>
- <td><code>readonly</code> or <code>readwrite</code></td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="sms"><code>sms</code></a></td>
- <td><a href="/en-US/docs/WebAPI/WebSMS">WebSMS</a></td>
- <td>Send and receive SMS messages.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1,<br>
- 1.1 for MMS</td>
- </tr>
- <tr>
- <td><a name="telephony"><code>telephony</code></a></td>
- <td><a href="/en-US/docs/Web/API/Web_Telephony_API">Web Telephony</a></td>
- <td>Access all telephony-related APIs to make and recieve phone calls.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="time"><code>time</code></a></td>
- <td><a href="/en-US/docs/WebAPI/Time_and_Clock">TimeManager</a></td>
- <td>Set current time. Time zone information is controlled by the Settings API. Formerly called <code>systemclock</code>.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="voicemail"><code>voicemail</code></a></td>
- <td>Voicemail</td>
- <td>Access voicemail.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="webapps-manage"><code>webapps-manage</code></a></td>
- <td>Open Webapps</td>
- <td>Obtain access to the <a href="/en-US/Apps/JavaScript_API#Management_API"><code>navigator.mozApps.mgmt</code></a> API to manage installed Open Web Apps.<br>
- <br>
- Required alongside the <code>device-storage:apps</code> permission (see above.)</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1, Desktop, Android</td>
- </tr>
- <tr>
- <td><a name="wifi-manage"><code>wifi-manage</code></a></td>
- <td>WiFi Management</td>
- <td>Enumerate available WiFi networks, get signal strength, connect to a network.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- <tr>
- <td><a name="wappush"><code>wappush</code></a></td>
- <td>WAP Push</td>
- <td>Receive WAP Push messages.</td>
- <td>internal (certified)</td>
- <td>none</td>
- <td>FxOS 1.0.1</td>
- </tr>
- </tbody>
-</table>
-
-<div class="note">
-<p><strong>Nota</strong>: The internal codename for internal apps is certified apps. To declare an app as internal, you need to put <code>"type" : "certified"</code> into your <a href="/en-US/Apps/Build/Manifest#type">app manifest</a>.</p>
-</div>
-
-<h2 id="Consulte_também">Consulte também</h2>
-
-<p>A <a href="https://mxr.mozilla.org/mozilla-b2g32_v2_0/source/dom/apps/src/PermissionsTable.jsm">tabela de permissões</a> (descontinuada e substituida por <strong><u><a href="https://dxr.mozilla.org/mozilla-central/source/">DXR</a></u></strong>) é onde são definidas as permissões da API do Firefox OSno código fonte do Firefox.</p>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; opacity: 0; display: block; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody><tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
-</tbody></table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody><tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
-</tbody></table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/b2g_os/index.html b/files/pt-pt/archive/b2g_os/index.html
deleted file mode 100644
index c618cb8e2f..0000000000
--- a/files/pt-pt/archive/b2g_os/index.html
+++ /dev/null
@@ -1,241 +0,0 @@
----
-title: B2G OS
-slug: Archive/B2G_OS
-tags:
- - B2G
- - Firefox OS
- - Gaia
- - Iniciação Firefox OS
- - Principiante
- - Resumo
- - Sinopse
- - básico
-translation_of: Archive/B2G_OS
----
-<div class="summary">
-<p><span class="seoSummary">Firefox OS é o sistema operativo móvel desenvolvido pela Mozilla, baseado no Linux e no motor de renderização poderoso Gecko do Firefox.</span></p>
-</div>
-
-<p><strong>Firefox OS</strong> is open source software that allows developers to harness the power and flexibility of the Web to create advanced end-user applications. The <strong>entire user interface is a web app</strong>, which can<strong> </strong>display and launch other apps. A Firefox OS web app is made with HTML, CSS, and JavaScript. In addition, Firefox OS web apps have access to the device hardware and services via an Application Programing Interface (API).</p>
-
-<p>From a product perspective, Firefox OS is Mozilla's (and our OEM partners') branding and support services applied on top of <strong>Boot to Gecko</strong> (<strong>B2G</strong>), which is the operating system's engineering codename. Boot to Gecko is developed by a team of engineers inside Mozilla plus many external contributors from the wider Mozilla/open source community.</p>
-
-<section class="outer-apps-box" id="sect1">
-<h2 id="Desenvolver_aplicações_para_o_Firefox_OS"><a href="/en-US/Apps/Build/Building_apps_for_Firefox_OS">Desenvolver aplicações para o Firefox OS</a></h2>
-
-<p>Head over to our App Center for all the information you could possibly need on building open web apps that can be installed on Firefox OS !</p>
-</section>
-
-<div class="column-container">
-<div class="column-third">
-<h2 id="Guias_da_Plataforma"><a href="/en-US/docs/Mozilla/Firefox_OS/Platform">Guias da Plataforma</a></h2>
-
-<p>Guides for platform developers on how the different components of the Firefox OS platform fit together and work.</p>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Platform/Gaia" title="/en-US/docs/Mozilla/Firefox_OS/Platform/Gaia">Gaia</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Platform/Gonk" title="/en-US/docs/Mozilla/Firefox_OS/Platform/Gonk">Gonk</a></li>
- <li><a href="/en-US/docs/Mozilla/Gecko" title="/en-US/docs/Mozilla/Gecko">Gecko</a></li>
-</ul>
-</div>
-
-<div class="column-third">
-<h2 id="Criar_e_Instalar"><a href="/en-US/docs/Mozilla/Firefox_OS/Build_and_install">Criar e Instalar</a></h2>
-
-<p>Guides covering building and installing Firefox OS on an emulator, compatible device, or desktop simulator.</p>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_build_prerequisites" title="Mozilla/Firefox_OS/Firefox OS build prerequisites">Firefox OS build prerequisites</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Preparing_for_your_first_B2G_build" title="Mozilla/Firefox_OS/Preparing for your first B2G build">Preparing for your first build</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Building" title="Mozilla/Firefox_OS/Building">Building Firefox OS</a></li>
-</ul>
-</div>
-
-<div class="column-third">
-<h2 id="Developer_phones"><a href="/en-US/docs/Mozilla/Firefox_OS/Developer_phone_guide">Developer phones</a></h2>
-
-<p>Information on specific developer phones, such as tweaking, updating, recovering, and buying.</p>
-
-<ul>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Flame">Flame</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Developer_phone_guide/Updating_and_Tweaking_Geeksphone">Geeksphone</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/ZTE_OPEN_C">ZTE Open C</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Troubleshooting">Troubleshooting</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Phone_specs">Phone and device specs</a></li>
-</ul>
-</div>
-</div>
-
-<div class="column-container equalColumnHeights">
-<div class="zone-callout">
-<h2 id="Get_started_with_Firefox_OS_add-ons">Get started with Firefox OS add-ons</h2>
-
-<p>Firefox OS add-ons are new in Firefox OS 2.5! To start developing add-ons and getting involved in the add-ons community, read <a href="/en-US/docs/Mozilla/Firefox_OS/Add-ons/Getting_started">Getting started with Firefox OS add-ons</a>.</p>
-</div>
-
-<div class="zone-callout">
-<h2 id="Other_useful_pages"><strong>Other useful pages</strong></h2>
-
-<ul>
- <li><a href="https://www.mozilla.org/en-US/styleguide/products/firefox-os/"><span class="gmw_">Firefox OS <span class="gm-spell gm_ gm_d869ea80-e62d-d8a6-6929-a6e9983578ff">styleguide</span></span></a></li>
- <li><a class="link-https" href="https://wiki.mozilla.org/B2G/FAQ" title="B2G/FAQ">Mozilla wiki FAQ</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Feature_support_chart" title="/en-US/docs/Mozilla/Firefox_OS/Feature_support_chart">Feature support chart</a></li>
- <li><a href="http://firefoxosbooks.org/">Firefox OS Books</a></li>
-</ul>
-</div>
-</div>
-
-<div class="note">
-<p><strong>Note:</strong> We are keeping track of ongoing work on Firefox OS documentation on our <a href="/en-US/docs/MDN/Doc_status/Firefox_OS">Firefox OS documentation status</a> page. If you want to help contribute to Firefox OS documentation, please have a look at this page to see what work needs tweaking!</p>
-</div>
-
-<h2 id="Subnav">Subnav</h2>
-
-<ol>
- <li><a href="/en-US/Firefox_OS/Introduction">Introduction</a></li>
- <li><a href="/en-US/Firefox_OS/Platform" title="Documentation about the Firefox OS platform, including Gonk, Gaia, and everything in between.">Platform guide</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Platform">Platform guide overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Platform/Architecture" title="An overview of how Firefox OS is structured internally; this is primarily of interest to platform developers and people doing porting work.">Architecture overview</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Apps_architecture" title="An overview of the application model on Firefox OS.">Apps architecture</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Gonk" title="Documentation about Gonk, the operating system layer underneath Gaia. This consists of a Linux kernel and a hardware abstraction layer to which Gecko communicates."><span class="gm-spell gm_ gm_db111eae-c215-78a2-9789-97be921cbbdc">Gonk</span></a></li>
- <li><a href="/en-US/Gecko" title="Gecko is the layer of Firefox OS that provides the same open web standards implementation used by Firefox and Thunderbird, as well as many other applications.">Gecko</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Gaia" title="Documentation about Gaia, the user interface application for Firefox OS devices; this is a Web application running atop the Firefox OS software stack.">Gaia</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Gaia/Gaia_apps">Gaia apps guide</a></li>
- <li><a href="/en-US/Firefox_OS/Security" title="Documentation about security in Firefox OS">Security</a>
- <ol>
- <li><a href="/en-US/Firefox_OS/Security/Security_model">The Firefox OS security model</a></li>
- <li><a href="/en-US/Firefox_OS/Security/System_security">System security</a></li>
- <li><a href="/en-US/Firefox_OS/Security/Application_security">Application security in Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Security/Installing_and_updating_applications">Securely installing and updating applications</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Platform/Out_of_memory_management_on_Firefox_OS">Out of memory management on Firefox OS </a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Feature_support_chart" title="A chart of which features are available in which types of Firefox OS builds.">Feature support chart</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Settings_list" title="A list of common setting names that can be used with the settings API">Settings list</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS" title="This includes documentation for building and installing the platform onto devices, as well as building the simulator and emulators.">Build and install</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS">Build and install overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS/Firefox_OS_build_process_summary">Firefox OS build process summary</a></li>
- <li><a href="/en-US/Firefox_OS/Firefox_OS_build_prerequisites" title="Steps to take before you build Firefox OS for the first time.">Build prerequisites</a></li>
- <li><a href="/en-US/Firefox_OS/Preparing_for_your_first_B2G_build" title="Before you can build Firefox OS, you need to clone the repository and configure your build.">Preparing for your first build</a></li>
- <li><a href="/en-US/Firefox_OS/Building" title="How to build Firefox OS.">Building Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS/Building_Firefox_OS_for_flame_on_OSX">Building Firefox OS for flame on OSX</a></li>
- <li><a href="/en-US/Firefox_OS/Choosing_how_to_run_Gaia_or_B2G" title="Using Gaia within Firefox, running Firefox OS on a mobile device, or in a desktop-based simulator. Which is best?">Choosing how to run Gaia or Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Building_the_Firefox_OS_simulator" title="Simulating the Gaia environment in a desktop application - more accurate than running Gaia in Firefox but not as accurate as the emulators.">Building the Firefox OS simulator</a></li>
- <li><a href="/en-US/Firefox_OS/Using_the_B2G_emulators" title="A guide to building and using the Firefox OS emulators, and when to use which emulator.">Using the Firefox OS emulators</a></li>
- <li><a href="/en-US/Firefox_OS/Installing_on_a_mobile_device" title="How to install Firefox OS on a real mobile device.">Installing Firefox OS on a mobile device</a></li>
- <li><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS/Firefox_OS_update_packages">Creating and applying Firefox OS update packages</a></li>
- <li><a href="/en-US/Firefox_OS/Building/FOTA_community_builds">Building and installing FOTA community builds</a></li>
- <li><a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS/B2G_Build_Variables_Reference_Sheet">B2G build variables reference sheet</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Developing_Firefox_OS" title="Hack the OS, customize your builds, get things the way you think they should be!">Developing Firefox OS</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Developing_Firefox_OS">Developing Firefox OS overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Filing_bugs_against_Firefox_OS">Filing bugs against Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Firefox_OS/modifying_hosts_file" title="A guide to what can be achieved by modifying the Firefox OS hosts file.">Modifying the hosts file</a></li>
- <li><a href="/en-US/Firefox_OS/Customization_with_the_.userconfig_file" title="How to customize the build and execution of Firefox OS by changing the .userconfig file.">Customization with the .userconfig file</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Customizing_the_b2g.sh_script">Customizing the b2g.sh script</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Firefox_OS/Porting" title="Information about how to port Firefox OS to new devices.">Porting Firefox OS</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia">Developing Gaia</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Developing_Gaia">Developing Gaia overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Running_the_Gaia_codebase">Running the Gaia codebase</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Understanding_the_Gaia_codebase">Understanding the Gaia codebase</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Making_Gaia_code_changes">Making Gaia code changes</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Test_Gaia_code_changes">Testing Gaia code changes</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Submitting_a_Gaia_patch">Submitting a Gaia patch</a></li>
- <li><a href="/en-US/Firefox_OS/Platform/Gaia/Build_System_Primer">Gaia build system primer</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Customizing_build-time_apps">Customizing build-time apps</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Market_customizations_guide">Market customizations guide</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Customizing_the_keyboard">Customizing the keyboard in Firefox OS apps</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Localizing_Firefox_OS">Localizing Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/L10n_Best_Practices">L10n Best Practices</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/make_options_reference">Make options reference</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia/Gaia_tools_reference">Gaia tools reference</a></li>
- </ol>
- </li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Add-ons">Firefox OS add-ons</a>
- <ol>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Add-ons">Firefox OS add-ons overview</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Add-ons/Developing_Firefox_OS_add-ons">Developing Firefox OS add-ons</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Phone_guide" title="A developer's guide to the Firefox OS developer phones available.">Firefox OS phone guide </a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Phone_guide">Firefox OS phone guide overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Phone_specs">Phone and device specs</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Geeksphone">Geeksphone</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/ZTE_OPEN">ZTE OPEN</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/ZTE_OPEN_C">ZTE OPEN C</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Flame">Flame</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Firefox_OS_device_features">General device features</a></li>
- <li><a href="/en-US/Firefox_OS/Troubleshooting" title="A guide to resolving common problems with Firefox OS.">Troubleshooting</a></li>
- <li><a href="/en-US/Firefox_OS/Developer_phone_guide/Best_practices_open_reference_devices">Best practices for open reference devices</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/TVs_connected_devices">Firefox OS on TVs and connected devices</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/TVs_connected_devices">TVs and connected devices overview</a></strong></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/TVs_connected_devices/How_to_connect_WebIDE_to_TV_%28VIErA%29">How to connect WebIDE to TV (VIERA CX/CR series)</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/TVs_connected_devices/TV_broadcast_streams_Firefox_OS">TV broadcast streams on Firefox OS products</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/TVs_connected_devices/Web_animations_on_large_screen">Web animations on large screens</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/TVs_connected_devices/TV_remote_control_navigation">Implementing TV remote control navigation</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Platform/Keyboard_events_in_Firefox_OS_TV">Keyboard events in Firefox OS TV</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/TVs_connected_devices/TV_remote_control_button_mapping_to_keyboard">TV remote control button mapping to keyboard</a></li>
- <li><a href="/en-US/docs/Web/Apps/Design/Firefox_OS_TV_UX">Firefox OS for TV UX Overview</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Releases" title="This section of the site contains release notes, explaining what new features and changes of significance to developers have landed in each new release of Gaia and Gecko on Firefox OS.">Firefox OS release notes</a>
- <ol>
- <li><a href="/en-US/Firefox_OS/Releases">Firefox OS release notes overview</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/2.2">Firefox OS 2.2 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/2.1">Firefox OS 2.1 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/2.0">Firefox OS 2.0 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/1.4">Firefox OS 1.4 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/1.3">Firefox OS 1.3 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/1.2">Firefox OS 1.2 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/1.1">Firefox OS 1.1 for developers</a></li>
- <li><a href="/en-US/Firefox_OS/Releases/1.0.1">Firefox OS 1.0.1 for developers</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Automated_testing">Automated testing</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Automated_testing">Firefox OS automated testing overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Running_Tests_on_Firefox_OS_for_Developers">Running tests on Firefox OS: A guide for developers</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/gaia-ui-tests" title="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/gaia-ui-tests">Gaia UI tests</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Gaia_integration_tests">Gaia integration tests</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Gaia_unit_tests" title="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Gaia_unit_tests">Gaia unit tests</a></li>
- <li><a href="/en-US/Firefox_OS/Automated_testing/Gaia_performance_tests">Gaia performance tests</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Mochitests" title="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Mochitests"><span class="gm-spell gm_ gm_8ea2aeb5-60d9-d796-930f-2db1e4217eaa">Mochitests</span></a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Reftests" title="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Reftests"><span class="gm-spell gm_ gm_9567400a-e713-3d43-ffa9-05fd8c3a28a2">Reftests</span></a></li>
- <li><a href="/en-US/docs/Marionette/Marionette_JavaScript_Tests" title="/en-US/docs/Marionette/Marionette_JavaScript_Tests">WebAPI tests</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/XPCShell" title="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/XPCShell"><span class="gmw_"><span class="gm-spell gm_ gm_cc093417-aacf-72e2-e15f-c15a7509a6a8">xpcshell</span> tests</span></a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/MTBF_tests">MTBF test</a></li>
- <li><a href="/en-US/docs/Marionette" title="/en-US/docs/Marionette">Marionette</a></li>
- <li><a href="/en-US/docs/Mozilla/Firefox_OS/Automated_testing/Treeherder">Treeherder</a></li>
- </ol>
- </li>
- <li><a href="/en-US/Firefox_OS/Debugging" title="A guide to debugging both your mobile apps and Firefox OS itself.">Debugging</a>
- <ol>
- <li><strong><a href="/en-US/Firefox_OS/Debugging">Firefox OS debugging overview</a></strong></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Developer_settings">Developer settings for Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Connecting_a_Firefox_OS_device_to_the_desktop">Connecting a Firefox OS device to the desktop</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Setting_up">Setting up to debug Firefox OS using Firefox developer tools</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/On-device_console_logging">On-device console logging</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Installing_ADB">Installing and using ADB</a></li>
- <li><a href="/en-US/Firefox_OS/Firefox_OS_usage_tips/taking_screenshots">Taking screenshots</a></li>
- <li><a href="/en-US/docs/Tools/WebIDE" title="A tool that allows you to install open web apps from your computer to a device capable of installing them (such as Firefox OS) - and debug any running app.">Using the WebIDE</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Firefox_OS_crash_reporting">Firefox OS crash reporting</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Debugging_OOMs">Debugging out of memory errors on Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Debugging_and_security_testing">Debugging and security testing with Firefox OS</a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Debugging_B2G_using_gdb"><span class="gmw_">Debugging B2G using <span class="gm-spell gm_ gm_7a44a2c7-9d5d-e693-57b5-a88dd9adacd8">gdb</span></span></a></li>
- <li><a href="/en-US/Firefox_OS/Debugging/Debugging_B2G_using_valgrind">Debugging B2G using Valgrind</a></li>
- </ol>
- </li>
-</ol>
diff --git a/files/pt-pt/archive/b2g_os/phone_guide/flame/index.html b/files/pt-pt/archive/b2g_os/phone_guide/flame/index.html
deleted file mode 100644
index 5f874186ca..0000000000
--- a/files/pt-pt/archive/b2g_os/phone_guide/flame/index.html
+++ /dev/null
@@ -1,305 +0,0 @@
----
-title: Flame
-slug: Archive/B2G_OS/Phone_guide/Flame
-translation_of: Archive/B2G_OS/Phone_guide/Flame
----
-<p><img alt="A picture of the Flame device, showing the Firefox OS homescreen containing several app icons." src="https://mdn.mozillademos.org/files/8373/flame-dev-hud.png" style="float: left; margin-bottom: 20px; margin-right: 50px; width: 25%;"></p>
-
-<h2 id="Available_to_order" style="text-indent: 100%; white-space: nowrap; overflow: hidden; margin: 0; height: 0;">Available to order</h2>
-
-<p><span class="seoSummary">The Flame developer reference phone is a milestone in Firefox OS device releases. The Flame hardware offers a representative set of specs — including FWVGA display and dual-core processor — to help developers build great content and experiences. A single hardware platform is also good for testers, making it easier to test and address specific software issues without having to worry about device model-specific bugs, etc.</span></p>
-
-<p style="">If you have your phone in hand and want to start playing with it, developing and distributing apps, or contributing to the Firefox platform, the following links will get you where you need to go:</p>
-
-<ul>
- <li><a href="/en-US/Firefox_OS">Firefox OS zone</a>: For creating your own Firefox OS builds and contributing to the B2G and Gaia projects.</li>
- <li><a href="/en-US/Apps">App Center zone</a>: For building open web apps compatible with Firefox OS.</li>
- <li><a href="/en-US/Marketplace">Marketplace zone</a>: For information on publishing and distributing apps.</li>
- <li><a href="https://marketplace.firefox.com/">Firefox Marketplace</a>: The best place to find and publish new Firefox OS apps.</li>
-</ul>
-
-<p style="">If you’d like to find out more about updating the operating system, recovering it, pushing apps to it, or phone specs, you’ll find the information you need below.</p>
-
-<h2 id="Purchasing_a_device">Purchasing a device</h2>
-
-<p>Our device manufacturer partner has made the device <a href="http://www.everbuying.com/product549652.html">available to order</a> on everbuying.com, for US$170 including global shipping (device cost is $145, shipping is $25 and custom fees may still apply, depending on the destination country). The device is bootloader- and carrier-unlocked, and it utilizes a quad-band GSM+UMTS radio so that it can work with a wide variety of operators/carriers.</p>
-
-<div class="note">
-<p><strong>Note</strong>: Another option for getting hold of a Flame is to participate in our <a href="https://hacks.mozilla.org/2014/05/build-your-next-app-with-a-flame/">Flames for Apps scheme</a>, aimed at experienced HTML5 app developers wishing to port their highly-rated apps onto Firefox OS.</p>
-</div>
-
-<h2 id="Important_steps_to_follow_first">Important steps to follow first</h2>
-
-<p>There are a couple of steps you should make sure you follow for your particular operating system, before you start trying to update your device, for example by updating your Flame's version of Firefox OS, or pushing apps to your phone (both are covered below.)</p>
-
-<h3 id="All_operating_systems">All operating systems</h3>
-
-<p>You need to install ADB and Fastboot on your computer — these are applications that allow you to interact with your phone from your computer when the two are connected via the phone's USB charger cable. They are needed for Flashing your phone to a new version of Firefox OS, recovering from an unresponsive state, pushing apps to your phone, etc.</p>
-
-<div class="note">
-<p><strong>Note</strong>: If you are on Ubuntu you can install ADB and Fastboot simply by using <code>sudo apt-get install android-tools-adb android-tools-fastboot</code> on the command line.</p>
-</div>
-
-<p>ADB and Fastboot are available in the <a class="external external-icon" href="http://developer.android.com/sdk/index.html" title="Android Developer Tookit">Android Developer Toolkit</a>:</p>
-
-<ol>
- <li>Go to this link</li>
- <li>Press the <em>Download Eclipse ADT</em> button</li>
- <li>Agree to the license conditions</li>
- <li>Choose between the 32-bit and 64-bit version (32-bit will do if you are not sure)</li>
- <li>Click the final <em>Download Eclipse ADT with the Android SDK...</em> button.</li>
- <li>Once the download is complete, unzip the zip file's contents onto your computer's desktop</li>
- <li>The folder name is a bit complicated; rename it to just <em>adt</em></li>
-</ol>
-
-<p>ADB is a tool that you run from the command line. If you open your terminal/command prompt, go to adt/sdk/platform-tools and run the <code>adb</code> command, you should see a load of information thrown back at you about what you can do with ADB. Running <code>adb devices</code> should return the line <code>List of devices attached</code>, and nothing else, because you haven't got any devices attached yet.</p>
-
-<p>But at this point, you need to set the PATH variable to point to the ADB tool, so you can run it from anywhere, not just when you are in the exact directory that ADB is in. To do this:</p>
-
-<ul>
- <li>On Windows 8 (Windows 7 will be very similar, but with slightly different menu options):</li>
- <li>right click on the Windows button in the bottom left and select Control Panel &gt; System and Security &gt; System &gt; Advanced System settings &gt; Environment Variables.</li>
- <li>In the <em>System variables</em> list, find the one called Path, select it, then click <em>Edit...</em></li>
- <li>In the <em>Variable value</em> text field of the resulting dialog box, make sure you are at the end of the big string of characters in the box, then type a semi colon (;), followed by the location of the adb tool on your system, which should be <em>C:\Users\[YOUR USER NAME]\Desktop\adt\sdk\platform-tools</em>.</li>
- <li>So if your user name is jamessmith, you would enter ;<em>C:\Users\jamessmith\Desktop\adt\sdk\platform-tools</em>.</li>
- <li>Press ok on all the dialog boxes you got up in this section.</li>
- <li>Close your command prompt, open a new one, and test it by typing <code>adb devices</code>. If it comes up with <code>List of devices attached</code>, you are successful!</li>
-</ul>
-
-<p>On Mac/Linux:</p>
-
-<ul>
- <li>In Finder app, go to your home folder (the one with the house icon)</li>
- <li>If you can't already see hidden files (for example, system files with dots (.) at the beginning), go to Terminal, enter the command <code>defaults write com.apple.finder AppleShowAllFiles YES</code>, then restart Finder</li>
- <li>Open your .bash_profile or .bashrc file in a plain text editor like Text Wrangler or Sublime Text (it needs to be a plain text editor.)</li>
- <li>Inside the file, add a new line PATH=/Users/chrismills/Desktop/adt/sdk/platform-tools:$PATH</li>
- <li>Save and close the file.</li>
- <li>Restart your terminal, and test it by typing <code>adb devices</code>. If it comes up with <code>List of devices attached</code>, you are successful!</li>
-</ul>
-
-<h3 id="Linux_and_Mac">Linux and Mac</h3>
-
-<p>No additional steps should be required if you are using a Linux or Mac system, although depending on your Linux distro, you might need to <a href="https://developer.mozilla.org/en-US/Firefox_OS/Firefox_OS_build_prerequisites#For_Linux.3A_configure_the_udev_rule_for_your_phone">add a udev rule</a> for your phone.</p>
-
-<p>The udev rule for the Flame should look something like the following:</p>
-
-<pre>SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9025", GROUP="users", MODE="0666"</pre>
-
-<p>Make sure to <code>--reload-rules</code>, then unplug and replug and your device before continuing.</p>
-
-<h3 id="Windows">Windows</h3>
-
-<p>To access the Flame device with the <a href="/en-US/Firefox_OS/Using_the_App_Manager">App Manager</a>/<a href="/en-US/Firefox_OS/Debugging/Installing_ADB">ADB</a>, a USB driver is required. Follow the steps outlined in the below sections to install it.</p>
-
-<h4 id="Downloading_the_driver">Downloading the driver</h4>
-
-<p><a href="http://cds.w5v8t3u9.hwcdn.net/Alcatel_USB_Driver_Q_4.0.0_2013_11_11_noinstall.zip">Download the Windows driver from this location</a>. Once downloaded, extract the contents of the ZIP file to a suitable place on your hard drive.</p>
-
-<div class="note">
-<p><strong>Note</strong>: The Android Debug Bridge (<a href="/en-US/Firefox_OS/Debugging/Installing_ADB">ADB</a>) must be installed first.</p>
-</div>
-
-<h4 id="Installing_the_USB_Driver">Installing the USB Driver</h4>
-
-<p>At this point, connect your Flame device to your computer using a USB cable.</p>
-
-<p>To install the driver, open the <code>Alcatel_USB_Driver_Q_4.0.0_2013_11_11_noinstall</code> directory within the extracted ZIP file and double click on the <code>DriverInstaller.exe</code> executable. You may receive a warning at this point that the executable is from an unknown publisher. If so, select the <em>Yes</em> button and the executable will be launched.</p>
-
-<p><img alt="Simple dialog box showing a picture of a phone along with install and uninstall buttons." src="https://mdn.mozillademos.org/files/8079/driver-install.png" style="display: block; height: 523px; margin: 0px auto; width: 358px;"></p>
-
-<p>Click on the <em>Install</em> button to install the driver.</p>
-
-<p>After the driver installs, you can check that it is working by opening a command line window and typing <code>adb devices</code>. This should list the connected device with an output something like:</p>
-
-<pre>List of devices attached
-3561d02a device</pre>
-
-<p>If your device is not showing up here, check in the Windows Device Manager. Your Flame may be showing up as "ACER ADB Interface". You can confirm this by unplugging the device and seeing if it disappears from the device manager. Uninstall the driver software by right-clicking on "ACER ADB Interface" and clicking uninstall.  Be sure to check the box in the dialog to delete the driver software.  Now re-run the installer above. It is advisable to set the screen timeout on your Flame to something high (<em>Settings</em> &gt; <em>Display</em> &gt; <em>Screen timeout</em>) as Windows sometimes appears to reinstall the default drivers when the screen turns off.</p>
-
-<h2 id="Updating_your_Flame's_software">Updating your Flame's software</h2>
-
-<p>We will have two main "channels" of Firefox OS software version releases for the Flame phone:</p>
-
-<ul>
- <li>The first channel is our release channel. Flames ship with this channel and will receive over-the-air updates for future major versions, that is, Flames will update from 1.3 to 1.4, 2.0 to 2.1, etc.</li>
- <li>The second channel is our nightly channel. Flames can be flashed to this channel, and after the initial flashing will get over the air updates on a daily or nearly daily basis.</li>
-</ul>
-
-<p>While our partners are working out a final storage solution for the software builds, you can get recovery files and tools at the following storage locations:</p>
-
-<ul>
- <li><a href="http://cds.w5v8t3u9.hwcdn.net/v123.zip">Base image v123.zip</a>: An archive containing the Flame's base image of Firefox OS 1.3.  To install this, simply unzip the file, and run the script (./flash.sh).</li>
-</ul>
-
-<p>To install the base image on your device:</p>
-
-<ol>
- <li>Make sure remote debugging is enabled on your Flame, using the <em>Remote debugging/Debugging via USB</em> option in the device's <a href="/en-US/Firefox_OS/Debugging/Developer_settings">Developer settings</a> (the option is different, depending on whether you have Firefox 1.3 and under, or Firefox 1.4+ installed).</li>
- <li>Connect your Flame to your computer via a USB cable if it isn't already. Verify that the computer is connected to the device by running the <code>adb devices</code> command in a terminal.</li>
- <li>Download and Extract the <code>.zip</code> file referenced above. Unzip it onto your Desktop.</li>
- <li>Go into the directory you extracted the software into and run it:
- <ul>
- <li>On Windows, enter the directory in your command prompt, then run the <code>flash.bat</code> script using <code>flash.bat</code>.</li>
- <li>On Linux / OSX, enter the directory in your terminal, then run the <code>flash.sh</code> script using <code>sudo ./flash.sh</code> (if you don't run it using <code>sudo</code>, the flash script may fail to see your device, and it won't work).</li>
- </ul>
- </li>
-</ol>
-
-<div class="note">
-<p><strong>Note</strong>: You are also welcome to build your own builds to install on the Flame: see <a href="/en-US/Firefox_OS/Building_and_installing_Firefox_OS">Building and installing Firefox OS</a>.</p>
-</div>
-
-<h3 id="Updating_your_Flame_to_a_nightly_build">Updating your Flame to a nightly build</h3>
-
-<div class="note">
-<p><strong>Note</strong>: For this current build, Nightly development builds of Firefox OS do not support A-GPS, which may lead to slow performance of GPS functionality. We plan to resolve this in an updated future Nightly channel.</p>
-</div>
-
-<ol>
- <li>Before updating your phone to a Nightly build you should flash the latest base image to make sure the underlying systems are up to date. Download a base image and use it to update your device's software, as explained above.</li>
- <li>Because the above step installs a fresh operating system on your device, you'll need to enable remote debugging on your Flame again, using the <em>Remote debugging </em>option in the device's <a href="/en-US/Firefox_OS/Debugging/Developer_settings">Developer settings</a>.</li>
- <li>Next, choose a Nightly build to install (found on <a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/">http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/</a>.) You'll want one of the following:
- <ul style="margin-left: 40px;">
- <li>Production builds (including locales)
- <ul>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-central-flame/">Latest master builds</a> (currently 2.1)</li>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-b2g32_v2_0-flame/">Latest v2.0</a></li>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-b2g30_v1_4-flame/">Latest v1.4</a></li>
- </ul>
- </li>
- <li>Engineering builds (with test apps and only pseudo-locales)
- <ul>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-central-flame-eng/">Latest master builds</a> (currently 2.1)</li>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-b2g32_v2_0-flame-eng/">Latest v2.0</a></li>
- <li><a href="http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/latest-mozilla-b2g30_v1_4-flame-eng/">Latest v1.4</a></li>
- </ul>
- </li>
- </ul>
- </li>
- <li>Pick a version and download both the <code>b2g-XX.XX.en-US.android-arm.tar.gz</code> and <code>gaia.zip</code> files. Save them inside a directory on your Desktop called something like <code>fxos</code>.</li>
- <li>Download the <a href="https://github.com/Mozilla-TWQA/B2G-flash-tool/blob/master/shallow_flash.sh">shallow flash script</a> and save it in the same directory as the above two files: follow the link, press the <em>Raw</em> button, then use your browser's save functionality to save the page directly as <code>shallow_flash.sh</code>.</li>
- <li>In your Terminal, <code>cd</code> into the directory you saved the files in and Flash the builds to your phone using the following command:
- <h4 id="Mac">Mac</h4>
-
- <pre class="brush: bash">./shallow_flash.sh -g gaia.zip -G b2g-XX.XX.en-US.android-arm.tar.gz</pre>
-
- <h4 id="Linux">Linux</h4>
-
- <pre class="brush: bash">./shallow_flash.sh -ggaia.zip -Gb2g-XX.XX.en-US.android-arm.tar.gz
-</pre>
-
- <h4 id="Windows_(Note_instruction_still_being_worked_out_may_not_work_yet)">Windows (Note: instruction still being worked out, may not work yet)</h4>
-
- <pre class="brush: bash">shallow_flash.sh -g gaia.zip -G b2g-XX.XX.en-US.android-arm.tar.gz
-</pre>
- </li>
-</ol>
-
-<div class="note">
-<p><strong>Note</strong>: If you get a "permission denied" error when running the above command, your shell script probably doesn't have the right permissions. Running <code>chmod +x shallow_flash.sh</code> on it should solve this problem.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: A "shallow flash" updates <a href="/en-US/docs/Mozilla/Gecko">Gecko</a> and <a href="/en-US/Firefox_OS/Platform/Gaia">Gaia</a> plus data directories, as opposed to a full flash, which updates Gecko/Gaia, but also the underlying <a href="/en-US/Firefox_OS/Platform/Gonk">Gonk</a> layer and associated binaries particular to that device type. This is why it is a good idea to update to the official base image first, as suggested above, then shallow flash over the top of that, once you've got the Gonk/binary layer right.</p>
-</div>
-
-<div class="warning">
-<p id="Shallow_flash_flashes_more_than_just_Gecko_and_Gaia_so_all_the_data_on_the_device_is_lost!"><strong>Important</strong>: When running a shallow or full flash, your phone data will be overwritten: you should therefore back up your data before updating!</p>
-</div>
-
-<p>Once the install procedure finishes the phone should reboot into the updated build and display the first time user workflow.</p>
-
-<h4 id="Font_fix">Font fix</h4>
-
-<p>After updating Gecko and Gaia to nightly with the v123 base image, there will be a mismatch between the fonts that Gecko and Gaia expects and what the base image provides. To fix this, download our <a href="https://people.mozilla.org/~mwu/fira-font-update.zip">font update package</a>, extract it, navigate into the directory created by extracting, and run the supplied <code>flash.sh</code> script.</p>
-
-<div class="note">
-<p><strong>Note</strong>: Another option is to use the <a href="https://github.com/Mozilla-TWQA/B2G-flash-tool/blob/master/update_system_fonts.sh"><code>update_system_fonts.sh</code></a> script, which will download and flash the system fonts automatically.</p>
-</div>
-
-<h3 id="Fastboot_mode">Fastboot mode</h3>
-
-<p>If flashing a new build to your phone fails to work, your phone may become unresponsive, leading to the phone rebooting in recovery mode. The recovery mode provides few options (<em>Reboot</em>, <em>Update from adb</em>, <em>Wipe data</em>, <em>Wipe cache</em>, and <em>Update from sdcard</em>). Unfortunately, selecting <em>Update from adb</em> triggers a sideload mode in which you cannot use the other adb commands. The <code>adb sideload</code> command would work but the various flash scripts rely on other adb commands.</p>
-
-<p>From sideload mode, you can force fastboot mode as follows:</p>
-
-<ol>
- <li>Power off the phone (which may involve removing the battery in extreme cases...)</li>
- <li>Plug in the USB cable.</li>
- <li>Power the phone up again by pressing the Volume Down and Power buttons together.</li>
-</ol>
-
-<p>The phone should only display the very first static logo and stay there, without displaying the boot animation. It seems stuck but is not really: it is in fastboot mode and is waiting for a USB connection. At this point, a USB-connected, computer with adb installed should see the phone listed when the <code>fastboot devices</code> command is run. Note that regular adb would not see the device — only fastboot sees it. In this mode, you can use the flash script to install v123 as explained above. As the script does use both adb and fastboot commands, you may see some initial error and warnings from adb, but the device should be flashed properly at the end of the procedure.</p>
-
-<h3 id="Emergency_download_mode">Emergency download mode</h3>
-
-<p>If flashing a new build to your phone fails to work, your phone becomes unresponsive, and the phone cannot enter fastboot mode, you can use emergency mode for recovery. A USB cable and the <a href="http://cds.w5v8t3u9.hwcdn.net/Flame%20Rescue%20Tool.zip">Emergency Download Tool</a> are required to enter emergency download mode. Install this tool and follow the instructions.</p>
-
-<h3 id="Recovery_mode">Recovery mode</h3>
-
-<p>You can enter recovery mode to clear your phone data or manually update the firmware. There are two ways to enter this mode:</p>
-
-<ul>
- <li>If <a href="/en-US/Firefox_OS/Debugging/Installing_ADB">ADB</a> tools are available, make sure Remote debugging is turned on in the phone's <a href="/en-US/Firefox_OS/Debugging/Developer_settings#Remote_debugging">Developer settings</a>, connect your phone to your computer via USB and enter <code>adb reboot recovery</code> on the command line.</li>
- <li>If your phone is powered off, press the Volume Up + Power buttons together.</li>
-</ul>
-
-<p>When in recovery mode, press the Volume up/down keys to move the selection highlight, and the Power key to select. Make sure you have your phone data (Contacts, SMS, etc.) backed up before clearing data, and your upgrade packages downloaded before updating.</p>
-
-<h2 id="Pushing_apps_to_your_Flame">Pushing apps to your Flame</h2>
-
-<p>The App Manager tool makes it easy to push apps to your phone, for testing, etc. Full instructions are available in the article <a href="/en-US/Firefox_OS/Using_the_App_Manager">Using the App Manager</a>.</p>
-
-<div class="note">
-<p><strong>Note</strong>: If you are running Firefox Nightly, you can instead make use of our next generation <a href="/en-US/docs/Tools/WebIDE">WebIDE</a> tool, which performs the same functions as the App Manager, plus more.</p>
-</div>
-
-<h2 id="RAM_adjustment">RAM adjustment</h2>
-
-<p>You can adjust the available RAM capacity to see how apps perform on Firefox OS phones with lower memory footprints.</p>
-
-<p>This is accomplished by entering fastboot mode (install fastboot first, which is available on the same SDK page as <a href="/en-US/Firefox_OS/Debugging/Installing_ADB">ADB</a>) and typing:</p>
-
-<pre class="brush: bash">adb reboot bootloader
-fastboot oem mem [0|256-1024]</pre>
-
-<p>“0” is the memory automatically detected and “256-1024” is the number of megabytes. For example, if you want to adjust device RAM capacity to 512M, enter <code>fastboot oem mem 512</code>.</p>
-
-<p>You'll need to then reboot your device for the settings to take effect. This can be done using:</p>
-
-<pre class="brush: bash">fastboot reboot</pre>
-
-<p>The current memory size can be returned by entering fastboot mode and typing:</p>
-
-<pre class="brush: bash">fastboot getvar mem
-</pre>
-
-<h2 id="Network_and_Device_specs">Network and Device specs</h2>
-
-<p><strong>Network</strong>:</p>
-
-<ul>
- <li>802.11b/g/n wireless internet</li>
- <li>GSM 850/900/1800/1900MHz</li>
- <li>UMTS 850/900/1900/2100MHz</li>
-</ul>
-
-<p><strong>Hardware</strong>: You can find more of the hardware features listed on our <a href="/en-US/Firefox_OS/Developer_phone_guide/Phone_specs">Phone and device specs page</a>.</p>
-
-<p>Additional features include:</p>
-
-<ul>
- <li>NFC</li>
- <li>Bluetooth 3.0</li>
- <li>Accelerometer</li>
- <li>FM radio</li>
- <li>Proximity Sensor</li>
- <li>GPS W / A-GPS support</li>
- <li>Ambient Light Sensor</li>
-</ul>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a href="https://hacks.mozilla.org/2014/08/videos-getting-started-with-your-flame-device/">Getting started with your Flame</a>: How-to videos by Chris Heilmann</li>
-</ul>
diff --git a/files/pt-pt/archive/b2g_os/phone_guide/index.html b/files/pt-pt/archive/b2g_os/phone_guide/index.html
deleted file mode 100644
index d90e90d259..0000000000
--- a/files/pt-pt/archive/b2g_os/phone_guide/index.html
+++ /dev/null
@@ -1,53 +0,0 @@
----
-title: Firefox OS developer phone guide
-slug: Archive/B2G_OS/Phone_guide
-tags:
- - B2G
- - Firefox OS
- - Landing
- - NeedsTranslation
- - Phones
- - TopicStub
-translation_of: Archive/B2G_OS/Phone_guide
----
-<div class="summary">
- <p>This section contains developer information relevant to specific phones that run Firefox OS. We have general information available on <a href="/en-US/docs/Mozilla/Firefox_OS/Building_and_installing_Firefox_OS" title="Building and installing Firefox OS">Building and installing Firefox OS</a> and <a href="/en-US/docs/Mozilla/Firefox_OS/Hacking_Firefox_OS" title="/en-US/docs/Mozilla/Firefox_OS/Hacking_Firefox_OS">Hacking Firefox OS</a>, so please go there for information about building and installing the platform from scratch. Developers with specific phones in their possession may however find the following articles useful.</p>
-</div>
-<h2 id="Specific_device_information">Specific device information</h2>
-<dl>
- <dt>
- <a href="/en-US/docs/Mozilla/Firefox_OS/Phones">Firefox OS phone data</a></dt>
- <dd>
- In this article we list the various available Firefox OS phones along with information such as their code names, availability, and specific hardware features.</dd>
- <dt>
- <a href="/en-US/Firefox_OS/Developer_phone_guide/Flame">Flame</a></dt>
- <dd>
- Information on Mozilla's high-end Firefox OS reference phone, codenamed the Flame, and produced in partnership with T<sup>2</sup>Mobile.</dd>
- <dt>
- <a href="/en-US/Firefox_OS/Developer_phone_guide/Geeksphone">Geeksphone</a></dt>
- <dd>
- In this article we cover some basic tips on how to keep your Geeksphone up-to-date and how to tweak the system Gaia applications.</dd>
- <dt>
- <a href="/en-US/docs/Mozilla/Firefox_OS/Developer_phone_guide/ZTE_OPEN">ZTE OPEN</a></dt>
- <dd>
- This article contains information on the ZTE OPEN Firefox OS device.</dd>
- <dt>
- <a href="/en-US/Firefox_OS/Developer_phone_guide/ZTE_OPEN_C">ZTE OPEN C</a></dt>
- <dd>
- The ZTE Open C is an updated ZTE-produced Firefox OS device, with higher end hardware and newer software.</dd>
-</dl>
-<h2 id="General_Firefox_OS_information">General Firefox OS information</h2>
-<dl>
- <dt>
- <a href="/en-US/Firefox_OS/Developer_phone_guide/Firefox_OS_device_features">General device features</a></dt>
- <dd>
- This page lists typical Firefox OS hardware features and minimum hardware requirements.</dd>
- <dt>
- <a href="/en-US/docs/Mozilla/Firefox_OS/Troubleshooting">Troubleshooting</a></dt>
- <dd>
- This article provides tips for resolving common problems you may have while using Firefox OS.</dd>
- <dt>
- <a href="/en-US/Firefox_OS/Developer_phone_guide/Best_practices_open_reference_devices">Best practices for open reference devices</a></dt>
- <dd>
- A set of best practices that we believe should come highly recommended for any widely available open reference devices. All of the recent Firefox OS reference devices have followed these practices.</dd>
-</dl>
diff --git a/files/pt-pt/archive/b2g_os/simulator/index.html b/files/pt-pt/archive/b2g_os/simulator/index.html
deleted file mode 100644
index 1c8c9341a6..0000000000
--- a/files/pt-pt/archive/b2g_os/simulator/index.html
+++ /dev/null
@@ -1,118 +0,0 @@
----
-title: Simulador do Firefox OS
-slug: Archive/B2G_OS/Simulator
-tags:
- - Aplicações
- - Ferramentas
- - Firefox OS
-translation_of: Archive/B2G_OS/Simulator
----
-<div class="note">
-<p>Esta página descreve o Simulador do Firefox OS para os programadores que segmentam o Firefox OS 1.2 ou superior. Se está a desenvolver aplicações para o Firefox OS 1.1, em vez disso, consulte a documentação do <a href="/en-US/docs/Tools/Firefox_OS_1.1_Simulator">Firefox OS 1.1 Simulator</a>.</p>
-</div>
-
-<p><span style="line-height: 1.5;">The Firefox OS Simulator is <span style="line-height: 1.5;">a version of the higher layers of Firefox OS</span> that simulates a Firefox OS device, but runs on the desktop</span><span style="line-height: 1.5;">. This means that in many cases, you don't need a real device to test and debug your app. </span><span style="line-height: 1.5;">It runs in a window the same size as a Firefox OS device, includes the Firefox OS user interface and built-in apps, and simulates many of the Firefox OS device APIs.</span></p>
-
-<p><span style="line-height: 1.5;">The Simulator is packaged and distributed as a Firefox add-on. Once you've downloaded it and installed it in Firefox, you can run it, push apps to it, and attach the developer tools to it using the <a href="/en-US/Firefox_OS/Using_the_App_Manager">App Manager</a> tool or </span><a href="/docs/Tools/WebIDE"><span style="line-height: 1.5;">WebIDE</span></a><span style="line-height: 1.5;">.</span></p>
-
-<h2 id="Instalação"><span style="line-height: 1.5;">Instalação</span></h2>
-
-<p><span style="line-height: 1.5;">To install the simulator, use <a href="/docs/Tools/WebIDE/Setting_up_runtimes#Adding_a_Simulator">WebIDE's Manage Extra Components pane</a> (available as part of Firefox 34 and onwards). Multiple versions are available, and you are advised to install them all, for maximum flexibility.</span></p>
-
-<div class="note">
-<p><span style="line-height: 1.5;">Starting with Firefox 43, the about:addons page may display warnings about your addon being unsigned. The simulators are properly signed at install time, however they are subsequently modified and thus appear "broken". They will continue to run successfully despite this warning message. Details are in {{ Bug(1197262) }}.</span></p>
-</div>
-
-<p>To start the Simulator, you choose it from WebIDE's runtime list. For more details, see the <a href="/docs/Tools/WebIDE/Setting_up_runtimes#Selecting_a_runtime" style="font-size: 14px; font-weight: normal; line-height: 1.5;">instructions in the WebIDE documentation</a>. Once the Simulator's running, you can push apps to it and debug them using the WebIDE, just as you can with a real device.</p>
-
-<p>If you are using the <a href="/Firefox_OS/Using_the_App_Manager">App Manager</a> (an older tool available prior to the WebIDE), you can install a simulator via the following button:</p>
-
-<p><a href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/" style="margin-bottom: 20px; padding: 10px; color: white; text-align: center; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; display: inline-block; background-color: rgb(129, 188, 46); white-space: nowrap; text-shadow: rgba(0, 0, 0, 0.247059) 0px 1px 0px; box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 0px 0px, rgba(0, 0, 0, 0.298039) 0px -1px 0px 0px inset;">Instalar Simulador</a></p>
-
-<h2 id="A_IU_do_Simulador" style="line-height: 30px;">A IU do Simulador</h2>
-
-<p><span style="line-height: 22.00800132751465px;">The Simulator appears as a separate window, sized so the simulated screen area is 320x480 pixels. </span><span style="line-height: 22.00800132751465px;">To simulate touch events you can click the mouse button and drag while holding the button down. So by clicking and dragging right-to-left from the Home Screen, you'll see the built-in apps, as well as any apps you have added:</span></p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/7173/simulator-1.2.png" style="display: block; height: 623px; margin: 0px auto; width: 810px;"></p>
-
-<p>The Simulator has two buttons in a toolbar at the bottom:</p>
-
-<ul>
- <li>the button on the left takes you to the Home screen, or switches the Simulator off if you hold it down</li>
- <li>the button on the right switches the Simulator between portrait and landscape orientation. This will generate the <a href="https://developer.mozilla.org/en-US/docs/WebAPI/Managing_screen_orientation#Listening_orientation_change" title="/en-US/docs/WebAPI/Detecting_device_orientation">orientationchange</a> event.</li>
-</ul>
-
-<h2 id="Emulação_do_cartão_SD">Emulação do cartão SD</h2>
-
-<p>In the Simulator the device SD card is mapped to the "fake-sdcard" directory in the Simulator's profile, which is itself located inside the "extensions" directory under the Firefox profile in which the Simulator is installed. For example:</p>
-
-<pre>/path/to/Firefox/Profiles/Firefox-profile-name/extensions/fxos_2_2_simulator@mozilla.org/profile/fake-sdcard</pre>
-
-<p>Files read or written using the <code><a href="/en-US/docs/Web/API/Navigator.getDeviceStorage">getDeviceStorage</a></code> API will appear here.</p>
-
-<p>Before version 2.2 of the Simulator, you had to create the "fake-sdcard" directory manually for this to work. From 2.2 onwards, the "fake-sdcard" directory is created for you automatically.</p>
-
-<p>Also from version 2.2 onwards, if you're running the Simulator from the command line you can define a different directory by passing the <code>--storage-path</code> option.</p>
-
-<div class="note"><strong>Note:</strong> this is mostly meant for API testing. Music will be read not from the "fake-sdcard" directory, but from your system's <code>~/Music</code>, pictures from <code>~/Pictures</code>, videos from <code>~/Videos</code>. Downloads go to <code>~/Downloads</code>. user-dirs.dirs redefinitions are supported.</div>
-
-<h2 id="Limitações_do_Simulador">Limitações do Simulador</h2>
-
-<p>Note that the Firefox OS Simulator isn't a perfect simulation.</p>
-
-<h3 id="Limitações_do_Hardware">Limitações do Hardware</h3>
-
-<p>Apart from screen size, the Simulator does not simulate the hardware limitations of a Firefox OS device such as available memory or CPU speed.</p>
-
-<h3 id="Codecs_de_áudiovídeo">Codecs de áudio/vídeo</h3>
-
-<p>The following codecs depend on hardware-accelerated decoding and are therefore not yet supported:</p>
-
-<ul>
- <li>MP3</li>
- <li>AAC</li>
- <li>H.264 (MP4)</li>
- <li>WebM</li>
-</ul>
-
-<p>This means it isn't possible to use the Simulator to test video playback in apps and on websites like Youtube that rely on these codecs.</p>
-
-<h3 id="APIs_Não_Suportadas"><a name="Unsupported-APIs">APIs Não Suportadas</a></h3>
-
-<p>Certain APIs that work on the device won't work on the Simulator, generally because the supporting hardware is not available on the desktop. We've implemented simulations for some APIs such as geolocation, and expect to add more in future releases. However, at the moment the following APIs are not supported. Using them might throw errors or just return incorrect results:</p>
-
-<ul>
- <li><a href="/en-US/WebAPI/WebTelephony" title="/en-US/WebAPI/WebTelephony">Telephony</a></li>
- <li><a href="/en-US/docs/WebAPI/WebSMS" title="/en-US/docs/WebAPI/WebSMS">WebSMS</a></li>
- <li><a href="/en-US/docs/WebAPI/WebBluetooth" title="/en-US/docs/WebAPI/WebBluetooth">WebBluetooth</a></li>
- <li><a href="/en-US/docs/WebAPI/Using_Light_Events" title="/en-US/docs/WebAPI/Using_Light_Events">Ambient Light</a></li>
- <li><a href="/en-US/docs/WebAPI/Proximity" title="/en-US/docs/WebAPI/Proximity">Proximity</a></li>
- <li><a href="/en-US/docs/WebAPI/Network_Information" title="/en-US/docs/WebAPI/Network_Information">Network Information</a></li>
- <li><a href="/en-US/docs/Online_and_offline_events" title="/en-US/docs/Online_and_offline_events">navigator.onLine and offline events</a></li>
- <li><a href="/en-US/docs/WebAPI/Vibration" title="/en-US/docs/WebAPI/Vibration">Vibration</a></li>
-</ul>
-
-<h2 id="Obter_ajuda"><a name="Simulator-help"></a>Obter ajuda</h2>
-
-<p><span style="line-height: 1.5;">If you have a question, try asking us on the </span><a href="https://lists.mozilla.org/listinfo/dev-developer-tools" style="line-height: 1.5;">dev-developer-tools mailing list</a><span style="line-height: 1.5;"> or on </span><a href="irc://irc.mozilla.org/#devtools" style="line-height: 1.5;">#devtools on irc.mozilla.org</a><span style="line-height: 1.5;">.</span></p>
-
-<h3 id="How_to_enable_verbose_logging"><a name="Simulator-verbose-logging"></a>How to enable verbose logging</h3>
-
-<p>You can see messages logged from your app in the <a href="/en-US/docs/Tools/Web_Console">Web Console</a>, which you can attach to your app using the <a href="/docs/Tools/WebIDE/Troubleshooting">WebIDE</a>. If you want to catch early messages happening during app startup, before the console gets connected and working, you can enable verbose logging in the Simulator.</p>
-
-<p>Visit about:config and <strong>create</strong> a new preference. The preference name is different for each version of the Simulator:</p>
-
-<ul>
- <li>extensions.fxos_1_3_simulator@mozilla.org.sdk.console.logLevel for Firefox OS 1.3</li>
- <li>extensions.fxos_1_2_simulator@mozilla.org.sdk.console.logLevel for Firefox OS 1.2</li>
-</ul>
-
-<p>Set it to the string value "all", and disable, then reenable, the add-on in the Add-on Manager. Now extra messages about the Simulator's operation will appear in the <a href="/en-US/docs/Tools/Browser_Console">Browser Console</a>.</p>
-
-<h2 id="Criar_o_Simulador">Criar o Simulador</h2>
-
-<p>If you'd like to test patches to the Gecko or Gaia code that the Simulator contains, you may be interested in <a href="/en-US/Firefox_OS/Running_custom_builds_in_the_App_Manager">modifying the simulator</a> to use a custom Gecko build or Gaia profile. Alternatively, you can <a href="/en-US/Firefox_OS/Building_the_Firefox_OS_simulator">build a new Simulator</a> from your Gecko checkout.</p>
-
-<h2 id="Alternativas">Alternativas</h2>
-
-<p><a href="/en-US/Firefox_OS/Developing_Gaia/Different_ways_to_run_Gaia">Different ways to run Gaia</a> — including a list of them in <em>order</em> of ease for running and <em>reverse order</em> of closeness to the shipped product (according to it, Firefox OS Simulator is easiest but furthest).</p>
diff --git a/files/pt-pt/archive/b2g_os/utilizar_o_gestor_de_aplicacões/index.html b/files/pt-pt/archive/b2g_os/utilizar_o_gestor_de_aplicacões/index.html
deleted file mode 100644
index 96d59b7659..0000000000
--- a/files/pt-pt/archive/b2g_os/utilizar_o_gestor_de_aplicacões/index.html
+++ /dev/null
@@ -1,283 +0,0 @@
----
-title: Utilizar o Gestor de Aplicações
-slug: Archive/B2G_OS/Utilizar_o_Gestor_de_Aplicacões
-translation_of: Archive/B2G_OS/Using_the_App_Manager
----
-<div class="warning">
-<p><strong>Importante</strong>: O Gestor de Aplicações deverá ser considerado desaprovado; o trabalho para remover o código do Gestor de Aplicações do Firefox já foi iniciado (consultar {{bug("1007061")}}), e se em vez disso, já utilizar <a href="/en-US/docs/Tools/WebIDE">WebIDE</a>, a menos que tenha uma boa razão para o não fazer.</p>
-</div>
-
-<div class="summary">
-<p><span class="seoSummary">The App Manager is a tool for Firefox Desktop which provides a number of useful tools to help developers test, deploy and debug HTML5 web apps on Firefox OS phones &amp; Simulator, directly from Firefox browser. This page documents how to use the App Manager.</span></p>
-
-<p>App Manager is available for Firefox OS 1.2 or later, lower versions are supported in <a href="/en-US/docs/Tools/Firefox_OS_1.1_Simulator">Firefox OS 1.1 Simulator</a>. The App Manager is being replaced by the <a href="/en-US/docs/Tools/WebIDE">WebIDE</a>, starting from Firefox 33. The WebIDE provides all the features of the App Manager and also features an editing environment to create and develop Firefox OS apps.</p>
-</div>
-
-<p>{{EmbedYouTube("z1Bxg1UJVf0")}}</p>
-
-<p>The App Manager is composed of:</p>
-
-<ul>
- <li>An <a href="#Apps_panel"><em>Apps panel</em></a>, which manages local apps (app source code located on your computer) and apps hosted externally, allowing you to package and install them on your device or simulator, and debug them using Toolboxes</li>
- <li>A <a href="#Device_panel"><em>Device panel</em></a>, which displays information about the connected device including Firefox OS version installed, permissions required for using device APIs on the device, and apps installed</li>
- <li><a href="/en-US/docs/Tools_Toolbox"><em>Toolboxes</em></a>, which are are sets of developer tools (web console, inspector, debugger, etc.) that can be connected to a running app via the Apps panel to perform debugging operations</li>
-</ul>
-
-<h2 id="Quick_setup"><a name="Configuring_device">Quick setup</a></h2>
-
-<p>This section is designed to get you up and running as soon as possible; if you need some more detail please skip forward to the {{ anch("Device and system configuration") }} section and start reading from there.  Also see the {{ anch("Troubleshooting") }} section for help if you are having trouble.</p>
-
-<ol>
- <li>Make sure you have Firefox Desktop 26+ installed</li>
- <li>Open the App Manager (in the URL bar, type <code>about:app-manager</code>, or go to <em>Tools &gt; Web Developer &gt; App Manager</em> in your Firefox menu.) This should appear in a new browser tab.</li>
- <li>If you don't have a real device:
- <ol>
- <li><a href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/">Install the Firefox OS Simulator</a> add-on, then go back to the App Manager tab of your browser.</li>
- <li>In App Manager's bottom toolbar, click on <em>Start Simulator</em>, then click on the name of the installed simulator, which should appear there.</li>
- </ol>
- </li>
- <li>If you have a real device:
- <ol>
- <li>Make sure your device is running Firefox OS 1.2+</li>
- <li>On Windows, make sure to install the drivers provided by your phone manufacturer</li>
- <li>In the Settings of your device, disable Screen Lock (<code>Settings &gt; Phone lock &gt; <code>Lock Screen</code></code>) and enable Remote Debugging (<code>Settings &gt; Device information &gt; More information &gt; Developer</code>)</li>
- <li><a href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/">Install the ADB Helper</a> add-on in Firefox Desktop</li>
- <li>Connect your device to your machine via a USB cable</li>
- <li>You should see the name of your device in the App Manager's bottom bar. Click on it.</li>
- </ol>
- </li>
- <li>The bottom bar should show "Connected to: xxx"</li>
- <li>Click on the <em>Apps</em> panel and add an app (packaged or hosted)</li>
- <li>The <em>Refresh</em> button validates your app and installs it on the Simulator/Device</li>
- <li>The <em>Debug</em> button connects the developer tools to the running app</li>
- <li><strong>See the {{ anch("Troubleshooting") }} section for help if you are having trouble</strong></li>
-</ol>
-
-<h2 id="Device_and_system_configuration">Device and system configuration</h2>
-
-<p>The first thing you'll need to do when using the App Manager is make sure your system and phone are set up correctly. This section will run through all the steps required.</p>
-
-<h3 id="Firefox_OS_1.2_required">Firefox OS 1.2+ required</h3>
-
-<p>Make sure your device is running Firefox OS 1.2/Boot2Gecko 1.2 or higher. To check which version of Firefox OS the device is runing, go to <code>Settings &gt; Device Information &gt; Software</code>.</p>
-
-<p>If you don't have a high enough version installed, depending on what phone you have you will need to either install an available nightly build of Firefox 1.2+, or configure and build it yourself from source.</p>
-
-<p>Builds available:</p>
-
-<ul>
- <li><a href="http://downloads.geeksphone.com/">Geeksphone Keon/Peak builds</a> (to find out more about using these, read <a href="/en-US/docs/Mozilla/Firefox_OS/Developer_phone_guide/Updating_and_Tweaking_Geeksphone">Updating and Tweaking your Firefox OS Developer Preview phone/Geeksphone</a>)</li>
- <li>More to follow</li>
-</ul>
-
-<div class="note">
-<p><strong>Note</strong>: To build your own Firefox OS 1.2+ distribution, follow the instructions located at <a href="/en-US/docs/Mozilla/Firefox_OS/Building_and_installing_Firefox_OS">Building and installing Firefox OS</a>, starting with <a href="/en-US/docs/Mozilla/Firefox_OS/Firefox_OS_build_prerequisites">Firefox OS build prerequisites</a>.</p>
-</div>
-
-<h3 id="Remote_debugging">Remote debugging</h3>
-
-<p>Next, you need to enable remote debugging in Firefox OS. To do so, go to <code>Settings &gt; Device information &gt; More information &gt; Developer</code> and check the Remote Debugging checkbox.</p>
-
-<h3 id="Adb_Helper_Add-on" name="Adb_Helper_Add-on">ADB or ADB helper</h3>
-
-<p>The process uses the Android Debug Bridge (ADB) to handle the device-computer connection and communication. There are two options for running ADB:</p>
-<ul>
- <li>
- <p>Let Firefox handle ADB (recommended). <a class="external" href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/" rel="noopener">Install the ADB Helper add-on</a>, which makes the process easier. With this installed, there's no need to install the ADB, and no need to type the <code>adb forward</code> command: everything is handled by the add-on.</p>
- <a class="download-button external ignore-external" href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/" rel="noopener">Download ADB Helper Add-on</a></li>
- <li>Use ADB manually. You need to have it installed on your computer: download and install <code>adb</code> as explained in <a href="/en-US/Firefox_OS/Debugging/Installing_ADB">Installing ADB</a>. You'll need to enable port forwarding by entering the following command into your terminal:
- <pre>adb forward tcp:6000 localfilesystem:/data/local/debugger-socket</pre>
- Note that you'll need to do this every time the phone is restarted or unplugged then re-plugged.</li>
-</ul>
-
-<div class="note">
-<p><strong>Note</strong>: There's no need to run this command if you installed the ADB Helper Add-on.</p>
-</div>
-
-<h2 id="Connecting_your_device_to_the_App_Manager">Connecting your device to the App Manager</h2>
-
-<p>With all your configuration done, it's now time to plug your device into your computer and start the App Manager:</p>
-
-<ol>
- <li>Plug the device into your computer via USB.</li>
- <li>Disable Screen lock on your device by going to <code>Settings &gt; Screen Lock</code> and unchecking the <code>Lock Screen</code> checkbox. This is a good idea because when the screen gets locked, the phone connection gets lost, meaning it is no longer available for debugging.</li>
- <li>Start the App Manager — In Firefox Desktop select the <code>Tools &gt; Web Developer &gt; App Manager</code> menu option, or type <code>about:app-manager</code> in the URL bar.</li>
- <li>At the bottom of the App Manager tab, you will see a connection status bar (see screenshot below). You should be able to connect your device by clicking the "Connect to localhost:6000" button.</li>
- <li>If this works successfully, a prompt should appear on your device: "An incoming request to permit remote debugging connection was detected. Allow connection?". Tap the OK button (You may also have to press the power button on the phone so you can see the prompt.) The connection status bar should update to say "Connected to B2G", with a Disconnect button available to press if you want to cancel the connection.</li>
-</ol>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6263/connection-status.png" style="display: block; height: 30px; margin: 0px auto; width: 600px;"></p>
-
-<div class="note">
-<p><strong>Note</strong>: The other controls in the connection status bar allow you to connect a simulator to the App Manager, which we cover in the next section, below, and change the port that the connection happens on. If you change the port, you'll also need to enable port forwarding for this port as well, as instructed in the {{anch("Enable port forwarding")}} section, above.</p>
-</div>
-
-<h2 id="Using_a_Firefox_OS_Simulator_Add-on"><a name="Simulator">Using a Firefox OS Simulator Add-on</a></h2>
-
-<p>If you haven't got a real device available to use with App Manager, you can still try it out using a <a href="/en-US/docs/Tools/Firefox_OS_Simulator">Firefox OS Simulator</a> Add-on. To start off, install the simulator with the following button (multiple versions are available; you are advised to install them all, for maximum flexibility):</p>
-
-<p><a class="download-button external ignore-external" href="https://ftp.mozilla.org/pub/mozilla.org/labs/fxos-simulator/" rel="noopener">Install Simulator</a></p>
-
-<p>Once you've installed the simulator(s), you need to go to about:app-manager to see the connection status bar at the bottom of the App Manager tab, and click the "Start simulator" button. At least three buttons will appear:</p>
-
-<ul>
- <li>"Firefox OS 1.3", "Firefox OS 1.2" ... etc. (or something similar): the left-most buttons contain the names of the simulator versions you have installed. Click one to start a connection to a simulator.</li>
- <li>"Add": the middle button navigates to the simulator install links in this article, so you can add more Simulators (Firefox OS 1.3, Firefox OS 1.4, etc.)</li>
- <li>"Cancel": the right hand button cancels the connection.</li>
-</ul>
-
-<div class="note">
-<p><strong>Note</strong>: The Firefox OS 1.5 Simulator has been removed, as 1.5 was changed to 2.0. If you have the Firefox OS 1.5 Simulator installed, it won't automatically update to 2.0, so you should uninstall 1.5 and install 2.0 instead. The Firefox OS 2.0 simulator will then automatically update.</p>
-</div>
-
-<div class="note">
-<p><strong>Note</strong>: The Firefox OS 1.2 Simulator has been removed, as no phones are likely to be released with version 1.2 installed — this version is therefore of limited value, and it makes more sense to spend your time debugging on other versions.</p>
-</div>
-
-<h2 id="Running_custom_builds_in_the_App_Manager">Running custom builds in the App Manager</h2>
-
-<p>Note that you can run custom B2G Desktop and Gaia/Gecko builds in the App Manager via the simulator. Read <a href="/en-US/Firefox_OS/Running_custom_builds_in_the_App_Manager">Running custom Firefox OS/Gaia builds in the App Manager</a> for instructions on how to do this.</p>
-
-<h2 id="Apps_panel_Test_and_debug_Firefox_OS_apps"><a name="Apps_panel">Apps panel</a>: Test and debug Firefox OS apps</h2>
-
-<p>Now that everything is working, let's review the functionality available inside the App Manager, starting with the Apps panel. From here, you can import an existing app to push onto your device, for testing and debugging:</p>
-
-<ul>
- <li>To install a locally stored app, click on the plus next to the "Add Packaged App" label and use the resulting file chooser dialog to select the directory your app is contained inside.</li>
- <li>To install an externally hosted app, enter the absolute URL of the app's manifest file into the text field inside the "Add Hosted App" box, then press the plus button.</li>
-</ul>
-
-<p>Information about your app should appear on the right hand side of the window, as seen below:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6261/apps-panel.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<h3 id="Manifest_editor">Manifest editor</h3>
-
-<p>From Firefox 28 onwards, the Apps Panel includes an editor for the app manifest:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6613/apps-panel-fx-28.png" style="display: block; margin: 0px auto; width: 600px;"></p>
-
-<h3 id="Debugging">Debugging</h3>
-
-<p>Clicking on <em>"Update"</em> will update (install) the app on the device. Clicking on <em>"debug"</em> will connect a toolbox to the app, allowing you to debug its code directly:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6265/debug.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<div class="note">
-<p>You'll enjoy playing around with the toolbox — try altering the DOM, CSS etc. and you'll see the updates reflected on the device in realtime. Such updates will be saved on the installed app code; you'll see them next time you open the app on the device.</p>
-</div>
-
-<p>Before Firefox 28, the tools are launched in a separate window. From Firefox 28 onwards, the tools are launched in a separate tab in the App Manager itself, alongside the Apps and Device tabs. The tab is given your app's icon so it's easy to find:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6615/toolbox-fx-28.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<h3 id="Errors">Errors</h3>
-
-<p>If an app was not added successfully — for example if the URL was incorrect, or you selected a packaged app folder — an entry will be added to the page for this app, but this will include error information.</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6259/apps-error.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<p>You can also delete an app from this view, by hovering over the App name/description on the left of the window, and pressing the "X" button that appears in each case. This however doesn't remove the app from the device. To do that you need to manually remove the app using the device itself.</p>
-
-<h2 id="Device_panel_2"><a name="Device_panel">Device panel</a></h2>
-
-<p>The <em>Device</em> tab displays information about the connected device. From the <em>"</em>Installed Apps<em>"</em> window, apps on the device can be started and debugged.</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6267/device-tab.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<div class="note">
-<p>Note: Certified Apps are not listed by default. <a href="#Debugging_Certified_Apps">See how to debug certified apps</a>.</p>
-</div>
-
-<p><a name="permissions"></a>The "Permissions" window shows the required privileges for different <a href="/en-US/docs/WebAPI">Web APIs</a> on the current device:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/6269/permissions.png" style="display: block; height: 375px; margin: 0px auto; width: 600px;"></p>
-
-<p>Finally, you can take a screenshot of the current device display by clicking the "Screenshot" button. The screenshot appears in a new tab on Firefox, and from there you can save or discard it as you wish.</p>
-
-<h2 id="Debugging_Certified_Apps_2"><a name="Debugging_Certified_Apps">Debugging Certified Apps</a></h2>
-
-<p>Currently only devices running a development build of Firefox OS 1.2+ are capable of debugging certified apps. If you have a development build, you can enable certified app debugging by changing the pref <code>devtools.debugger.forbid-certified-apps</code> to <code>false</code> in your profile. To do this, follow the steps below:</p>
-
-<h3 id="Using_a_real_device">Using a real device</h3>
-
-<ol>
- <li>
- <p>On your computer, enter the following command in Terminal/console to enter your device's filesystem via the shell:</p>
-
- <pre class="brush: bash">adb shell</pre>
-
- <p>Your prompt should change to <code>root@android</code>.</p>
- </li>
- <li>
- <p>Next, stop B2G running using the following command:</p>
-
- <pre class="brush: bash">stop b2g</pre>
- </li>
- <li>
- <p>Navigate to the following directory:</p>
-
- <pre>cd /data/b2g/mozilla/*.default/</pre>
- </li>
- <li>
- <p>Here, update the prefs.js file with the following line:</p>
-
- <pre class="brush: js">echo 'user_pref("devtools.debugger.forbid-certified-apps", false);' &gt;&gt; prefs.js</pre>
- </li>
- <li>
- <p>After you've finished editing and saving the file, start B2G again using the following command:</p>
-
- <pre class="brush: bash">start b2g</pre>
- </li>
- <li>
- <p>Exit the android filesystem using the <code>exit</code> command; this will return you to your normal terminal prompt.</p>
- </li>
- <li>
- <p>Next, reconnect to the App Manager and you should see certified apps appear for debugging.</p>
- </li>
-</ol>
-
-<h3 id="Using_the_B2G_desktop_client">Using the B2G desktop client</h3>
-
-<p class="brush: js">With the B2G desktop client, the preference is already defined in your profile in <code>greprefs.js</code>, located at the root of your B2G desktop client folder. Stop your B2G desktop client and edit the file to turn the <code>devtools.debugger.forbid-certified-apps</code> preference to <code>false</code>. Then restart the B2G client and connect the App Manager. You should now see all applications.</p>
-
-<div class="note">
-<p>Note: If you want to add this preference to your Gaia build you can run <code>make DEVICE_DEBUG=1 reset-gaia</code>.</p>
-</div>
-
-<h2 id="Troubleshooting_2"><a name="Troubleshooting">Troubleshooting</a></h2>
-
-<p id="My_device_is_not_recognized">If the device is not recognized:</p>
-
-<ul>
- <li>If clicking the button corresponding to your Firefox OS phone doesn't do anything, make sure you haven't connected an Android phone at the same time as the Firefox OS phone to your computer.</li>
- <li>Read the <a href="#Configuring_device">Device and system configuration</a> section thoroughly, and make sure all the steps are followed:</li>
- <li>Is your device running at least Firefox OS 1.2?</li>
- <li>Don't see all the apps? Do you need to enable <a href="#Debugging_Certified_Apps">Certified Apps debugging</a>?</li>
- <li>Did you enable "Remote Debugging" in the settings of your phone?</li>
- <li>If you are not using the <a href="#Adb_Helper_Add-on">ADB Helper add-on</a>:
- <ul>
- <li>Did you successfully run the <code>adb forward</code> command?</li>
- </ul>
- </li>
- <li>If you are using the <a href="#Adb_Helper_Add-on">ADB Helper add-on</a> and your device is not listed in the bottom toolbar:
- <ul>
- <li>If you use Linux, <a href="http://developer.android.com/tools/device.html#setting-up">make sure to setup udev correctly</a></li>
- <li>If you use Windows, <a href="http://developer.android.com/tools/device.html#setting-up">make sure to install the appropriate drivers</a></li>
- <li>You can also enable verbose logging to gather diagnostics:
- <ul>
- <li>Use about:config to set the pref "<span class="message"><span class="content"><span class="email">extensions.adbhelper@mozilla.org.sdk</span>.console.logLevel"</span></span> to the string value "all"</li>
- <li>Disable and re-enable the ADB Helper add-on from the add-ons manager, or restart Firefox</li>
- <li>Open the App Manager again</li>
- <li>In the <a href="/docs/Tools/Browser_Console">Browser Console</a>, you should now see additional output lines that mention "adbhelper"</li>
- <li>If you see them but aren't sure what they mean, stop by the <a href="https://wiki.mozilla.org/DevTools/GetInvolved#Communication">#devtools room on IRC</a> or <a href="https://bugzilla.mozilla.org/enter_bug.cgi?alias=&amp;assigned_to=nobody%40mozilla.org&amp;attach_text=&amp;blocked=&amp;bug_file_loc=http%3A%2F%2F&amp;bug_ignored=0&amp;bug_severity=normal&amp;bug_status=NEW&amp;cf_blocking_b2g=---&amp;cf_crash_signature=&amp;cf_status_b2g18=---&amp;cf_status_b2g_1_1_hd=---&amp;cf_status_b2g_1_2=---&amp;cf_status_firefox24=---&amp;cf_status_firefox25=---&amp;cf_status_firefox26=---&amp;cf_status_firefox27=---&amp;cf_status_firefox_esr17=---&amp;cf_status_firefox_esr24=---&amp;cf_tracking_b2g18=---&amp;cf_tracking_firefox24=---&amp;cf_tracking_firefox25=---&amp;cf_tracking_firefox26=---&amp;cf_tracking_firefox27=---&amp;cf_tracking_firefox_esr17=---&amp;cf_tracking_firefox_esr24=---&amp;cf_tracking_firefox_relnote=---&amp;cf_tracking_relnote_b2g=---&amp;comment=&amp;component=Developer%20Tools%3A%20App%20Manager&amp;contenttypeentry=&amp;contenttypemethod=autodetect&amp;contenttypeselection=text%2Fplain&amp;data=&amp;defined_groups=1&amp;dependson=&amp;description=&amp;flag_type-203=X&amp;flag_type-37=X&amp;flag_type-41=X&amp;flag_type-5=X&amp;flag_type-607=X&amp;flag_type-720=X&amp;flag_type-721=X&amp;flag_type-737=X&amp;flag_type-748=X&amp;flag_type-781=X&amp;flag_type-787=X&amp;flag_type-791=X&amp;flag_type-799=X&amp;flag_type-800=X&amp;flag_type-802=X&amp;flag_type-803=X&amp;flag_type-809=X&amp;flag_type-825=X&amp;form_name=enter_bug&amp;keywords=&amp;maketemplate=Remember%20values%20as%20bookmarkable%20template&amp;op_sys=All&amp;priority=--&amp;product=Firefox&amp;qa_contact=developer.tools%40firefox.bugs&amp;rep_platform=x86&amp;requestee_type-203=&amp;requestee_type-41=&amp;requestee_type-5=&amp;requestee_type-607=&amp;requestee_type-748=&amp;requestee_type-781=&amp;requestee_type-787=&amp;requestee_type-791=&amp;requestee_type-800=&amp;short_desc=&amp;status_whiteboard=&amp;target_milestone=---&amp;version=Trunk">file a bug</a> with the log output</li>
- </ul>
- </li>
- </ul>
- </li>
- <li>See <strong>"???????"</strong> instead of the device name on Linux? You have permissions issues. <a href="http://developer.android.com/tools/device.html#setting-up">Make sure to setup udev correctly</a>.</li>
- <li>Is your phone screen unlocked?</li>
- <li>If the command "adb devices" shows no entries even though the phone is connected and unlocked, you may have to <a href="http://blog.fh-kaernten.at/wehr/?p=1182">edit adb_usb.ini</a>.</li>
-</ul>
-
-<p>Can't connect your device to the App Manager or start the simulator? <a href="https://wiki.mozilla.org/DevTools/GetInvolved#Communication">Let us know</a> or <a href="https://bugzilla.mozilla.org/enter_bug.cgi?alias=&amp;assigned_to=nobody%40mozilla.org&amp;attach_text=&amp;blocked=&amp;bug_file_loc=http%3A%2F%2F&amp;bug_ignored=0&amp;bug_severity=normal&amp;bug_status=NEW&amp;cf_blocking_b2g=---&amp;cf_crash_signature=&amp;cf_status_b2g18=---&amp;cf_status_b2g_1_1_hd=---&amp;cf_status_b2g_1_2=---&amp;cf_status_firefox24=---&amp;cf_status_firefox25=---&amp;cf_status_firefox26=---&amp;cf_status_firefox27=---&amp;cf_status_firefox_esr17=---&amp;cf_status_firefox_esr24=---&amp;cf_tracking_b2g18=---&amp;cf_tracking_firefox24=---&amp;cf_tracking_firefox25=---&amp;cf_tracking_firefox26=---&amp;cf_tracking_firefox27=---&amp;cf_tracking_firefox_esr17=---&amp;cf_tracking_firefox_esr24=---&amp;cf_tracking_firefox_relnote=---&amp;cf_tracking_relnote_b2g=---&amp;comment=&amp;component=Developer%20Tools%3A%20App%20Manager&amp;contenttypeentry=&amp;contenttypemethod=autodetect&amp;contenttypeselection=text%2Fplain&amp;data=&amp;defined_groups=1&amp;dependson=&amp;description=&amp;flag_type-203=X&amp;flag_type-37=X&amp;flag_type-41=X&amp;flag_type-5=X&amp;flag_type-607=X&amp;flag_type-720=X&amp;flag_type-721=X&amp;flag_type-737=X&amp;flag_type-748=X&amp;flag_type-781=X&amp;flag_type-787=X&amp;flag_type-791=X&amp;flag_type-799=X&amp;flag_type-800=X&amp;flag_type-802=X&amp;flag_type-803=X&amp;flag_type-809=X&amp;flag_type-825=X&amp;form_name=enter_bug&amp;keywords=&amp;maketemplate=Remember%20values%20as%20bookmarkable%20template&amp;op_sys=All&amp;priority=--&amp;product=Firefox&amp;qa_contact=developer.tools%40firefox.bugs&amp;rep_platform=x86&amp;requestee_type-203=&amp;requestee_type-41=&amp;requestee_type-5=&amp;requestee_type-607=&amp;requestee_type-748=&amp;requestee_type-781=&amp;requestee_type-787=&amp;requestee_type-791=&amp;requestee_type-800=&amp;short_desc=&amp;status_whiteboard=&amp;target_milestone=---&amp;version=Trunk">file a bug</a>. and</p>
diff --git a/files/pt-pt/archive/css3/index.html b/files/pt-pt/archive/css3/index.html
deleted file mode 100644
index 5cabcb8ebd..0000000000
--- a/files/pt-pt/archive/css3/index.html
+++ /dev/null
@@ -1,1090 +0,0 @@
----
-title: CSS3
-slug: Archive/CSS3
-tags:
- - CSS
- - Precisa de Tradução
- - Referencia
-translation_of: Archive/CSS3
----
-<p><span class="seoSummary"><strong>CSS3</strong> is the latest evolution of the <em>Cascading Style Sheets</em> language and aims at extending CSS2.1. It brings a lot of long-awaited novelties, like rounded corners, shadows, <a href="/en-US/docs/Web/Guide/CSS/Using_CSS_gradients" title="Using CSS gradients">gradients</a>, <a href="/en-US/docs/Web/Guide/CSS/Using_CSS_transitions" title="CSS transitions">transitions</a> or <a href="/en-US/docs/Web/Guide/CSS/Using_CSS_animations" title="CSS animations">animations</a>, as well as new layouts like <a href="/en-US/docs/Web/Guide/CSS/Using_multi-column_layouts" title="Using CSS multi-column layouts">multi-columns</a>, <a href="/en-US/docs/Web/Guide/CSS/Flexible_boxes">flexible box</a> or grid layouts.</span> Experimental parts are vendor-prefixed and should either be avoided in production environments, or used with extreme caution as both their syntax and semantics can change in the future.</p>
-
-<h2 id="Módulos_e_processo_de_uniformização">Módulos e processo de uniformização</h2>
-
-<p>CSS Level 2 needed 9 years, from August 2002 to June 2011 to reach the Recommendation status. This was due to the fact that a few secondary features held back the whole specification. In order to accelerate the standardization of non-problematic features, the <a class="external" href="http://www.w3.org/blog/CSS/" title="http://www.w3.org/blog/CSS/">CSS Working Group</a> of the W3C, in a decision referred as the <a class="external" href="http://fantasai.inkedblade.net/weblog/2011/inside-csswg/modules" title="http://fantasai.inkedblade.net/weblog/2011/inside-csswg/modules">Beijing doctrine</a>, divided CSS in smaller components called <em>modules</em> . Each of these modules is now an independent part of the language and moves towards standardization at its own pace. While some modules are already W3C Recommendations, other still are early Working Drafts. New modules are also added when new needs are identified.</p>
-
-<p><a href="/@api/deki/files/6120/=CSS_Modules_and_Snapshots.png" title="CSS_Modules_and_Snapshots.png"><img alt="CSS Modules and Snapshots as defined since CSS3" class="internal lwrap" src="/files/3623/CSS_Modules_and_Snapshots.png" style="float: left; width: 550px;"> </a> Formally, there is no CSS3 standard <em>per se</em> . Each module being standardized independently, the standard CSS consists of CSS2.1 amended and extended by the completed modules, not necessary all with the same level number. At each point of time, a snapshot of the CSS standard can be defined, listing CSS2.1 and the mature modules.</p>
-
-<p>The W3 consortium periodically publishes such snapshots, like in <a class="external" href="http://www.w3.org/TR/css-beijing/" title="http://www.w3.org/TR/css-beijing/">2007</a>, <a class="external" href="http://www.w3.org/TR/css-2010/" title="http://www.w3.org/TR/css-2010/">2010</a>, <a href="https://www.w3.org/TR/css-2015/">2015</a>, <a href="https://www.w3.org/TR/css-2017/">2017</a>, and <a href="https://www.w3.org/TR/css-2018/">2018</a>.</p>
-
-<p>Though today no module with a level greater than 3 is standardized, this will change in the future. Some modules, like Selectors 4 or CSS Borders and Backgrounds Level 4 already have an Editor's Draft, though they haven't yet reached the First Published Working Draft status.</p>
-
-<h2 id="Estado_dos_módulos_CSS">Estado dos módulos CSS</h2>
-
-<h3 id="Módulos_concluídos">Módulos concluídos</h3>
-
-<p>A few CSS modules already became a standard as a W3C Recommendation. These should be no more changes.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Colors", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Colors") }} since June 7th, 2011</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds the {{ cssxref("opacity") }} property, and the <code>hsl()</code>, <code>hsla()</code>, <code>rgba()</code> and <code>rgb()</code> functions to create {{cssxref("&lt;color&gt;")}} values. It also defines the <code>currentColor</code> keyword as a valid color.</p>
-
- <p>The <code>transparent</code> color is now a real color (thanks to the support for the alpha channel) and is a now an alias for <code>rgba(0,0,0,0.0)</code>.</p>
-
- <p>It deprecates the <a href="http://www.w3.org/TR/CSS2/ui.html#system-colors">system-color keywords that shouldn't be used in a production environment anymore</a>.</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Namespaces", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Namespaces") }} since September 29th, 2011</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds the support for the XML Namespaces by defining the notion of <em>CSS qualified name</em>, using the ' <code>|</code> ' syntax and adding the {{ cssxref("@namespace") }} CSS at-rule.</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Selectors", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Selectors") }} since September 29th, 2011</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds:</p>
-
- <ul>
- <li>Substring matching attribute selectors, <code>E[attribute^="value"]</code>, <code>E[attribute$="value"]</code>, <code>E[attribute*="value"]</code> .</li>
- <li>New pseudo-classes: {{ cssxref(":target") }}, {{ cssxref(":enabled") }} and {{ cssxref(":disabled") }}, {{ cssxref(":checked") }}, {{ cssxref(":indeterminate") }}, {{ cssxref(":root") }}, {{ cssxref(":nth-child") }} and {{ cssxref(":nth-last-child") }}, {{ cssxref(":nth-of-type") }} and {{ cssxref(":nth-last-of-type") }}, {{ cssxref(":last-child") }}, {{ cssxref(":first-of-type") }} and {{ cssxref(":last-of-type") }}, {{ cssxref(":only-child") }} and {{ cssxref(":only-of-type") }},{{ cssxref(":empty") }}, and {{ cssxref(":not") }}.</li>
- <li>Pseudo-elements are now characterized by two colons rather than one: <code>:after</code> becomes {{ cssxref("::after") }}, <code>:before</code> becomes {{ cssxref("::before") }}, <code>:first-letter</code> becomes {{ cssxref("::first-letter") }}, and <code>:first-line</code> becomes {{ cssxref("::first-line") }}.</li>
- <li>The new <em>general sibling combinator</em> ( <code>h1~pre</code> ).</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>The <a class="external" href="http://dev.w3.org/csswg/selectors4/" title="http://dev.w3.org/csswg/selectors4/">next iteration of the Selectors specification</a> is already in progress, though it still hasn't reached the First Public Working Draft stage.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Media Queries", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Media Queries") }} since June 19th, 2012</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Extends the former media type ( <code>print</code>, <code>screen</code>, <code>…</code> ) to a full language allowing <a href="/en/CSS/Media_queries" title="en/CSS/Media_queries">queries on the device media capabilities</a> like <code>only screen and (color)</code> .</p>
-
- <p>Media queries are not only used in CSS document but also in some attributes of HTML Elements, like the {{ htmlattrxref("media","link") }} attribute of the {{ HTMLElement("link") }} element.</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>The <a href="http://dev.w3.org/csswg/mediaqueries4" title="http://dev.w3.org/csswg/mediaqueries4">next iteration of this specification</a> is in the work, allowing to tailor a Web site regarding the input methods available on the user agent, with new media features like <code>hover</code> or <code>pointer</code>. Detection of EcmaScript support, using the <code>script</code> media features is also proposed.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Style", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Style") }} since November 7th, 2013</td>
- </tr>
- <tr>
- <td colspan="2">Formally defines the syntax of the content of the HTML <a href="/en/HTML/Global_attributes#attr-style" title="en/HTML/Global_attributes#attr-style"> <code>style</code> </a> global attribute.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Fonts", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Fonts") }} since September 20th, 2018</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Amends the CSS2.1 Font matching algorithm to be closer to what is really implemented.</p>
-
- <p>Adds:</p>
-
- <ul>
- <li>Support for downloadable fonts via the CSS {{ cssxref("@font-face") }} at-rule.</li>
- <li>The control of the contextual inter-glyph spacing via the CSS {{ cssxref("font-kerning") }} property.</li>
- <li>The choice of language-specific glyphs via the CSS {{ cssxref("font-language-override") }} property.</li>
- <li>The choice of glyphs with specific OpenType features via the CSS {{ cssxref("font-feature-settings") }} property.</li>
- <li>The control of the aspect ratio to use when fallback fonts are selected via the CSS {{ cssxref("font-size-adjust") }} property.</li>
- <li>The choice of alternative font faces using the CSS {{ cssxref("font-stretch") }}, {{ cssxref("font-variant-alternates") }}, {{ cssxref("font-variant-caps") }}, {{ cssxref("font-variant-east-asian") }}, {{ cssxref("font-variant-ligatures") }}, {{ cssxref("font-variant-numeric") }}, and {{ cssxref("font-variant-position") }} properties. It also extends the related CSS {{ cssxref("font-variant") }} shorthand property and introduces the {{ cssxref("@font-feature-values") }} at-rule.</li>
- <li>The control of the automatic generation of an oblique or bold face when none are found via the CSS {{ cssxref("font-synthesis") }} property.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(128,255,128);"><strong>{{ SpecName("CSS3 Basic UI", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Basic UI") }} since June 21st, 2018</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds:</p>
-
- <ul>
- <li>The ability to tweak the box model using the CSS {{ cssxref("box-sizing") }} property.<br>
- <strong><em>At risk:</em> </strong> <em> due to insufficient browser support, standardization of the <code>padding-box</code> value may be postponed to </em> <em>the next iteration of this module.</em></li>
- <li>Allow the styling of forms according their content using the CSS {{ cssxref(":indeterminate") }}, {{ cssxref(":default") }}, {{ cssxref(":valid") }}, {{ cssxref(":invalid") }}, {{ cssxref(":in-range") }}, {{ cssxref(":out-of-range") }}, {{ cssxref(":required") }}, {{ cssxref(":optional") }}, {{ cssxref(":read-only") }}, and {{ cssxref(":read-write") }} pseudo-classes and the {{ cssxref("::value") }}, {{ cssxref("::choices") }}, {{ cssxref("::repeat-item") }}, and {{ cssxref("::repeat-index") }} pseudo-elements.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the pseudo-elements {{ cssxref("::value") }}, {{ cssxref("::choices") }}, {{ cssxref("::repeat-item") }}, and {{ cssxref("::repeat-index") }} may be postponed to </em> <em>the next iteration of this module</em> <em>.</em></li>
- <li>Support for icons, defined by the CSS {{ cssxref("icon") }} property simultaneously with the new <code>icon</code> value of the CSS {{ cssxref("content") }} property.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the {{ cssxref("icon") }} property and the <code>icon</code> value may be postponed to CSS4. </em></li>
- <li>Support for the CSS {{ cssxref("outline-offset") }} property giving more control on the position of the outline.</li>
- <li>Support for the CSS {{ cssxref("resize") }} property allowing Web authors to control if and how elements should be resized.</li>
- <li>Support for the CSS {{ cssxref("text-overflow") }} property defining how text overflows, if needed.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, the 2-value syntax of this property as well as the support for {{cssxref("&lt;string&gt;")}} values may be postponed to the next iteration of this module.</em></li>
- <li>The ability to define the hotspot of a cursor as well as the new <code>none</code>, <code>context-menu</code>, <code>cell</code>, <code>vertical-text</code>, <code>alias</code>, <code>copy</code>, <code>no-drop</code>, <code>not-allowed</code>, <code>nesw-</code><code>resize</code>, <code>nwse-</code><code>resize</code>, <code>col-resize</code>, <code>row-resize</code>, <code>all-scroll</code>, <code>zoom-in</code>, <code>zoom-out</code>, extending the {{ cssxref("cursor") }} property.</li>
- <li>The ability to specify the sequential navigation order (that is the <em>tabbing order</em> ) using the CSS {{ cssxref("nav-index") }}, {{ cssxref("nav-up") }}, {{ cssxref("nav-right") }}, {{ cssxref("nav-left") }}, {{ cssxref("nav-down") }} properties.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the navigation properties may be postponed to the next iteration of this module.</em></li>
- <li>The ability to control the usage of an IME editor, using the CSS {{ cssxref("ime-mode") }} property.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the {{ cssxref("ime-mode") }} property may be postponed to the next iteration of this module.</em></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>An early list of what could be in the next iteration of the CSS Basic User Interface Module is <a class="external" href="http://wiki.csswg.org/spec/css4-ui" title="http://wiki.csswg.org/spec/css4-ui">available</a>.</p>
-
-<h3 id="Módulos_estáveis">Módulos estáveis</h3>
-
-<p>A few CSS modules are already fairly stable and have reached one of the three recommendation level of the CSSWG: Candidate Recommendation, Proposed Recommendation or Recommendation. These can be used without prefix and are pretty stable, though a few features can still be dropped at the Candidate Recommendation stage.</p>
-
-<p>These modules extend and amend the CSS2.1 specification which build the core of the specification. Together with it, they are the current snapshot of the CSS specification.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Backgrounds", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Backgrounds") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds:</p>
-
- <ul>
- <li>Support, on backgrounds, for any type of {{cssxref("&lt;image&gt;")}}, and not only for <code>uri()</code> defined ones.</li>
- <li>Support for multiple background images.</li>
- <li>The {{ cssxref("background-repeat") }} <code>space</code> and <code>round</code> values, and for the 2-value syntax of this CSS property.</li>
- <li>The {{ cssxref("background-attachment") }} <code>local</code> value.</li>
- <li>The CSS {{ cssxref("background-origin") }}, {{ cssxref("background-size") }}, and {{ cssxref("background-clip") }} properties.</li>
- <li>Support for curved border corners, with the CSS {{ cssxref("border-radius") }}, {{ cssxref("border-top-left-radius") }}, {{ cssxref("border-top-right-radius") }}, {{ cssxref("border-bottom-left-radius") }}, and {{ cssxref("border-bottom-right-radius") }} properties.</li>
- <li>Support for the use of an {{cssxref("&lt;image&gt;")}} as the border with the CSS {{ cssxref("border-image") }}, {{ cssxref("border-image-source") }}, {{ cssxref("border-image-slice") }}, {{ cssxref("border-image-width") }}, {{ cssxref("border-image-outset") }}, and {{ cssxref("border-image-repeat") }} properties.</li>
- <li>Support for shadows of the element with the CSS {{ cssxref("box-shadow") }} property.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>The <a class="external" href="http://dev.w3.org/csswg/css4-background/" title="http://dev.w3.org/csswg/css4-background/">CSS4 iteration of the Backgrounds and Borders specification</a> is already in progress, though it still hasn't reached the First Public Working Draft stage, it plans to add the ability to clip a border (with the CSS {{ cssxref("border-clip") }}, {{ cssxref("border-clip-top") }}, {{ cssxref("border-clip-right") }}, {{ cssxref("border-clip-bottom") }}, and {{ cssxref("border-clip-left") }} properties) or to control the shape of the border in a corner (using the CSS {{ cssxref("border-corner-shape") }} property).</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220, 255, 220);"><strong>{{ SpecName("CSS3 Conditional", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Conditional") }}</td>
- </tr>
- <tr>
- <td colspan="2">Adds features for conditional processing of parts of style sheets, conditioned on capabilities of the browser or the document the style sheet is being applied to. It consists mainly in allowing nested at-rules inside {{ cssxref("@media") }} and the adding of a new CSS at-rule, {{ cssxref("@supports") }}, and a new DOM method {{domxref("CSS.supports()")}}.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Multicol", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Multicol") }}</td>
- </tr>
- <tr>
- <td colspan="2">Adds support for easy multi-column layouts using the CSS {{ cssxref("columns") }}, {{ cssxref("column-count") }}, {{ cssxref("column-fill") }}, {{ cssxref("column-gap") }}, {{ cssxref("column-rule") }}, {{ cssxref("column-rule-color") }}, {{ cssxref("column-rule-style") }}, {{ cssxref("column-rule-width") }}, {{ cssxref("column-span") }}, {{ cssxref("column-width") }}, {{ cssxref("break-after") }}, {{ cssxref("break-before") }}, and {{ cssxref("break-inside") }}.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220, 255, 220);"><strong>{{ SpecName("CSS3 Values", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Values") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Makes <code>initial</code> and <code>inherit</code> keywords usable on any CSS property.</p>
-
- <p>Formally defines the CSS data types of CSS 2.1, that were implicitely defined by their grammar token and some textual precisions.</p>
-
- <p>Adds:</p>
-
- <ul>
- <li>Definition for new font-relative length units: <code>rem</code> and <code>ch</code> .</li>
- <li>Definition for viewport-relative length units: <code>vw</code>, <code>vh</code>, <code>vmax</code>, and <code>vmin</code> .</li>
- <li>Precision about the real size of the absolute length units, which are not really absolute, but defined in relation with the <em>reference pixel</em> .</li>
- <li>Definition for {{ cssxref("&lt;angle&gt;") }}, {{cssxref("&lt;time&gt;")}}, {{cssxref("&lt;frequency&gt;")}}, {{cssxref("&lt;resolution&gt;")}}.</li>
- <li>Normative value to the definition of {{cssxref("&lt;color&gt;")}}, {{cssxref("&lt;image&gt;")}}, and {{cssxref("&lt;position&gt;")}}.</li>
- <li>Definition for the {{ cssxref("calc", "calc()") }}, {{ cssxref("attr", "attr()")}}, and <code>toggle()</code> functional notations.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the <code>calc()</code>, <code>attr()</code>, and <code>toggle()</code> functional notations may be postponed to </em> <em>the next iteration of this module</em><em>.</em></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>Several types definition, like <code>&lt;ident&gt;</code> and <code>&lt;custom-ident&gt;</code>, have been deferred to CSS Values and Units Module Level 4.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Flexbox", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Flexbox") }}</td>
- </tr>
- <tr>
- <td colspan="2">Add a flexbox layout to the CSS {{ cssxref("display") }} property and several new CSS properties to control it: {{ cssxref("flex") }}, {{ cssxref("flex-align") }}, {{ cssxref("flex-direction") }}, {{ cssxref("flex-flow") }}, {{ cssxref("flex-item-align") }}, {{ cssxref("flex-line-pack") }}, {{ cssxref("flex-order") }}, {{ cssxref("flex-pack") }}, and {{ cssxref("flex-wrap") }}.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Cascade", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Cascade") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds:</p>
-
- <ul>
- <li>The {{ cssxref("initial") }}, {{ cssxref("unset") }} values for properties.</li>
- <li>The CSS {{ cssxref("all") }} property.</li>
- <li>The scoping mechanism.</li>
- </ul>
-
- <p>Clarifies:</p>
-
- <ul>
- <li>Interaction of media-dependent @import statements and style sheet loading requirements.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Writing Modes", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Writing Modes") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines the writing modes of both horizontal and vertical scripts and clarifies how the CSS {{ cssxref("direction") }} and {{ cssxref("unicode-bidi") }} properties interact with the new CSS {{ cssxref("text-orientation") }} property, and extends them where needed.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Counter Styles", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Counter Styles") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Módulos_de_teste">Módulos de teste</h3>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Images", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Images") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Defines the {{cssxref("&lt;image&gt;")}} data type.</p>
-
- <p>Extends the <code>url()</code> syntax to support image slices using media fragments.</p>
-
- <p>Adds:</p>
-
- <ul>
- <li>The <code>dppx</code> unit to the {{cssxref("&lt;resolution&gt;")}} data type.</li>
- <li>The <code>image()</code> function as a more flexible alternative to <code>url()</code> to define an image from an url.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the <code>image()</code> function may be postponed to the next iteration of this module.</em></li>
- <li>Support for <code>linear-gradient()</code>, <code>repeating-linear-gradient()</code>, <code>radial-gradient()</code> and <code>repeating-radial-gradient()</code>.</li>
- <li>The ability to define how a replaced element should fit in its element, using the CSS {{ cssxref("object-fit") }} property.<br>
- <em><strong>At risk:</strong> due to insufficient browser support, standardization of the {{ cssxref("object-fit") }} and property may be postponed to the next iteration of this module.</em></li>
- <li>The ability to override the resolution and orientation of an external image using the CSS {{ cssxref("image-resolution") }} and {{ cssxref("image-orientation") }} properties.<br>
- <em><strong>At risk</strong> </em> <strong> <em>:</em> </strong> <em> due to insufficient browser support, standardization of the {{ cssxref("image-resolution") }} and {{ cssxref("image-orientation") }} properties may be postponed to </em> <em>the next iteration of this module</em></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>The <a href="#Images_(Level_4)">CSS Image Values and Replaced Content Level 4</a> which will supersede CSS Image Level 3 is in development and is a {{Spec2("CSS4 Images")}}.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS3 Speech", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Speech") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines the <code>speech</code> media type, an aural formatting model and numerous properties specific for speech-rendering user agents.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220, 255, 220);"><strong>{{ SpecName("CSS3 Text Decoration", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Text Decoration") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Extends:</p>
-
- <ul>
- <li>the CSS {{ cssxref("text-decoration") }} property by making it a shorthand for the CSS {{ cssxref("text-decoration-line") }}, {{ cssxref("text-decoration-color") }}, and {{ cssxref("text-decoration-style") }} properties. And adds the {{ cssxref("text-decoration-skip") }}, and {{ cssxref("text-underline-position") }} properties.</li>
- </ul>
-
- <p>Adds:</p>
-
- <ul>
- <li>Support for East-Asian-script emphasis marks with the CSS {{ cssxref("text-emphasis") }}, {{ cssxref("text-emphasis-style") }}, {{ cssxref("text-emphasis-color") }}, and {{ cssxref("text-emphasis-position") }} properties.</li>
- <li>Support for script shadows with the CSS {{ cssxref("text-shadow") }} property.</li>
- </ul>
-
- <p>Clarifies:</p>
-
- <ul>
- <li>The paint order of the decorations.</li>
- </ul>
-
- <p><em><strong>At risk:</strong> due to insufficient browser support, standardization of the <code>text-decoration-skip</code>, line positioning rules and the ability to place both emphasis marks and ruby above the same base text may be postponed to </em> <em>the next iteration of this module</em><em>.</em></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS Shapes", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Shapes") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines geometric shapes, which can be applied to floats. These shapes describe areas, around which inline content wraps instead of wrapping around the bounding box.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS Masks", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Masks") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines a way for partially or fully hiding portions of visual elements. It describes how to use another graphical element or image as a luminance or alpha mask.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255, 255, 220);"><strong>{{ SpecName("CSS3 Fragmentation", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Fragmentation") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines how partitions of a Web page should happen, that is page, column breaks, and widows and orphans handling.
- <p>Adds:</p>
-
- <ul>
- <li>Support for defining the behavior of decorations, that is borders and background colors or images, when a box is breaked (at a page, column or line-break) with the CSS {{ cssxref("box-decoration-break") }} property.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Variables", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Variables") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines a mechanism allowing to define variables in CSS.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("Compositing", "", "") }}</strong></td>
- <td>{{ Spec2("Compositing") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Syntax", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Syntax") }}</td>
- </tr>
- <tr>
- <td colspan="2">Clarifies how charsets are determined; minor changes in parsing and tokenization algorithms.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSS3 Grid", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Grid") }}</td>
- </tr>
- <tr>
- <td colspan="2">Add a grid layout to the CSS <a href="/en-US/docs/Web/CSS/display" title=""><code>display</code></a> property and several new CSS properties to control it: {{cssxref("grid")}}, {{cssxref("grid-area")}}, {{cssxref("grid-auto-columns")}}, {{cssxref("grid-auto-flow")}}, {{cssxref("grid-auto-position")}}, {{cssxref("grid-auto-rows")}}, {{cssxref("grid-column")}}, {{cssxref("grid-column-start")}}, {{cssxref("grid-column-end")}}, {{cssxref("grid-row")}}, {{cssxref("grid-row-start")}}, {{cssxref("grid-row-end")}}, {{cssxref("grid-template")}}, {{cssxref("grid-template-areas")}}, {{cssxref("grid-template-rows")}}, and {{cssxref("grid-template-columns")}}.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Display", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Display") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS Will Change", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Will Change") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS4 Media Queries", "", "") }}</strong></td>
- <td>{{ Spec2("CSS4 Media Queries") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("Geometry Interfaces", "", "") }}</strong></td>
- <td>{{ Spec2("Geometry Interfaces") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS4 Cascade", "", "") }}</strong></td>
- <td>{{ Spec2("CSS4 Cascade") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{SpecName("CSS Scroll Snap Points")}}</strong></td>
- <td>{{Spec2("CSS Scroll Snap Points")}}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{SpecName('CSS Painting API')}}</strong></td>
- <td>{{Spec2('CSS Painting API')}}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{SpecName('CSS Containment')}}</strong></td>
- <td>{{Spec2('CSS Containment')}}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{SpecName('CSS4 Writing Modes')}}</strong></td>
- <td>{{Spec2('CSS4 Writing Modes')}}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Modules_in_the_refining_phase">Modules in the refining phase</h3>
-
-<p>Specifications that are deemed to be in the <em>refining phase</em> are already fairly stable. Though changes are still expected, they shouldn't create incompatibilities with current implementations; they should mainly define behavior in edge cases.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Animations", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Animations") }}</td>
- </tr>
- <tr>
- <td colspan="2">Allows the definition of animations effects by adding the CSS {{ cssxref("animation") }}, {{ cssxref("animation-delay") }},{{ cssxref("animation-direction") }}, {{ cssxref("animation-duration") }}, {{ cssxref("animation-fill-mode") }}, {{ cssxref("animation-iteration-count") }}, {{ cssxref("animation-name") }}, {{ cssxref("animation-play-state") }}, and {{ cssxref("animation-timing-function") }} properties, as well as the {{ cssxref("@keyframes") }} at-rule.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("Web Animations", "", "") }}</strong></td>
- <td>{{ Spec2("Web Animations") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Text", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Text") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Extends:</p>
-
- <ul>
- <li>the CSS {{ cssxref("text-transform") }} property with the value <code>full-width</code>.</li>
- <li>the CSS {{ cssxref("text-align") }} property with the value <code>start</code>, <code>end</code>, <code>start end</code>, and <code>match-parent</code> for a better support of documents with multiple directionalities of text.</li>
- <li>the CSS {{ cssxref("text-align") }} property with a {{cssxref("&lt;string&gt;")}} value to align on that character. This is useful to align number on the decimal point.</li>
- <li>the CSS {{ cssxref("word-spacing") }} and {{ cssxref("letter-spacing") }} properties with range constraints to control flexibility in justification.</li>
- </ul>
-
- <p>Adds:</p>
-
- <ul>
- <li>Control on how whitespaces are displayed using the CSS {{ cssxref("text-space-collapse") }} and {{ cssxref("tab-size") }} properties.</li>
- <li>Control on line breaks and word boundaries using the CSS {{ cssxref("line-break") }}, {{ cssxref("word-break") }}, {{ cssxref("hyphens") }}, {{ cssxref("text-wrap") }}, {{ cssxref("overflow-wrap") }}, and {{ cssxref("text-align-last") }} properties.</li>
- <li>Control on how justification is happening, in order to support more type of scripts, using the CSS {{ cssxref("text-justify") }} property.</li>
- <li>Control on edge effect using the CSS {{ cssxref("text-indent") }} and {{ cssxref("hanging-punctuation") }} properties.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>A few features present in early CSS Text Level 3 draft have being <a class="external" href="http://dev.w3.org/csswg/css3-text/#recent-changes" title="http://dev.w3.org/csswg/css3-text/#recent-changes">postponed to the next iteration of this module</a> .</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Transforms", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Transforms") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Adds:</p>
-
- <ul>
- <li>the support of bi-dimensional transforms to be applied to any element using the CSS {{ cssxref("transform") }} and {{ cssxref("transform-origin") }} properties. The supported transforms are: <code>matrix</code><code>()</code>, <code>translate()</code>, <code>translateX()</code>, <code>translateY()</code>, <code>scale()</code>, <code>scaleX()</code>, <code>scaleY()</code>, <code>rotate()</code>, <code>skewX()</code>, and <code>skewY()</code>.</li>
- <li>the support of tri-dimensional transforms to be applied to any element by adding the CSS {{ cssxref("transform-style") }}, {{ cssxref("perspective") }}, {{ cssxref("perspective-origin") }}, and {{ cssxref("backface-visibility") }} properties and extended the {{ cssxref("transform") }} property with the following transforms are: <code>matrix</code> <code>3d()</code>, <code>translate3d()</code>, <code>translateZ()</code>, <code>scale3d()</code>, <code>scaleZ()</code>, <code>rotate3d()</code>, <code>rotateX</code><code>()</code>, <code>rotateY</code><code>()</code>, <code>rotateZ()</code>, and <code>perspective()</code>.</li>
- </ul>
-
- <p><em><strong>Note:</strong> this specification is a merge of CSS 2D-Transforms, CSS 3D-Transforms and SVG transforms. </em></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,255,220);"><strong>{{ SpecName("CSS3 Transitions", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Transitions") }}</td>
- </tr>
- <tr>
- <td colspan="2">Allows the definition of transitions effects between two properties values by adding the CSS {{ cssxref("transition") }}, {{ cssxref("transition-delay") }}, {{ cssxref("transition-duration") }}, {{ cssxref("transition-property") }}, and {{ cssxref("transition-timing-function") }} properties.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSS3 Box Alignment", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Box Alignment") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSS4 Selectors", "", "") }}</strong></td>
- <td>{{ Spec2("CSS4 Selectors") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Lists", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Lists") }}</td>
- </tr>
- <tr>
- <td colspan="2">Extends the list counter mechanism so that list markers can be styled and Web developers can define new list counter schemes.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("Motion Path Level 1", "", "") }}</strong></td>
- <td>{{ Spec2("Motion Path Level 1") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS4 Fonts", "", "") }}</strong></td>
- <td>{{ Spec2("CSS4 Fonts") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>CSS Easing Functions Level 1</strong></td>
- <td>Working Draft</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(220,255,220);"><strong>{{ SpecName("CSS Logical Properties", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Logical Properties") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Modules_in_the_revising_phase">Modules in the revising phase</h3>
-
-<p>Modules that are in the revising phase are much less stable than those in the refining phase. Often the syntax is still under scrutiny and may evolve a lot, in a non-compatible way. Alternative syntaxes are tested and often implemented.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSS3 Paged Media", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Paged Media") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSSOM View", "", "") }}</strong></td>
- <td>{{ Spec2("CSSOM View") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Sizing", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Sizing") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Ruby", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Ruby") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Overflow", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Overflow") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F33;"><strong>{{ SpecName("CSS3 Box", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Box") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>{{ SpecName("CSS Scrollbars", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Scrollbars") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Modules_in_the_exploring_phase">Modules in the exploring phase</h3>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: rgb(255,160,100);"><strong>CSS Backgrounds and Borders Level 4</strong></td>
- <td>Working Draft</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Device", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Device") }}</td>
- </tr>
- <tr>
- <td colspan="2">Adds a new at-rule, {{ cssxref("@viewport") }}, allowing to specify the size, zoom factor, and orientation of the viewport that is used as the base for the initial containing block.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS Exclusions", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Exclusions") }}</td>
- </tr>
- <tr>
- <td colspan="2">Extends the floats mechanism to define exclusion regions in any positioning scheme. Adds the notion of shapes, in which content must flows.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("Filters 1.0", "", "") }}</strong></td>
- <td>{{ Spec2("Filters 1.0") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 GCPM", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 GCPM") }}</td>
- </tr>
- <tr>
- <td colspan="2">Adds the ability to tailor printed version of a document by allowing to control header, footer but also references tables like indexes or tables of content.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>CSS Page Floats</strong></td>
- <td>Working Draft</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Template", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Template") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS Line Grid", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Line Grid") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Positioning", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Positioning") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Regions", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Regions") }}</td>
- </tr>
- <tr>
- <td colspan="2">Defines a new mechanism allowing content to flow across, eventually non-contiguous, multiple areas called regions.</td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSSOM", "", "") }}</strong></td>
- <td>{{ Spec2("CSSOM") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Font Loading", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Font Loading") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS Scope", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Scope") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS3 Inline", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Inline") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS4 Images", "", "") }}</strong></td>
- <td>{{ Spec2("CSS4 Images") }}</td>
- </tr>
- <tr>
- <td colspan="2">
- <p>Extends:</p>
-
- <ul>
- <li>the <code>image()</code> functional notation to describe the directionality of the image (<code>rtl</code> or <code>ltr</code>), allowing for bidi-sensitive images.</li>
- <li>the {{ cssxref("image-orientation") }} property by adding the keyword <code>from-image</code>, allowing to follow EXIF data stored into images to be considered.</li>
- </ul>
-
- <p>Adds:</p>
-
- <ul>
- <li>the <code>image-set()</code> functional notation to allow the definition to equivalent images at different resolution allowing for resolution-negotiated selection of images.</li>
- <li>the <code>element()</code> functional notation allowing the use of part of the page as image.</li>
- <li>the <code>cross-fade()</code> functional notation allowing to refer to intermediate images when transitioning between two images and defines the interpolation between two images.</li>
- <li>the <code>conic-gradient()</code> and <code>repeating-conic-gradient()</code> functional notation describing a new type of gradient.</li>
- <li>the {{cssxref("image-rendering")}} property that allow to define how resize of the object should be handled.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Modules_in_the_rewriting_phase">Modules in the rewriting phase</h3>
-
-<p>Modules that are in the rewriting phase are outdated and require to be rewritten. The syntax is still under scrutiny and may evolve a lot, in a non-compatible way. Alternative syntaxes are tested and often implemented.</p>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F33;"><strong>{{ SpecName("CSS3 Content", "", "") }}</strong></td>
- <td>{{ Spec2("CSS3 Content") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Abandoned_modules">Abandoned modules</h3>
-
-<table class="fullwidth-table">
- <tbody>
- <tr>
- <td style="width: 30%; background-color: #F66;"><strong>{{ SpecName("CSS Non-element Selectors", "", "") }}</strong></td>
- <td>{{ Spec2("CSS Non-element Selectors") }}</td>
- </tr>
- <tr>
- <td colspan="2"></td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/archive/devtools_api_social/index.html b/files/pt-pt/archive/devtools_api_social/index.html
deleted file mode 100644
index 68ab1e2393..0000000000
--- a/files/pt-pt/archive/devtools_api_social/index.html
+++ /dev/null
@@ -1,213 +0,0 @@
----
-title: Utilizar Firefox Devtools com a API Social
-slug: Archive/Devtools_API_Social
-translation_of: Archive/Social_API_Devtools
----
-<p>O Firefox tem um número de <a href="/pt-PT/docs/Tools">ferramentas de desenvolvimento</a> que podem ser utilizadas para ajudar com o desenvolvimento dos provedores de <a href="/pt-PT/docs/Social_API">API Social</a>. Contudo, até que o <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=839959" title="https://bugzilla.mozilla.org/show_bug.cgi?id=839959"><em>bug</em> 839959</a> termine, o processo não é tão simples como deveria ser. Enquanto isso, esta página descreve algumas soluções alternativas.</p>
-
-<h2 id="Ativar_Devtools_do_Chrome">Ativar Devtools do Chrome</h2>
-
-<p>Both of the techniques below require the chrome devtools to be manually enabled. To do this, open <code>about:config</code> in a tab, and after verifying that you will be careful, toggle the boolean value <code>devtools.chrome.enabled</code> to true.</p>
-
-<h2 id="Utilizar_o_Inspetor_de_DOM_e_Profiler">Utilizar o Inspetor de DOM e <em>Profiler</em></h2>
-
-<ul>
- <li>From the "Web Developer" menu, select "<a href="/en-US/docs/Tools/Scratchpad">Scratchpad</a>". In the newly created scratchpad window, select the <em>Environment</em> menu and select the <em>Browser</em> option.</li>
- <li>Paste the following code into the new scratchpad:</li>
-</ul>
-
-<pre class="brush: js">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - e.g., the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow;
-
-// The "notification" panel - this will show the most-recently-used panel
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<ul>
- <li>Review the top few lines of the script, and ensure exactly one of the "<code>let w = ...</code>" lines is uncommented, depending on which social element you wish to inspect.</li>
- <li>Press Ctrl+R (or Execute-&gt;Run) to run the scratchpad.</li>
- <li>A developer toolbox window should appear - the "<a href="/en-US/docs/Tools/Page_Inspector">Inspector</a>", "<a href="/en-US/docs/Tools/Style_Editor">Style Editor</a>", and "<a href="/en-US/docs/Tools/Profiler">Profiler</a>" tabs should all be showing the social element you enabled in the script. Executing the scratchpad a second time will hide the toolbox.</li>
- <li><strong>Note that the Debugger and Web Console tabs are not showing the social content.</strong> This is currently expected - see below for how to enable the debugger.</li>
-</ul>
-
-<h2 id="Utilizar_o_'Depurador'_com_os_elementos_sociais.">Utilizar o 'Depurador' com os elementos sociais.</h2>
-
-<ul>
- <li>From the "Web Developer" menu, select "Browser Debugger". Wait a few seconds for a new debugger window to open and initialize. You will probably be asked to confirm that a new debugging session should be started.</li>
- <li>In the "Filter Scripts" box, start typing the name of the script you wish to debug (for example, enter the name of your sidebar URL to debug the sidebar).</li>
- <li>In the script, add breakpoints etc. to the code in question, and start debugging!</li>
-</ul>
-
-<pre style="position: fixed; left: -1000px;">// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<pre style="position: fixed; left: -1000px;">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<pre style="position: fixed; left: -1000px;">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<pre style="position: fixed; left: -1000px;">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<pre style="position: fixed; left: -1000px;">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
-
-<pre style="position: fixed; left: -1000px;">// Uncomment one of the following lines. NOTE: You must ensure the element you
-// want to inspect has been created - eg, the sidebar must be visible, the flyouts
-// must have been opened once, etc.
-
-// The sidebar:
-let w = document.getElementById("social-sidebar-browser").contentWindow;
-
-// The "flyout" panel.
-// let w = document.getElementById("social-flyout-panel").firstChild.contentWindow
-
-// The "notification" panel - this will show the most-recently-used panel.
-// let w = document.getElementById("social-notification-panel").firstChild.contentWindow;
-
-
-if (!w) {
- alert("This window is yet to be created");
-} else {
- XPCOMUtils.defineLazyModuleGetter(this, "Toolbox",
- "resource:///modules/devtools/Toolbox.jsm");
- XPCOMUtils.defineLazyModuleGetter(this, "TargetFactory",
- "resource:///modules/devtools/Target.jsm");
- let target = TargetFactory.forWindow(w);
- let toolbox = gDevTools.getToolbox(target);
- toolbox ? toolbox.destroy() : gDevTools.showToolbox(target, undefined, "window");
-}</pre>
diff --git a/files/pt-pt/archive/firefox_os/index.html b/files/pt-pt/archive/firefox_os/index.html
deleted file mode 100644
index 591f6946fa..0000000000
--- a/files/pt-pt/archive/firefox_os/index.html
+++ /dev/null
@@ -1,11 +0,0 @@
----
-title: Firefox OS
-slug: Archive/Firefox_OS
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/B2G_OS
----
-<p class="summary">This page lists archived content for the Firefox OS product, and the open source project it is based on, B2G OS. For current B2G OS material, see the <a href="/en-US/docs/Mozilla/B2G_OS">B2G OS page</a>.</p>
-
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/pt-pt/archive/index.html b/files/pt-pt/archive/index.html
deleted file mode 100644
index ebdf47390c..0000000000
--- a/files/pt-pt/archive/index.html
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: Arquivo de conteúdo obsoleto
-slug: Archive
-tags:
- - Arquivo
- - Landing
-translation_of: Archive
----
-<p>{{QuickLinksWithSubpages("/pt-PT/docs/Archive", 2, 0, 1)}}</p>
-
-<p>Aqui na MDN, nós tentamos evitar a eliminação imediata de conteúdo que pode ser útil para pessoas que segmentam plataformas legadas, sistemas operativos, e navegadores. Talvez o seu público alvo sejam pessoas que estão a utilizar hardware mais antigo, por exemplo, e não podem atualizar para os navegadores mais recentes e melhores. Ou, por "motivos", a sua empresa precisa de utilizar um software muito antigo e você precisa de criar um conteúdo da Web que seja executado nesse software. Ou talvez esteja apenas curioso sobre o histórico de uma funcionaldiade ou API obsoleta, e como esta funcionou.</p>
-
-<p>Existem muitas razões pelas quais a documentação antiga pode ser útil. Então, nós estabelecemos esta área na qual podemos arquivar a documentação antiga. O material nesta zona de conteúdo 'Arquivado' <strong>não</strong> deve ser utilizado para criar novos sites da Web ou aplicações para os navegadores modernos. Está aqui apenas para referência histórica.</p>
-
-<div class="note">
-<p><strong>Nota para autores:</strong> nós precisamos de tentar manter as subpáginas aqui organizadas, em vez de serem todas colocadas numa pasta grande. Tente criar subárvores para categorias de material. Além disso, mova apenas as páginas que são <strong>extremamente</strong> obsoletas. Se alguém puder realisticamente precisar da informação num produto vivo, pode não ser apropriado movê-la aqui. Em geral, pode ser melhor discutir isso no canal <a href="https://chat.mozilla.org/#/room/#mdn:mozilla.org">MDN Web Docs</a> antes de mover conteúdo para aqui.</p>
-</div>
-
-<p>{{SubpagesWithSummaries}}</p>
-
-<div class="hidden">
-<h2 id="Subnav">Subnav</h2>
-
-<p>{{ListSubpages("/pt-PT/docs/Archive", 2, 0, 1)}}</p>
-</div>
diff --git a/files/pt-pt/archive/mdn/index.html b/files/pt-pt/archive/mdn/index.html
deleted file mode 100644
index 9e550840e3..0000000000
--- a/files/pt-pt/archive/mdn/index.html
+++ /dev/null
@@ -1,20 +0,0 @@
----
-title: MDN Archive
-slug: Archive/MDN
-tags:
- - Archive
- - MDN
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/MDN
----
-<p>{{MDNSidebar}}</p>
-
-<div class="blockIndicator obsolete">
-<p><strong>Obsolete</strong><br>
- This documentation is obsolete.</p>
-</div>
-
-<p>The documentation listed below is archived, obsolete material about MDN itself.</p>
-
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/pt-pt/archive/meta_docs/conteudo_mdn_em_webplatform.org/index.html b/files/pt-pt/archive/meta_docs/conteudo_mdn_em_webplatform.org/index.html
deleted file mode 100644
index 29379105c4..0000000000
--- a/files/pt-pt/archive/meta_docs/conteudo_mdn_em_webplatform.org/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Conteúdo MDN em WebPlatform.org
-slug: Archive/Meta_docs/Conteudo_MDN_em_WebPlatform.org
-translation_of: Archive/Meta_docs/MDN_content_on_WebPlatform.org
----
-<p><a href="http://www.webplatform.org/" title="http://www.webplatform.org/">Web Platform Docs</a> (WPD) é um site para a documentação e educação sobre os padrões da Web, mantido por <a href="http://www.w3.org/" title="http://www.w3.org/">W3C</a> e apoiado pela Mozilla, entre outros. Anyone is welcome to contribute content from MDN to WebPlatform.org, under the terms of MDN's <a href="http://creativecommons.org/licenses/by-sa/2.5/" title="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Share-Alike 2.5</a> (CC-BY-SA) license. Content that originates from MDN must be attributed to MDN, with a link to the source article. The Web Platform Docs site provides support for doing this in a systematic way.</p>
-
-<p>If you create an account on WPD and create a new page, you’ll see that there is an option in the "new page" form to indicate that the content you’re contributing came from MDN, and to provide the original URL on MDN. There is also a way on WPD to mark <em>sections</em> of articles as coming from MDN, for cases where they get merged into CC-BY content. (CC-BY is the default license for reuse on WPD.) The <a href="http://docs.webplatform.org/wiki/WPD:External_Attribution" title="http://docs.webplatform.org/wiki/WPD:External_Attribution">External Attribution</a> page on WebPlatform.org describes how to do all of that.</p>
-
-<h2 id="Questões">Questões?</h2>
-
-<dl>
- <dt>Sobre a MDN ou o seu conteúdo</dt>
- <dd>Publique-o no <a href="https://discourse.mozilla-community.org/c/mdn">fórum de discussão da MDN</a>, ou pergunte em <a href="irc://irc.mozilla.org/mdn" title="irc://irc.mozilla.org/devmo">#mdn on irc.mozilla.org</a>.</dd>
- <dt>Sobre os termos da licença da Mozilla</dt>
- <dd>Envie uma mensagem para <a href="http://mailto:licensing@mozilla.org" title="http://mailto:licensing@mozilla.org">licensing@mozilla.org</a>.</dd>
- <dt>Sobre os 'Documentos da Plataforma da Web', o seu conteúdo, a sua licença, ou os seus termos de utilização</dt>
- <dd>Publique-os na lista de endereços (discussão) <a href="http://lists.w3.org/Archives/Public/public-webplatform/" title="http://lists.w3.org/Archives/Public/public-webplatform/">public-webplatform</a>, mantida por W3C, pu pergunte em <a href="irc://irc.freenode.org/webplatform" title="irc://irc.freenode.org/webplatform">#webplatform on irc.freenode.org</a>.</dd>
-</dl>
diff --git a/files/pt-pt/archive/meta_docs/escrever_conteudo/index.html b/files/pt-pt/archive/meta_docs/escrever_conteudo/index.html
deleted file mode 100644
index e2d9caad57..0000000000
--- a/files/pt-pt/archive/meta_docs/escrever_conteudo/index.html
+++ /dev/null
@@ -1,58 +0,0 @@
----
-title: Escrever conteúdo
-slug: Archive/Meta_docs/Escrever_conteudo
-tags:
- - MDN
-translation_of: Archive/Meta_docs/Writing_content
----
-<p>There are always things that can be added or updated on MDN. Whether it's all-new documentation for a sparkling new API or a revision to an older API that's changed subtly, you'll find lots of opportunities to help.</p>
-
-<h2 id="Editar_uma_página_existente">Editar uma página existente</h2>
-
-<p>If you've found a page you'd like to revise, simply click the "edit" button at its top right corner. This will open the WYSIWYG editor for working on the page's contents. See the <a href="/en-US/docs/Project:MDN/Contributing/Editor_guide">MDN editor guide</a> for details on how to work with the editor, as well as how to work with the macro system we use to help automate the construction and formatting of content.</p>
-
-<p>There are lots of reasons you might edit an existing page:</p>
-
-<ul>
- <li>You've spotted an error or typo.</li>
- <li>You want to reword something to be easier to understand.</li>
- <li>The layout or formatting of the page is messy.</li>
- <li>The API being documented has changed and the documentation needs updating to match the changes.</li>
- <li>You'd like to add information about a behavior difference between multiple browsers for an API.</li>
- <li>You want to add or improve a code sample. See <a href="#Add_a_code_sample">Add a code sample</a> below for details.</li>
- <li>The article is a stub, or is simply missing important details.</li>
-</ul>
-
-<h2 id="Adicionar_uma_nova_página">Adicionar uma nova página</h2>
-
-<p>This is the big one! Adding a new page to MDN makes the Web love you and want to hug you. There are several obvious reasons to create a new page, including to document an API that's not yet documented or to add a new tutorial or guide on a topic.</p>
-
-<p>There are some ways to go about creating a new page on MDN, once you've <a href="/en-US/docs/Project:MDN/Contributing/Getting_started#Logging_into_MDN">logged in</a>:</p>
-
-<dl>
- <dt>Click a "missing page" link</dt>
- <dd>As you browse MDN, you'll occasionally find links to pages that don't exist yet. Often, as we create articles, we include links to pages that need to be created, even if they haven't been made yet. This helps us keep track of things that need to eventually be done, although sometimes it takes some time to get back to them. You should feel free to do so! Just click these links and you'll be taken straight into the editor for the new page.</dd>
- <dt>Create a subpage</dt>
- <dd>Near the top-right corner of each article is a <strong>"Advanced"</strong> drop-down menu. In that menu is a <strong>"New sub-page"</strong> option. Clicking that option opens the page editor for a new page whose parent page in the site hierarchy is the page on which you chose <strong>"New sub-page"</strong>. Simply fill out the title and slug and start writing the article's content.</dd>
- <dt>Create a clone</dt>
- <dd>You can also clone an existing page using the <strong>"Clone this page"</strong> option in the "This page" drop-down menu. Clicking this option makes a copy of the current page, whose parent page is the same as the current page, and opens the editor on that page, where you can set the page's title and slug, as well as edit the content of the page. This is typically a good way to add a new page to an existing reference area of the site, for example, because it gets you a sample layout for the content.</dd>
- <dt>Create a link to a page that doesn't exist, then click it</dt>
- <dd>This is a bit of a hybrid method. Since every page ought to be linked to from somewhere, you could start by creating a link to the new article by adding it to an existing page, then, after saving that page, you can click the link you just inserted to open an editor for the new article.</dd>
-</dl>
-
-<div class="note">
-<p><strong>Note:</strong> If you're not logged in, you will get a 404 error when trying to visit an article that doesn't exist, instead of being offered an editor for a new page.</p>
-</div>
-
-<h2 id="Encontrar_informação">Encontrar informação</h2>
-
-<p>There's a lot of information out there, and it can be tricky to hunt down the exact help you need. Here are some tips to get you started.</p>
-
-<dl>
- <dt><a href="https://wiki.mozilla.org/Modules">Module owner lists</a></dt>
- <dd>Mozilla projects work on a "module owner" basis; each major component has an owner or owners who are responsible for what goes on there. These owners are often your best source of information — or at least a great way to find the right person to talk to.</dd>
- <dt><a href="http://mxr.mozilla.org/">Mozilla source cross-reference</a></dt>
- <dd>MXR, the Mozilla cross-reference, lets you access all the source code for the Mozilla project (with the exception of some things, like much of Firefox OS, which is located on GitHub). The code and its comments are often a great resource for information.</dd>
- <dt><a href="http://wiki.mozilla.org/">Mozilla wiki</a></dt>
- <dd>The Mozilla wiki — often referred to as "wikimo" — is a repository of process and design notes, drafts, plans, and preliminary specifications. Despite being often a cluttered mess, it's a treasure trove of invaluable information.</dd>
-</dl>
diff --git a/files/pt-pt/archive/meta_docs/index.html b/files/pt-pt/archive/meta_docs/index.html
deleted file mode 100644
index 52de2c8447..0000000000
--- a/files/pt-pt/archive/meta_docs/index.html
+++ /dev/null
@@ -1,12 +0,0 @@
----
-title: MDN "meta-documentation" archive
-slug: Archive/Meta_docs
-tags:
- - Archive
- - MDN
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Meta_docs
----
-<p>Here you'll find archived "meta-documentation"; that is, documentation about how to write documentation on MDN. The articles here are obsolete and should no longer be referenced; we are retaining them here for reference while we migrate some content to new places, but very little of this is useful.</p>
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/pt-pt/archive/meta_docs/trello/index.html b/files/pt-pt/archive/meta_docs/trello/index.html
deleted file mode 100644
index ba96cd940a..0000000000
--- a/files/pt-pt/archive/meta_docs/trello/index.html
+++ /dev/null
@@ -1,101 +0,0 @@
----
-title: Trello
-slug: Archive/Meta_docs/Trello
-tags:
- - Guía
- - Metadados MDN
- - Processos
- - Trello
-translation_of: Archive/Meta_docs/Trello
----
-<p><span class="seoSummary">The MDN community uses a <a href="https://trello.com/b/HAhl54zz/mdn-content-team-status">Trello board</a> to organize and keep track of the things that need to be done to improve, update, and add to our content. This guide will help you learn what Trello is and how we use it.</span></p>
-
-<div class="note">
-<p>The Trello-based process has been replaced with a new process, using a platform called Taiga. Please see <a href="/en-US/docs/MDN/Contribute/Processes/Agile">MDN's agile process</a> to learn more.</p>
-</div>
-
-<p>Having a tool like this to maintain a public task list lets our entire community participate in planning, and helps everyone understand what we're working on. That way, both MDN staff writers and our amazing community of volunteer contributors can know what's going on at a glance. Our board is public, meaning that <a href="https://trello.com/b/HAhl54zz/mdn-content-team-status">everyone can see it</a>. If you already have an account on Trello, you can star (favorite/bookmark) the board so that you can get to it quickly whenever you connect to Trello.</p>
-
-<h2 id="Introdução_ao_Trello">Introdução ao Trello</h2>
-
-<p>The Trello software is a Web application (created by Trello, Inc.) which you can access using your Web browser or an <a href="https://trello.com/platforms">app on your mobile device</a> (Android, iOS, Kindle Fire, and Windows 8 are among the supported platforms). This lets you check or update the Trello board at your convenience. For more information, you can read their <a href="https://trello.com/about">"about" page</a>.</p>
-
-<h3 id="O_quadro_do_Trello">O quadro do Trello</h3>
-
-<p>A board is composed of <strong>lists</strong>, and each list is composed of <strong>cards</strong>. Every card represents an "action item", which is a task that needs to be accomplished. You can add comments, due dates, detailed lists of sub-tasks, etc. on every card. But most importantly, you can drag and drop a card from a list to another, which means the task has changed status; for instance, you might drag a card from the "Doing" column to the "Review needed" column, which indicates that you've finished the task and would like for someone to review your work.</p>
-
-<p><img alt="Screenshot of the MDN content Trello board." src="https://mdn.mozillademos.org/files/10351/mdn_board.JPG" style="border-style: solid; border-width: 1px; height: 460px; width: 968px;"></p>
-
-<h4 id="Listas">Listas</h4>
-
-<p>A list is a set of cards; while you can assign whatever meaning you wish to each column, the MDN team uses each column to represent the status of the task. The farther to the right the column is, the closer to complete the task is. This is similar to the <a href="http://hamberg.no/gtd/">método GTD</a> ou a <a href="https://pt.wikipedia.org/wiki/Kanban">metodologia Kanban</a>.</p>
-
-<p>We have the following primary lists (other lists may crop up temporarily from time to time):</p>
-
-<dl>
- <dt>A Aguardar</dt>
- <dd>The tasks here have been accepted as something that need to be done, but are not currently being actively worked on. When work begins on a task, it should advance to the next column.</dd>
- <dt>Ações</dt>
- <dd>The tasks in this column are actively being worked on.</dd>
- <dt>Precisa de Revisão</dt>
- <dd>The tasks in this list have been completed but the writer(s) would like someone to review the work to ensure that it's accurate and/or stylistically/grammatically.</dd>
- <dt>Sem atualizações nos últimos 14 dias</dt>
- <dd>Bugs in this list have been languishing with no new information for more than two weeks. These bugs are in danger of being moved back into the On Hold list unless their status is updated soon.</dd>
- <dt>Concluído em...</dt>
- <dd>We create lists of bugs created in specific months to help us track our rate of progress and to be able to provide achievement lists</dd>
-</dl>
-
-<p>Lists are simply are a collection of cards with a title, used to organize cards.</p>
-
-<h4 id="Fichas">Fichas</h4>
-
-<p>A card has much more content in it. As mentioned earlier, a card corresponds to a specific task or project. The card is described by its title which is displayed on the "front" of the card when you're looking at the board. Clicking on a card "flips" the card, showing you a panel with additional details. The detail view looks something like this:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/10353/screenshot-trello%20com%202015-04-02%2013-20-54.png" style="height: 603px; width: 510px;"></p>
-
-<p>A visualizaçao detalhada de uma ficha tem estas secções:</p>
-
-<dl>
- <dt>1. Membros</dt>
- <dd>The members of the board that are assigned to this task/card. These are the Trello users that are working on the task in some way. Here, we can see that four people are involved with this task.</dd>
- <dt>2. Etiquetas</dt>
- <dd>You can think of labels as themes or categories that can apply to more than one list. Here, we can see that this card is related to "Open Web Docs" (a category), "Q1 Delivery" (a planning tag), "Learning Area" (a tag indicating a<a href="/en-US/Learn"> section of MDN</a>), etc. These labels are used for organizational purposes, but are also helpful for filtering; see {{anch("Filters")}} below.</dd>
- <dt>3. Data limite</dt>
- <dd>You can add a due date for a card to help with planning. This date can also be used for sorting and filtering. Trello can also be configured to display a calendar showing items that are due in a given time period, but this feature is not currently enabled on the MDN Content Team Status board.</dd>
- <dt>4. Conteúdo</dt>
- <dd>In this example, the card has a checklist to detail the precise actions that are needed to complete the task. You might also find comments and attachments inside a card. So if someone wants to put a note for this card, one can add a comment and so on. Usually, checklists are used to break down a task in smaller units which do not need to be displayed for everyone on the board.</dd>
-</dl>
-
-<h4 id="Filtros">Filtros</h4>
-
-<p>If you look back at the <a href="https://mdn.mozillademos.org/files/10351/mdn_board.JPG">first screenshot</a>, you can see that there are a lot of cards. While working on some project, you might want to focus on specific ones (such as those associated with a particular technology or project). To make the board clearer and to find the right cards more efficiently, you can use filters.</p>
-
-<p>For example, if you only want to see the cards representing tasks or projects that are first quarter goals, you can turn on the corresponding filter on the label "Q1 Deliverables" and get this as a result:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/10355/screenshot-trello%20com%202015-04-02%2013-43-10.png" style="border-style: solid; border-width: 1px; height: 349px; width: 753px;"></p>
-
-<p>Experiment with filters! You can filter on members (to find work being done by specific people), due dates, and more.</p>
-
-<h2 id="Como_utilizar_o_Trello">Como utilizar o Trello</h2>
-
-<p>Every member of the writing staff is a member of this board. In addition, volunteers can easily get access too. See {{anch("Getting involved")}} to learn how.</p>
-
-<p>Once you have access, you can either create cards representing proposed or ongoing projects, and you can add yourself to a card to indicate that you intend to work on that task. You can then update cards with new details such as new comments, attachments, or changes to to-do lists on the cards.</p>
-
-<h2 id="Participar">Participar</h2>
-
-<p>We encourage you to join us and <a href="/pt-PT/docs/MDN/Contribute">contribute</a> to these tasks! Pick a task that is described on one of the cards and <a href="/pt-PT/docs/MDN/Intrudução">start working on it</a>. Once you are working on it, you'll need to be able to edit the corresponding card. For this you'll need to have a Trello account, which is free. Then you will need an administrator of the board to add you to the board. To contact an administrator, you can:</p>
-
-<ul>
- <li><a href="mailto:mdn-admins@mozilla.org?subject=MDN%20Content%20Trello%20board%20write%20access%20request&amp;body=I%20would%20like%20write%20access%20for%20the%20MDN%20Content%20Trello%20board.%0A%0AI%20plan%20to%20work%20on%3A%20%3Cadd%20details%20here%3E%0A%0AMy%20Trello%20username%20is%3A%20%3Cadd%20username%20here%3E" title="Email the MDN administration team">Email the MDN administration team</a></li>
- <li>Or just drop into the <a href="https://chat.mozilla.org/#/room/#mdn:mozilla.org">MDN Web Docs chat room</a> any time and politely ask if an admin is around. Typically there will be at least one around between around 5 AM and 5 PM Pacific time.</li>
-</ul>
-
-<h2 id="Consulte_também">Consulte também</h2>
-
-<ul>
- <li><a href="https://trello.com/b/p56Gwq46/mdndev-rocks">The MDN development team Trello board</a></li>
- <li><a href="https://trello.com/b/LDggrYSV/learning-area-glossary">The Learning Area Trello board</a></li>
- <li><a href="https://trello.com/guide">The Trello Guide</a></li>
- <li><a href="/en-US/docs/MDN/Community/Whats_happening">Following what is happening on MDN</a></li>
-</ul>
diff --git a/files/pt-pt/archive/mozilla/drag_and_drop/index.html b/files/pt-pt/archive/mozilla/drag_and_drop/index.html
deleted file mode 100644
index b963b08118..0000000000
--- a/files/pt-pt/archive/mozilla/drag_and_drop/index.html
+++ /dev/null
@@ -1,142 +0,0 @@
----
-title: Drag and Drop
-slug: Archive/Mozilla/Drag_and_drop
-tags:
- - NeedsTranslation
- - TopicStub
- - XUL
-translation_of: Archive/Mozilla/Drag_and_drop
----
-<p>{{ Next("Drag and Drop JavaScript Wrapper") }}</p>
-<p>{{ deprecated_header("gecko1.9.1") }}</p>
-<div class="warning">
- As of Gecko 1.9.1 (Firefox 3.5), these APIs are officially deprecated <a href="/En/DragDrop/Drag_and_Drop" title="en/DragDrop/Drag and Drop">the newer, simpler, portable API</a> should be used in their place.</div>
-<p>This section describes how to implement objects that can be dragged around and dropped onto other objects.</p>
-<h3 id="The_Drag_and_Drop_Interface" name="The_Drag_and_Drop_Interface">The Drag and Drop Interface</h3>
-<p>Many user interfaces allow one to drag particular objects around within the interface. For example, dragging files to other directories, or dragging an icon to another window to open the document it refers to. Mozilla and <a href="/en/XUL" title="en/XUL">XUL</a> provide a number of events that can handle when the user attempts to drag objects around.</p>
-<p>A user can start dragging by holding down the mouse button and moving the mouse. The drag stops when the user releases the mouse. Event handlers are called when the user starts and ends dragging, and at various points in-between.</p>
-<p>Mozilla implements dragging by using a drag session. When a user requests to drag something that can be dragged, a drag session should be started. The drag session handles updating the mouse cursor and where the object should be dropped. If something cannot be dragged, it should not start a drag session. Because the user generally has only one mouse, only one drag session is in use at a time.</p>
-<p>Note that drag sessions can be created from within Mozilla itself or from other applications. Mozilla will translate the data being dragged as needed.</p>
-<p>The list below describes the event handlers that can be called, which may be placed on any element. You only need to put values for the handlers where you need to do something when the event occurs.</p>
-<dl>
- <dt>
- ondrag {{ Fx_minversion_inline(3) }}</dt>
- <dd>
- Called periodically throughout the drag and drop operation.</dd>
- <dt>
- ondraggesture </dt>
- <dd>
- Called when the user starts dragging the element, which normally happens when the user holds down the mouse button and moves the mouse. The script in this handler should set up a drag session.</dd>
- <dt>
- ondragstart {{ Fx_minversion_inline(3) }} </dt>
- <dd>
- An alias for <code>ondraggesture</code>; this is the HTML 5 spec name for the event and may be used in HTML or XUL; however, for backward compatibility with older versions of Firefox, you may wish to continue using <code>ondraggesture</code> in XUL.</dd>
- <dt>
- ondragover </dt>
- <dd>
- This event handler is called for an element when something is being dragged over top of it. If the object can be dropped on the element, the drag session should be notified.</dd>
- <dt>
- ondragenter </dt>
- <dd>
- Called for an element when the mouse pointer first moves over the element while something is being dragged. This might be used to change the appearance of the element to indicate to the user that the object can be dropped on it.</dd>
- <dt>
- ondragexit </dt>
- <dd>
- Called for an element when the mouse pointer moves out of an element while something is being dragged. The is also called after a drop is complete so that an element has a chance to remove any highlighting or other indication.</dd>
- <dt>
- ondragdrop </dt>
- <dd>
- This event handler is called for an element when something is dropped on the element. At this point, the user has already released the mouse button. The element can simply ignore the event or can handle it some way, such as pasting the dragged object into itself.</dd>
- <dt>
- ondragend {{ Fx_minversion_inline(3) }} </dt>
- <dd>
- Called when the drag operation is finished.</dd>
-</dl>
-<p>There are two ways that drag and drop events can be handled. This first involves using the drag and drop <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> interfaces directly. The second is to use a <a href="/en/Drag_and_Drop_JavaScript_Wrapper" title="en/Drag_and_Drop_JavaScript_Wrapper">JavaScript wrapper</a> object that handles some of this for you. The code for this wrapper can be found in a file named {{ Source("toolkit/content/nsDragAndDrop.js nsDragAndDrop.js") }} which is contained in the widget-toolkit (or global) package.</p>
-<h3 id="XPCOM_Drag_and_Drop_interfaces" name="XPCOM_Drag_and_Drop_interfaces">XPCOM Drag and Drop interfaces</h3>
-<p>Two interfaces are used to support drag and drop. The first is a drag service, <a href="/en/XPCOM_Interface_Reference/nsIDragService" title="en/nsIDragService">nsIDragService</a> and the second is the drag session, <a href="/en/XPCOM_Interface_Reference/nsIDragSession" title="en/nsIDragSession">nsIDragSession</a>.</p>
-<p>The <a href="/en/XPCOM_Interface_Reference/nsIDragService" title="en/nsIDragService">nsIDragService</a> is responsible for creating drag sessions when a drag starts, and removing the drag session when the drag is complete. The function <code>invokeDragSession</code> should be called to start a drag inside an <code>ondraggesture</code> event handler. Once this function is called, a drag has started.</p>
-<p>The function invokeDragSession takes four parameters, as described below:</p>
-<pre class="eval">invokeDragSession(element,transferableArray,region,actions)
-</pre>
-<dl>
- <dt>
- element </dt>
- <dd>
- A reference to the element that is being dragged. This can be retrieved by getting the property <code>event.target</code> during the event handler.</dd>
- <dt>
- transferableArray </dt>
- <dd>
- An array of <a href="/en/NsITransferable" title="en/NsITransferable">nsITransferable</a> objects, one for each item being dragged. An array is used because you might want to drag several objects at once, such as a set of files.</dd>
- <dt>
- region </dt>
- <dd>
- A region used for feedback indication. This should usually be set to null.</dd>
- <dt>
- actions </dt>
- <dd>
- The actions that the drag uses. This should be set to one of the following constants, or several added together. The action can be changed during the drag depending on what is being dragged over.</dd>
-</dl>
-<dl>
- <dt>
- nsIDragService.DRAGDROP_ACTION_NONE </dt>
- <dd>
- <dl>
- <dt>
- Used to indicate that no drag is valid.</dt>
- <dt>
- nsIDragService.DRAGDROP_ACTION_COPY </dt>
- <dd>
- The item being dragged should be copied to its dropped location.</dd>
- <dt>
- nsIDragService.DRAGDROP_ACTION_MOVE </dt>
- <dd>
- The item being dragged should be moved to its dropped location.</dd>
- <dt>
- nsIDragService.DRAGDROP_ACTION_LINK </dt>
- <dd>
- A link (or shortcut or alias) to the item being dragged should be created in the dropped location.</dd>
- </dl>
- </dd>
-</dl>
-<p>The interface {{ interface("nsIDragService") }} also provides the function <code>getCurrentSession</code> which can be called from within the drag event handlers to get and modify the state of the drag. The function returns an object that implements {{ interface("nsIDragSession") }}.</p>
-<p>The interface <a href="/en/XPCOM_Interface_Reference/nsIDragSession" title="en/nsIDragSession">nsIDragSession</a> is used to get and set properties of the drag that is currently occuring. The following properties and methods are available:</p>
-<dl>
- <dt>
- canDrop </dt>
- <dd>
- Set this property to <code>true</code> if the element the mouse is currently over can accept the object currently being dragged to be dropped on it. Set the value to <code>false</code> if it doesn't make sense to drop the object on it. This should be changed in the <code>ondragover</code> and <code>ondragenter</code> event handlers.</dd>
- <dt>
- dragAction </dt>
- <dd>
- Set to the current action to be performed, which should be one or more of the constants described earlier. This can be used to provide extra feedback to the user.</dd>
- <dt>
- numDropItems </dt>
- <dd>
- The number of items being dragged. For example, this will be set to 5 if five bookmarks are being dragged.</dd>
- <dt>
- getData(transfer,index) </dt>
- <dd>
- Get the data being dragged. The first argument should be an <a href="/en/NsITransferable" title="en/NsITransferable">nsITransferable</a> object to hold the data. The second argument, <code>index</code>, should be the index of the item to return.</dd>
- <dt>
- sourceDocument </dt>
- <dd>
- The document where the drag started.</dd>
- <dt>
- sourceNode </dt>
- <dd>
- The <a href="/en/DOM" title="en/DOM">DOM</a> node where the drag started.</dd>
- <dt>
- isDataFlavorSupported(flavor) </dt>
- <dd>
- Returns <code>true</code> if the data being dragged contains data of the specified flavor.</dd>
-</dl>
-<p>{{ Next("Drag and Drop JavaScript Wrapper") }}</p>
-<div class="originaldocinfo">
- <h2 id="Original_Document_Information" name="Original_Document_Information">Original Document Information</h2>
- <ul>
- <li>Author(s): <a class="link-mailto" href="mailto:enndeakin@sympatico.ca">Neil Deakin</a></li>
- <li>Original Document:</li>
- <li>Copyright Information: Copyright (C) <a class="link-mailto" href="mailto:enndeakin@sympatico.ca">Neil Deakin</a></li>
- </ul>
-</div>
diff --git a/files/pt-pt/archive/mozilla/index.html b/files/pt-pt/archive/mozilla/index.html
deleted file mode 100644
index 0acec76e6d..0000000000
--- a/files/pt-pt/archive/mozilla/index.html
+++ /dev/null
@@ -1,10 +0,0 @@
----
-title: Archived Mozilla and build documentation
-slug: Archive/Mozilla
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Mozilla
----
-<p>These articles are archived, obsolete documents about Mozilla, Gecko, and the process of building Mozilla projects.</p>
-<p>{{SubpagesWithSummaries}}</p>
diff --git a/files/pt-pt/archive/mozilla/uris_and_urls/index.html b/files/pt-pt/archive/mozilla/uris_and_urls/index.html
deleted file mode 100644
index f6a2802999..0000000000
--- a/files/pt-pt/archive/mozilla/uris_and_urls/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
----
-title: URIs and URLs
-slug: Archive/Mozilla/URIs_and_URLs
-tags:
- - Guía
- - Mozilla
- - Necko
- - NeedsUpdate
-translation_of: Archive/Mozilla/URIs_and_URLs
----
-<div class="warning warningHeader">
-<p><strong>Aviso:</strong> <strong>O conteúdo deste artigo pode estar desatualizado. </strong>Ultima atualização do artigo original foi em 2002.</p>
-</div>
-
-<h3 id="Overview" name="Overview">Resumo</h3>
-
-<p>A gestão da rede e dos recursos recuperáveis localmente é uma parte central da Necko. Os recursos são identificados pelo "Uniform Resource Identifier" do URI (Extraído do RFC 2396):</p>
-
-<blockquote>
-<dl>
- <dt>Uniform</dt>
- <dd>Uniformity provides several benefits: it allows different types of resource identifiers to be used in the same context, even when the mechanisms used to access those resources may differ; it allows uniform semantic interpretation of common syntactic conventions across different types of resource identifiers; it allows introduction of new types of resource identifiers without interfering with the way that existing identifiers are used; and, it allows the identifiers to be reused in many different contexts, thus permitting new applications or protocols to leverage a pre-existing, large, and widely-used set of resource identifiers.</dd>
- <dt>Resource</dt>
- <dd>A resource can be anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources. The resource is the conceptual mapping to an entity or set of entities, not necessarily the entity which corresponds to that mapping at any particular instance in time. Thus, a resource can remain constant even when its content---the entities to which it currently corresponds---changes over time, provided that the conceptual mapping is not changed in the process.</dd>
- <dt>Identifier</dt>
- <dd>An identifier is an object that can act as a reference to something that has identity. In the case of URI, the object is a sequence of characters with a restricted syntax.</dd>
-</dl>
-A URI can be further classified as a locator, a name, or both. The term "Uniform Resource Locator" (URL) refers to the subset of URI that identify resources via a representation of their primary access mechanism (e.g., their network "location"), rather than identifying the resource by name or by some other attribute(s) of that resource. ... The URI scheme defines the namespace of the URI, and thus may further restrict the syntax and semantics of identifiers using that scheme. Although many URL schemes are named after protocols, this does not imply that the only way to access the URL's resource is via the named protocol. Gateways, proxies, caches, and name resolution services might be used to access some resources, independent of the protocol of their origin, and the resolution of some URL may require the use of more than one protocol (e.g., both DNS and HTTP are typically used to access an "http" URL's resource when it can't be found in a local cache).</blockquote>
-
-<p>Em Necko, cada esquema URI é representado por um manipulador de protocolo. Por vezes, um manipulador de protocolo representa mais do que um esquema. O manipulador de protocolos fornece informações e métodos específicos do esquema para criar URIs dos esquemas que apoia. Um dos principais objetivos da Necko é fornecer um suporte de protocolo "plug able". Isto significa que deve ser possível adicionar novos protocolos ao Necko apenas implementando o <a href="https://dxr.mozilla.org/mozilla-central/source/netwerk/base/public/nsIProtocolHandler.idl">nsIProtocolHandler</a> e o <a href="https://dxr.mozilla.org/mozilla-central/source/netwerk/base/public/nsIChannel.idl">nsIChannel</a>. Também pode ser necessário implementar um novo urlparser para um novo protocolo, mas isso pode não ser necessário porque Necko já fornece implementações URI que podem lidar com uma série de esquemas, implementando o urlparser genérico definido no <a href="http://tools.ietf.org/html/rfc2396">RFC 2396</a>.</p>
-
-<h3 id="nsIURI_and_nsIURL" name="nsIURI_and_nsIURL">nsIURI e nsIURL</h3>
-
-<p>Num sentido estrito, Necko conhece apenas URLs, URIs pela definição acima são demasiado genéricos para serem devidamente representados dentro de uma biblioteca.</p>
-
-<p>Existem, contudo, duas interfaces que se relacionam vagamente com a distinção entre URI e URL de acordo com a definição acima: nsIURI e nsIURL.</p>
-
-<p>nsIURI representa o acesso a uma forma muito simples e muito genérica de um URL. Falando simplesmente do seu esquema e não esquema, separado por dois pontos, como "about". nsIURL herda de nsIURI e representa o acesso a URLs comuns com esquemas como "http", "ftp", ...</p>
-
-<h4 id="nsSimpleURI" name="nsSimpleURI">nsSimpleURI</h4>
-
-<p>Uma implementação do <a href="https://dxr.mozilla.org/mozilla-central/source/netwerk/base/src/nsSimpleURI.h">nsSimpleURI </a>é o nsSimpleURI que é a base para protocolos como "sobre". nsSimpleURI contém setters e getters para o URI e os componentes de um URI: esquema e caminho (não esquema). Não existem suportes pré-escritos para URIs simples, devido à sua estrutura simples.</p>
-
-<h4 id="nsStandardURL" name="nsStandardURL">nsStandardURL</h4>
-
-<p>A implementação mais importante do nsIURL é o nsStandardURL, que é a base para protocolos como o http, ftp, ...</p>
-
-<p>Estes esquemas apoiam um sistema hierárquico de nomenclatura, onde a hierarquia do nome é denotada por um "/" delimitador que separa os componentes no caminho. nsStandardURL também contém as facilidades para analisar estes tipos de URLs, para quebrar a especificação do URL nos segmentos mais básicos.</p>
-
-<p>A especificação consiste no <em>path</em> e <em>prepath</em>. O <em>prepath</em> consiste dum esquema e autoridade. A autoridade consiste dum <em>prehost</em>, <em>host</em> e <em>port</em>. O <em>prehost</em> consiste num nome de utilizador e senha. O <em>path</em> consiste em diretório, nome de ficheiro, parametro, query e ref. O nome do ficheiro consiste em <em>filebasename</em> e <em>fileextension</em>.</p>
-
-<p>Se a especificação estiver completamente decomposta, consiste em: esquema, nome de utilizador, palavra-passe, anfitrião (<em>host</em>), <em>port</em>, diretório, nome base de ficheiro, extensão de ficheiro, param, consulta e ref. Juntos, estes segmentos formam a especificação do URL com a seguinte sintaxe:</p>
-
-<p><code><a class="external" rel="freelink">scheme://username:password@host</a>:port/directory/filebasename.fileextension;param?query#ref</code></p>
-
-<p>Por razões de desempenho, a especificação completa é armazenada de forma fugida no objecto nsStandardURL com pointers (position e length) para cada segmento básico e para os segmentos mais globais como caminho e pré-hospedeiro, por exemplo.</p>
-
-<p>A Necko fornece urlparsers pré-escritos para esquemas baseados em sistemas de nomenclatura hierárquica.</p>
-
-<h3 id="Escaping" name="Escaping">Escapar</h3>
-
-<p>Para processar um URL seguramente é necessário às vezes "escapar" alguns caracteres, para os esconder do processador. Um carácter <em>escaped </em>é codificado como um carácter triplo, que consiste do carácter de percentagem "%" seguido por dois dígitos hexadecimais a representar um byte de código. Por exemplo, "%20" é a codificação escapada do carácter de espaço no US-ASCII.</p>
-
-<p>Para citar o <a class="external" href="http://tools.ietf.org/html/rfc2396" title="http://tools.ietf.org/html/rfc2396">RFC 2396</a>:</p>
-
-<blockquote>A URI is always in an "escaped" form, since escaping or unescaping a completed URI might change its semantics. Normally, the only time escape encodings can safely be made is when the URI is being created from its component parts; each component may have its own set of characters that are reserved, so only the mechanism responsible for generating or interpreting that component can determine whether or not escaping a character will change its semantics. Likewise, a URI must be separated into its components before the escaped characters within those components can be safely decoded.</blockquote>
-
-<p>Isto significa que segmentos de URLs são escapados de forma diferente. Isto é feito através do NS_EscapeURL que faz parte do xpcom, mas começou como parte do Necko. A informação de como escapar cada segmento é guardado numa matriz.</p>
-
-<p>Um string não deve ser escapado mais que uma vez. O Necko não escapa um caráter que já foi escapado, a não ser que é forcado por uma máscara especial que pode ser usado se se sabe que um string não está escapado.</p>
-
-<h3 id="Parsing_URLs" name="Parsing_URLs">Processar URLs</h3>
-
-<p><a class="external" href="http://tools.ietf.org/html/rfc2396" title="http://tools.ietf.org/html/rfc2396">RFC 2396</a> define um processador de URL que pode lidar com a sintaxe que é comum à maioria de esquemas de URL que existem atualmente.</p>
-
-<p>Por vezes, é necessária uma análise específica do esquema. Também para ser um pouco tolerante a erros de sintaxe, o analisador tem de saber mais sobre a sintaxe específica dos URLs para esse esquema. Para se manter quase genérico Necko contém três analisadores para as principais classes de URLs padrão. Qual deles tem de ser utilizado é definido pela implementação do nsIProtocolhandler para o esquema em questão.</p>
-
-<p>As três classes principais são:</p>
-
-<dl>
- <dt>Authority</dt>
- <dd>Os URLs têm um segmento de autoridade, como "http".</dd>
- <dt>NoAuthority</dt>
- <dd>Estes URLs não têm um segmento de autoridade, ou têm um degenerado, como o esquema "file". Este <em>parser</em> também pode identificar <em>drives </em>se possível dependendo na plataforma.</dd>
- <dt>Standard</dt>
- <dd>Não se sabe se existe um segmento de autoridade, menos correção de sintaxe pode ser aplicado neste caso.</dd>
-</dl>
-
-<h4 id="Noteable_Differences" name="Noteable_Differences">Diferenças Notáveis</h4>
-
-<ol>
- <li>Necko não apoia certos formatos de URLs relativos que estão depreciados, baseado nesta parte do <a class="external" href="http://tools.ietf.org/html/rfc2396" title="http://tools.ietf.org/html/rfc2396">RFC 2396</a>:<br>
-
- <blockquote>If the scheme component is defined, indicating that the reference starts with a scheme name, then the reference is interpreted as an absolute URI and we are done. Otherwise, the reference URI's scheme is inherited from the base URI's scheme component. Due to a loophole in prior specifications (<a class="external" href="http://www.ietf.org/rfc/rfc1630.txt">RFC1630</a>), some parsers allow the scheme name to be present in a relative URI if it is the same as the base URI scheme. Unfortunately, this can conflict with the correct parsing of non-hierarchical URI. For backwards compatibility, an implementation may work around such references by removing the scheme if it matches that of the base URI and the scheme is known to always use the "hier_part" syntax. The parser can then continue with the steps below for the remainder of the reference components. Validating parsers should mark such a misformed relative reference as an error.</blockquote>
-
- <p>Foi decidido não ter compatibilidade com formatos depreciados, portanto URLs como "<span class="nowiki">http:page.html</span>" ou "<span class="nowiki">http:/directory/page.html</span>" são interpretados como URLs absolutos e são corrigidos pelo processador.</p>
- </li>
- <li>A gestão dos segmentos de consulta é diferente dos exemplos dados no <a href="http://tools.ietf.org/html/rfc2396">RFC 2396</a>:<br>
-
- <blockquote>Within an object with a well-defined base URI of <span class="nowiki">http://a/b/c/d;p?q</span> the relative URI would be resolved as follows: ... <span class="nowiki">?y = http://a/b/c/?y</span> ...</blockquote>
- Em vez disso <code>?y = http://a/b/c/d;p?y</code> foi implementado como sugerido pelo <a href="http://tools.ietf.org/html/rfc1808">RFC 1808</a> mais antigo. Esta decisão é baseada num correio eletrónico de Roy T. Fielding, um dos autores do <a href="http://tools.ietf.org/html/rfc2396">RFC 2396</a>, afirmando que o exemplo dado está errado. Detalhes podem ser encontrados no <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=90439">bug 90439</a>.</li>
- <li>Atualmente, os url-objects de Necko apenas apoiam as autoridades de alojamento ou as URLs sem autoridades. Autoridades baseadas em registos como definido no <a class="external" href="http://tools.ietf.org/html/rfc2396" title="http://tools.ietf.org/html/rfc2396">RFC 2396</a><br>
-
- <blockquote>Many URI schemes include a top hierarchical element for a naming authority, such that the namespace defined by the remainder of the URI is governed by that authority. This authority component is typically defined by an Internet-based server or a scheme-specific registry of naming authorities. ... The structure of a registry-based naming authority is specific to the URI scheme, but constrained to the allowed characters for an authority component.</blockquote>
-
- <p>não são apoiados.</p>
- </li>
-</ol>
-
-<h3 id="References" name="References">Referencias</h3>
-
-<p> A referência principal para URIs, URLs e URL-parsing é <a class="external" href="http://tools.ietf.org/html/rfc2396" title="http://tools.ietf.org/html/rfc2396">RFC 2396</a>.</p>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information" name="Original_Document_Information">Informação de Documento Original</h2>
-
-<ul>
- <li>Autor(s): <a class="link-mailto" href="mailto:andreas.otte@debitel.net">Andreas Otte</a></li>
- <li>Ultima Data de Atualização: January 2, 2002</li>
- <li>Informação Copyright: Porções deste conteudo são © 1998–2007 por contribuintes individuais da mozilla.org; conteudo disponivel sob a licensa Creative Commons | <a class="external" href="http://www.mozilla.org/foundation/licensing/website-content.html">Detalhes</a>.</li>
-</ul>
-</div>
diff --git a/files/pt-pt/archive/mozilla/xbl/index.html b/files/pt-pt/archive/mozilla/xbl/index.html
deleted file mode 100644
index f3e30b0280..0000000000
--- a/files/pt-pt/archive/mozilla/xbl/index.html
+++ /dev/null
@@ -1,36 +0,0 @@
----
-title: XBL
-slug: Archive/Mozilla/XBL
-tags:
- - XBL
-translation_of: Archive/Mozilla/XBL
----
-<p><strong>XML Binding Language</strong> (<strong>XBL</strong>, as vezes tambem chamado Extensible Bindings Language) é uma linguagem para descrever Bindings que podem ser conectadas a elementos em outros documentos. O elemento ao que o Binding é conectado, chamado de <em>elemento ligado</em>, adquire o comportamento novo especificado pela ligação.</p>
-
-<p>Ligações podem conter manipuladores de eventos que estão registrados no elemento ligado, uma implementação de novos métodos e propriedades que se tornam acessíveis através do elemento ligado, e conteúdo anônimo que é inserido abaixo do elemento ligado.</p>
-
-<p>Muitos <a href="/pt/XUL" title="pt/XUL">XUL</a> widgets são no mínimo parcialmente implantados usando XBL. Você pode desenvolver seus próprios widgets reutilizáveis através de <a href="/pt/XUL" title="pt/XUL">XUL</a>, <a href="/pt/HTML" title="pt/HTML">HTML</a>, <a href="/pt/SVG" title="pt/SVG">SVG</a>, e outros primitivos usando XBL.</p>
-
-<h3 id="Especifica.C3.A7.C3.B5es" name="Especifica.C3.A7.C3.B5es">Especificações</h3>
-
-<p>XBL 1.0 é especificado na <a href="/en/XBL/XBL_1.0_Reference">XBL 1.0 Reference</a>. Infelizmente a implementação atual no Mozilla é diferente das especificações, e não existe documentação conhecida descrevendo as diferenças. Existe a esperança que a Referência seja atualizada para descrever estas diferenças.</p>
-
-<p>XBL 1.0 é uma tecnologia específica do Mozilla, e não um padrão <a class="external" href="http://w3.org/">W3C</a>. Entretanto, no mínimo dois padrões estão sendo desenvolvidos: sXBL and XBL 2.0.but there are</p>
-
-<ul>
- <li>W3C <a class="external" href="http://w3.org/TR/sXBL/">sXBL</a> (atualmente um esboço funcional) representa <em>SVG's XML Binding Language</em>. Supoem-se que inclui um subconjunto de características do XBL 2.0 necessários para <a href="/pt/SVG" title="pt/SVG">SVG</a>. Na sua forma é similar ao XBL do Mozilla, mas existem algumas diferenças sutís (e não tão sutís). Os nomes dos elementos por exemplo são diferentes. sXBL também não possui algumas funções do XBL, como bindings herdados e métodos propriedades definidos em elementos ligados.</li>
- <li><a class="external" href="http://www.mozilla.org/projects/xbl/xbl2.html">XBL 2.0</a> (<a class="external" href="http://w3.org/TR/XBL/">W3C working draft</a>)está sendo desenvolvido para resolver problemas encontrados no XBL 1.0 e permitir implementações numa gama maior de Web browsers.</li>
-</ul>
-
-<p>Algumas diferenças entre sXBL e XBL2 estão listados em <a class="external" href="http://annevankesteren.nl/2005/11/xbl">um artigo de Anne van Kesteren</a>.</p>
-
-<h3 id="Veja_tamb.C3.A9m" name="Veja_tamb.C3.A9m">Veja também</h3>
-
-<ul>
- <li><a href="/pt/XUL_Tutorial/Introdução_ao_XBL" title="pt/XUL_Tutorial/Introdução_ao_XBL">Introducão ao XBL</a> do <a href="/pt/XUL_Tutorial" title="pt/XUL_Tutorial">XUL Tutorial</a>.</li>
- <li><a class="external" href="http://mb.eschew.org/15.php">XBL chapter</a> de <a class="external" href="http://mb.eschew.org/">"Rapid Application Development with Mozilla"</a></li>
-</ul>
-
-<ul>
- <li><a href="/Special:Tags?tag=XBL&amp;language=pt" title="Special:Tags?tag=XBL&amp;language=pt">Mais recursos XBL ...</a></li>
-</ul>
diff --git a/files/pt-pt/archive/mozilla/xul/comunidade/index.html b/files/pt-pt/archive/mozilla/xul/comunidade/index.html
deleted file mode 100644
index a2712cc2a1..0000000000
--- a/files/pt-pt/archive/mozilla/xul/comunidade/index.html
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: Comunidade
-slug: Archive/Mozilla/XUL/Comunidade
----
-<p>
-</p>
diff --git a/files/pt-pt/archive/mozilla/xul/image/index.html b/files/pt-pt/archive/mozilla/xul/image/index.html
deleted file mode 100644
index 5316e18ebd..0000000000
--- a/files/pt-pt/archive/mozilla/xul/image/index.html
+++ /dev/null
@@ -1,154 +0,0 @@
----
-title: image
-slug: Archive/Mozilla/XUL/image
-tags:
- - Elementos XUL
- - Referência XUL
-translation_of: Archive/Mozilla/XUL/image
----
-<div class="noinclude"><span class="breadcrumbs XULRef_breadcrumbs">
- « <a href="/pt-PT/docs/XUL_Reference">XUL Reference home</a> [
- <a href="#Examples">Examples</a> |
- <a href="#Attributes">Attributes</a> |
- <a href="#Properties">Properties</a> |
- <a href="#Methods">Methods</a> |
- <a href="#Related">Related</a> ]
-</span></div>
-
-<h3 id="Resumo">Resumo</h3>
-
-<p>Um elemento que exibe uma imagem, bem como o elemento <a href="/En/HTML/Element/Img" title="https://developer.mozilla.org/en/HTML/element/img"><code>img</code></a> de HTML. O atributo <code id="a-src"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/src">src</a></code> pode ser utilziado para especificar o URL da imagem.</p>
-
-<p>Está disponível mais informação no <a href="/pt-PT/docs/Mozilla/Tech/XUL/Tutorial/Adicionar_Etiquetas_e_Imagens" title="en/XUL_Tutorial/Adding_Labels_and_Images">Tutorial de XUL</a>.</p>
-
-<div class="noinclude">
-<div class="note">
-<p><strong>Nota:</strong> Prior to <span title="(Firefox 8.0 / Thunderbird 8.0 / SeaMonkey 2.5)">Gecko 8.0</span>, images did not shrink down with the same ratio in both directions when specifying maximum sizes using <code>maxheight</code> or <code>maxwidth</code>. The new behavior aligns more with the HTML <a href="/pt-PT/docs/Web/HTML/Element/img" title="The documentation about this has not yet been written; please consider contributing!"><code>&lt;img&gt;</code></a> element and shrinks both the width and height down proportionally.</p>
-</div>
-</div>
-
-<dl>
- <dt>Atributos</dt>
- <dd><a href="#a-onerror">onerror</a>, <a href="#a-image.onload">onload</a>, <a href="#a-src">src</a>, <a href="#a-validate">validate</a></dd>
-</dl>
-
-<dl>
- <dt>Propriedades</dt>
- <dd><a href="#p-accessibleType">accessibleType</a>, <a href="#p-src">src</a></dd>
-</dl>
-
-<dl>
- <dt>Classes de estilo</dt>
- <dd><a href="#s-alert-icon">alert-icon</a>, <a href="#s-error-icon">error-icon</a>, <a href="#s-message-icon">message-icon</a>, <a href="#s-question-icon">question-icon</a></dd>
-</dl>
-
-<h3 id="Exemplos">Exemplos</h3>
-
-<div class="float-right"><img alt="Image:Firefoxlogo2.png" class="internal" src="/@api/deki/files/220/=Firefoxlogo2.png"></div>
-
-<pre class="eval">&lt;image src='Firefoxlogo.png' width='135' height='130'/&gt;
-</pre>
-
-<h3 id="Atributos">Atributos</h3>
-
-<p> </p><div id="a-onerror">
-
-
-<dl>
- <dt><code id="a-onerror"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/onerror">onerror</a></code></dt>
- <dd>Type: <em>script code</em></dd>
- <dd>This event is sent to an <code><a href="/en-US/docs/Mozilla/Tech/XUL/image" title="image">image</a></code> element when an error occurs loading the image.</dd>
-</dl>
-</div> <div id="a-image.onload">
-
-
-<dl>
- <dt><code id="a-image.onload"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/image.onload">image.onload</a></code></dt>
- <dd>Type: <em>script code</em></dd>
- <dd>This event handler will be called on the <code><a href="/en-US/docs/Mozilla/Tech/XUL/image" title="image">image</a></code> element when the image has finished loading. This applies whether the image is applied via the <code id="a-src"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/src">src</a></code> attribute or the <code>list-style-image</code> style property. If you change the image, the event will fire again when the new image loads. This event will not bubble up the element tree.</dd>
-</dl>
-</div> <div id="a-src">
-
-<dl>
- <dt>
- <code id="a-src"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/src">src</a></code></dt>
- <dd>
- Type: <em>URI</em></dd>
- <dd>
- The URI of the content to appear in the element.</dd>
-</dl>
-
-
-</div> <div id="a-validate">
-
-
-<dl>
- <dt><code id="a-validate"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/validate">validate</a></code></dt>
- <dd>Type: <em>one of the values below</em></dd>
- <dd>This attribute indicates whether to load the image from the cache or not. This would be useful if the images are stored remotely or you plan on swapping the image frequently. The following values are accepted, or leave out the attribute entirely for default handling:</dd>
- <dd>
- <dl>
- <dt><code>always</code></dt>
- <dd>The image is always checked to see whether it should be reloaded.</dd>
- <dt><code>never</code></dt>
- <dd>The image will be loaded from the cache if possible.</dd>
- </dl>
- </dd>
-</dl>
-</div>
-
-<h3 id="Propriedades">Propriedades</h3>
-
-<div id="p-accessibleType">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/accessibleType">accessibleType</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- A value indicating the type of accessibility object for the element.</dd>
-</dl>
-</div> <div id="p-src">
-
-<dl>
- <dt><code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/src">src</a></span></code></dt>
- <dd>Type: <em>URL</em></dd>
- <dd>Gets and sets the value of the <code id="a-src"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/src">src</a></code> attribute.</dd>
-</dl></div> <table style="border: 1px solid rgb(204, 204, 204); margin: 0px 0px 10px 10px; padding: 0px 10px; background: rgb(238, 238, 238) none repeat scroll 0% 50%;"> <tbody> <tr> <td> <p><strong>Inherited Properties</strong><br> <small> <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/align">align</a></span></code>, , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/allowEvents">allowEvents</a></span></code>, , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/boxObject">boxObject</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/builder">builder</a></span></code>, , , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/className">className</a></span></code>, , , , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/collapsed">collapsed</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/contextMenu">contextMenu</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/controllers">controllers</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/database">database</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/datasources">datasources</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/dir">dir</a></span></code>, , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/flex">flex</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/height">height</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/hidden">hidden</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/id">id</a></span></code>, , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/left">left</a></span></code>, , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/maxHeight">maxHeight</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/maxWidth">maxWidth</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/menu">menu</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/minHeight">minHeight</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/minWidth">minWidth</a></span></code>, , , , , , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/observes">observes</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/ordinal">ordinal</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/orient">orient</a></span></code>, , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/pack">pack</a></span></code>, , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/persist">persist</a></span></code>, , , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/ref">ref</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/resource">resource</a></span></code>, , , , , <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/statusText">statusText</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/style">style</a></span></code>, ,, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/tooltip">tooltip</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/tooltipText">tooltipText</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/top">top</a></span></code>, <code><span><a href="https://developer.mozilla.org/pt-PT/docs/XUL/Property/width">width</a></span></code></small></p> </td> </tr> </tbody>
-</table>
-
-<h3 id="Métodos">Métodos</h3>
-
-<table style="border: 1px solid rgb(204, 204, 204); margin: 0px 0px 10px 10px; padding: 0px 10px; background: rgb(238, 238, 238) none repeat scroll 0% 50%;"> <tbody> <tr> <td> <p><strong>Inherited Methods</strong><br> <small><code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.addEventListener">addEventListener()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.appendChild">appendChild()</a></code>, <span id="m-blur"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/blur">blur</a></code></span>, <span id="m-click"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/click">click</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.cloneNode">cloneNode()</a></code>, <a class="internal" href="/En/DOM/Node.compareDocumentPosition" title="En/DOM/Node.compareDocumentPosition">compareDocumentPosition</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.dispatchEvent">dispatchEvent()</a></code>, <span id="m-doCommand"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/doCommand">doCommand</a></code></span>, <span id="m-focus"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/focus">focus</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttribute">getAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNode">getAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNodeNS">getAttributeNodeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNS">getAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getBoundingClientRect">getBoundingClientRect()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getClientRects">getClientRects()</a></code>, <span id="m-getElementsByAttribute"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/getElementsByAttribute">getElementsByAttribute</a></code></span>, <span id="m-getElementsByAttributeNS"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/getElementsByAttributeNS">getElementsByAttributeNS</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByClassName">getElementsByClassName()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByTagName">getElementsByTagName()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByTagNameNS">getElementsByTagNameNS()</a></code>, <a class="internal" href="/En/DOM/Node.getFeature" title="En/DOM/Node.getFeature">getFeature</a>, <a class="internal" href="/En/DOM/Node.getUserData" title="En/DOM/Node.getUserData">getUserData</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttribute">hasAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttributeNS">hasAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttributes">hasAttributes()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasChildNodes">hasChildNodes()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.insertBefore">insertBefore()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.isDefaultNamespace">isDefaultNamespace()</a></code>, <a class="internal" href="/En/DOM/Node.isEqualNode" title="En/DOM/Node.isEqualNode">isEqualNode</a>, <a class="internal" href="/En/DOM/Node.isSameNode" title="En/DOM/Node.isSameNode">isSameNode</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.isSupported">isSupported()</a></code>, <a class="internal" href="/En/DOM/Node.lookupNamespaceURI" title="En/DOM/Node.lookupNamespaceURI">lookupNamespaceURI</a>, <a class="internal" href="/En/DOM/Node.lookupPrefix" title="En/DOM/Node.lookupPrefix">lookupPrefix</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.normalize">normalize()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.querySelector">querySelector()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.querySelectorAll">querySelectorAll()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttribute">removeAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttributeNode">removeAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttributeNS">removeAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeChild">removeChild()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeEventListener">removeEventListener()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.replaceChild">replaceChild()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttribute">setAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNode">setAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNodeNS">setAttributeNodeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNS">setAttributeNS()</a></code>, <a class="internal" href="/En/DOM/Node.setUserData" title="En/DOM/Node.setUserData">setUserData</a></small></p> </td> </tr> </tbody>
-</table>
-
-<h3 id="Classes_de_estilo">Classes de estilo</h3>
-
-<dl>
- <dt>
- <code><a href="https://developer.mozilla.org/en-US/docs/XUL/Style/alert-icon">alert-icon</a></code></dt>
- <dd>
- Class that adds an alert icon. This typically looks like an exclamation mark. This and the other icon classes may be used by <code><a href="/en-US/docs/Mozilla/Tech/XUL/image" title="image">image</a></code> elements or other elements which can have an image.</dd>
-</dl> <dl>
- <dt><code><a href="https://developer.mozilla.org/en-US/docs/XUL/Style/error-icon">error-icon</a></code></dt>
- <dd>Class that adds an error icon. This will typically be a red "X" icon.</dd>
-</dl> <dl>
- <dt><code><a href="https://developer.mozilla.org/en-US/docs/XUL/Style/message-icon">message-icon</a></code></dt>
- <dd>Class that adds a message box icon.</dd>
-</dl> <dl>
- <dt><code><a href="https://developer.mozilla.org/en-US/docs/XUL/Style/question-icon">question-icon</a></code></dt>
- <dd>Class that adds a question icon, which usually looks like a question mark.</dd>
-</dl>
-
-<h3 id="Relacionado">Relacionado</h3>
-
-<p>See also the <code id="a-image"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/image">image</a></code> and <code id="a-icon"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/icon">icon</a></code> attributes.</p>
-
-<h3 id="Interfaces">Interfaces</h3>
-
-<ul>
- <li><code><a href="/pt-PT/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIAccessibleProvider" title="">nsIAccessibleProvider</a></code></li>
- <li><code><a href="/pt-PT/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIDOMXULImageElement" title="">nsIDOMXULImageElement</a></code></li>
-</ul>
-
-<div class="noinclude"></div>
diff --git a/files/pt-pt/archive/mozilla/xul/index.html b/files/pt-pt/archive/mozilla/xul/index.html
deleted file mode 100644
index 3485d951c8..0000000000
--- a/files/pt-pt/archive/mozilla/xul/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
----
-title: XUL
-slug: Archive/Mozilla/XUL
-tags:
- - Todas_as_Categorias
- - XUL
-translation_of: Archive/Mozilla/XUL
----
-<p> </p>
-
-<div class="callout-box"><strong><a href="/pt/Tutorial_XUL" title="pt/Tutorial_XUL">Tutorial XUL</a></strong>
-
-<p>Um tutorial introdutório ao XUL, originário do XULPlanet.</p>
-</div>
-
-<div>
-<p>A <strong>XML User Interface Language (XUL)</strong> (em português "linguagem XML de interface de usuário") é a linguagem de interface de usuário da Mozilla baseada na <a href="/pt/XML" title="pt/XML">XML</a> que permite construir aplicações multi-plataformas ricas em características que podem rodar ligadas ou desligadas da internet. Essas aplicações são facilmente personalizadas com texto, gráficos e disposições alternativas, fazendo com que possam ser marcadas e localizadas para vários mercados. Desenvolvedores Web que já estejam familiarizados com <a href="/pt/DHTML" title="pt/DHTML">DHTML</a> irão aprender <a href="/pt/XUL" title="pt/XUL">XUL</a> rapidamente e vão logo poder criar aplicações.</p>
-</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h4 id="Documenta.C3.A7.C3.A3o" name="Documenta.C3.A7.C3.A3o"><a href="/Special:Tags?tag=XUL&amp;language=pt" title="Special:Tags?tag=XUL&amp;language=pt">Documentação</a></h4>
-
- <dl>
- <dt><a href="/pt/Refer%C3%AAncia_XUL" title="pt/Referência_XUL">Referência XUL</a></dt>
- <dd><small>Veja também a documentação MDC em <a href="/pt/Preferences_System" title="pt/Preferences_System">prefwindow</a>.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt/Controles_XUL" title="pt/Controles_XUL">Controles XUL</a></dt>
- <dd><small>Uma rápida lista de todos os controles XUL disponíveis.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt/Vis%C3%A3o_Geral_do_XUL" title="pt/Visão_Geral_do_XUL">Visão Geral do XUL</a></dt>
- <dd><small>Descreve as características chave e os componentes do XUL.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt/Guia_modelo_do_XUL" title="pt/Guia_modelo_do_XUL">Guia modelo do XUL</a></dt>
- <dd><small>Um guia detalhado sobre modelos XUL, que é um meio de gerar conteúdo de um código de dados.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt/Sobreposi%C3%A7%C3%B5es_XUL" title="pt/Sobreposições_XUL">Sobreposições XUL</a></dt>
- <dd><small>Um artigo sobre sobreposições XUL. Sobreposições são usadas para descrever conteúdo extra para a UI. Ele proporciona um poderoso mecanismo para extender e customizar aplicações XUL existentes.</small></dd>
- </dl>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=XUL:Artigos&amp;language=pt" title="Special:Tags?tag=XUL:Artigos&amp;language=pt">Veja todos...</a></span></p>
- </td>
- <td>
- <h4 id="Comunidade" name="Comunidade">Comunidade</h4>
-
- <p>{{ DiscussionList("dev-tech-xul", "mozilla.dev.tech.xul") }}</p>
-
- <ul>
- <li><a class="link-irc" href="irc://irc.mozilla.org/xul">canal #xul em irc.mozilla.org</a></li>
- <li><a href="/pt/XUL/Comunidade" title="pt/XUL/Comunidade">Outros links para comunidades...</a></li>
- </ul>
-
- <h4 id="Ferramentas" name="Ferramentas">Ferramentas</h4>
-
- <ul>
- <li><a href="/pt/DOM_Inspector" title="pt/DOM_Inspector">DOM Inspector</a></li>
- </ul>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=XUL:Ferramentas&amp;language=pt" title="Special:Tags?tag=XUL:Ferramentas&amp;language=pt">Veja todas...</a></span></p>
-
- <h4 id="T.C3.B3picos_relacionados" name="T.C3.B3picos_relacionados">Tópicos relacionados</h4>
-
- <p><a href="/pt/JavaScript" title="pt/JavaScript">JavaScript</a>, <a href="/pt/CSS" title="pt/CSS">CSS</a>, <a href="/pt/RDF" title="pt/RDF">RDF</a>, <a href="/pt/XBL" title="pt/XBL">XBL</a>, <a href="/pt/Extens%C3%B5es" title="pt/Extensões">Extensões</a>, <a href="/pt/XULRunner" title="pt/XULRunner">XULRunner</a></p>
-
- <p><span class="comment">Categorias</span></p>
-
- <p><span class="comment">Interwiki Language Links</span></p>
-
- <p> </p>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/archive/mozilla/xul/namespaces/index.html b/files/pt-pt/archive/mozilla/xul/namespaces/index.html
deleted file mode 100644
index 53bc371053..0000000000
--- a/files/pt-pt/archive/mozilla/xul/namespaces/index.html
+++ /dev/null
@@ -1,153 +0,0 @@
----
-title: Espaços de nomes
-slug: Archive/Mozilla/XUL/Namespaces
-tags:
- - Extensões
- - Extras
-translation_of: Archive/Mozilla/XUL/Namespaces
----
-<p> </p>
-
-<p>Em adição a este documento, consulte <em><a href="/pt-PT/docs/Web/SVG/Namespaces_Crash_Course" title="en/SVG/Namespaces_Crash_Course">Namespaces Crash Course</a></em>.</p>
-
-<p><strong>Espaços de nomes XML </strong>fornecem uma maneira para distinguir nomes duplicados de elementos e atributos. Os nomes de elementos e atributos duplicados podem ocorrer quando um documento XML contém elementos e atributos de dois ou mais esquemas XML diferentes (ou DTDs). para citar <a class="external" href="https://pt.wikipedia.org/wiki/Espa%C3%A7o_de_nomes">Wikipédia</a>: "Em geral, um espaço de nome é um recipiente abstrato que fornece contexto para os itens... este contém e permite a desambiguação de itens com o mesmo nome."</p>
-
-<p>If you are familiar with C++ namespaces, Java packages, perl packages, or Python module importing, you are already familiar with the namespace concept.</p>
-
-<p>An XML namespace is identified by an unique name (called a URI, not a URL, even though it can look like a URL). An URI is any string, although most people choose a URL-based URI because URLs are an easy way to <em>hope</em> for uniqueness. Although there's nothing preventing someone else from using the namespace <code>http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul</code>, it's fairly unlikely anyone would choose that accidentally. Even if they did accidentally choose it, they may not define the same elements as XUL anyway (e.g., <code>&lt;textbox/&gt;</code>) in their schema/DTD.</p>
-
-<p>Any element type or attribute name in an XML namespace can be uniquely identified by its XML namespace and its "local name". Together, these two items define a <em>qualified name</em>, or <a class="external" href="http://www.w3.org/TR/REC-xml-names/#dt-qualname">QName</a>.</p>
-
-<p>For example, <code>&lt;xul:textbox/&gt;</code> uses a namespace named "xul" and a local name "textbox". This distinguishes it from, for example, <code>&lt;foobar:textbox/&gt;</code> which might occur in the same document. The <strong>xul</strong> and <strong>foobar</strong> namespaces must be defined at the top of the XML document in which they are used, like so:</p>
-
-<pre> &lt;foobar:some-element
- xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
- xmlns:foobar="the-foobar-namespace"&gt;
- &lt;xul:textbox id="foo" value="bar"/&gt;
- &lt;foobar:textbox favorite-food="pancakes"/&gt;
- &lt;/foobar:some-element&gt;
-</pre>
-
-<p>Notice I've mixed two <code>&lt;textboxes/&gt;</code> in the same document. The only way to distinguish that they have different meanings is with namespaces.</p>
-
-<p>There's only one other thing to know: "default namespace". Every XML element has a "default namespace", and this is used with XUL elements all the time. In XUL documents, you'll usually see this:</p>
-
-<pre> &lt;window
- id="foo"
- xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;
- ...
- ...
- &lt;/window&gt;
-</pre>
-
-<p>and in XHTML documents, you'll see this:</p>
-
-<pre> &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
- ...
- ...
- &lt;/html&gt;
-</pre>
-
-<p>There is a very subtle difference here than before. Before I wrote <code>xmlns<strong>:xul</strong>="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"</code> but here the <strong>:xul</strong> piece is omitted. This signifies to the XML parser that <code>http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul</code> is the <strong>default namespace</strong> for the element and its descendant elements (unless further overridden by a default namespace on a descendant element), and that any element without a namespace (i.e., no prefix and colon) belongs to the default namespace. That's why we can write the shorthand <code>&lt;textbox/&gt;</code> instead of <code>&lt;xul:textbox/&gt;</code> in XUL (although the latter is just as correct when not using <code>http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul</code> as the default namespace) -- the XUL namespace is defined as the default on the topmost element. In other words, a default namespace permits a kind of short-hand to be used for all descendants of an element.</p>
-
-<p>Here's a question: what namespace contains the element <code>foo</code> in the XML document below?</p>
-
-<pre> &lt;foo/&gt;
-</pre>
-
-<p>The answer is that it's in <strong>no</strong> namespace, or alternately, it's in the namespace denoted by the empty string:</p>
-
-<pre> &lt;foo xmlns=""/&gt;
-</pre>
-
-<p>This second example is semantically equivalent to the first.</p>
-
-<p>Now, a second question: what namespaces are the <code>bar</code>, <code>baz</code>, and <code>quux</code> attributes in?</p>
-
-<pre> &lt;foo bar="value"&gt;
- &lt;element xmlns="namespace!" baz="value"&gt;
- &lt;element quux="value"/&gt;
- &lt;/element&gt;
- &lt;/foo&gt;
-</pre>
-
-<p><code>bar</code> is obviously not in a namespace. What about <code>baz</code> and <code>quux</code>? The answer is that they aren't in a namespace either. In fact no unprefixed attribute is ever in a namespace, primarily because XML originally didn't have namespaces, and all XML from that time had to stay in no namespace. This is a source of perennial confusion for XML namespaces.</p>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; opacity: 0; display: block; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody><tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
-</tbody></table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody><tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
-</tbody></table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/mozilla/xul/outros_recursos/index.html b/files/pt-pt/archive/mozilla/xul/outros_recursos/index.html
deleted file mode 100644
index fba234096d..0000000000
--- a/files/pt-pt/archive/mozilla/xul/outros_recursos/index.html
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: Outros recursos
-slug: Archive/Mozilla/XUL/Outros_recursos
----
-<p>
-</p>
diff --git a/files/pt-pt/archive/mozilla/xul/scale/index.html b/files/pt-pt/archive/mozilla/xul/scale/index.html
deleted file mode 100644
index fab8882332..0000000000
--- a/files/pt-pt/archive/mozilla/xul/scale/index.html
+++ /dev/null
@@ -1,235 +0,0 @@
----
-title: scale
-slug: Archive/Mozilla/XUL/scale
-tags:
- - PrecisaDeConteúdo
----
-<p>
-<span class="breadcrumbs XULRef_breadcrumbs">
- « <a href="/pt-PT/docs/XUL_Reference">XUL Reference home</a> [
- <a href="#Examples">Examples</a> |
- <a href="#Attributes">Attributes</a> |
- <a href="#Properties">Properties</a> |
- <a href="#Methods">Methods</a> |
- <a href="#Related">Related</a> ]
-</span>
-</p><p>Uma escala permite ao usuário selecionar um valor de uma faixa. Uma barra exibida horizontalmente ou verticalmente permite ao usuário selecionar um valor arrastando um ponteiro na barra.
-</p><p>Use o atributo de orientação para especificar a orientação da escala. O valor padrão é &lt;tt&gt;horizontal&lt;/tt&gt;, que exibe uma escala horizontal. Valores pequenos são para a esquerda e valores maiores para a direita. Configure o atributo <code>orient</code> para &lt;tt&gt;vertical&lt;/tt&gt; para usar uma escala vertical.
-</p><p>O usuário pode usar as teclas de flecha para incrementar ou decrementar o valor em uma unidade, ou as teclas de "page up" e "page down" para incrementar ou decrementar uma página, como especificado pelo atributo <code>pageincrement</code>. As teclas "home" e "end" configuram o valor da escala para os valores mínimo e máximo, respectivamente.
-</p>
-<dl><dt> Atributos
-</dt><dd> <a href="#a-disabled">disabled</a>, <a href="#a-increment">increment</a>, <a href="#a-max">max</a>, <a href="#a-min">min</a>, <a href="#a-pageincrement">pageincrement</a>, <a href="#a-tabindex">tabindex</a>, <a href="#a-value">value</a>
-</dd></dl>
-<dl><dt> Propriedades
-</dt><dd> <a href="#p-disabled">disabled</a>, <a href="#p-max">max</a>, <a href="#p-min">min</a>, <a href="#p-increment">increment</a>, <a href="#p-pageIncrement">pageIncrement</a>, <a href="#p-tabIndex">tabIndex</a>, <a href="#p-value">value</a>, </dd></dl>
-<dl><dt> Métodos
-</dt><dd> <a href="#m-decrease">decrease</a>, <a href="#m-decreasePage">decreasePage</a>, <a href="#m-increase">increase</a>, <a href="#m-increasePage">increasePage</a>,
-</dd></dl>
-<h3 id="Examples" name="Examples"> Examples </h3>
-<p>Escala horizontal:
-</p>
-<pre>&lt;scale min="1" max="10"/&gt;
-</pre>
-<p><img alt="Image:Controlguide-scale.png">
-</p><p>Escala vertical:
-</p>
-<pre>&lt;scale min="1" max="10" orient="vertical"/&gt;
-</pre>
-<h3 id="Atributos" name="Atributos"> Atributos </h3>
-<p>
-</p><div id="a-disabled">
-
-
-<dl>
- <dt><code id="a-disabled"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/disabled">disabled</a></code></dt>
- <dd>Type: <em>boolean</em></dd>
- <dd>Indicates whether the element is disabled or not. If this attribute is set, the element is disabled. Disabled elements are usually drawn with grayed-out text. If the element is disabled, it does not respond to user actions, it cannot be focused, and the <code>command</code> event will not fire. In the case of form elements, it will not be submitted. Do not set the attribute to <code>true</code>, as this will suggest you can set it to <code>false</code> to enable the element again, which is not the case.
-
- <div>The <code>disabled</code> attribute is allowed only for form controls. Using it with an anchor tag (an <code>&lt;a&gt;</code> link) will have no effect.</div>
-
- <div>
- The element will, however, still respond to mouse events. To enable the element, leave this attribute out entirely.</div>
- </dd>
- <dd>Visible controls have a <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/disabled">disabled</a></span></code> property which, except for menus and menuitems, is normally preferred to use of the attribute, as it may need to update additional state.</dd>
-</dl>
-
-
-</div>
-<div id="a-increment">
-
-<dl>
- <dt>
- <code id="a-increment"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/increment">increment</a></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- The amount by which the <code id="a-curpos"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/curpos">curpos</a></code> (for scroll bars) or <code id="a-value"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/value">value</a></code> (for number boxes and scale) attribute changes when the arrows are clicked(or scales are dragged). The default value is 1.</dd>
-</dl>
-</div>
-<div id="a-min">
-
-<dl>
- <dt>
- <code id="a-min"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/min">min</a></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- The minimum value the control's value may take. The default value is 0.</dd>
-</dl>
-<p> </p>
-</div>
-<div id="a-max">
-
-<dl>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- The maximum value that the scale or number box may be set to. The default value is 100 for scales and Infinity for number boxes.</dd>
-</dl>
-
-<p> </p>
-</div>
-<div id="a-pageincrement">
-
-
-<dl>
- <dt><code id="a-pageincrement"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/pageincrement">pageincrement</a></code></dt>
- <dd>Type: <em>integer</em></dd>
- <dd>The amount by which the value of the <code>curpos</code> or <code>value</code> attribute changes when the tray of the scroll bar (the area in which the scroll bar thumb moves) is clicked, or when the page up or page down keys are pressed. The default value is 10.</dd>
-</dl>
-</div>
-<div id="a-tabindex">
-
-
-<dl>
- <dt><code id="a-tabindex"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/tabindex">tabindex</a></code></dt>
- <dd>Type: <em>integer</em></dd>
- <dd>The tab order of the element. The tab order is the order in which the focus is moved when the user presses the "<code>tab</code>" key. Elements with a higher <code>tabindex</code> are later in the tab sequence.</dd>
-</dl>
-</div>
-<div id="a-value">
-
-
-<dl>
- <dt><code id="a-value"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/value">value</a></code></dt>
- <dd>Type: <em>string</em></dd>
- <dd>The string attribute allows you to associate a data value with an element. It is not used for any specific purpose, but you can access it with a script for your own use. Be aware, however, that some elements, such as textbox will display the value visually, so in order to merely associate data with an element, you could 1) Use another attribute like "value2" or "data-myAtt" (as in the HTML5 draft), as XUL does not require validation (less future-proof); 2) Use <a href="/en/DOM/element.setAttributeNS" title="en/DOM/element.setAttributeNS">setAttributeNS()</a> to put custom attributes in a non-XUL namespace (serializable and future-proof); 3) Use <a href="/En/DOM/Node.setUserData" title="En/DOM/Node.setUserData">setUserData()</a> (future-proof and clean, but not easily serializable). For user editable <code><a href="/en-US/docs/Mozilla/Tech/XUL/menulist" title="menulist">menulist</a></code> elements, the contents, as visible to the user, are read and set using the Menulist.value syntax. For those elements, <a href="/en/DOM/element.setAttribute" title="en/DOM/element.setAttributeNS">setAttribute("value", myValue)</a> and <a href="/en/DOM/element.setAttribute" title="en/DOM/element.getAttributeNS">getAttribute("value")</a> do not access or affect the contents displayed to the user.</dd>
-</dl>
-
-
-
-<p> </p>
-</div>
-
-<h3 id="Propriedades" name="Propriedades"> Propriedades </h3>
-<p>
-</p><div id="p-disabled">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/disabled">disabled</a></span></code></dt>
- <dd>
- Type: <em>boolean</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-disabled"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/disabled">disabled</a></code> attribute.</dd>
-</dl>
-</div>
-<div id="p-increment">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/increment">increment</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-increment"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/increment">increment</a></code> attribute.</dd>
-</dl></div>
-<div id="p-min">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/min">min</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-min"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/min">min</a></code> attribute.</dd>
-</dl></div>
-<div id="p-max">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/max">max</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-max"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/max">max</a></code> attribute.</dd>
-</dl></div>
-<div id="p-pageIncrement">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/pageIncrement">pageIncrement</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-pageincrement"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/pageincrement">pageincrement</a></code> attribute.</dd>
-</dl></div>
-<div id="p-tabIndex">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/tabIndex">tabIndex</a></span></code></dt>
- <dd>
- Type: <em>integer</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-tabindex"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/tabindex">tabindex</a></code> attribute.</dd>
-</dl></div>
-<div id="p-value">
-<dl>
- <dt>
- <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/value">value</a></span></code></dt>
- <dd>
- Type: <em>string</em></dd>
- <dd>
- Gets and sets the value of the <code id="a-value"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/value">value</a></code> attribute. For <code><a href="/en-US/docs/Mozilla/Tech/XUL/textbox" title="textbox">textbox</a></code> and user editable <code><a href="/en-US/docs/Mozilla/Tech/XUL/menulist" title="menulist">menulist</a></code> elements, the contents, as visible to the user, are read and set using the <code><span><a href="https://developer.mozilla.org/en-US/docs/XUL/Property/Textbox.value">Textbox.value</a></span></code> and Menulist.value syntax.</dd>
-</dl>
-
-<p> </p></div>
-
-<h3 id="M.C3.A9todos" name="M.C3.A9todos"> Métodos </h3>
-<table style="border: 1px solid rgb(204, 204, 204); margin: 0px 0px 10px 10px; padding: 0px 10px; background: rgb(238, 238, 238) none repeat scroll 0% 50%;"> <tbody> <tr> <td> <p><strong>Inherited Methods</strong><br> <small><code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.addEventListener">addEventListener()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.appendChild">appendChild()</a></code>, <span id="m-blur"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/blur">blur</a></code></span>, <span id="m-click"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/click">click</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.cloneNode">cloneNode()</a></code>, <a class="internal" href="/En/DOM/Node.compareDocumentPosition" title="En/DOM/Node.compareDocumentPosition">compareDocumentPosition</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.dispatchEvent">dispatchEvent()</a></code>, <span id="m-doCommand"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/doCommand">doCommand</a></code></span>, <span id="m-focus"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/focus">focus</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttribute">getAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNode">getAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNodeNS">getAttributeNodeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getAttributeNS">getAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getBoundingClientRect">getBoundingClientRect()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getClientRects">getClientRects()</a></code>, <span id="m-getElementsByAttribute"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/getElementsByAttribute">getElementsByAttribute</a></code></span>, <span id="m-getElementsByAttributeNS"><code><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Method/getElementsByAttributeNS">getElementsByAttributeNS</a></code></span>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByClassName">getElementsByClassName()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByTagName">getElementsByTagName()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.getElementsByTagNameNS">getElementsByTagNameNS()</a></code>, <a class="internal" href="/En/DOM/Node.getFeature" title="En/DOM/Node.getFeature">getFeature</a>, <a class="internal" href="/En/DOM/Node.getUserData" title="En/DOM/Node.getUserData">getUserData</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttribute">hasAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttributeNS">hasAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasAttributes">hasAttributes()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.hasChildNodes">hasChildNodes()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.insertBefore">insertBefore()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.isDefaultNamespace">isDefaultNamespace()</a></code>, <a class="internal" href="/En/DOM/Node.isEqualNode" title="En/DOM/Node.isEqualNode">isEqualNode</a>, <a class="internal" href="/En/DOM/Node.isSameNode" title="En/DOM/Node.isSameNode">isSameNode</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.isSupported">isSupported()</a></code>, <a class="internal" href="/En/DOM/Node.lookupNamespaceURI" title="En/DOM/Node.lookupNamespaceURI">lookupNamespaceURI</a>, <a class="internal" href="/En/DOM/Node.lookupPrefix" title="En/DOM/Node.lookupPrefix">lookupPrefix</a>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.normalize">normalize()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.querySelector">querySelector()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.querySelectorAll">querySelectorAll()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttribute">removeAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttributeNode">removeAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeAttributeNS">removeAttributeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeChild">removeChild()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.removeEventListener">removeEventListener()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.replaceChild">replaceChild()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttribute">setAttribute()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNode">setAttributeNode()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNodeNS">setAttributeNodeNS()</a></code>, <code><a href="https://developer.mozilla.org/pt-PT/docs/DOM/element.setAttributeNS">setAttributeNS()</a></code>, <a class="internal" href="/En/DOM/Node.setUserData" title="En/DOM/Node.setUserData">setUserData</a></small></p> </td> </tr> </tbody>
-</table>
-<dl>
- <dt>
- <span id="m-decrease"><code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Method/decrease">decrease()</a></code></span></dt>
- <dd>
- Return type: <em>no return value</em></dd>
- <dd>
- Decreases the value of the scale or number box by the <code id="a-increment"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/increment">increment</a></code>.</dd>
-</dl>
-<dl>
- <dt>
- <span id="m-decreasePage"><code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Method/decreasePage">decreasePage()</a></code></span></dt>
- <dd>
- Return type: <em>no return value</em></dd>
- <dd>
- Decreases the value of the scale by the <code id="a-pageincrement"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/pageincrement">pageincrement</a></code>.</dd>
-</dl>
-<dl>
- <dt>
- <span id="m-increase"><code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Method/increase">increase()</a></code></span></dt>
- <dd>
- Return type: <em>no return value</em></dd>
- <dd>
- Increases the value of the scale or number box by the <code id="a-increment"><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Attribute/increment">increment</a></code>.</dd>
-</dl>
-<dl>
- <dt>
- <span id="m-increasePage"><code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/Method/increasePage">increasePage()</a></code></span></dt>
- <dd>
- Return type: <em>no return value</em></dd>
- <dd>
- Increases the value of the scale by the page increment.</dd>
-</dl>
-
-<h3 id="Relacionado" name="Relacionado"> Relacionado </h3>
-<dl><dt> Interfaces
-</dt><dd> <a href="pt/NsIDOMXULControlElement">nsIDOMXULControlElement</a>
-</dd></dl>
-<p><span class="comment">Categorias</span>
-</p><p><span class="comment">Interwiki Language Links</span>
-</p>
diff --git a/files/pt-pt/archive/mozilla/xul/tutorial/adicionar_etiquetas_e_imagens/index.html b/files/pt-pt/archive/mozilla/xul/tutorial/adicionar_etiquetas_e_imagens/index.html
deleted file mode 100644
index 7f6d53c292..0000000000
--- a/files/pt-pt/archive/mozilla/xul/tutorial/adicionar_etiquetas_e_imagens/index.html
+++ /dev/null
@@ -1,102 +0,0 @@
----
-title: Adicionar Etiquetas e Imagens
-slug: Archive/Mozilla/XUL/Tutorial/Adicionar_Etiquetas_e_Imagens
-tags:
- - Tutoriais
- - Tutorial de XUL
- - XUL
-translation_of: Archive/Mozilla/XUL/Tutorial/Adding_Labels_and_Images
----
-<div class="prevnext" style="text-align: right;">
- <p><a href="/pt-PT/docs/XUL_Tutorial/Adding_Buttons" style="float: left;">« Anterior</a><a href="/pt-PT/docs/XUL_Tutorial/Input_Controls">Próxima »</a></p>
-</div>
-
-<p>Esta secção descreve uma maneira para adicionar etiquetas e imagens a uma janela. Além disso, nós consideramos em como incluir os elementos em grupos.</p>
-
-<h3 id="Text_Elements" name="Text_Elements">Elementos de Texto</h3>
-
-<p>You cannot embed text directly into a XUL file without tags around it and expect it to be displayed. You can use two XUL elements for this purpose.</p>
-
-<h4 id="Label_Element" name="Label_Element">Elemento Etiqueta</h4>
-
-<p>The most basic way to include text in a window is to use the <code><a href="/pt-PT/docs/Mozilla/Tech/XUL/label" title="label">label</a></code> element. It should be used when you want to place a descriptive label beside a control, such as a button. An example is shown below:</p>
-
-<p><span id="Example_1"><a id="Example_1"></a><strong>Example 1</strong></span> : <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_1.xul.txt">Source</a> <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_1.xul">View</a></p>
-
-<pre>&lt;label value="This is some text"/&gt;
-</pre>
-
-<p>The <code><code id="a-value"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/value">value</a></code></code> attribute can be used to specify the text that you wish to have displayed. The text will not wrap, so the text will all be displayed on a single line. This syntax is the most common of labels.</p>
-
-<p>If the text needs to wrap, you can place the text content inside opening and closing tags as in the following example:</p>
-
-<p><span id="Example_2"><a id="Example_2"></a><strong>Example 2</strong></span> :</p>
-
-<pre>&lt;label&gt;This is some longer text that will wrap onto several lines.&lt;/label&gt;
-</pre>
-
-<p>As with HTML, line breaks and extra whitespace are collapsed into a single space. Later, we'll find out <a href="/en-US/docs/XUL_Tutorial/Element_Positioning" title="en/XUL_Tutorial/Element_Positioning">how to constrain the width of elements</a> so that we can see the wrapping more easily.</p>
-
-<h5 id="Control_Attribute" name="Control_Attribute">Atributo de Controle</h5>
-
-<p>You can use the <code><code id="a-control"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/control">control</a></code></code> attribute to set which control the label is associated with. When the user clicks on an associated label, that control will be focused. This association is also important for <a href="/en-US/docs/Accessibility" title="en/Accessibility">accessibility</a>, so that screen readers read aloud the label for the control as the user tabs to it. Set the value of the <code>control</code> attribute to the <code><code id="a-id"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/id">id</a></code></code> of the element to be focused.</p>
-
-<p><span id="Example_3"><a id="Example_3"></a><strong>Example 3</strong></span> : <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_3.xul.txt">Source</a> <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_3.xul">View</a></p>
-
-<pre>&lt;label value="Click here:" control="open-button"/&gt;
-&lt;button id="open-button" label="Open"/&gt;
-</pre>
-
-<p>In the example above, clicking the label will cause the button to be focused.</p>
-
-<h4 id="Description_Element" name="Description_Element">Elemento Descrição</h4>
-
-<p>For descriptive text not associated with any particular control, you can use the <code><a href="/pt-PT/docs/Mozilla/Tech/XUL/description" title="description">description</a></code> tag. This element is useful for informative text at the top of a dialog or a group of controls for example. As with the <code><a href="/pt-PT/docs/Mozilla/Tech/XUL/label" title="label">label</a></code> element, you can either use the <code>value</code> attribute for a single line of text or place text or XHTML content inside opening and closing description tags for longer blocks of text. It is more common to use the attribute syntax for labels, and the text content syntax for descriptions.</p>
-
-<p><span id="Example_4"><a id="Example_4"></a><strong>Example 4</strong></span> : <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_2.xul.txt">Source</a> <a href="https://developer.mozilla.org/samples/xultu/examples/ex_textimage_2.xul">View</a></p>
-
-<pre>&lt;description&gt;
- This longer section of text is displayed.
-&lt;/description&gt;
-</pre>
-
-<p>You can set the text via script using the <a href="/en-US/docs/DOM/Node.textContent" title="En/DOM/Node.textContent">textContent</a> property, as in the following example:</p>
-
-<pre>&lt;description id="text" width="200"/&gt;
-
-document.getElementById('text').textContent = "Some lengthy word wrapped text goes here.";
-</pre>
-
-<p>Internally, both the <code><code><a href="/pt-PT/docs/Mozilla/Tech/XUL/label" title="label">label</a></code></code> element and the <code><code><a href="/pt-PT/docs/Mozilla/Tech/XUL/description" title="description">description</a></code></code> elements are the same. The <code><code><a href="/pt-PT/docs/Mozilla/Tech/XUL/label" title="label">label</a></code></code> element is intended for labels of controls, such as text fields. The <code>control</code> attribute is only supported for labels. The <code><code><a href="/pt-PT/docs/Mozilla/Tech/XUL/description" title="description">description</a></code></code> element is intended for other descriptive text such as informative text at the top of a <code><code><a href="/pt-PT/docs/Mozilla/Tech/XUL/dialog" title="dialog">dialog</a></code></code> box.</p>
-
-<h3 id="Images" name="Images">Imagens</h3>
-
-<p>XUL has an element to display images within a window. This element is appropriately named <code><a href="/pt-PT/docs/Mozilla/Tech/XUL/image" title="image">image</a></code>. Note that the tag name is different than HTML (<em>image</em> instead of <em>img</em>). You can use the <code><code id="a-src"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/src">src</a></code></code> attribute to specify the URL of the image file. The example below shows this:</p>
-
-<pre class="brush: xml">&lt;image src="images/banner.jpg"/&gt;
-</pre>
-
-<p>Although you can use this syntax, it would be better in order to support different themes to use a style sheet to set the image URL. A later section will describe how to <a href="/en-US/docs/XUL_Tutorial/Adding_Style_Sheets" title="en/XUL_Tutorial/Adding_Style_Sheets">use style sheets</a>, but an example will be shown here for completeness. You can use the <code><a href="/en-US/docs/CSS/list-style-image" title="en/CSS/list-style-image">list-style-image</a></code> CSS property to set the URL for the image. Here are some examples:</p>
-
-<pre class="brush: xml"><strong>XUL:</strong>
- &lt;image id="image1"/&gt;
- &lt;image id="search"/&gt;
-</pre>
-
-<pre class="brush: css"><strong>Style Sheet:</strong>
- #image1 {
- list-style-image: url("<a class="external" rel="freelink">chrome://findfile/skin/banner.jpg</a>");
- }
-
- #search {
- list-style-image: url("<span class="nowiki">http://example.com/images/search.png</span>");
- }
-</pre>
-
-<p>These images come from within the chrome directory, in the skin for the findfile package. Because images vary by theme, you would usually place images in the skin directory.</p>
-
-<p>In the next section, we will learn how to <a href="/en-US/docs/XUL_Tutorial/Input_Controls" title="en/XUL_Tutorial/Input_Controls">add some input controls to a window</a>.</p>
-
-<div class="prevnext" style="text-align: right;">
- <p><a href="/pt-PT/docs/XUL_Tutorial/Adding_Buttons" style="float: left;">« Anterior</a><a href="/pt-PT/docs/XUL_Tutorial/Input_Controls">Próxima »</a></p>
-</div>
diff --git a/files/pt-pt/archive/mozilla/xul/tutorial/ficheiros_de_propriedade/index.html b/files/pt-pt/archive/mozilla/xul/tutorial/ficheiros_de_propriedade/index.html
deleted file mode 100644
index 44657ee360..0000000000
--- a/files/pt-pt/archive/mozilla/xul/tutorial/ficheiros_de_propriedade/index.html
+++ /dev/null
@@ -1,115 +0,0 @@
----
-title: Ficheiros de Propriedade
-slug: Archive/Mozilla/XUL/Tutorial/Ficheiros_de_propriedade
-tags:
- - Internacionalização
- - Localização
- - Tutoriais
- - Tutorial de XUL
- - XUL
-translation_of: Archive/Mozilla/XUL/Tutorial/Property_Files
----
-<p> </p>
-
-<p>{{ PreviousNext("XUL Tutorial:Localization", "XUL Tutorial:Introduction to XBL") }}</p>
-
-<p>Num <em>script</em>, não pode ser utilizadas as <em>entities</em>. Em vez disso, são utilizados 'ficheiros de Propriedade'.</p>
-
-<h3 id="Properties" name="Properties">Properties</h3>
-
-<p>DTD files are suitable when you have text in a XUL file. However, a script does not get parsed for entities. In addition, you may wish to display a message which is generated from a script, if, for example, you do not know the exact text to be displayed. For this purpose, property files can be used.</p>
-
-<p>A property file contains a set of strings. You will find property files alongside the DTD files with a .properties extension. Properties in the file are declared with the syntax <code>name=value</code>. An example is shown below:</p>
-
-<pre>notFoundAlert=No files were found matching the criteria.
-deleteAlert=Click OK to have all your files deleted.
-resultMessage=%2$S files found in the %1$S directory.
-</pre>
-
-<p>Here, the property file contains three properties. These would be read by a script and displayed to the user.</p>
-
-<p>A property file can also include comments. A line that begins with a hash sign ('#') is treated as a comment:</p>
-
-<pre># This is a comment
-welcomeMessage=Hello, world!
-# This is another comment
-goodbyeMessage=Come back soon!
-</pre>
-
-<h3 id="Stringbundles" name="Stringbundles">Stringbundles</h3>
-
-<p>You could write the code to read properties yourself, however XUL provides the <code>{{ XULElem("stringbundle") }}</code> element which does this for you. The element has a number of functions which can be used to get strings from the property file and get other locale information. This element reads in the contents of a property file and builds a list of properties for you. You can then look up a particular property by name.</p>
-
-<pre>&lt;stringbundleset id="<code>stringbundleset</code>"&gt;
-&lt;stringbundle id="strings" src="strings.properties"/&gt;
-&lt;/stringbundleset&gt;
-</pre>
-
-<p>Including this element will read the properties from the file 'strings.properties' in the same directory as the XUL file. Use a chrome URL to read a file from the locale:</p>
-
-<pre>&lt;stringbundleset id="<code>stringbundleset</code>"&gt;
-&lt;stringbundle id="strings" src="chrome://myplugin/locale/strings.properties"/&gt;
-&lt;/stringbundleset&gt;
-</pre>
-
-<p>Like other non-displayed elements, you should declare all your stringbundles inside a <code>{{ XULElem("stringbundleset") }}</code> element so that they are all kept together.</p>
-
-<h4 id="Getting_a_String_from_the_Bundle" name="Getting_a_String_from_the_Bundle">Getting a String from the Bundle</h4>
-
-<p>This <code>{{ XULElem("stringbundle") }}</code> element has a number of properties. The first is <code>getString</code> which can be used in a script to read a string from the bundle.</p>
-
-<pre>var strbundle = document.getElementById("strings");
-var nofilesfound=strbundle.getString("notFoundAlert");
-
-alert(nofilesfound);
-</pre>
-
-<ul>
- <li>This example first gets a reference to the bundle using its <code>id</code></li>
- <li>Then, it looks up the string 'notFoundAlert' in the property file. The function <code>getString()</code> returns the value of the string or null if the string does not exist.</li>
- <li>Finally, the string is displayed in an alert box.</li>
-</ul>
-
-<h4 id="Text_Formatting" name="Text_Formatting">Text Formatting</h4>
-
-<p>The next method is <code>getFormattedString()</code>. This method also gets a string with the given key name from the bundle. In addition, each occurrence of formatting code (e.g. <code>%S</code>) is replaced by each successive element in the supplied array.</p>
-
-<pre class="brush: js">var dir = "/usr/local/document";
-var count = 10;
-
-var strbundle = document.getElementById("strings");
-var result = strbundle.getFormattedString("resultMessage", [ dir, count ]);
-
-alert(result);
-</pre>
-
-<p>This example will display following message in an alert box.</p>
-
-<pre>10 files found in the /usr/local/document directory.
-</pre>
-
-<p>You will notice the formatting codes <code>%1$S</code> and <code>%2$S</code> is used, and replaced different order in the array. Formatting code %<em>n</em>$S is specify the position of corresponding parameter directly. Although the word order is not the same in all the languages, by using <code>getFormattedString()</code> the specification of the order can be put out the property files.</p>
-
-<p>In case you need to format a string that already contains the percentage character in it (to get something like "50% Off" returned), escape the percentage character with another percentage character, like this:</p>
-
-<pre>my.percentage.string = %S%% Off
-</pre>
-
-<p>Not escaping the percentage character will generate an incorrect string that strips the space character between the percentage character and the next word of the string ("50%Off").</p>
-
-<h3 id="Escape_non-ASCII_Characters" name="Escape_non-ASCII_Characters">Non-ASCII Characters, UTF-8 and escaping</h3>
-
-<p>Gecko 1.8.x (or later) supports property files encoded in UTF-8. You can and should write non-ASCII characters directly without escape sequences, and save the file as UTF-8 without BOM. Double-check the save options of your text editor, because many don't do this by default. See <a href="/en/Localizing_extension_descriptions" title="en/Localizing_extension_descriptions">Localizing extension descriptions</a> for more details.</p>
-
-<p>In some cases, it may be useful or needed to use escape sequences to express some characters. Property files support escape sequences of the form: <code>\uXXXX</code> , where XXXX is a Unicode character code. For example, to put a space at the beginning or end of a string (which would normally be stripped by the properties file parser), use \u0020 .</p>
-
-<p><br>
- In the next section, we will look at XBL, which can be used to define the <a href="/en/XUL_Tutorial/Introduction_to_XBL" title="en/XUL_Tutorial/Introduction_to_XBL">behavior of an element</a>.</p>
-
-<p>{{ PreviousNext("XUL Tutorial:Localization", "XUL Tutorial:Introduction to XBL") }}</p>
-
-<h2 id="Consulte_Também">Consulte Também</h2>
-
-<ul>
- <li>How to localize html pages, xul files, and js/jsm files from bootstrapped add-ons: <a href="/en-US/Add-ons/Bootstrapped_extensions#Localization_%28L10n%29">Bootstrapped Extensions :: Localization (L10n)</a></li>
-</ul>
diff --git a/files/pt-pt/archive/mozilla/xul/tutorial/index.html b/files/pt-pt/archive/mozilla/xul/tutorial/index.html
deleted file mode 100644
index 8071ee6794..0000000000
--- a/files/pt-pt/archive/mozilla/xul/tutorial/index.html
+++ /dev/null
@@ -1,142 +0,0 @@
----
-title: XUL Tutorial
-slug: Archive/Mozilla/XUL/Tutorial
-tags:
- - NeedsTranslation
- - TopicStub
- - Tutorials
- - XUL
- - XUL_Tutorial
-translation_of: Archive/Mozilla/XUL/Tutorial
----
-<p>This tutorial describes <a href="/en-US/docs/XUL" title="/en-US/docs/XUL">XUL</a>, the <a href="/en-US/docs/XML" title="/en-US/docs/XML">XML</a> User-interface Language. This language was created for the Mozilla application and is used to describe its user interface.</p>
-<h2 id="Introduction" name="Introduction">Introduction</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Introduction" title="/en-US/docs/XUL/Tutorial/Introduction">Introduction</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XUL_Structure" title="/en-US/docs/XUL/Tutorial/XUL_Structure">XUL Structure</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/The_Chrome_URL" title="/en-US/docs/XUL/Tutorial/The_Chrome_URL">The Chrome URL</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Manifest_Files" title="/en-US/docs/XUL/Tutorial/Manifest_Files">Manifest Files</a></li>
-</ul>
-<h2 id="Simple_Elements" name="Simple_Elements">Simple Elements</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Creating_a_Window" title="/en-US/docs/XUL/Tutorial/Creating_a_Window">Creating a Window</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Buttons" title="/en-US/docs/XUL/Tutorial/Adding_Buttons">Adding Buttons</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Labels_and_Images" title="/en-US/docs/XUL/Tutorial/Adding_Labels_and_Images">Adding Labels and Images</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Input_Controls" title="/en-US/docs/XUL/Tutorial/Input_Controls">Input Controls</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Numeric_Controls" title="/en-US/docs/XUL/Tutorial/Numeric_Controls">Numeric Controls</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/List_Controls" title="/en-US/docs/XUL/Tutorial/List_Controls">List Controls</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Progress_Meters" title="/en-US/docs/XUL/Tutorial/Progress_Meters">Progress Meters</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_HTML_Elements" title="/en-US/docs/XUL/Tutorial/Adding_HTML_Elements">Adding HTML Elements</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Using_Spacers" title="/en-US/docs/XUL/Tutorial/Using_Spacers">Using Spacers</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/More_Button_Features" title="/en-US/docs/XUL/Tutorial/More_Button_Features">More Button Features</a></li>
-</ul>
-<h2 id="The_Box_Model" name="The_Box_Model">The Box Model</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/The_Box_Model" title="/en-US/docs/XUL/Tutorial/The_Box_Model">The Box Model</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Element_Positioning" title="/en-US/docs/XUL/Tutorial/Element_Positioning">Element Positioning</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Box_Model_Details" title="/en-US/docs/XUL/Tutorial/Box_Model_Details">Box Model Details</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Groupboxes" title="/en-US/docs/XUL/Tutorial/Groupboxes">Groupboxes</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_More_Elements" title="/en-US/docs/XUL/Tutorial/Adding_More_Elements">Adding More Elements</a></li>
-</ul>
-<h2 id="More_Layout_Elements" name="More_Layout_Elements">More Layout Elements</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Stacks_and_Decks" title="/en-US/docs/XUL/Tutorial/Stacks_and_Decks">Stacks and Decks</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Stack_Positioning" title="/en-US/docs/XUL/Tutorial/Stack_Positioning">Stack Positioning</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Tabboxes" title="/en-US/docs/XUL/Tutorial/Tabboxes">Tabboxes</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Grids" title="/en-US/docs/XUL/Tutorial/Grids">Grids</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Content_Panels" title="/en-US/docs/XUL/Tutorial/Content_Panels">Content Panels</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Splitters" title="/en-US/docs/XUL/Tutorial/Splitters">Splitters</a></li>
-</ul>
-<h2 id="Toolbars_and_Menus" name="Toolbars_and_Menus">Toolbars and Menus</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Toolbars" title="/en-US/docs/XUL/Tutorial/Toolbars">Toolbars</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Simple_Menu_Bars" title="/en-US/docs/XUL/Tutorial/Simple_Menu_Bars">Simple Menu Bars</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/More_Menu_Features" title="/en-US/docs/XUL/Tutorial/More_Menu_Features">More Menu Features</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Popup_Menus" title="/en-US/docs/XUL/Tutorial/Popup_Menus">Popup Menus</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Scrolling_Menus" title="/en-US/docs/XUL/Tutorial/Scrolling_Menus">Scrolling Menus</a></li>
-</ul>
-<h2 id="Events_and_Scripts" name="Events_and_Scripts">Events and Scripts</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Event_Handlers" title="/en-US/docs/XUL/Tutorial/Adding_Event_Handlers">Adding Event Handlers</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/More_Event_Handlers" title="/en-US/docs/XUL/Tutorial/More_Event_Handlers">More Event Handlers</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Keyboard_Shortcuts" title="/en-US/docs/XUL/Tutorial/Keyboard_Shortcuts">Keyboard Shortcuts</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Focus_and_Selection" title="/en-US/docs/XUL/Tutorial/Focus_and_Selection">Focus and Selection</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Commands" title="/en-US/docs/XUL/Tutorial/Commands">Commands</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Updating_Commands" title="/en-US/docs/XUL/Tutorial/Updating_Commands">Updating Commands</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Broadcasters_and_Observers" title="/en-US/docs/XUL/Tutorial/Broadcasters_and_Observers">Broadcasters and Observers</a></li>
-</ul>
-<h2 id="Document_Object_Model" name="Document_Object_Model">Document Object Model</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Document_Object_Model" title="/en-US/docs/XUL/Tutorial/Document_Object_Model">Document Object Model</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Modifying_a_XUL_Interface" title="/en-US/docs/XUL/Tutorial/Modifying_a_XUL_Interface">Modifying a XUL Interface</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Manipulating_Lists" title="/en-US/docs/XUL/Tutorial/Manipulating_Lists">Manipulating Lists</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Box_Objects" title="/en-US/docs/XUL/Tutorial/Box_Objects">Box Objects</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XPCOM_Interfaces" title="/en-US/docs/XUL/Tutorial/XPCOM_Interfaces">XPCOM Interfaces</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XPCOM_Examples" title="/en-US/docs/XUL/Tutorial/XPCOM_Examples">XPCOM Examples</a></li>
-</ul>
-<h2 id="Trees" name="Trees">Trees</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Trees" title="/en-US/docs/XUL/Tutorial/Trees">Trees</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/More_Tree_Features" title="/en-US/docs/XUL/Tutorial/More_Tree_Features">More Tree Features</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Tree_Selection" title="/en-US/docs/XUL/Tutorial/Tree_Selection">Tree Selection</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Custom_Tree_Views" title="/en-US/docs/XUL/Tutorial/Custom_Tree_Views">Custom Tree Views</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Tree_View_Details" title="/en-US/docs/XUL/Tutorial/Tree_View_Details">Tree View Details</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Tree_Box_Objects" title="/en-US/docs/XUL/Tutorial/Tree_Box_Objects">Tree Box Objects</a></li>
-</ul>
-<h2 id="RDF_and_Templates" name="RDF_and_Templates">RDF and Templates</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Introduction_to_RDF" title="/en-US/docs/XUL/Tutorial/Introduction_to_RDF">Introduction to RDF</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Templates" title="/en-US/docs/XUL/Tutorial/Templates">Templates</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Trees_and_Templates" title="/en-US/docs/XUL/Tutorial/Trees_and_Templates">Trees and Templates</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/RDF_Datasources" title="/en-US/docs/XUL/Tutorial/RDF_Datasources">RDF Datasources</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Advanced_Rules" title="/en-US/docs/XUL/Tutorial/Advanced_Rules">Advanced Rules</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Persistent_Data" title="/en-US/docs/XUL/Tutorial/Persistent_Data">Persistent Data</a></li>
-</ul>
-<h2 id="Skins_and_Locales" name="Skins_and_Locales">Skins and Locales</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Style_Sheets" title="/en-US/docs/XUL/Tutorial/Adding_Style_Sheets">Adding Style Sheets</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Styling_a_Tree" title="/en-US/docs/XUL/Tutorial/Styling_a_Tree">Styling a Tree</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Modifying_the_Default_Skin" title="/en-US/docs/XUL/Tutorial/Modifying_the_Default_Skin">Modifying the Default Skin</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Creating_a_Skin" title="/en-US/docs/XUL/Tutorial/Creating_a_Skin">Creating a Skin</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Localization" title="/en-US/docs/XUL/Tutorial/Localization">Localization</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Property_Files" title="/en-US/docs/XUL/Tutorial/Property_Files">Property Files</a></li>
-</ul>
-<h2 id="Bindings" name="Bindings">Bindings</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Introduction_to_XBL" title="/en-US/docs/XUL/Tutorial/Introduction_to_XBL">Introduction to XBL</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Anonymous_Content" title="/en-US/docs/XUL/Tutorial/Anonymous_Content">Anonymous Content</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XBL_Attribute_Inheritance" title="/en-US/docs/XUL/Tutorial/XBL_Attribute_Inheritance">XBL Attribute Inheritance</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Properties_to_XBL-defined_Elements" title="/en-US/docs/XUL/Tutorial/Adding_Properties_to_XBL-defined_Elements">Adding Properties</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Methods_to_XBL-defined_Elements" title="/en-US/docs/XUL/Tutorial/Adding_Methods_to_XBL-defined_Elements">Adding Methods</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Adding_Event_Handlers_to_XBL-defined_Elements" title="/en-US/docs/XUL/Tutorial/Adding_Event_Handlers_to_XBL-defined_Elements">Adding Event Handlers</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XBL_Inheritance" title="/en-US/docs/XUL/Tutorial/XBL_Inheritance">XBL Inheritance</a></li>
- <li><a href="/en-US/docs/Mozilla/Tech/XUL/Tutorial/Using_XBL_from_stylesheets">Creating reusable content using CSS and XBL</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/XBL_Example" title="/en-US/docs/XUL/Tutorial/XBL_Example">XBL Example</a></li>
-</ul>
-<h2 id="Specialized_Window_Types" name="Specialized_Window_Types">Specialized Window Types</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Features_of_a_Window" title="/en-US/docs/XUL/Tutorial/Features_of_a_Window">Features of a Window</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Creating_Dialogs" title="/en-US/docs/XUL/Tutorial/Creating_Dialogs">Creating Dialogs</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Open_and_Save_Dialogs" title="/en-US/docs/XUL/Tutorial/Open_and_Save_Dialogs">Open and Save Dialogs</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Creating_a_Wizard" title="/en-US/docs/XUL/Tutorial/Creating_a_Wizard">Creating a Wizard</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/More_Wizards" title="/en-US/docs/XUL/Tutorial/More_Wizards">More Wizards</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Overlays" title="/en-US/docs/XUL/Tutorial/Overlays">Overlays</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Cross_Package_Overlays" title="/en-US/docs/XUL/Tutorial/Cross_Package_Overlays">Cross Package Overlays</a></li>
-</ul>
-<h2 id="Installation" name="Installation">Installation</h2>
-<ul>
- <li><a href="/en-US/docs/XUL/Tutorial/Creating_an_Installer" title="/en-US/docs/XUL/Tutorial/Creating_an_Installer">Creating an Installer</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Install_Scripts" title="/en-US/docs/XUL/Tutorial/Install_Scripts">Install Scripts</a></li>
- <li><a href="/en-US/docs/XUL/Tutorial/Additional_Install_Features" title="/en-US/docs/XUL/Tutorial/Additional_Install_Features">Additional Install Features</a></li>
-</ul>
-<div class="note">
- <p>This XUL tutorial was originally created by <a class="external" href="http://www.xulplanet.com/ndeakin/">Neil Deakin</a>. He has graciously given us permission to use it as part of the <a href="/en-US/docs/Project:About" title="Project:About">MDN</a>.</p>
-</div>
-<div class="originaldocinfo">
- <h2 id="Original_Document_Information" name="Original_Document_Information">Original Document Information</h2>
- <ul>
- <li>Author: <a class="external" href="http://www.xulplanet.com/ndeakin/">Neil Deakin</a></li>
- <li>Copyright Information: © 1999-2005 XULPlanet.com</li>
- </ul>
-</div>
-<p> </p>
diff --git a/files/pt-pt/archive/mozilla/xul/tutorial/modificar_o_tema_predefinido/index.html b/files/pt-pt/archive/mozilla/xul/tutorial/modificar_o_tema_predefinido/index.html
deleted file mode 100644
index 9c403175a6..0000000000
--- a/files/pt-pt/archive/mozilla/xul/tutorial/modificar_o_tema_predefinido/index.html
+++ /dev/null
@@ -1,70 +0,0 @@
----
-title: Modificar o Tema Predefinido
-slug: Archive/Mozilla/XUL/Tutorial/Modificar_o_tema_predefinido
-tags:
- - Firefox
- - Intermediário
- - Personalização
- - Tutoriais
- - Tutorial XUL
- - XUL
-translation_of: Archive/Mozilla/XUL/Tutorial/Modifying_the_Default_Skin
----
-<p>{{ PreviousNext("XUL Tutorial:Styling a Tree", "XUL Tutorial:Creating a Skin") }}</p>
-
-<div class="warning">
-<p>Esta documentação não foi atualizada para o Firefox Quantum. Support for the <code>userChrome.css</code> file and any of its elements described below are not guaranteed in future versions of Firefox. Using it may lead to hard-to-diagnose bugs or crashes. Use at your own risk!</p>
-</div>
-
-<p>Esta secção descreve como modificar o tema de uma janela.</p>
-
-<h3 id="Skin_Basics" name="Skin_Basics">O Essencial do Tema</h3>
-
-<p>A <a href="/en-US/docs/XUL/Tutorial/Creating_a_Skin">skin</a> is a set of style sheets, images and behaviors that are applied to a XUL file. By applying a different skin, you can change the look of a window without changing its functionality. Firefox provides a skin by default, and you may download others. The XUL for any skins is the same, however the style sheets and images used are different.</p>
-
-<p>For a simple personalized look to a Firefox window, you can easily change the style sheets associated with it. Larger changes can be done by creating an entirely new skin. Firefox has a Theme Manager for changing the default skin. (Although the underlying code for Mozilla calls them skins and the user interface calls them themes, they're both referring to the same thing).</p>
-
-<p>A skin is described using <a href="en/CSS">CSS</a>, allowing you to define the <a href="en/CSS/Getting_Started/Color">colors</a>, <a href="en/CSS/Getting_Started/Boxes">borders</a> and images used to draw elements. The file classic.jar contains the skin definitions. The global directory within this archive contains the main style definitions for how to display the various XUL elements. By changing these files, you can change the look of the XUL applications.</p>
-
-<h3 id="Customize_with_userChrome.css" name="Customize_with_userChrome.css">Personalizar com userChrome.css</h3>
-
-<p>If you place a file called 'userChrome.css' in a directory called 'chrome' inside your user profile directory, you can override settings without changing the archives themselves. This directory should be created when you create a profile and some examples placed there. The file 'userContent.css' customizes Web pages, whereas 'userChrome.css' customizes chrome files.</p>
-
-<p>For example, by adding the following to the end of the file, you can change all <code>{{ XULElem("menubar") }}</code> elements to have a red background.</p>
-
-<pre class="brush: css">menubar {
- background-color: red;
-}
-</pre>
-
-<p>If you open any Firefox window after making this change, the menu bars will be red. Because this change was made to the user style sheet, it affects all windows. This means that the browser menu bar, the bookmarks menu bar and even the find files menu bar will be red.</p>
-
-<h3 id="Skin_Packages" name="Skin_Packages">Pacotes de Temas</h3>
-
-<p>To have the change affect only one window, change the style sheet associated with that XUL file. For example, to add a red border around the menu commands in the bookmarks manager window, add the following to bookmarksManager.css in the classic.jar or your favorite skin archive.</p>
-
-<pre class="brush: css">menuitem {
- border: 1px solid red;
-}
-</pre>
-
-<p>If you look in one of the skin archives, you will notice that each contain a number of style sheets and a number of images. The style sheets refer to the images. You should avoid putting references to images directly in XUL files if you want your content to be skinnable. This is because a particular skin's design might not use images and it may need some more complex design. By referring to the images with CSS, they are easy to remove. It also removes the reliance on specific image filenames.</p>
-
-<p>You can assign images to a button, checkbox and other elements by using the <code>list-style-image</code> property as in the following:</p>
-
-<pre class="brush: css">checkbox {
- list-style-image: url("chrome://findfile/skin/images/check-off.jpg");
-}
-
-checkbox[checked="true"] {
- list-style-image: url("chrome://findfile/skin/images/check-on.jpg");
-}
-</pre>
-
-<p>This code changes the image associated with a checkbox. The first style sets the image for a normal checkbox and the second style sets the image for a checked checkbox. The modifier 'checked=true' makes the style only apply to elements which have their checked attributes set to true.</p>
-
-<p><small>See also : <a href="/en-US/Add-ons/Themes/Obsolete/Creating_a_Skin_for_Firefox">creating a skin for Firefox</a> and <a href="en/CSS/Getting_Started">CSS getting started</a> </small></p>
-
-<p>Na secção seguinte, nós iremos abordar a <a href="/en-US/docs/Mozilla/Tech/XUL/Tutorial/Creating_a_Skin">criação de um novo tema</a></p>
-
-<p>{{ PreviousNext("XUL Tutorial:Styling a Tree", "XUL Tutorial:Creating a Skin") }}</p>
diff --git a/files/pt-pt/archive/mozilla/xul/tutorial/xbl_bindings/index.html b/files/pt-pt/archive/mozilla/xul/tutorial/xbl_bindings/index.html
deleted file mode 100644
index 9b5dd8f99f..0000000000
--- a/files/pt-pt/archive/mozilla/xul/tutorial/xbl_bindings/index.html
+++ /dev/null
@@ -1,215 +0,0 @@
----
-title: XBL bindings
-slug: Archive/Mozilla/XUL/Tutorial/XBL_bindings
-tags:
- - 'CSS:Como_começar'
-translation_of: Archive/Beginner_tutorials/Using_XBL_from_stylesheets
----
-<p>{{ PreviousNext("CSS:Como começar:JavaScript", "CSS:Como começar:Interfaces de usuário XUL") }}</p>
-
-<p>Esta página ilustra como o você pode usar as CSS no Mozilla para melhorar a estrutura de aplicações complexas, fazendo o código e recursos mais facilmente reutilizáveis.</p>
-
-<p>Você aplica esta técnica em uma simples demonstração.</p>
-
-<h2 id="Informa.C3.A7.C3.A3o_XBL_bindings" name="Informa.C3.A7.C3.A3o:_XBL_bindings">Informação: XBL bindings</h2>
-
-<p>A estrutura proporcionada pela linguagem de marcação e as CSS não é ideal para aplicações complexas onde partes precisam ser autônomas e reutilizáveis. Você pode colocar folhas de estilo em arquivos separados, e pode também colocar os scripts em arquivos separados. Mas você precisa ligar estes arquivos no documento como um todo.</p>
-
-<p>Outra limitação estrutural concerne ao conteúdo. Você pode usar as CSS para proporcionar conteúdo para elementos selecionados, mas o conteúdo é limitado a textos e imagens, e seu posicionamento é limitado em antes ou depois do elemento selecionado.</p>
-
-<p>Mozilla proporciona um mecanismo que supera estas limitações: <em>XBL</em> (XML Bindings Language). Você pode usar o XBL para ligar elementos selecionados ao próprio:</p>
-
-<ul>
- <li>Folha de estilo</li>
- <li>Conteúdo</li>
- <li>Propriedades e métodos</li>
- <li>Manipuladores de eventos</li>
-</ul>
-
-<p>Evitando ligar tudo no nível do documento, você pode fazer as partes autônomas que são fáceis de manter e reutilizar.</p>
-
-<table style="border: 1px solid #36b; padding: 1em; background-color: #f4f4f4; margin-bottom: 1em; width: 100%;">
- <caption>Mais detalhes</caption>
- <tbody>
- <tr>
- <td>Para mais informação sobre XBL bindings, veja a página <a href="/pt/XBL" title="pt/XBL">XBL</a> neste wiki.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="A.C3.A7.C3.A3o_Uma_demonstra.C3.A7.C3.A3o_XBL" name="A.C3.A7.C3.A3o:_Uma_demonstra.C3.A7.C3.A3o_XBL">Ação: Uma demonstração XBL</h2>
-
-<p>Crie um novo documento HTML, <code>doc6.html</code>. Copie e cole o conteúdo daqui:</p>
-
-<div style="width: 48em;">
-<pre>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"&gt;
-&lt;HTML&gt;
-
-&lt;HEAD&gt;
-&lt;TITLE&gt;Como Começar Mozilla CSS - Demonstração XBL &lt;/TITLE&gt;
-&lt;LINK rel="stylesheet" type="text/css" href="style6.css"&gt;
-&lt;/HEAD&gt;
-
-&lt;BODY&gt;
-&lt;H1&gt;Demonstração XBL&lt;/H1&gt;
-&lt;DIV id="square"&gt;Clique Aqui&lt;/DIV&gt;
-&lt;/BODY&gt;
-
-&lt;/HTML&gt;
-</pre>
-</div>
-
-<p>Crie um novo arquivo CSS, <code>style6.css</code>. Esta folha de estilo contém o documento de estilo. Copie e cole o conteúdo daqui:</p>
-
-<div style="width: 48em;">
-<pre>/*** Demonstração XBL ***/
-#square {
- -moz-binding: url("square.xbl#square");
- }
-</pre>
-</div>
-
-<p>Crie um novo arquivo de texto, <code>square.xbl</code>. Este arquivo contém o XBL binding. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela para pegar tudo isto:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>&lt;?xml version="1.0"?&gt;
-&lt;!DOCTYPE bindings&gt;
-&lt;bindings xmlns="http://www.mozilla.org/xbl"
- xmlns:html="http://www.w3.org/1999/xhtml"&gt;
-
-&lt;binding id="square"&gt;
-
- &lt;resources&gt;
- &lt;stylesheet src="bind6.css"/&gt;
- &lt;/resources&gt;
-
- &lt;content&gt;
- &lt;html:div anonid="square"/&gt;
- &lt;html:button anonid="button" type="button"&gt;
- &lt;children/&gt;
- &lt;/html:button&gt;
- &lt;/content&gt;
-
- &lt;implementation&gt;
-
- &lt;field name="square"&gt;&lt;![CDATA[
- document.getAnonymousElementByAttribute(this, "anonid", "square")
- ]]&gt;&lt;/field&gt;
-
- &lt;field name="button"&gt;&lt;![CDATA[
- document.getAnonymousElementByAttribute(this, "anonid", "button")
- ]]&gt;&lt;/field&gt;
-
- &lt;method name="doDemo"&gt;
- &lt;body&gt;&lt;![CDATA[
- this.square.style.backgroundColor = "#cf4"
- this.square.style.marginLeft = "20em"
- this.button.setAttribute("disabled", "true")
- setTimeout(this.clearDemo, 2000, this)
- ]]&gt;&lt;/body&gt;
- &lt;/method&gt;
-
- &lt;method name="clearDemo"&gt;
- &lt;parameter name="me"/&gt;
- &lt;body&gt;&lt;![CDATA[
- me.square.style.backgroundColor = "transparent"
- me.square.style.marginLeft = "0"
- me.button.removeAttribute("disabled")
- ]]&gt;&lt;/body&gt;
- &lt;/method&gt;
-
- &lt;/implementation&gt;
-
- &lt;handlers&gt;
- &lt;handler event="click" button="0"&gt;&lt;![CDATA[
- if (event.originalTarget == this.button) this.doDemo()
- ]]&gt;&lt;/handler&gt;
- &lt;/handlers&gt;
-
- &lt;/binding&gt;
-
-&lt;/bindings&gt;
-</pre>
-</div>
-
-<p>Crie um novo arquivo CSS, <code>bind6.css</code>. Esta folha de estilo separada contém o estilo para o binding. Copie e cole o conteúdo daqui:</p>
-
-<div style="width: 48em;">
-<pre>/*** Demonstração XBL ***/
-[anonid="square"] {
- width: 20em;
- height: 20em;
- border: 2px inset gray;
- }
-
-[anonid="button"] {
- margin-top: 1em;
- padding: .5em 2em;
- }
-</pre>
-</div>
-
-<p>Abra o documento no seu navegador e pressione o botão.</p>
-
-<p>O wiki não suporta JavaScript nas páginas, então não é possível demonstrar aqui. Deve parecer como isto, antes e depois de você pressionar o botão:</p>
-
-<table>
- <tbody>
- <tr>
- <td style="padding-right: 2em;">
- <table style="border: 2px outset #36b; padding: 0 4em .5em .5em;">
- <tbody>
- <tr>
- <td>
- <p><strong>Demonstração XBL</strong></p>
- </td>
- </tr>
- </tbody>
- </table>
- </td>
- <td>
- <table style="border: 2px outset #36b; padding: 0 4em .5em .5em;">
- <tbody>
- <tr>
- <td>
- <p><strong>Demonstração XBL</strong></p>
- </td>
- </tr>
- </tbody>
- </table>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>Notas sobre esta demonstração:</p>
-
-<ul>
- <li>O documento HTML é ligado à folha de estilo normalmente mas isto não liga nenhum código JavaScript.</li>
- <li>O documento não contém nenhum botão. Ele contém somente o texto do botão. O botão é adicionado por binding.</li>
- <li>O documento folha de estilo liga o binding.</li>
- <li>O binding liga isto à sua folha de estilo, e isto suporta seu conteúdo e o código JavaScript. Então o binding é autônomo.</li>
-</ul>
-
-<table style="border: 1px solid #36b; padding: 1em; background-color: #fffff4; margin-bottom: .5em;">
- <caption>Desafios</caption>
- <tbody>
- <tr>
- <td>Mude o arquivo XBL de modo que o quadrado dobre a largura ao mudar de cor, em vez de saltar para a direita.
- <p>Use a ferramenta DOM Inspector para inspecionar o documento, reavaliando o conteúdo adicionado.</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="O_que_vem_depois.3F" name="O_que_vem_depois.3F">O que vem depois?</h3>
-
-<p>Se você teve dificuldade para entender esta página, ou se você tem algum comentário sobre ela, por favor contribua nesta página de <a href="/Talk:pt/CSS/Como_come%C3%A7ar/XBL_bindings" title="Talk:pt/CSS/Como_começar/XBL_bindings">Discussão</a>.</p>
-
-<p>Nesta demonstração, o quadrado e o botão foram <em>widgets</em> independentes que funcionam com um documento HTML. Mozilla tem uma linguagem de marcação especializada para criação de interfaces de usuários. A próxima página demostra isto: <strong><a href="/pt/CSS/Como_come%C3%A7ar/Interfaces_de_usu%C3%A1rio_XUL" title="pt/CSS/Como_começar/Interfaces_de_usuário_XUL">Interfaces de usuário XUL</a></strong></p>
-
-<p>{{ PreviousNext("CSS:Como começar:JavaScript", "CSS:Como começar:Interfaces de usuário XUL") }}</p>
-
-<p><span class="comment">Categorias</span></p>
-
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/archive/normas_web/index.html b/files/pt-pt/archive/normas_web/index.html
deleted file mode 100644
index f7debd671a..0000000000
--- a/files/pt-pt/archive/normas_web/index.html
+++ /dev/null
@@ -1,151 +0,0 @@
----
-title: Normas da Web
-slug: Archive/Normas_Web
-tags:
- - Normas da Web
-translation_of: Archive/Web_Standards
----
-<div>As <strong>normas da <em>Web</em></strong> são cuidadosamente projetadas para distribuir os maiores benefícios para o maior número de utilizadores da <em>Web</em> enquanto assegura a viabilidade a longo prazo de qualquer documento publicado na <em>Web</em>. Projetar e criar com estas normas simplifica e baixa o custo de produção, enquanto distribui sites que estão acessíveis para mais pessoas e mais tipos de dispositivos da Internet. Os sites desenvolvidos com a utilziação destas linhas irão continuar a funcionar corretamente enquanto os navegadores de PCs tradicionais evoluem, e à medida que os novos dispositivos da Internet chegam ao mercado.</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h4 id="Documenta.C3.A7.C3.A3o" name="Documenta.C3.A7.C3.A3o"><a href="/en-US/docs/tag/Web%20Standards">Documentação</a></h4>
-
- <dl>
- <dt><a href="pt/Migrando_aplica%c3%a7%c3%b5es_do_Internet_Explorer_para_o_Mozilla">Migrando aplicações do Internet Explorer para o Mozilla</a></dt>
- <dd><small>Ever have trouble getting your Internet Explorer-specific Web applications to work with Mozilla? This article covers common issues associated with migrating applications to the open source Mozilla-based browser.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt-PT/docs/Archive/Utilizar_Normas_Web_nas_suas_Paginas_da_Web">Utilizar as Normas da <em>Web</em> nas suas Páginas da <em>Web</em></a></dt>
- <dd><small>This article provides an overview of the process for upgrading the content of your web pages to conform to the W3C web standards.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="pt/Choosing_Standards_Compliance_Over_Proprietary_Practices">Choosing Standards Compliance Over Proprietary Practices</a></dt>
- <dd><small>In the development world, there is a need for standards because applications are designed across multiple development groups.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="pt/The_Business_Benefits_of_Web_Standards">The Business Benefits of Web Standards</a></dt>
- <dd><small>This article discusses how adhering to web standards, and leaving behind proprietary markup and technologies, can contribute to a company's business goals.</small></dd>
- </dl>
-
- <p><span class="alllinks"><a>Veja todos...</a></span></p>
- </td>
- <td>
- <h4 id="Comunidade" name="Comunidade">Comunidade</h4>
-
- <p>{{ DiscussionList("dev-web-development", "mozilla.dev.web-development") }}</p>
-
- <ul>
- <li><a class="external" href="http://webstandards.org/">The Web Standards Project</a></li>
- <li><a class="external" href="http://webdevfeedhouse.com/">WebDev FeedHouse</a></li>
- <li><a href="pt/Normas_Web/Comunidade">Outros links para comunidades...</a></li>
- </ul>
-
- <h4 id="Ferramentas" name="Ferramentas">Ferramentas</h4>
-
- <ul>
- <li><a class="link-https" href="https://addons.mozilla.org/firefox/60/">Web Developer extension</a></li>
- <li><a class="external" href="http://validator.w3.org/">Markup validation service (W3C)</a></li>
- <li><a class="external" href="http://jigsaw.w3.org/css-validator/">CSS validation service (W3C)</a></li>
- </ul>
-
- <p><span class="alllinks"><a>Veja todas...</a></span></p>
-
- <h4 id="T.C3.B3picos_relacionados" name="T.C3.B3picos_relacionados">Tópicos relacionados</h4>
-
- <dl>
- <dd><a href="/pt-PT/docs/Web/CSSpt/CSS">CSS</a>, <a href="/pt-PT/docs/DHTML">DHTML</a>, <a href="/pt-PT/docs/Web/HTML">HTML</a>, <a href="/pt-PT/docs/Web/Guide">Desenvolvimento da Web</a>, <a href="/pt-PT/docs/XHTML">XHTML</a>, <a href="/pt-PT/docs/Introducao_a_XML">XML</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<hr>
-<p><small> <a class="external" href="http://webstandards.org/">O Projeto de Normas da Web</a></small></p>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody>
- <tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody>
- <tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/archive/plugins/out_of_process_plugins/o_detetor_plugin_hang_detector/index.html b/files/pt-pt/archive/plugins/out_of_process_plugins/o_detetor_plugin_hang_detector/index.html
deleted file mode 100644
index c02e3fa0c1..0000000000
--- a/files/pt-pt/archive/plugins/out_of_process_plugins/o_detetor_plugin_hang_detector/index.html
+++ /dev/null
@@ -1,46 +0,0 @@
----
-title: O detetor de falhas de plug-ins
-slug: Archive/Plugins/Out_of_process_plugins/O_detetor_plugin_hang_detector
-tags:
- - Extras
- - Plug-ins
- - Plugins
-translation_of: Archive/Plugins/Out_of_process_plugins/The_plugin_hang_detector
----
-<p>Para ajudar a proteger os utilizadores contra <em>plug-ins</em> e <em>scripts</em> de <em>plug-ins</em> que deixam de responder, o Firefox agora inclui um "detector de falhas", que vigia os <em>plug-ins</em> que deixam de funcionar.</p>
-
-<h2 id="Como_é_que_este_funciona">Como é que este funciona</h2>
-
-<p>When Firefox makes an <a href="/en/NPAPI" title="en/NPAPI">NPAPI</a> call to a plugin which is running in its own process, the NPAPI call is translated into an inter-process communication (IPC) request that is posted to the process. Firefox then waits for the response. If a response is not received within a given amount of time (by default, this is 45 seconds), the plugin is assumed to have locked up, and Firefox terminates the plugin by following these steps:</p>
-
-<ol>
- <li>The plugin's process is stopped and a plugin-process "crash" mini-dump is retrieved.</li>
- <li>A "crash" mini-dump is collected from the main browser process.</li>
- <li>The plugin's process is terminated.</li>
- <li>The crashed plugin user interface is displayed; this interface lets the user choose to reload the page and try again.</li>
-</ol>
-
-<h2 id="O_que_ativa_o_detetor_de_falhas">O que ativa o detetor de falhas</h2>
-
-<p>There are several possible situations that can trigger the hang detector:</p>
-
-<ul>
- <li>A plugin script—such as ActionScript code running in the Flash plugin—may be in an infinite loop or is performing an extremely long computation without yielding control.</li>
- <li>The plugin itself may have a bug such as a threading deadlock, which caused it to stop responding.</li>
- <li>The plugin isn't deadlocked, but isn't processing events quickly enough, causing a backlog that eventually causes an event to wait too long to be processed.</li>
- <li>The implementation of Firefox out-of-process plugins has a bug causing a deadlock.</li>
-</ul>
-
-<h2 id="O_que_acontece_com_o_relatório_de_falhas">O que acontece com o relatório de falhas?</h2>
-
-<p>When the hang detector catches a problem, it gathers up the mini-dumps and submits the data to <a class="external" href="http://crash-stats.mozilla.com" title="http://crash-stats.mozilla.com/">crash-stats</a>, providing handy debugging information to developers so that the problem can be categorized and, if possible, corrected. The <a class="external" href="http://crash-stats.mozilla.com/query#" title="http://crash-stats.mozilla.com/query#">advanced query page</a> makes it possible to differentiate between crash reports and hang reports, and lets search results be limited to either the browser process or the plugin process. In addition, the browser hang report and the corresponding plugin hang report are automatically cross-linked for you.</p>
-
-<h2 id="E_se_eu_não_quiser_terminar_a_falha_de_plug-ins">E se eu não quiser terminar a falha de <em>plug-ins</em>?</h2>
-
-<p>Sometimes developers may want to prevent hung plugins from being terminated; this could be useful, for example, while debugging script code in Flash or if you're using a debugger that causes event processing to be delayed (such as the Flash debugger).</p>
-
-<p>You can change the timeout period used by the hang detector by changing the value of the <code>dom.ipc.plugins.timeoutSecs</code> preference. The value of this preference indicates the number of seconds an event response must take before the plugin is considered to be hung.</p>
-
-<p>Setting this preference to -1 disables the plugin hang detector entirely.</p>
-
-<p>See <a class="external" href="http://kb.mozillazine.org/About:config" title="http://kb.mozillazine.org/About:config">about:config on MozillaZine</a> for information on changing preferences like this one.</p>
diff --git a/files/pt-pt/archive/rss/como_começar/como_o_rss_trabalha/index.html b/files/pt-pt/archive/rss/como_começar/como_o_rss_trabalha/index.html
deleted file mode 100644
index 3473649d08..0000000000
--- a/files/pt-pt/archive/rss/como_começar/como_o_rss_trabalha/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
----
-title: Como Funciona o RSS
-slug: Archive/RSS/Como_começar/Como_o_RSS_trabalha
-tags:
- - 'RSS:Como_começar'
-translation_of: Archive/RSS/Getting_Started/How_RSS_Works
----
-<p>Esta página explica como funciona o RSS. Ainda não estará pronto para criar os seus próprios ficheiros RSS, mas estará a aprender sobre os diferentes sistemas que fazem parte do RSS syndication.</p>
-
-<h2 id="Como_o_RSS_trabalha" name="Como_o_RSS_trabalha">Como Funciona o RSS</h2>
-
-<p>São dois, os componentes principais que fazem parte do RSS syndication: o <em>servidor</em> e o <em>cliente</em> final.</p>
-
-<p>O <em>servidor</em> é a parte do sistema que produz o feed RSS. Um sistema de notícias ou um sistema de blog estaria no lado servidor do RSS syndication. Um rádio por IP estaria no lado servidor do RSS syndication. Uma TV por IP estaria no lado servidor do RSS syndication.</p>
-
-<p>O<em> cliente</em> é a parte final do RSS syndication que chega ao usuário. O navegador Mozilla Firefox estaria no lado cliente do RSS syndication. Um agregador desktop de RSS estaria no lado cliente do RSS. Um agregador web também estaria no lado cliente do RSS syndication.</p>
-
-<p>{{ PreviousNext("RSS:Como começar:Porque usar RSS", "RSS:Como começar:Sindicar") }}</p>
diff --git a/files/pt-pt/archive/rss/como_começar/index.html b/files/pt-pt/archive/rss/como_começar/index.html
deleted file mode 100644
index 547a924f4d..0000000000
--- a/files/pt-pt/archive/rss/como_começar/index.html
+++ /dev/null
@@ -1,57 +0,0 @@
----
-title: Como começar
-slug: Archive/RSS/Como_começar
-tags:
- - PrecisaDeRevisãoEditorial
- - RSS
- - 'RSS:Como_começar'
-translation_of: Archive/RSS/Getting_Started
----
-<p> </p>
-<h3 id="Introdu.C3.A7.C3.A3o" name="Introdu.C3.A7.C3.A3o">Introdução</h3>
-<p>Este tutorial é uma introdução à <b>Really Simple Syndication</b> (<b>RSS</b>).</p>
-<p>Isto guia-o, passo-a-passo, através do básico do RSS e mostra você trabalhando exemplos em ação. Este tutorial segue o mantra que
- <i>
- o melhor caminho para aprender é fazer</i>
- . Por isso, você deverá criar seus próprios arquivos RSS à mão.</p>
-<h4 id="Quem_deve_usar_este_tutorial.3F" name="Quem_deve_usar_este_tutorial.3F">Quem deve usar este tutorial?</h4>
-<p>Este tutorial é na maior parte para iniciantes em RSS (i.e., com nenhum ou muito pouca experiência prévia em RSS). Entretanto, estes experimentos com RSS podem também achar este útil como uma ajuda no prenchimento de qualquer informação perdida sobre RSS que não estavam cientes sobre, ou como um guia para "refrescar".</p>
-<p>Este tutorial assume que você tem alguma experiência com <a href="pt/HTML">HTML</a> (ou <a href="pt/XML">XML</a>) e que você está confortável com os básicos da
- <i>
- marcação</i>
- . Em outras palavras, um código como este não atrapalha você:</p>
-<pre class="eval"> Isto é um pouco de marcação com tags &lt;b&gt;bold&lt;/b&gt;.
-</pre>
-<p>Se você está confortável com isto, você não deve ter problemas aprendendo RSS.</p>
-<div class="note">
- <p><b>NOTA</b>: Se você NÃO é um desenvolvedor web e NÃO que se tornara um, então este tutorial NÃO é para você. Você precisa estar confortável com a criação
- <i>
- marcação</i>
- para estar apto para usar este tutorial efetivamente.</p>
-</div>
-<h4 id="O_que_voc.C3.AA_necessita_antes_de_come.C3.A7ar.3F" name="O_que_voc.C3.AA_necessita_antes_de_come.C3.A7ar.3F">O que você necessita antes de começar?</h4>
-<p>Para pegar o máximo deste tutorial, você precisará de um editor de texto e um leitor RSS. Você precisa também saber como usar cada um destes.</p>
-<div class="note">
- <p><b>NOTA</b>: Um processador de palavras não é um editor de texto. Se um processador de palavras é usado, você DEVE ter certeza de salvar seus arquivos RSS em um (puro e simples) formato de texto.</p>
-</div>
-<p>Não é obrigatória a criação de arquivos RSS neste tutorial (você pode somente ler), mas isto seria um meio menos eficiente para você aprender. Você reterá mais informação e absorverá melhor se você criar os seus próprios arquivos RSS.</p>
-<h4 id="Como_usar_este_tutorial" name="Como_usar_este_tutorial">Como usar este tutorial</h4>
-<p>Embora cada página neste tutorial tenha sido escrita de modo que que possa agir como um tutorial
- <i>
- sozinho</i>
- , isto assume que você já possuí o conhecimento da informação ensinada nas páginas anteriores deste tutorial. Embora você possa pular para qualquer ponto do tutorial que você deseje, nós sugerimos aos iniciantes em RSS que leiam este tutorial na ordem.</p>
-<h3 id="Tutorial" name="Tutorial">Tutorial</h3>
-<ol>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/O_que_%c3%a9_RSS">O que é RSS</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Porque_usar_RSS">Porque usar RSS</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Como_o_RSS_trabalha">Como o RSS trabalha</a></b></li>
- <li><b>Hello World</b> (artigo ainda não escrito) <span class="comment">link removido porque muitas pessoas colocam seus hello word nele</span></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Sindicar">Sindicar</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Blogs">Blogs</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Broadcatching">Broadcatching</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Microformatos">Microformatos</a></b></li>
- <li><b><a href="pt/RSS/Como_come%c3%a7ar/Advanced_Broadcatching">Advanced Broadcatching</a></b></li>
-</ol>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
-<p>{{ languages( { "en": "en/RSS/Getting_Started", "es": "es/RSS/Primeros_pasos", "fr": "fr/RSS/Premiers_pas", "pl": "pl/RSS/Na_pocz\u0105tek" } ) }}</p>
diff --git a/files/pt-pt/archive/rss/como_começar/o_que_é_rss/index.html b/files/pt-pt/archive/rss/como_começar/o_que_é_rss/index.html
deleted file mode 100644
index dceb21a856..0000000000
--- a/files/pt-pt/archive/rss/como_começar/o_que_é_rss/index.html
+++ /dev/null
@@ -1,242 +0,0 @@
----
-title: O que é RSS
-slug: Archive/RSS/Como_começar/O_que_é_RSS
-tags:
- - 'RSS:Como_começar'
-translation_of: Archive/RSS/Getting_Started/What_is_RSS
----
-<p>Esta página explica o que é o RSS. Você ainda não criará seus próprios arquivos RSS, mas você verá como o RSS é comumente usado e exemplos simples de arquivos RSS para uso comum. Você também acompanhará um pouco da história do RSS.</p>
-
-<h3 id="What_is_RSS.3F" name="What_is_RSS.3F">O que é RSS?</h3>
-
-<p>As <a class="internal" href="/Pt/RSS/Vers%C3%A3o" title="pt/RSS/Versão">versões de RSS</a> mais populares são as baseadas na linguagem de marcação <a href="/pt/XML" title="pt/XML">XML</a> usada para publicação (syndication). (Apesar dos formatos RSS baseados em <a href="/pt/RDF" title="pt/RDF">RDF</a> existirem. Os antigos <a href="/pt/RSS/Version/0.90" title="pt/RSS/Version/0.90">RSS 0.90</a> e <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a>.) Os usos mais comuns do RSS syndication são para publicações de web sites de notícias, blogs, rádio de Internet e programação televisiva para Internet.</p>
-
-<p>Este tutorial ensina o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a>. Mas se esforça em apontar as diferenças com as outras <a href="/pt/RSS/Version" title="pt/RSS/Version">versões de RSS</a>.</p>
-
-<p>O RSS é praticamente nunca escrito à mão, mas quase sempre criado por softwares de servidores (normalmente escritos em uma linguagem como PHP, Java, C# ou Python) nos servidores web. Contudo, para que possamos aprender sobre o RSS nós criaremos os scripts RSS à mão.</p>
-
-<h3 id="Short_History_of_RSS" name="Short_History_of_RSS">Uma breve história do RSS</h3>
-
-<p>Em março de 1999 a Netscape lançou o <a class="internal" href="/pt/RSS/Version/0.90" title="pt/RSS/Version/0.90">RSS 0.90</a>. Era muito diferente do RSS de hoje. Não era realmente um formato para publicação, mas um formato que fornecia um sumário de um website. Na verdade, naquele tempo, o RSS não atendia por <strong>Really Simple Syndication</strong> mas por <strong>Rich Site Summary</strong>.</p>
-
-<p>Em julho de 1999 o <a class="internal" href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a> foi lançado. Como o <a class="internal" href="/pt/RSS/Version/0.90" title="pt/RSS/Version/0.90">RSS 0.90</a>, o RSS 0.91 da Netscape também era de um formato para fornecimento de um sumário de um website e não realmente um formato de publicação (como é hoje). O RSS 0.91 da Netscape foi criado para simplificar as coisas. O RSS 0.90 era baseado em <a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a>. (O que muitos acharam ser excessivamente complexo). Já o RSS 0.91 da Netscape era apenas baseado em <a class="internal" href="/pt/XML" title="pt/XML">XML</a> e acrescentou um <a class="internal" href="/pt/DTD" title="pt/DTD">DTD</a> para permitir diversas entities (comumente encontradas em <a class="internal" href="/pt/HTML" title="pt/HTML">HTML</a>).</p>
-
-<p>E nesse ponto a Netscape tornou o <a class="internal" href="/pt/RSS/Version/0.90" title="pt/RSS/Version/0.90">RSS 0.90</a> baseado em <a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a> obsoleto e disse a todos que usassem o <a class="internal" href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a> que era baseado no <a class="internal" href="/pt/XML" title="pt/XML">XML</a>.</p>
-
-<p>Em junho de 2000 o <a class="internal" href="/pt/RSS/Version/0.91/Userland" title="pt/RSS/Version/0.91/Userland">RSS 0.91 da Userland</a> foi lançado. (E, sim, isso significa que havia 2 diferentes versões de <a class="internal" href="/pt/RSS/Version/0.91" title="pt/RSS/Version/0.91">RSS 0.91</a>). A diferença entre as 2 diferentes versões de <a class="internal" href="/pt/RSS/Version/0.91" title="pt/RSS/Version/0.91">RSS 0.91</a> — <a class="internal" href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">da Netscape</a> e <a class="internal" href="/pt/RSS/Version/0.91/Userland" title="pt/RSS/Version/0.91/Userland">da Userland</a> — é que a da Userland não possuia o <a class="internal" href="/pt/DTD" title="pt/DTD">DTD</a> que o Netscape trazia; e por isso, não possuía os entities extras que o Netscape tinha (comumente encontradas em <a class="internal" href="/pt/HTML" title="pt/HTML">HTML</a>). Fora isso entretanto, eram a mesma coisa. Tecnicamente falando, o RSS 0.91 da Userland era um subset do RSS 0.91 da Netscape.</p>
-
-<p>Em dezembro de 2000 o grupo RSS-DEV lançou o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a>. Essa versão não era mais puramente baseado em <a href="/pt/XML" title="pt/XML">XML</a>, mas baseado em <a href="/pt/RDF" title="pt/RDF">RDF</a> (como o original, e agora obsoleto <a href="/pt/RSS/Version/0.90" title="pt/RSS/Version/0.90">RSS 0.90</a>). O grupo RSS-DEV mudou o significado de RSS, e transformou-o em <strong>RDF Site Summary</strong>. (Ao menos, era assim que atendia a versão do RSS deles.)</p>
-
-<p>Então aqui tínhamos o <a href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a>, o <a href="/pt/RSS/Version/0.91/Userland" title="pt/RSS/Version/0.91/Userland">RSS 0.91 da Userland</a>, e o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> do grupo RSS-DEV.</p>
-
-<p>Mais tarde, ainda em dezembro, a Userland lançou o <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a>. O RSS 0.92 deveria substituir o <a href="/pt/RSS/Version/0.91/Userland" title="pt/RSS/Version/0.91/Userland">RSS 0.91</a> deles. (Se você perceber, entretanto, os números das versões dos RSS ficaram bagunçados neste ponto, pois o RSS 0.92 era mais novo que o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a>.)</p>
-
-<p>E aqui tínhamos o <a href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a>, o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> do grupo RSS-DEV, e o <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a> da Userland.</p>
-
-<p>Em abril de 2001 a Userland lançou um beta para o <a href="/pt/RSS/Version/0.93" title="pt/RSS/Version/0.93">RSS 0.93</a>. Essa versão do RSS nunca foi transformado em "final" e permaneceu beta nunca tornando-se um substituto para o <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a>.</p>
-
-<p>Em agosto de 2002 a Userland lançou o beta do <a href="/pt/RSS/Version/0.94" title="pt/RSS/Version/0.94">RSS 0.94</a>. E assim como o <a href="/pt/RSS/Version/0.93" title="pt/RSS/Version/0.93">RSS 0.93</a>, essa versão nunca foi feita "final" e permaneceu beta, nunca tornando-se um substituto para o RSS  <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a>.</p>
-
-<p>Então, aqui <em>ainda</em> tínhamos o <a href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a>, o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> do grupo RSS-DEV, e o <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a> da Userland. (Apesar de alguns estarem usando <a href="/pt/RSS/Version/0.93" title="pt/RSS/Version/0.93">RSS 0.93</a> e <a href="/pt/RSS/Version/0.94" title="pt/RSS/Version/0.94">RSS 0.94</a> mesmo que não devessem.)</p>
-
-<p>Em setembro de 2002 a Userland lança o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a>. O RSS 2.0 deveria substituir o <a href="/pt/RSS/Version/0.92" title="pt/RSS/Version/0.92">RSS 0.92</a> (e os betas <a href="/pt/RSS/Version/0.93" title="pt/RSS/Version/0.93">RSS 0.93</a> e <a href="/pt/RSS/Version/0.94" title="pt/RSS/Version/0.94">RSS 0.94</a> que ninguém deveria estar usando). A Userland pulou esses números de versão até o <strong>2.0</strong> porque o RSS-DEV já havia usado o <strong>1.0</strong> em seu <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> baseado em <a href="/pt/RDF" title="pt/RDF">RDF</a>.</p>
-
-<p>Neste ponto tínhamos o <a href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a>, o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> do grupo RSS-DEV e o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a> da Userland.</p>
-
-<p>Agora, a história não acaba simplesmente lá. Uma vez em novembro de 2002 e outra em janeiro de 2003, o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a> foi modificado de sua especificação original pela Userland. E apesar desses serem diferentes, foram todos chamados de RSS 2.0 no elemento <a href="/pt/RSS/Element/rss" title="pt/RSS/Element/rss">&lt;rss&gt;</a>.</p>
-
-<p>E aqui, nesse ponto, nós ainda temos o <a href="/pt/RSS/Version/0.91/Netscape" title="pt/RSS/Version/0.91/Netscape">RSS 0.91 da Netscape</a> (uma vez que a Netscape nunca o tornou obsoleto) apesar da maioria das pessoas não usarem mais. Elas usavam tanto o <a href="/pt/RSS/Version/1.0" title="pt/RSS/Version/1.0">RSS 1.0</a> baseado no <a href="/pt/RDF" title="pt/RDF">RDF</a> como o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a> baseado no <a href="/pt/XML" title="pt/XML">XML</a>. Com o RSS 2.0 baseado no XML parecendo ser o mais popular. (Esse tutorial usa o <a href="/pt/RSS/Version/2.0" title="pt/RSS/Version/2.0">RSS 2.0</a>.)</p>
-
-<h3 id="How_RSS_is_Used_Today" name="How_RSS_is_Used_Today">Como o RSS é utilizado hoje</h3>
-
-<p>Hoje, o RSS é principalmente usado para publicação (syndication). Syndication é o processo de dizer aos outros que você tem conteúdo para eles consumirem. Em outras palavras, quando você publica (syndicate), você está dizendo a todos algo como: "Ei pessoal, eu tenho artigos que gostaria que todos viessem e lessem. Basta se inscrever ao meu RSS feed e você poderá acessar os mais recentes todas as vezes."</p>
-
-<div class="note">
-<p><strong>NOTA</strong>: Se você fornecer um RSS não protegido por password, você estará implicitamente dando a todos permissão para usar o conteúdo em seu RSS feed em todos os meios que eles verem que se encaixa. Eles podem ler. Eles podem fazer uma cópia local. Podem compartilhar essa cópia local. Podem pôr em seus websites. Podem até mesmo republicar. E mais.</p>
-
-<p>Se você não quer que nada disso aconteça então não ponha um RSS feed não protegido por password. (E não torne o password público, claro.)</p>
-</div>
-
-<p>Os websites de notícias usam RSS para fornecer a todos uma lista de seus mais recentes artigos. Por exemplo:</p>
-
-<pre class="eval"> <span class="nowiki"> &lt;?xml version="1.0"?&gt;
-
- &lt;rss version="2.0"&gt;
-
-  &lt;channel&gt;
- &lt;title&gt;Example News Site&lt;/title&gt;
- &lt;description&gt;This is an Example News Site.&lt;/description&gt;
- &lt;lastBuildDate&gt;Wed, 27 Jul 2005 00:30:30 -0700&lt;/lastBuildDate&gt;
- &lt;link&gt;http://news.example.com/&lt;/link&gt;
-
- &lt;item&gt;
- &lt;title&gt;News Flash: I Like Bread&lt;/title&gt;
- &lt;guid isPermaLink="false"&gt;4d4a0a12-f188-4c97-908b-eea27213c2fe&lt;/guid&gt;
- &lt;pubDate&gt;Wed, 27 Jul 2005 00:30:30 -0700&lt;/pubDate&gt;
- &lt;link&gt;http://news.example.com/artcle/554&lt;/link&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Big News Today: Birds Fly&lt;/title&gt;
- &lt;guid isPermaLink="false"&gt;c4a63f09-b45b-466b-8773-6ff264001ab7&lt;/guid&gt;
- &lt;pubDate&gt;Tue, 19 Jul 2005 04:32:51 -0700&lt;/pubDate&gt;
- &lt;link&gt;http://news.example.com/artcle/553&lt;/link&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Fire is Hot&lt;/title&gt;
- &lt;guid isPermaLink="false"&gt;c1795324-d5ea-44fa-95b1-b5ce2090d4f1&lt;/guid&gt;
- &lt;pubDate&gt;Sun, 15 May 2005 13:02:08 -0700&lt;/pubDate&gt;
- &lt;link&gt;http://news.example.com/artcle/552&lt;/link&gt;
- &lt;/item&gt;
- &lt;/channel&gt;
-
- &lt;/rss&gt; </span></pre>
-
-<p>Os blogs usam o RSS para fornecer a todos uma lista de seus posts mais novos. Por exemplo:</p>
-
-<pre class="eval"> <span class="nowiki"> &lt;?xml version="1.0"?&gt;
-
- &lt;rss version="2.0"&gt;
-
- &lt;channel&gt;
- &lt;title&gt;Joe Blow's Blog&lt;/title&gt;
- &lt;description&gt;This is the Weblog of Joe Blow&lt;/description&gt;
- &lt;lastBuildDate&gt;Sun, 15 May 2005 13:02:08 -0500&lt;/lastBuildDate&gt;
- &lt;link&gt;http://joe-blow.example.net/&lt;/link&gt;
-
- &lt;item&gt;
- &lt;title&gt;I Be Blogging...&lt;/title&gt;
- &lt;guid&gt;http://joe-blow.example.net/log/21&lt;/guid&gt;
- &lt;pubDate&gt;Sun, 15 May 2005 13:02:08 -0500&lt;/pubDate&gt;
- &lt;link&gt;http://joe-blow.example.net/log/21&lt;/link&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;I am so SMRT&lt;/title&gt;
- &lt;guid&gt;http://joe-blow.example.net/log/20&lt;/guid&gt;
- &lt;pubDate&gt;Sat, 14 May 2005 22:19:18 -0500&lt;/pubDate&gt;
- &lt;link&gt;http://joe-blow.example.net/log/20&lt;/link&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Huh?&lt;/title&gt;
- &lt;guid&gt;http://joe-blow.example.net/log/19&lt;/guid&gt;
- &lt;pubDate&gt;Sat, 14 May 2005 09:55:59 -0500&lt;/pubDate&gt;
- &lt;link&gt;http://joe-blow.example.net/log/19&lt;/link&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Black Cat Spotted&lt;/title&gt;
- &lt;guid&gt;http://joe-blow.example.net/log/18&lt;/guid&gt;
- &lt;pubDate&gt;Fri, 13 May 2005 13:13:13 -0500&lt;/pubDate&gt;
- &lt;link&gt;http://joe-blow.example.net/log/18&lt;/link&gt;
- &lt;/item&gt;
- &lt;/channel&gt;
-
- &lt;/rss&gt; </span>
-</pre>
-
-<p>Aqueles que criam Internet Rádio usam o RSS para permitir aos usuários ouvirem seus shows (broadcatching). Por exemplo:</p>
-
-<pre class="eval"> <span class="nowiki"> &lt;?xml version="1.0"?&gt;
-
- &lt;rss version="2.0"&gt;
-
- &lt;channel&gt;
- &lt;title&gt;Joe's IPradio Show&lt;/title&gt;
- &lt;description&gt;The best IPradio Show on the Internet, staring Joe!&lt;/description&gt;
- &lt;lastBuildDate&gt;Mon, 15 Aug 2005 16:12:37 -0400&lt;/lastBuildDate&gt;
- &lt;link&gt;http://joe.ipradio.example.net/&lt;/link&gt;
-
- &lt;item&gt;
- &lt;title&gt;I C UR Tan Line&lt;/title&gt;
- &lt;guid&gt;http://joe.ipradio.example.net/show/55&lt;/guid&gt;
- &lt;pubDate&gt;Mon, 15 Aug 2005 16:11:57 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://joe.ipradio.example.net/show/55"
- length="4487216"
- type="application/ogg"
- /&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Car Care for Car Fanatics&lt;/title&gt;
- &lt;guid&gt;http://joe.ipradio.example.net/show/54&lt;/guid&gt;
- &lt;pubDate&gt;Mon, 8 Aug 2005 13:12:12 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://joe.ipradio.example.net/show/54"
- length="4892178"
- type="audio/x-mp3"
- /&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Best Beaches in BC&lt;/title&gt;
- &lt;guid&gt;http://joe.ipradio.example.net/show/53&lt;/guid&gt;
- &lt;pubDate&gt;Mon, 1 Aug 2005 18:22:14 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://joe.ipradio.example.net/show/53"
- length="3984215"
- type="application/ogg"
- /&gt;
- &lt;/item&gt;
- &lt;/channel&gt;
-
- &lt;/rss&gt; </span>
-</pre>
-
-<div class="note">
-<p><strong>NOTA</strong>: Ouvir um Broadcatching de um Internet Rádio é também chamado de <em>Podcasting</em>, <em>IPradio</em>, e <em>Audio Blogging</em>.</p>
-</div>
-
-<p>Aqueles que criam programas televisivos para Internet usam o RSS para permitir aos usuários transmitir seus shows (broadcatch). Por exemplo:</p>
-
-<pre class="eval"> <span class="nowiki"> &lt;?xml version="1.0"?&gt;
-
- &lt;rss version="2.0"&gt;
-
- &lt;channel&gt;
- &lt;title&gt;Kate's IPTV Show&lt;/title&gt;
- &lt;description&gt;Watch it or else! You know you want to.&lt;/description&gt;
- &lt;lastBuildDate&gt;Tue, 23 Aug 2005 21:02:05 -0800&lt;/lastBuildDate&gt;
- &lt;link&gt;http://katetv.example.com/&lt;/link&gt;
-
- &lt;item&gt;
- &lt;title&gt;This is Fun&lt;/title&gt;
- &lt;guid&gt;http://katetv.example.com/show/4&lt;/guid&gt;
- &lt;pubDate&gt;Tue, 23 Aug 2005 21:02:05 -0800&lt;/pubDate&gt;
- &lt;enclosure url="http://katetv.example.com/show/4"
- length="1911146"
- type="application/ogg"
- /&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Watch This&lt;/title&gt;
- &lt;guid&gt;http://katetv.example.com/show/3&lt;/guid&gt;
- &lt;pubDate&gt;Tue, 16 Aug 2005 16:11:57 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://katetv.example.com/show/3"
- length="1387442"
- type="application/ogg"
- /&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;It is me again&lt;/title&gt;
- &lt;guid&gt;http://katetv.example.com/show/2&lt;/guid&gt;
- &lt;pubDate&gt;Tue, 9 Aug 2005 13:12:12 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://katetv.example.com/show/2"
- length="1894877"
- type="video/mpeg"
- /&gt;
- &lt;/item&gt;
- &lt;item&gt;
- &lt;title&gt;Hello&lt;/title&gt;
- &lt;guid&gt;http://katetv.example.com/show/1&lt;/guid&gt;
- &lt;pubDate&gt;Tue, 2 Aug 2005 18:22:14 -0400&lt;/pubDate&gt;
- &lt;enclosure url="http://katetv.example.com/show/1"
- length="17442215"
- type="application/ogg"
- /&gt;
- &lt;/item&gt;
- &lt;/channel&gt;
-
- &lt;/rss&gt; </span>
-</pre>
-
-<p>O leitor observador deve ter percebido que os exemplos dos <em>websites de notícias</em> e dos <em>blogs</em> eram do mesmo tipo de RSS. Também que os exemplos de <em>Internet Rádio</em> e dos <em>programas de TV para Internet</em> eram do mesmo tipo de RSS. Na verdade, a única diferença real entre os RSS de notícias/blogs e de Internet Rádio/TV para Internet é que os RSS de notícias/blogs usam o elemento <a href="/pt/RSS/Element/link" title="pt/RSS/Element/link">&lt;link&gt;</a> e os Internet Rádio/Internet TV usam o elemento <a href="/pt/RSS/Element/enclosure" title="pt/RSS/Element/enclosure">&lt;enclosure&gt;</a>.</p>
-
-<div class="note">
-<p><strong>NOTA</strong>: Esses exemplos de RSS são muito, muito simples. E foram desenhados para dar a você uma idéia de como o RSS se parece basicamente. Todos esses exemplos de RSS são bem mínimos. Quando você criar seus próprios RSS feeds, você provavelmente irá querer fazê-los mais complexos que esses e incluir <a href="/pt/RSS/Element" title="pt/RSS/Element">elementos RSS</a> adicionais fazendo uso dos vários <a href="/pt/RSS/Module" title="pt/RSS/Module">Módulos de RSS</a>.</p>
-</div>
-
-<p>{{Next("RSS:Como começar:Porque usar RSS")}}</p>
diff --git a/files/pt-pt/archive/rss/como_começar/porque_usar_rss/index.html b/files/pt-pt/archive/rss/como_começar/porque_usar_rss/index.html
deleted file mode 100644
index 904ce6ee43..0000000000
--- a/files/pt-pt/archive/rss/como_começar/porque_usar_rss/index.html
+++ /dev/null
@@ -1,22 +0,0 @@
----
-title: Porque usar RSS
-slug: Archive/RSS/Como_começar/Porque_usar_RSS
-tags:
- - 'RSS:Como_começar'
-translation_of: Archive/RSS/Getting_Started/Why_use_RSS
----
-<p>Esta página explica por quê você pode querer usar o RSS. Você ainda não criará seus próprios arquivos RSS, mas aprenderá sobre as razões de usá-lo.</p>
-
-<h2 id="Por_que_usar_RSS.3F" name="Por_que_usar_RSS.3F">Por que usar RSS?</h2>
-
-<p>Se você está lendo isso, provavelmente já tem seus próprios motivos para querer usar o RSS. Existem, na verdade, diversas razões para usar RSS. Mas os 2 maiores motivos podem ser amplamente declaradas dizendo: #1 (obviamente apenas use se) atende a suas necessidades e #2 possui uma grande quantidade de movimentação — todos estão usando.</p>
-
-<p>O RSS possui uma imensa quantidade de movimentação. As pessoas estão usando para publicar todo tipo de coisas. Artigos de notícias, blogs, bookmards, shows de Internet Rádio, shows de TV para Internet, atualizações de software, e-mails, mailing lists, music playlists, e mais. Se é esporádico, pode ser publicado com RSS.</p>
-
-<p>Software que lê e pode fazer uso do RSS também está por todos os lugares. O Mozilla Firefox possui algum suporte ao RSS (com sua tecnologia Live Bookmark). Existem muitos agregadores de RSS de desktop afora para listá-los. E agregadores RSS web-based demais para listar. Além disso, software customizado também está fazendo uso do RSS.</p>
-
-<h2 id="Agregadores_RSS_est.C3.A3o_em_todos_os_lugares" name="Agregadores_RSS_est.C3.A3o_em_todos_os_lugares">Agregadores RSS estão em todos os lugares</h2>
-
-<p>Um motivo para usar o RSS para publicar é porque existem enormes quantidades de agregadores RSS web-based para desktop. (Demais para listar) E se você publicar usando RSS então todos aqueles desktops e agregadores RSS web-based serão capazes de usar e ler seu RSS feed.</p>
-
-<p>{{ PreviousNext("RSS:Como começar:O que é RSS", "RSS:Como começar:Como o RSS trabalha") }}</p>
diff --git a/files/pt-pt/archive/rss/como_começar/sindicar/index.html b/files/pt-pt/archive/rss/como_começar/sindicar/index.html
deleted file mode 100644
index 60cf684500..0000000000
--- a/files/pt-pt/archive/rss/como_começar/sindicar/index.html
+++ /dev/null
@@ -1,99 +0,0 @@
----
-title: Sindicar
-slug: Archive/RSS/Como_começar/Sindicar
-tags:
- - PrecisaDeRevisãoEditorial
- - 'RSS:Como_começar'
-translation_of: Archive/RSS/Getting_Started/Syndicating
----
-<p>Esta página explica a Web Syndication, ou Publicação Web, com o RSS. Você aprenderá como fazer isso para que ambas — pessoas e máquinas — possam encontrar seu RSS feed, ou alimentador de RSS.</p>
-
-<h2 id="What_is_Syndication" name="What_is_Syndication">O que é Syndication (Publicação)</h2>
-
-<p><strong>Syndication</strong> (ou <strong>Web Syndication</strong>) é o ato de tornar um conteúdo disponível para outros lerem, ouvirem ou assistirem. Quando você cria um blog, um rádio de Internet ou um programa televisivo para Internet, você está publicando (syndicating).</p>
-
-<p>O RSS ajuda você a publicar. Ele organiza sua publicação em um formato fácil para as máquinas entenderem.</p>
-
-<p>Publicar com RSS pode significar 3 coisas:</p>
-
-<ol>
- <li>Criar um RSS feed (também conhecido por alimentador de RSS).</li>
- <li>Adicionar um elemento especial <code><a href="/pt/HTML/Element/link" title="pt/HTML/Element/link">&lt;link&gt;</a></code> à(s) página(s) HTML.</li>
- <li>Adicionar um elemento especial <code><a href="/pt/HTML/Element/a" title="pt/HTML/Element/a">&lt;a&gt;</a></code> à(s) página(s) HTML.</li>
-</ol>
-
-<p>Nós já falamos sobre o item 1 — Criar um RSS feed — então nos focaremos nos itens 2 e 3 aqui.</p>
-
-<h2 id="Adding_the_.3Clink.3E" name="Adding_the_.3Clink.3E">Adicionando o &lt;link&gt;</h2>
-
-<p>Freqüentemente o dado em um RSS feed é também disponibilizado em uma página web HTML. Quando este é o caso, a página web HTML pode avisar pessoas e máquinas sobre o feed com um código como o seguinte:</p>
-
-<pre>&lt;link rel="alternate" type="application/rss+xml" href="http://exemplo.com/feed" /&gt;
-</pre>
-
-<p>Muitas vezes as pessoas querem anunciar o RSS feed em outros lugares também. Por exemplo, em um artigo de blog. Você pode fazer isso com um código como o seguinte:</p>
-
-<pre>&lt;link rel="home" type="application/rss+xml" href="http://exemplo.com/feed" /&gt;
-</pre>
-
-<p>Note que este parece quase exatamente a mesma coisa do código anterior. A única coisa modificada foi o valor do atributo <code>rel</code>. (O código anterior teve um <code>rel</code> de valor <code>alternate</code>. E este código teve um <code>rel</code> de valor <code>home</code>.)</p>
-
-<div class="note">
-<p><strong>NOTA</strong>: Tem havido muito abuso no uso do elemento <code>&lt;link&gt;</code> para publicação com RSS. Alguns bloggers o têm usado para que outros se <em>inscrevam</em> em seus blogs de qualquer página do blog (e não apenas da <em>home page</em>). O que resultou na adição de vários <code>&lt;link&gt;</code> com <code>rel="alternate"</code> por todos os lugares. (Nas entradas de blogs também e não apenas nas <em>home page</em>.) Isso é errado! Usar <code>rel="alternate"</code> neste caso é errado. Deve ser usado o <code>rel="home"</code>. (Veja <a href="/pt/Understanding_rel_and_rev" title="pt/Understanding_rel_and_rev">Understanding rel and rev</a> para mais informações.) A parte importante quando se usa o <code>&lt;link&gt;</code> para publicar seu RSS feed é pôr o <code>type="application/rss+xml"</code>.</p>
-</div>
-
-<h2 id="Adding_the_.3Ca.3E" name="Adding_the_.3Ca.3E">Adicionando o &lt;a&gt;</h2>
-
-<p>Embora o uso do elemento HTML <code>&lt;link&gt;</code> seja poderoso; ele é na maioria das vezes <em>escondido</em>. Para anunciar o RSS feed de um modo mais direto, o elemento HTML <code>&lt;a&gt;</code> pode ser utilizado. Fazendo isso pode-se conseguir o mesmo resultado do elemento <code>&lt;link&gt;</code> discutido acima.</p>
-
-<p>Quando puser um link de uma página web HTML onde os dados em um RSS feed também são disponibilizados use:</p>
-
-<pre>&lt;a rel="alternate" type="application/rss+xml" href="http://exemplo.com/feed"&gt;...&lt;/a&gt;
-</pre>
-
-<p>Quando puser um link de alguma coisa como um artigo de post de um blog, use o seguinte código:</p>
-
-<pre>&lt;a rel="home" type="application/rss+xml" href="http://example.com/feed"&gt;...&lt;/a&gt;
-</pre>
-
-<p>Mais uma vez, note que esses dois trechos de código parecem quase exatamente os mesmos. A única coisa modificada foi o valor do atributo <code>rel</code>. (O primeiro trecho de código tem um <code>rel</code> de valor <code>alternate</code> e o segundo trecho tem um <code>rel</code> de valor <code>home</code>.)</p>
-
-<h2 id="Feed_Icons" name="Feed_Icons">Ícones de Feed</h2>
-
-<p>RSS (e outros) feeds utilizam um ícone especial. É recomendado que use este ícone quando criar um link especial <code>&lt;a&gt;</code> para seu alimentador. O ícone parece como este:</p>
-
-<dl>
- <dd><img alt="Feed-icon-32x32.png" class="internal default" src="/@api/deki/files/3250/=Feed-icon-32x32.png" style="width: 32px; height: 32px;"></dd>
-</dl>
-
-<p>Você pode conseguir mais ícones como este do <a class="external" href="http://feedicons.com/">Feed Icons</a>. (Outros tamanhos e cores também estão disponíveis. Arquivos fontes também estão disponíveis.)</p>
-
-<h2 id="Advanced_Syndication_Techniques" name="Advanced_Syndication_Techniques">Técnicas Avançadas de Publicação (Syndication)</h2>
-
-<p>Embora esta técnica de publicação não seja necessária, é recomendado seu suporte; especialmente para web sites e aplicações que necessitam de alta performance.</p>
-
-<p>O protocolo <a href="/pt/HTTP" title="pt/HTTP">HTTP</a> — uma das tecnologias núcleo por trás da web — provê uma forma de priorizar o tipo de conteúdo que um cliente HTTP prefere para receber. Esta técnica toma vantagem disso fazendo com que os clientes <em>prefer</em> o RSS (acima do HTML ou outros formatos). Aqui está um exemplo simples de como é feito:</p>
-
-<pre>Accept: application/rss+xml, text/html
-</pre>
-
-<p>Apesar de na realidade, na produção de software, se pareça mais com isso.</p>
-
-<pre>Accept: application/rss+xml, application/xhtml+xml, text/html
-</pre>
-
-<p>Eis um exemplo mais completo:</p>
-
-<pre>GET / HTTP/1.1
-Host: example.com
-Accept: application/rss+xml, application/xhtml+xml, text/html
-</pre>
-
-<p>Quando um servidor HTTP (ou scripts de servidores) pega isso, ele deve redirecionar para o cliente HTTP do feed. Ele deve fazer isso com um <code>HTTP 302 Found</code>. Algo como:</p>
-
-<pre>HTTP/1.1 302 Found
-Location: http://exemplo.com/feed
-</pre>
-
-<p><br>
- {{ PreviousNext("RSS:Como começar:Como o RSS trabalha", "RSS:Como começar:Blogs") }}</p>
diff --git a/files/pt-pt/archive/rss/index.html b/files/pt-pt/archive/rss/index.html
deleted file mode 100644
index 49eda2566c..0000000000
--- a/files/pt-pt/archive/rss/index.html
+++ /dev/null
@@ -1,47 +0,0 @@
----
-title: RSS
-slug: Archive/RSS
-tags:
- - RSS
-translation_of: Archive/RSS
----
-<div class="callout-box"><strong><a href="/pt/RSS/Como_começar" title="pt/RSS/Como_começar">Como começar</a></strong>
-<p>Um tutorial introdutório ao RSS</p>
-</div>
-
-<div>
-<p>O <strong>Really Simple Syndication</strong> é um formato de dados baseado no <a href="/pt/XML" title="pt/XML">XML</a> que permite distribuir conteúdos simples.</p>
-</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h4 id="Documenta.C3.A7.C3.A3o" name="Documenta.C3.A7.C3.A3o"><a href="/Special:Tags?tag=RSS&amp;language=pt" title="Special:Tags?tag=RSS&amp;language=pt">Documentação</a></h4>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=RSS:Artigos&amp;language=pt" title="Special:Tags?tag=RSS:Artigos&amp;language=pt">Veja todos...</a></span></p>
- </td>
- <td>
- <h4 id="Comunidade" name="Comunidade">Comunidade</h4>
-
- <p>{{ DiscussionList("dev-tech-xml", "mozilla.dev.tech.xml") }}</p>
-
- <ul>
- <li><a href="/pt/RSS/Comunidade" title="pt/RSS/Comunidade">Outros links para comunidades...</a></li>
- </ul>
-
- <h4 id="T.C3.B3picos_relacionados" name="T.C3.B3picos_relacionados">Tópicos relacionados</h4>
-
- <dl>
- <dd><a href="/pt/Atom" title="pt/Atom">Atom</a>, <a href="/pt/RDF" title="pt/RDF">RDF</a>, <a href="/pt/XML" title="pt/XML">XML</a></dd>
- </dl>
-
- <p><span class="comment">Categorias</span></p>
-
- <p><span class="comment">Interwiki Language Links</span></p>
-
- <p> </p>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/archive/rss/versão/0.90/index.html b/files/pt-pt/archive/rss/versão/0.90/index.html
deleted file mode 100644
index 7001b622b7..0000000000
--- a/files/pt-pt/archive/rss/versão/0.90/index.html
+++ /dev/null
@@ -1,79 +0,0 @@
----
-title: RSS/Versão/0.90
-slug: Archive/RSS/Versão/0.90
-translation_of: Archive/RSS/Version/0.90
----
-<p> </p>
-<p>{{ Deprecated_header() }}</p>
-<h2 id="RSS_0.90" name="RSS_0.90">RSS 0.90</h2>
-<p>O RSS 0.90 é a versão mais antiga conhecida de RSS lançado ao público, e substituído pela <a class="internal" href="/pt/RSS/Vers%c3%a3o/0.91/Netscape/Revis%c3%a3o_1" title="pt/RSS/Versão/0.91/Netscape/Revisão 1">Netscape RSS 0.91 (Revisão 1)</a>. Criado pela Netscape para ser um formato metadata provendo um sumário de um web site. (E não apenas um formato de publicação como é atualmente.)</p>
-<p>O RSS 0.90 é um formato baseado no <a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a>.</p>
-<p>Quando ele foi criado, o significado inicial do RSS era <strong>Rich Site Summary</strong> e não <strong>Really Simple Syndication</strong>. (Veja <a class="internal" href="/pt/RSS/O_que_h%C3%A1_em_um_nome" title="pt/RSS/O que há em um nome">RSS - O que há em um nome</a> para mais informações sobre o histórico do nome do RSS.))</p>
-<div class="note">
- <p><strong>NOTA</strong>: O RSS 0.90 teve seu uso desaprovado. Produtores de RSS <em>NÃO DEVEM</em> criar RSS 0.90 feeds, e <em>DEVEM</em> ao invés usar um novo e não-desaprovado formato RSS. (Veja a <a class="internal" href="/pt/RSS/Vers%C3%A3o" title="pt/RSS/Versão">Lista de Versões de RSS</a> para uma lista de formatos não-desaprovados.) Contudo, consumidores de RSS ainda <em>DEVEM</em> ser capazes de aceitar os RSS 0.90 feeds.</p>
-</div>
-<p> </p>
-<h3 id="Examples" name="Examples">Exemplos</h3>
-<p>RSS 0.90 parece com algo assim:</p>
-<pre class="eval">
-<span class="nowiki"> &lt;?xml version="1.0"?&gt;
-
- &lt;rdf:RDF
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns="http://my.netscape.com/rdf/simple/0.9/"
- &gt;
-
- &lt;channel&gt;
- &lt;title&gt;Mozilla Dot Org&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org&lt;/link&gt;
- &lt;description&gt;the Mozilla Organization web site&lt;/description&gt;
- &lt;/channel&gt;
-
- &lt;image&gt;
- &lt;title&gt;Mozilla&lt;/title&gt;
- &lt;url&gt;http://www.mozilla.org/images/moz.gif&lt;/url&gt;
- &lt;link&gt;http://www.mozilla.org&lt;/link&gt;
- &lt;/image&gt;
-
- &lt;item&gt;
- &lt;title&gt;New Status Updates&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org/status/&lt;/link&gt;
- &lt;/item&gt;
-
- &lt;item&gt;
- &lt;title&gt;Bugzilla Reorganized&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org/bugs/&lt;/link&gt;
- &lt;/item&gt;
-
- &lt;item&gt;
- &lt;title&gt;Mozilla Party, 2.0!&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org/party/1999/&lt;/link&gt;
- &lt;/item&gt;
-
- &lt;item&gt;
- &lt;title&gt;Unix Platform Parity&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org/build/unix.html&lt;/link&gt;
- &lt;/item&gt;
-
- &lt;item&gt;
- &lt;title&gt;NPL 1.0M published&lt;/title&gt;
- &lt;link&gt;http://www.mozilla.org/NPL/NPL-1.0M.html&lt;/link&gt;
- &lt;/item&gt;
-
- &lt;/rdf:RDF&gt;
- </span>
-</pre>
-<p>Note que aqui o RSS está sendo usado para listar seções de um web site ao invés de publicação (syndication).</p>
-<p> </p>
-<h3 id="Specification" name="Specification">Especificação</h3>
-<p>A especificação original do RSS 0.90 desapareceu de sua localização original:</p>
-<dl>
- <dd>
- <span class="nowiki">http://my.netscape.com/publish/help/quickstart.html</span></dd>
-</dl>
-<p>Cópias dele foram salvas e podem ser vistas nas seguintes localizações:</p>
-<ul>
- <li><a class="external" href="http://www.purplepages.ie/RSS/netscape/rss0.90.html" rel="freelink">http://www.purplepages.ie/RSS/netscape/rss0.90.html</a></li>
- <li><a class="external" href="http://web.archive.org/web/*/http://my.netscape.com/publish/help/quickstart.html" rel="freelink">http://web.archive.org/web/*/http://...uickstart.html</a></li>
-</ul>
-<p>{{ languages( { "ja": "ja/RSS/Version/0.90", "pl": "pl/RSS/Wersje/0.90" } ) }}</p>
diff --git a/files/pt-pt/archive/rss/versão/index.html b/files/pt-pt/archive/rss/versão/index.html
deleted file mode 100644
index f034387784..0000000000
--- a/files/pt-pt/archive/rss/versão/index.html
+++ /dev/null
@@ -1,107 +0,0 @@
----
-title: Versão
-slug: Archive/RSS/Versão
-translation_of: Archive/RSS/Version
----
-<h2 id="RSS_Versions" name="RSS_Versions">Versões de RSS</h2>
-<p>RSS tem uma história sórdida. Diferentes pessoas e grupos criaram especificações amplamente unilaterais que denominaram RSS. Alguns formatos RSS eram baseados em <a href="/en/XML" title="en/XML">XML</a> e outros baseados em <a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a>.</p>
-<p>A lista abaixo é de todas as versões de RSS conhecidas. Eles estão listados em ordem cronológica de quando foram lançados.</p>
-<div class="note">
- <p><strong>NOTA</strong>: Na lista abaixo, apesar do RSS 1.0 parecer estar fora de lugar está na verdade no lugar cronologicamente correto</p>
-</div>
-<div class="note">
- <p><strong>NOTA</strong>: Existem 3 diferentes versões de <a class="internal" href="/pt/RSS/Vers%C3%A3o/0.91" title="pt/RSS/Versão/0.91">RSS 0.91</a>. O RSS 0.91 da Netscape (Revisão 1), o RSS 0.91 da Netscape (Revisão 3) e o RSS 0.91 da Userland.</p>
-</div>
-<div class="note">
- <p><strong>NOTA</strong>: O RSS 0.93 e o RSS 0.94 foram lançados apenas como beta e nunca se tornaram versões finais e por isso não eram para ter sido utilizados.</p>
-</div>
-<p> </p>
-<table class="standard-table">
- <tbody>
- <tr>
- <th>Name</th>
- <th>Status</th>
- <th>Release Date</th>
- <th>Based On</th>
- <th>Author</th>
- </tr>
- <tr>
- <td><a class="internal" href="/pt/RSS/Vers%C3%A3o/0.90" title="pt/RSS/Versão/0.90">RSS 0.90</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Março 1999</td>
- <td><a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a></td>
- <td class="small">Netscape</td>
- </tr>
- <tr>
- <td><a class="internal" href="/pt/RSS/Vers%C3%A3o/0.91/Netscape/Revis%C3%A3o_1" title="pt/RSS/Versão/0.91/Netscape/Revisão 1">Netscape RSS 0.91 (Revisão 1)</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">?</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Netscape</td>
- </tr>
- <tr>
- <td><a class="internal" href="/pt/RSS/Vers%C3%A3o/0.91/Netscape/Revis%C3%A3o_3" title="pt/RSS/Versão/0.91/Netscape/Revisão 3">Netscape RSS 0.91 (Revisão 3)</a></td>
- <td>{{ Obsolete_inline() }}</td>
- <td class="small">Julho 10, 1999</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Netscape</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/0.91/Userland" title="en/RSS/Version/0.91/Userland">Userland's RSS 0.91</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Junho 4, 2000</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/1.0" title="en/RSS/Version/1.0">RSS 1.0</a></td>
- <td>Padrão</td>
- <td class="small">Dezembro 9, 2000</td>
- <td><a class="internal" href="/pt/RDF" title="pt/RDF">RDF</a></td>
- <td class="small">grupo RSS-DEV</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/0.92" title="en/RSS/Version/0.92">RSS 0.92</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Dezembro 25, 2000</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/0.93" title="en/RSS/Version/0.93">RSS 0.93</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Abril 20, 2001</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/0.94" title="en/RSS/Version/0.94">RSS 0.94</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Agosto 19, 2002</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/2.0" title="en/RSS/Version/2.0">RSS 2.0</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Setembro 2002</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/2.0/2002-11-11" title="en/RSS/Version/2.0/2002-11-11">RSS 2.0 (post 2002-11-11)</a></td>
- <td>{{ Deprecated_inline() }}</td>
- <td class="small">Novembro 11, 2002</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- <tr>
- <td><a href="/en/RSS/Version/2.0/2003-01-21" title="en/RSS/Version/2.0/2003-01-21">RSS 2.0 (post 2003-01-21)</a></td>
- <td>Padrão</td>
- <td class="small">Janeiro 21, 2003</td>
- <td><a class="internal" href="/pt/XML" title="pt/XML">XML</a></td>
- <td class="small">Userland</td>
- </tr>
- </tbody>
-</table>
-<p>{{ languages( { "es": "es/RSS/Versiones", "fr": "fr/RSS/Version", "ja": "ja/RSS/Version", "pl": "pl/RSS/Wersje" } ) }}</p>
diff --git a/files/pt-pt/archive/themes/index.html b/files/pt-pt/archive/themes/index.html
deleted file mode 100644
index aff151946d..0000000000
--- a/files/pt-pt/archive/themes/index.html
+++ /dev/null
@@ -1,11 +0,0 @@
----
-title: Themes
-slug: Archive/Themes
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Themes
----
-<p>Archived theme documentation.</p>
-
-<p></p><ul><li><a href="/en-US/docs/Archive/Themes/Building_a_Theme">Building a Theme</a></li><li><a href="/en-US/docs/Archive/Themes/Common_Firefox_theme_issues_and_solutions">Common Firefox theme issues and solutions</a></li><li><a href="/en-US/docs/Archive/Themes/Creating_a_Skin_for_Firefox">Creating a Skin for Firefox</a><ul><li><a href="/en-US/docs/Archive/Themes/Creating_a_Skin_for_Firefox/UUID">UUID</a></li><li><a href="/en-US/docs/Archive/Themes/Creating_a_Skin_for_Firefox/contents.rdf">contents.rdf</a></li><li><a href="/en-US/docs/Archive/Themes/Creating_a_Skin_for_Firefox/install.rdf">install.rdf</a></li></ul></li><li><a href="/en-US/docs/Archive/Themes/Making_sure_your_theme_works_with_RTL_locales">Making sure your theme works with RTL locales</a></li><li><a href="/en-US/docs/Archive/Themes/Theme_changes_in_Firefox_2">Theme changes in Firefox 2</a></li><li><a href="/en-US/docs/Archive/Themes/Theme_changes_in_Firefox_3">Theme changes in Firefox 3</a></li><li><a href="/en-US/docs/Archive/Themes/Theme_changes_in_Firefox_3.5">Theme changes in Firefox 3.5</a></li><li><a href="/en-US/docs/Archive/Themes/Theme_changes_in_Firefox_4">Theme changes in Firefox 4</a></li></ul><p></p>
diff --git a/files/pt-pt/archive/utilizar_normas_web_nas_suas_paginas_da_web/index.html b/files/pt-pt/archive/utilizar_normas_web_nas_suas_paginas_da_web/index.html
deleted file mode 100644
index 61629f890d..0000000000
--- a/files/pt-pt/archive/utilizar_normas_web_nas_suas_paginas_da_web/index.html
+++ /dev/null
@@ -1,123 +0,0 @@
----
-title: Utilizar as Normas da Web nas suas Páginas da Web
-slug: Archive/Utilizar_Normas_Web_nas_suas_Paginas_da_Web
-tags:
- - Desenvolvimento da Web
- - Normas da Web
- - Padrões da Web
-translation_of: Archive/Using_Web_Standards_in_your_Web_Pages
----
-<p> </p>
-
-<blockquote>"Browser makers are no longer the problem. The problem lies with designers and developers chained to the browser-quirk-oriented markup of the 1990s-often because they don't realize it is possible to support current standards while accommodating old browsers."
-<div style="text-align: right;"><a class="external" href="http://webstandards.org/about/history/">- Web Standards Project</a></div>
-</blockquote>
-
-<p>This article provides an overview of the process for upgrading the content of your web pages to conform to the <a class="external" href="http://www.w3.org/">World Wide Web Consortium (W3C)</a> web standards. The first 2 sections address exclusively validation issues, benefits of validation, deprecated elements, deprecated attributes. How to upgrade a webpage markup code to pass validation and how to implement CSS are addressed by providing recommendations, tutorials and references.</p>
-
-<p>The other sections address <abbr title="Document Object Model">DOM</abbr> and <abbr title="Dynamic HyperText Markup Language">DHTML</abbr> coding practices which are at odds with the <abbr title="World Wide Web Consortium">W3C</abbr> web standards and suggest replacements. <strong>Every proposed W3C web standards replacement in this article is working without a problem in modern browsers like MSIE 7, Firefox 2, Opera 9, Safari 3, Konqueror 3.5+, Icab 4, etc.</strong></p>
-
-<p>The next-to-last section, <a href="/en/Using_Web_Standards_in_your_Web_Pages/Summary_of_Changes" title="en/Using_Web_Standards_in_your_Web_Pages/Summary_of_Changes">Summary of Changes</a>, outlines all the changes described in this article. The <a href="/en/Using_Web_Standards_in_your_Web_Pages/References" title="en/Using_Web_Standards_in_your_Web_Pages/References">last section</a> offers excellent and best references for those wishing to learn more about upgrading techniques presented in this article and more for those wishing to perfect their web pages.</p>
-
-<h2 id="Contents" name="Contents">Conteúdos</h2>
-
-<ol>
- <li><s><a href="/en/The_Business_Benefits_of_Web_Standards" title="en/The_Business_Benefits_of_Web_Standards">Benefits of using web standards</a></s></li>
- <li><s><a href="/en/Using_Web_Standards_in_your_Web_Pages/Making_your_page_using_web_standards_-_how_to" title="en/Using_Web_Standards_in_your_Web_Pages/Making_your_page_using_web_standards_-_how_to">Making your page using web standards - how to</a></s></li>
- <li><a href="/en/Using_Web_Standards_in_your_Web_Pages/Using_the_W3C_DOM" title="en/Using_Web_Standards_in_your_Web_Pages/Using_the_W3C_DOM">Using the W3C DOM</a></li>
- <li><a href="/en/Using_Web_Standards_in_your_Web_Pages/Developing_cross-browser_and_cross-platform_pages" title="en/Using_Web_Standards_in_your_Web_Pages/Developing_cross-browser_and_cross-platform_pages">Developing Cross Browser and Cross Platform Pages</a></li>
- <li><s><a href="/en/DOM/XMLHttpRequest/Using_XMLHttpRequest_in_IE6" title="en/Using_Web_Standards_in_your_Web_Pages/Using_XMLHttpRequest">Using XMLHttpRequest</a></s></li>
- <li><a href="/en/Using_Web_Standards_in_your_Web_Pages/Summary_of_Changes" title="en/Using_Web_Standards_in_your_Web_Pages/Summary_of_Changes">Summary of Changes</a></li>
- <li><a href="/en/Using_Web_Standards_in_your_Web_Pages/References" title="en/Using_Web_Standards_in_your_Web_Pages/References">References</a></li>
-</ol>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information" name="Original_Document_Information">Informação do Documento Origina</h2>
-
-<ul>
- <li>Author(s): Mike Cowperthwaite, Marcio Galli, Jim Ley, Ian Oeschger, Simon Paquet, Gérard Talbot</li>
- <li>Last Updated Date: May 29, 2008</li>
- <li>Copyright Information: Portions of this content are © 1998–2008 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>{{ languages( { "ja": "ja/Using_Web_Standards_in_your_Web_Pages", "zh-cn": "cn/\u5728\u60a8\u7684\u7f51\u9875\u4e2d\u5e94\u7528Web\u6807\u51c6" } ) }}</p>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; display: block; opacity: 0; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody><tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
-</tbody></table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody><tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
-</tbody></table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/chrome.manifest/index.html b/files/pt-pt/chrome.manifest/index.html
deleted file mode 100644
index d43a339e81..0000000000
--- a/files/pt-pt/chrome.manifest/index.html
+++ /dev/null
@@ -1,107 +0,0 @@
----
-title: chrome.manifest
-slug: chrome.manifest
-tags:
- - Extensões
- - Toolkit API
-translation_of: Archive/Mozilla/Creating_a_Skin_for_SeaMonkey_2.x/chrome.manifest
----
-<p> </p>
-<h3 id="O_que_.C3.A9_Chrome.3F" name="O_que_.C3.A9_Chrome.3F">O que é Chrome?</h3>
-<p><a href="/en/Chrome">Chrome</a> é o conjunto de elementos da interface de usuário na janela do aplicativo localizado fora da área da janela de conteúdo. Barras de ferramentas, barras de menu, barras de progresso e barras do título da janela são todos os exemplos de elementos que normalmente fazem parte do chrome.</p>
-<h3 id="Fornecedores_Chrome" name="Fornecedores_Chrome">Fornecedores Chrome</h3>
-<p>Um fornecedor de chrome para um determinado tipo de janela (e.g., para a janela do navegador) é chamado de fornecedor chrome. Os fornecedores trabalham juntos para fornecer um kit completo de chrome para uma janela particular, das imagens dos botões na barra de ferramentas aos arquivos que descrevem o texto, conteúdo e aparência da própria janela.</p>
-<p>Existem três tipos básicos de fornecedores chrome:</p>
-<h4 id="Content_.28conte.C3.BAdo.29" name="Content_.28conte.C3.BAdo.29">Content (conteúdo)</h4>
-<p>O arquivo fonte principal para a descrição de uma janela vem do forneceder content (conteúdo), e ele pode ser qualquer tipo de arquivo visível com o Mozilla. Normalmente será um arquivo XUL, desde que o XUL seja desenhado para descrever os conteúdos das janelas e diálogos. Os arquivos javascript que definem a interface de usuário são também contidas com o pacote content (conteúdo), assim como a maioria dos arquivos XBL binding.</p>
-<h4 id="Locale_.28local.29" name="Locale_.28local.29">Locale (local)</h4>
-<p>Aplicativos localizáveis mantêm toda a informação localizada em fornecedores locale (local). Isto permite a tradutores ligá-lo em um diferente pacote chrome para traduzir um aplicativo sem alterar o resto do código fonte. Os dois tipos principais de arquivos localizáveis são arquivos DTD e arquivos de propriedade java-style.</p>
-<h4 id="Skin_.28pele.29" name="Skin_.28pele.29">Skin (pele)</h4>
-<p>Um fornecedor skin (pele) é responsável por proporcionar um kit completo de arquivos que descrevem a aparência visual do chrome. Normalmente um fornecedor skin (pele) proporcionará arquivos CSS e imagens.</p>
-<h3 id="O_registro_Chrome" name="O_registro_Chrome">O registro Chrome</h3>
-<p>O gecko runtime mantém um serviço sabido como o registro chrome que proporciona mapeamentos de nomes de pacotes chrome à localização física do pacote chrome no disco.</p>
-<p>Este registro chorme é configurável e persistente, e assim um usuário pode instalar diferentes fornecedores chrome, e selecionar um preferido skin (pele) e locale (local). Isto é realizado através do xpinstall e do gerenciador de extensões.</p>
-<p>Em ordem para informar o registro chrome do chrome disponível, um manifesto texto é usado: este manifesto é "chrome.manifest" na raiz de uma extensão, ou tema, e chrome/*manifest em um aplicativo XULRunner.</p>
-<p>O texto simples do manifesto chrome tem um formato simples baseado em linhas. Cada linha é analizada gramaticalmente e individualmente; se a linha estiver correta o registro chrome pega a ação identificada por aquela linha; caso contrário o registro chrome ignora aquela linha (e imprime uma mensagem de aviso no console de runtime error).</p>
-<pre class="eval">locale packagename localename path/to/files
-skin packagename skinname path/to/files
-</pre>
-<h3 id="Instru.C3.A7.C3.B5es_do_Manifesto" name="Instru.C3.A7.C3.B5es_do_Manifesto">Instruções do Manifesto</h3>
-<h4 id="Coment.C3.A1rios" name="Coment.C3.A1rios">Comentários</h4>
-<p>Uma linha é um comentário se ela iniciar com o caractere '#'; qualquer outro caractere na linha é ignorado.</p>
-<pre class="eval"># esta linha é um comentário — você pode colocar o que quiser aqui
-</pre>
-<h4 id="content_.28conte.C3.BAdo.29" name="content_.28conte.C3.BAdo.29">content (conteúdo)</h4>
-<p>Um pacote content (conteúdo) é registrado com a linha:</p>
-<pre class="eval">content <em>packagename</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-<p>Isto irá registrar a localização para usar quando for resolvida a URL <code>chrome://<em>packagename</em>/content/...</code>. A URL pode ser absoluta ou relativa à localização do arquivo de manifesto. Note que é necessário acabar com uma '/'.</p>
-<h4 id="locale_.28local.29" name="locale_.28local.29">locale (local)</h4>
-<p>Um pacote locale (local) é registrado com a linha</p>
-<pre class="eval">locale <em>packagename</em> <em>localename</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-<p>Isto irá registrar o pacote locale (local) quando for resolvida a URL chrome://<em>packagename</em>/locale/... . O <em>localename</em> (nome local) é normalmente um simples idenficador de língua "en" ou um identificador língua-país "en-US". Se mais de um local for registrado para um pacote, o registro chrome irá selecionar o melhor local usando as preferências do usuário.</p>
-<h4 id="skin_.28pele.29" name="skin_.28pele.29">skin (pele)</h4>
-<p>Um pacote skin (pele) é registrado com a linha</p>
-<pre class="eval">skin <em>packagename</em> <em>skinname</em> <em>uri/to/files/</em> <em>[flags]</em>
-</pre>
-<p>Isto irá registrar um pacote skin (pele) quando for resolvida a URL <a class="external" rel="freelink">chrome://packagename/skin/</a>... . O <em>skinname</em> (nome da pele) é uma sring opaca identificando uma skin (pele) instalada. Se mais de uma pele for registrada para um pacote, o registro chrome irá selecionar a melhor pele usando as preferências do usuário.</p>
-<h4 id="overlay_.28sobreposi.C3.A7.C3.A3o.29" name="overlay_.28sobreposi.C3.A7.C3.A3o.29">overlay (sobreposição)</h4>
-<p>XUL overlays (sobreposições XUL) são registradas com a seguinte sintaxe:</p>
-<pre class="eval">overlay chrome://<em>URI-to-be-overlayed</em> chrome://<em>overlay-URI</em> <em>[flags]</em>
-</pre>
-<h4 id="style_.28estilo.29" name="style_.28estilo.29">style (estilo)</h4>
-<p>Style overlays (sobreposições de estilo) (CSS customizado que será aplicado à página chrome) é registrado com a seguinte sintaxe:</p>
-<pre class="eval">style chrome://<em>URI-to-style</em> chrome://<em>stylesheet-URI</em> <em>[flags]</em>
-</pre>
-<h4 id="override_.28substitui.C3.A7.C3.A3o.29" name="override_.28substitui.C3.A7.C3.A3o.29">override (substituição)</h4>
-<p>Em alguns casos uma extensão ou encaixe pode desejar substituir um arquivo chrome providenciado pela aplicação ou XULRunner. A fim de permitir isto, o manifesto de registro chrome permite instruções para "substituição":</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>
-<h3 id="Marcadores_do_Manifesto" name="Marcadores_do_Manifesto">Marcadores do Manifesto</h3>
-<p>Linhas do manifesto podem ter múltiplos espaços delimitados por marcadores adicionados no final da linha de registro. Estes marcadores marcam atributos especiais do chrome no pacote, ou limitam as condições sob qual linha é usada.</p>
-<h4 id="application_.28aplicativo.29" name="application_.28aplicativo.29">application (aplicativo)</h4>
-<p>Extensões podem instalar múltiplos aplicativos. Existem algumas linhas com registro chrome que somente se aplicam a um aplicativo particular. O marcador</p>
-<pre class="eval">application=<em>app-ID</em>
-</pre>
-<p>indica que a instrução deve ser aplicada somente se a extensão instalada no aplicativo identificado por <em>app-ID</em> estiver rodando. Múltiplos marcadores de aplicativos podem ser incluídos em uma única linha, neste caso a linha é aplicada se qualquer um dos marcadores rodar.</p>
-<h4 id="appversion_.28vers.C3.A3o_do_aplicativo.29" name="appversion_.28vers.C3.A3o_do_aplicativo.29">appversion (versão do aplicativo)</h4>
-<p>Extensões podem instalar em múltiplas versões de um aplicativo. Existem algumas extensões que podem instalar múltiplas versões de um aplicativo. O marcador</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>indica que a instrução deve somente ser aplicada se a extensão instalada no aplicativo tiver versão identificada. Múltiplos marcadores <code>appversion</code> podem ser incluídos em uma única linha. neste caso a linha é aplicada se qualquer um dos marcadores rodar. A versão da string precisa estar conforme o <a href="/pt/Toolkit_version_format" title="pt/Toolkit_version_format">Toolkit version format</a>.</p>
-<h4 id="platform_.28plataforma.29.28Pacotes_espec.C3.ADficos_da_plataforma.29" name="platform_.28plataforma.29.28Pacotes_espec.C3.ADficos_da_plataforma.29">platform (plataforma)(Pacotes específicos da plataforma)</h4>
-<p>Alguns pacotes são marcados com um marcador especial indicando que ele tem uma plataforma específica. Algumas partes do content (conteúdo), skin (pele), locales (locais) podem ser diferentemente baseados para a plataforma que rodam. Estes pacotes contém três diferentes grupos de arquivos, para windows/os2, macintosh, e plataformas como o unix. Por exemplo, a ordem dos botões "OK" e "cancelar" em um diálogo é diferente, assim como o nome de alguns itens.</p>
-<p>O modificador de "plataforma" é somente analizado gramaticamente para o registro de conteúdo, não é reconhecido pelo registro de local e pele. Entretanto isto se aplica às partes conteúdo, local, e pele do pacote, quando especificado.</p>
-<p>Para indicar se um pacote tem plataforma específica, adicione o modificador "plataform" à linha do "content" após o trajeto, por exemplo:</p>
-<pre class="eval">content global-platform jar:toolkit.jar!/toolkit/content/global-platform/ platform
-</pre>
-<p>Uma vez especificado isto em seu manifesto você assegura-se então que abaixo do diretório da plataforma global existem sub-diretórios <code>win</code> (Windows/OS2), <code>mac</code> (OS9/OSX), ou <code>unix</code> (Todos os outros). Alguma coisa residindo do lado de fora destes sub-diretórios será ignorado.</p>
-<h4 id="xpcnativewrappers" name="xpcnativewrappers">xpcnativewrappers</h4>
-<p>Pacotes chrome podem decidir se para usar o mecanismo de segurança xpcnativewrappers para proteger seu código contra conteúdos maliciosos que possam ter acesso. Veja <a href="/en/Safely_accessing_content_DOM_from_chrome">en:Safely accessing content DOM from chrome</a> para detalhes.</p>
-<p>Com o Firefox 1.5 lançamento alpha (Deer Park alphas), este marcador está *desligado* por padrão, e precisa ser explicitamente ativado especificando-se xpcnavitewrappers=yes.</p>
-<p>Com o Firefox 1.5 lançamento beta, este marcador será ativado por padrão, e extensões que tiverem um acesso inseguro aos objetos de conteúdo serão requeridas para especificar xpcnavitewrappers=no.</p>
-<p>O marcador xpcnativewrappers aplica somente ao pacote content (conteúdo): ele não é reconhecido pelo registro locale (local) ou skin (pele).</p>
-<h3 id="Exemplo_de_Manifesto_Chrome" name="Exemplo_de_Manifesto_Chrome">Exemplo de Manifesto Chrome</h3>
-<pre class="eval">content necko jar:comm.jar!/content/necko/ xpcnativewrappers=yes
-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}
-overlay <a class="external" rel="freelink">chrome://communicator/content/pref/preftree.xul</a> <a class="external" rel="freelink">chrome://pippki/content/PrefOverlay.xul</a>
-overlay <a class="external" rel="freelink">chrome://navigator/content/pageInfo.xul</a> <a class="external" rel="freelink">chrome://pippki/content/PageInfoOverlay.xul</a> <a class="link-mailto" href="mailto:application=seamonkey@applications.mozilla.org" rel="freelink">application=seamonkey@applications.mozilla.org</a>
-content pippki jar:pippki.jar!/content/pippki/ xpcnativewrappers=yes
-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/ xpcnativewrappers=no
-</pre>
-<h3 id="Manifestos_contents.rdf_com_estilo_antigo" name="Manifestos_contents.rdf_com_estilo_antigo">Manifestos contents.rdf com estilo antigo</h3>
-<p>Antes do manifesto de texto simples foram introduzidos (os quais funcionam no Firefox 1.5, Toolkit 1.8), manifestos RDF chamados "contents.rdf" que foram usados para registrar o chrome. Este formato é desaprovado; todavia, a Suíte Mozilla (SeaMonkey) não suporta o formato do manifesto de texto simples ainda, então o manifesto contents.rdf é requerido para extensões que desejam deixar para trás o mantimento da compatibilidade com o Firefox 1.0 ou à suíte.</p>
diff --git a/files/pt-pt/creating_a_skin_for_seamonkey_2.x/index.html b/files/pt-pt/creating_a_skin_for_seamonkey_2.x/index.html
deleted file mode 100644
index 063b065a0f..0000000000
--- a/files/pt-pt/creating_a_skin_for_seamonkey_2.x/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Creating a Skin for SeaMonkey 2.x
-slug: Creating_a_Skin_for_SeaMonkey_2.x
-tags:
- - NeedsTranslation
- - SeaMonkey
- - TopicStub
-translation_of: Archive/Mozilla/Creating_a_Skin_for_SeaMonkey_2.x
----
-<h2 id="Introduction">Introduction</h2>
-
-
-<p>You're going to make a theme for SeaMonkey 2, but don't know how? I hope this manual will help you.</p>
-
-
-<h2 id="Contents">Contents</h2>
-<ul>
- <li><a href="/en-US/docs/Creating_a_Skin_for_SeaMonkey_2.x/Getting_Started">Getting Started</a></li>
-</ul>
diff --git a/files/pt-pt/criando_um_patch/index.html b/files/pt-pt/criando_um_patch/index.html
deleted file mode 100644
index 0ebf20b893..0000000000
--- a/files/pt-pt/criando_um_patch/index.html
+++ /dev/null
@@ -1,33 +0,0 @@
----
-title: Criando um patch
-slug: Criando_um_patch
-tags:
- - Desenvolvimento_Mozilla
- - Todas_as_Categorias
-translation_of: Mercurial/Using_Mercurial
----
-<p> </p>
-<p>Depois de <a href="/en/Mozilla_Source_Code_Via_CVS">obter o código fonte</a>, modifique-o, <a href="/en/Build_and_Install">compile-o</a> e teste-o, você pode querer receber suas mudanças <a class="external" href="http://www.mozilla.org/hacking/life-cycle.html">revisadas e checadas</a>]. Em ordem de fazer isto, você precisa criar um arquivo listando as mudanças que você fez, chamado <em>patch</em> ou <em>diff file</em>. Você pode gerá-lo usando o comando <strong>cvs diff</strong>.</p>
-<h3 id="Criando_um_diff_de_um_arquivo_.C3.BAnico" name="Criando_um_diff_de_um_arquivo_.C3.BAnico">Criando um diff de um arquivo único</h3>
-<p>Em ordem para criar um diff de um arquivo local único contra o arquivo atual no repositório, use:</p>
-<pre class="eval">$ cvs diff -u8p FILENAME
-</pre>
-<p>Isto cria um diff no então chamado formato 'unified' (<code>-u</code>), com 8 linhas de contexto. O diff é impresso para <strong>stdout</strong> por padrão. Para redirecionar a saída para um arquivo, use algo como:</p>
-<pre class="eval">$ cvs diff -u8p FILENAME &gt; OUT_FILE
-</pre>
-<h3 id="Criando_um_diff_para_arquivos_m.C3.BAltiplos" name="Criando_um_diff_para_arquivos_m.C3.BAltiplos">Criando um diff para arquivos múltiplos</h3>
-<p>Se, ao invés de usar um arquivo regular para FILENAME, você providenciar um diretório, então este diretório assim como todos os subdiretórios serão buscados recursivamente. Por exemplo</p>
-<pre class="eval">$ cvs diff -u8p . &gt; OUT_FILE
-</pre>
-<p>comparará todos os arquivos no diretório corrente e todos os seus subdiretórios contra as versões no repositório, e escreverá as diffs combinadas e unificadas para um arquivo chamado OUT_FILE, usando 8 linhas de contexto.</p>
-<p>Deve haver contexto suficiente no <em>patch</em> para que seja endendido sem abrir o código fonte. A linha-guia padrão é usar 8 linhas de contexto; se for colocado mais contexto, é necessário fazer o <em>patch</em> entendível, substitua 8 por um número maior. Também note que a maior quantidade de contexto que você inclui, aumenta a chance de permitir também aplicar o <em>patch</em> a um arquivo que difere pesadamente do código original contra o que o diff foi preparado.</p>
-<h3 id="Incluindo_novos_arquivo_em_um_patch" name="Incluindo_novos_arquivo_em_um_patch">Incluindo novos arquivo em um <em>patch</em></h3>
-<p>Para incluir um novo arquivo em seu <em>patch</em> use a opção <code>-N</code>:</p>
-<pre class="eval">$ cvs diff -u8pN . &gt; OUT_FILE
-</pre>
-<p>Um problema comum aqui é que <strong>cvs diff</strong> não incluirá os novos arquivos que não foram <strong>cvs add</strong>ed (cvs adicionado), e cvs requer acesso de escrita ao repositório.</p>
-<p>A solução é usar a utilidade <strong>cvsdo</strong> , que edita <code>CVS/Entries</code> para fazer o cvs pensar que o arquivo foi adicionado ao repositório:</p>
-<pre class="eval">$ cvsdo add NEWFILE
-$ cvs diff -u8pN NEWFILE &gt; OUT_FILE
-</pre>
-<p>Note que este truque não trabalhará para novos diretórios; para isto, <code>cvs add</code> atualmente têm de modificar o repositório imediatamente, que requere acesso à escrita</p>
diff --git a/files/pt-pt/criando_um_visual_para_o_firefox/contents.rdf/index.html b/files/pt-pt/criando_um_visual_para_o_firefox/contents.rdf/index.html
deleted file mode 100644
index f074db7f8e..0000000000
--- a/files/pt-pt/criando_um_visual_para_o_firefox/contents.rdf/index.html
+++ /dev/null
@@ -1,46 +0,0 @@
----
-title: contents.rdf
-slug: Criando_um_visual_para_o_Firefox/contents.rdf
-translation_of: Archive/Themes/Creating_a_Skin_for_Firefox/contents.rdf
----
-<p>
-</p><p>Copie o texto seguinte e cole em um arquivo de texto, depois salve este arquivo como "<code>contents.rdf</code>":
-</p>
-<pre>&lt;?xml version="1.0"?&gt;
-
-&lt;RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:chrome="http://www.mozilla.org/rdf/chrome#"&gt;
-
- &lt;!-- Lista todas os visuais fornecidos neste tema --&gt;
- &lt;RDF:Seq about="urn:mozilla:skin:root"&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema"/&gt;
- &lt;/RDF:Seq&gt;
-
- &lt;RDF:Description about="urn:mozilla:skin:Meu_Tema"
- chrome:displayName="Meu_Tema"
- chrome:accessKey="N"
- chrome:author=""
- chrome:authorURL=""
- chrome:description=""
- chrome:name="Meu_Tema"
- chrome:image="preview.png" &gt;
- &lt;chrome:packages&gt;
- &lt;RDF:Seq about="urn:mozilla:skin:Meu_Tema:packages"&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema:browser"/&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema:communicator"/&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema:global"/&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema:mozapps"/&gt;
- &lt;RDF:li resource="urn:mozilla:skin:Meu_Tema:help"/&gt;
- &lt;/RDF:Seq&gt;
- &lt;/chrome:packages&gt;
- &lt;/RDF:Description&gt;
-
- &lt;!-- Informação da Versão. Indica que funciona somente em versão superior a 1 do pacote. --&gt;
- &lt;RDF:Description chrome:skinVersion="1.5" about="urn:mozilla:skin:Meu_Tema:browser"/&gt;
- &lt;RDF:Description chrome:skinVersion="1.5" about="urn:mozilla:skin:Meu_Tema:communicator"/&gt;
- &lt;RDF:Description chrome:skinVersion="1.5" about="urn:mozilla:skin:Meu_Tema:global"/&gt;
- &lt;RDF:Description chrome:skinVersion="1.5" about="urn:mozilla:skin:Meu_Tema:mozapps"/&gt;
- &lt;RDF:Description chrome:skinVersion="1.5" about="urn:mozilla:skin:Meu_Tema:help"/&gt;
-&lt;/RDF:RDF&gt;
-</pre>
-{{ languages( { "en": "en/Creating_a_Skin_for_Firefox/contents.rdf", "fr": "fr/Cr\u00e9er_un_th\u00e8me_pour_Firefox/contents.rdf", "pl": "pl/Tworzenie_sk\u00f3rek_dla_Firefoksa/contents.rdf" } ) }}
diff --git a/files/pt-pt/criando_um_visual_para_o_firefox/iniciando/index.html b/files/pt-pt/criando_um_visual_para_o_firefox/iniciando/index.html
deleted file mode 100644
index c082b560dc..0000000000
--- a/files/pt-pt/criando_um_visual_para_o_firefox/iniciando/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
----
-title: Iniciando
-slug: Criando_um_visual_para_o_Firefox/Iniciando
-translation_of: Archive/Mozilla/Creating_a_sking_for_Firefox_Getting_Started
----
-<p> </p>
-<h3 id="Instala.C3.A7.C3.A3o" name="Instala.C3.A7.C3.A3o">Instalação</h3>
-<p>Baixe a mais recente versão do Firefox e instale. Certifique-se de instalar a extensão DOM Inspector incluída.</p>
-<h4 id="Extrair_tema" name="Extrair_tema">Extrair tema</h4>
-<p>Você pode iniciar com qualquer tema projetado para o Firefox, porém, para uma melhor compreensão estaremos editando o Winstripe (tema padrão do Firefox). Ele está situado no arquivo <code>classic.jar</code> e é encontrado no diretório da instalação do Firefox. Um arquivo .jar é na realidade um zip renomeado, abra-o em um programa zip do mesmo modo que abriria um arquivo comum. Entretanto, se a aplicação zip não interpretar com um formato válido, renomeie o arquivo para <code>classic.zip</code> e continue a extração.</p>
-<h5 id="Localiza.C3.A7.C3.B5es_do_classic.jar" name="Localiza.C3.A7.C3.B5es_do_classic.jar">Localizações do classic.jar</h5>
-<p><strong>Linux:</strong> /usr/lib/MozillaFirefox/chrome/classic.jar</p>
-<p><strong>Windows:</strong> \Arquivos de Programas\Mozilla Firefox\chrome\classic.jar</p>
-<p><strong>Para Mac OS X:</strong></p>
-<ul> <li>Vá até sua pasta aplicativos</li> <li>Dê um clique pressionando o botão Control no ícone do aplicativo (íncone do Firefox), escolha Exibir Conteúdo da Biblioteca.</li> <li>Siga até contents/MacOS/Chrome/classic.jar</li>
-</ul>
-<p>Copie <code>classic.jar</code> para outra pasta mais facilmente acessível -- é recomendado usar <code>Classico</code> -- extraia o conteúdo nesta pasta, garantindo a permanência da mesma estrutura de diretório.</p>
-<p>Nota: Você pode alterar o arquivo <code>.jar</code> para <code>.jar.zip</code> então extrair ela para colocar dentro de uma pasta!</p>
-<h4 id="Diret.C3.B3rios" name="Diret.C3.B3rios">Diretórios</h4>
-<p>Dentro do <code>classic.jar</code> há um diretório <code>skin</code>, e inclui mais dois arquivos <code>preview.png</code> e <code>icon.png</code>.</p>
-<dl> <dt><code>skin</code> </dt> <dd><code>skin</code> um simples recipiente para o diretório <code>classic</code> que mantem todo o material importante. </dd> <dt><code>classic</code> </dt> <dd><code>classic</code> contem os seguintes diretórios. </dd> <dt><code>browser</code> </dt> <dd><code>browser</code> contem todos os ícones da barra de ferramentas, como também os ícones para a barra de navegação, sistema de feeds, segurança de navegação. organizador de favoritos, janela de opções e pesquisa. </dd> <dt><code>communicator</code> </dt> <dd>Não é obrigatório e normalmente é esquecido. </dd> <dt><code>global</code> </dt> <dd><code>global</code> contem quase todos os mais importante arquivos CSS que definem a aparência do navegador. Este é o diretório o mais crítico em um tema. </dd> <dt><code>help</code> </dt> <dd><code>help</code> contem todos os arquivos para aplicar o tema no diálogo da janela de ajuda. </dd> <dt><code>mozapps</code> </dt> <dd><code>mozapps</code> contem todos os estilos e ícones para certos mecanismos do navegador, como o gerenciador de complementos e o assistente de atualização. </dd>
-</dl>
-<h4 id="Instalar_seu_novo_tema" name="Instalar_seu_novo_tema">Instalar seu novo tema</h4>
-<p>Antes que você possa ver as alterações feitas no tema do Firefox (desde que a última edição seja de difícil ajuste) você deve primeiramente aprender como re-compactar o tema clássico para fazê-lo instalável. Para este exemplo chamaremos seu tema de "Meu_Tema", embora possa ser substituído por qualquer outro nome.</p>
-<h5 id="Copiando_os_arquivos_necess.C3.A1rios" name="Copiando_os_arquivos_necess.C3.A1rios">Copiando os arquivos necessários</h5>
-<p>O primeiro passo é mover todos os arquivos na correta estrutura do diretório. Então crie um novo diretório chamado <code>Meu_Tema</code>. Dentro deste diretório ponha como diretórios principais: <code>browser</code>, <code>communicator</code>, <code>global</code>, <code>help</code>, <code>mozapps</code> e também os arquivos <code>icon.png</code>, <code>preview.png</code> (sim, isto significa que a estrutura deste diretório e o novo <code>classico.jar</code> será ligeiramente diferente do classic).</p>
-<h5 id="Criando_os_arquivos_de_instala.C3.A7.C3.A3o" name="Criando_os_arquivos_de_instala.C3.A7.C3.A3o">Criando os arquivos de instalação</h5>
-<h6 id="contents.rdf" name="contents.rdf">contents.rdf</h6>
-<p>Faça uma cópia do <a href="/pt/Criando_um_visual_para_o_Firefox/contents.rdf" title="pt/Criando_um_visual_para_o_Firefox/contents.rdf">contents.rdf</a> ponha em <code>\Meu_Tema</code> e abra em seu editor de texto. Este arquivo é um pequeno Banco de dados XML Database que é utilizado para descrever o visual.</p>
-<p>No código pesquise por todos resultados de "Meu_Tema" e substitua com o nome escolhido para o seu tema.</p>
-<p>A seção packages lista que componentes você está alterando. Se nós possuirmos visuais para o Chatzilla, necessitamos adicionar outra linha semelhante e alterar a parte final para Chatzilla. Porém, esta lista inclui tudo que alteramos, por isto substitua apenas a parte do texto em azul para manter o nome/versão que você usou nas seções antes desta.</p>
-<pre class="eval">&lt;RDF:li resource="urn:mozilla:skin:<span style="color: #00D; font-weight: bold;">Meu_Tema</span>:communicator"/&gt;
-&lt;RDF:li resource="urn:mozilla:skin:<span style="color: #00D; font-weight: bold;">Meu_Tema</span>:editor"/&gt;
-&lt;RDF:li resource="urn:mozilla:skin:<span style="color: #00D; font-weight: bold;">Meu_Tema</span>:global"/&gt;
-&lt;RDF:li resource="urn:mozilla:skin:<span style="color: #00D; font-weight: bold;">Meu_Tema</span>:messenger"/&gt;
-&lt;RDF:li resource="urn:mozilla:skin:<span style="color: #00D; font-weight: bold;">Meu_Tema</span>:navigator"/&gt;
-</pre>
-<p>Salve o arquivo e saia do editor de texto.</p>
-<h6 id="install.rdf" name="install.rdf">install.rdf</h6>
-<p>Faça uma cópia <a href="/pt/Criando_um_visual_para_o_Firefox/install.rdf" title="pt/Criando_um_visual_para_o_Firefox/install.rdf">install.rdf</a> e ponha em seu diretório <code>Meu_Tema</code>, depois abra em seu editor de texto. Este arquivo é um pequeno banco de dados XML que descreve a instalação do visual.</p>
-<pre> &lt;Description about="urn:mozilla:install-manifest"&gt;
- &lt;em:id&gt;{UUID_do_Tema}&lt;/em:id&gt;
- &lt;em:version&gt;Versao_do_Tema&lt;/em:version&gt;
-</pre>
-<p>A primeira seção requer que você estabeleça um <a href="/pt/Criando_um_visual_para_o_Firefox/UUID" title="pt/Criando_um_visual_para_o_Firefox/UUID">UUID</a> para o seu tema e que você dê ao seu tema um número da versão. Uma vez feito isto, insira a informação como indicado acima, e continue abaixo.</p>
-<p>Você deverá ter também as atualizações entre máxima e mínima compatíveis para a aplicação (Firefox) na seguinte seção:</p>
-<pre> &lt;em:targetApplication&gt;
- &lt;Description&gt;
- &lt;!-- UUID do Firefox --&gt;
- &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;
- &lt;em:minVersion&gt;Versao_Minima_do_Firefox&lt;/em:minVersion&gt;
- &lt;em:maxVersion&gt;Versao_Maxima_do_Firefox&lt;/em:maxVersion&gt;
- &lt;/Description&gt;
- &lt;/em:targetApplication&gt;
-</pre>
-<p>Estabelecer versões compatíveis no limite entre mínima e máxima previne conflitos em alguma versão do Firefox para qual seu tema não foi desenvolvido ou não testado.</p>
-<h4 id="Arquivos_CSS" name="Arquivos_CSS">Arquivos CSS</h4>
-<p>Os arquivos CSS nesses diretórios dizem ao browser como deverá mostrar os botões e outros controles, onde posicionar as imagens, bordas e espaçamentos, e assim por diante.</p>
-<p>Nesse exemplo, vamos mudar os botões de padrão do browser.</p>
-<p>Vá para a pasta <code>global</code> e abra o arquivo <code>button.css</code> em seu editor de texto favorito. Desça até <code>button {</code>. Esta seção define o botão normal em sua posição estática (não está com o ponteiro sobre ele, e não é selecionado).</p>
-<p>Mude o <code>background-color:</code> para <code>DarkBlue</code> e o <code>color:</code> para <code>White</code>, e salve o arquivo.</p>
-<p><em>more after I get done with some tests</em></p>
-<h4 id="Recompactar_o_JAR" name="Recompactar_o_JAR">Recompactar o JAR</h4>
-<p>Agora tudo que você precisa fazer é compactar novamente os arquivos com a seguinte estrutura de diretório, usando seu programa favorito de compactação de arquivos:</p>
-<p>/browser/*<br>
-/communicator/*<br>
-/global/*<br>
-/help/*<br>
-/mozapps/*<br>
-/contents.rdf<br>
-/install.rdf<br>
-/icon.png<br>
-/preview.png<br>
- </p>
-<p>Certifique-se de apenas compactar os arquivos de dentro do diretório que você criou <code>Meu_Tema</code>. Caso o contrário seu tema não será instalado corretamente.</p>
-<h4 id="Triggering_the_install_from_the_web" name="Triggering_the_install_from_the_web">Triggering the install from the web</h4>
-<p>To install the theme's JAR file directly from the web, you need to run some JavaScript.</p>
-<p>&lt;a href='javascript:InstallTrigger.installChrome(InstallTrigger.SKIN, <br>
-"<span style="color: #00D; font-weight: bold;">myskin.jar</span>", "<span style="color: #00D; font-weight: bold;">My Skin Theme</span>")'&gt;install My Skin&lt;/a&gt;</p>
-<p>If you have JAR files on your hard drive and would like to install them, then download/use <a class="external" href="http://www.eightlines.com/neil/mozskin/installjar.html">this form</a>.</p>
-<p>You can also just open the themes window in Mozilla and drag and drop your .jar file onto it.</p>
-<p>Now to change your folder(s) back into a .jar Well it's easy! What you do is put your folder(s) into a .zip file and then when it's compressed make the .zip into a .jar</p>
-<p>{{ languages( { "en": "en/Creating_a_Skin_for_Firefox/Getting_Started", "es": "es/Creando_un_skin_para_Firefox/Como_empezar", "fr": "fr/Cr\u00e9er_un_th\u00e8me_pour_Firefox/Premiers_pas" } ) }}</p>
diff --git a/files/pt-pt/criando_um_visual_para_o_firefox/install.rdf/index.html b/files/pt-pt/criando_um_visual_para_o_firefox/install.rdf/index.html
deleted file mode 100644
index 6ecb35c06f..0000000000
--- a/files/pt-pt/criando_um_visual_para_o_firefox/install.rdf/index.html
+++ /dev/null
@@ -1,49 +0,0 @@
----
-title: install.rdf
-slug: Criando_um_visual_para_o_Firefox/install.rdf
-translation_of: Archive/Themes/Creating_a_Skin_for_Firefox/install.rdf
----
-<p> </p>
-
-<p>Copie o texto seguinte e cole em um arquivo de texto, então salve este arquivo como "<code>install.rdf</code>":</p>
-
-<p> </p>
-
-<pre>&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;{UUID_do_Tema}&lt;/em:id&gt;
- &lt;em:version&gt;Versao_do_Tema&lt;/em:version&gt;
-
- &lt;!-- Aplicação em que esta extensão pode ser instalada,
- com suporte a versões entre mínima e máxima. --&gt;
-
- &lt;em:targetApplication&gt;
- &lt;Description&gt;
- &lt;!-- UUID do Firefox --&gt;
- &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;
- &lt;em:minVersion&gt;Versao_Minima_do_Firefox&lt;/em:minVersion&gt;
- &lt;em:maxVersion&gt;Versao_Maxima_do_Firefox&lt;/em:maxVersion&gt;
- &lt;/Description&gt;
- &lt;/em:targetApplication&gt;
-
- &lt;!-- MetaData do Extremo Inicial --&gt;
- &lt;!-- Meu_Tema --&gt;
- &lt;em:name&gt;Meu_Tema&lt;/em:name&gt;
- &lt;em:description&gt;Descricao_do_Seu_Tema&lt;/em:description&gt;
- &lt;em:creator&gt;Seu_Nome&lt;/em:creator&gt;
- &lt;em:contributor&gt;Nomes_dos_Colaboradores&lt;/em:contributor&gt;
- &lt;em:homepageURL&gt;Site_do_Tema&lt;/em:homepageURL&gt;
- &lt;em:updateURL&gt; Url_para_Localizar_Atualizacao &lt;/em:updateURL&gt;
- &lt;em:aboutURL&gt; Url_para_Página_Sobre &lt;/em:aboutURL&gt;
-
- &lt;!-- Ganchos de Integração do Extremo Incial
- (utilizado pelo Gerenciador de Complementos/Temas)--&gt;
- &lt;em:internalName&gt;Meu_Tema&lt;/em:internalName&gt;
- &lt;/Description&gt;
-
-&lt;/RDF&gt;
-</pre>
diff --git a/files/pt-pt/criando_um_visual_para_o_firefox/uuid/index.html b/files/pt-pt/criando_um_visual_para_o_firefox/uuid/index.html
deleted file mode 100644
index e7010bb2e5..0000000000
--- a/files/pt-pt/criando_um_visual_para_o_firefox/uuid/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: UUID
-slug: Criando_um_visual_para_o_Firefox/UUID
-translation_of: Archive/Themes/Creating_a_Skin_for_Firefox/UUID
----
-<p>
-</p>
-<h3 id="UUID:_Indentificador_.C3.9Anico_Universal_.28Universal_Unique_Identifier.29"> UUID: Indentificador Único Universal (Universal Unique Identifier) </h3>
-<p>Um UUID pode ser obtido visitando <a class=" external" href="http://www.famkruithof.net/uuid/uuidgen">http://www.famkruithof.net/uuid/uuidgen</a> ou digitando "firebot: uuid?" em irc.mozilla.org.
-</p>
-<h3 id="Veja_Tamb.C3.A9m"> Veja Também </h3>
-<p><a href="pt/Gerando_GUIDs">Gerando_GUIDs</a>
-</p>{{ languages( { "en": "en/Creating_a_Skin_for_Firefox/UUID", "fr": "fr/Cr\u00e9er_un_th\u00e8me_pour_Firefox/UUID", "pl": "pl/Tworzenie_sk\u00f3rek_dla_Firefoksa/UUID" } ) }}
diff --git a/files/pt-pt/empacotando_extensões/index.html b/files/pt-pt/empacotando_extensões/index.html
deleted file mode 100644
index 96b5988408..0000000000
--- a/files/pt-pt/empacotando_extensões/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
----
-title: Empacotando Extensões
-slug: Empacotando_Extensões
-tags:
- - Extensões
- - Toolkit API
-translation_of: Archive/Add-ons/Extension_Packaging
----
-<p>Extensões são uma forma de <a href="/en-US/docs/Bundle">Installable Bundle</a> (Pacotes Instaláveis) os quais podem ser baixados e instalados por um usuário, ou proporcionado por um pré-pacote com a aplicação ou por um programa externo. Extensões usam uma <a href="/en-US/docs/Bundles">directory structure</a> (estrutura de diretórios) que podem proporcionar chrome, componentes e outros arquivos para extender a funcionalidade de um programa XUL.</p>
-<p>Toda extensão deve proporcionar um arquivo <a href="/pt-PT/docs/install.rdf" title="install.rdf">install.rdf</a> que contém metadados sobre a extensão, como IDs únicos, versão, autor e informações sobre compatibilidade.</p>
-<p>Depois dos arquivos da extensão e o install.rdf estarem preparados, existem vários caminhos para preparar uma extensão para instalação: comprima o diretório da extensão dentro de um arquivo <a href="/en-US/docs/XPI">XPI</a> (XPInstall), desempacote a extensão diretamente dentro da aplicação do usuário ou diretório do perfil, ou registre a extensão no registro do Windows.</p>
-
-<h2 id="Fazendo_uma_Extens.C3.A3o_XPI" name="Fazendo_uma_Extens.C3.A3o_XPI">Fazendo uma Extensão XPI</h2>
-<p>Um arquivo <a href="/en-US/docs/XPI">XPI</a> (XPInstall) é simplesmente um arquivo ZIP contendo os arquivos da extensão, com o arquivo <a href="/pt-PT/docs/install.rdf" title="install.rdf">install.rdf</a> no raiz do ZIP. Usuários podem baixar e instalar os arquivos XPI de um website ou de uma pasta local, abrindo-o ou arrastando-o para uma janela de Gerenciamento de Extensões.</p>
-<p>O tipo MIME reconhecido pelo Firefox pelos arquivos XPI é <em>application/x-xpinstall</em>. A maioria dos servidores de HTTP não está configurada por padrão para retornar este tipo MIME para a extensão .xpi, você provavelmente precisará configurar seu servidor HTTP. No Servidor Apache HTTP, isto pode ser feito adicionando as seguintes diretrizes ao arquivo de configuração ou ao .htaccess:</p>
-<pre class="eval">AddType application/x-xpinstall .xpi
-</pre>
-
-<h2 id="Instalar_Arquivos_de_Extens.C3.A3o_Diretamente" name="Instalar_Arquivos_de_Extens.C3.A3o_Diretamente">Instalar Arquivos de Extensão Diretamente</h2>
-<p>Se você sabe a localização da aplicativos (se você estiver instalando uma extensão como parte de um instalador de aplicativos, por exemplo), você pode instalar os arquivos da extensão diretamente em &lt;appdir&gt;/extensions/&lt;extensionID&gt;. A extensão será encontrada automaticamente pelo Gerenciador de Extensões da próxima vez que o aplicativo for iniciado.</p>
-<p>Quando usando este método você deve verificar se as permissões do arquivo de sistema para os diretórios e arquivos da extensão estejam postas adequadamente. Contrariamente, o Gerenciador de Extensões pode não funcionar adequadamente com a extensão ou ela pode não funcionar adequadamente.</p>
-<h2 id="Registrar_um_Local_de_Extens.C3.A3o_Usando_o_Registro_do_Windows" name="Registrar_um_Local_de_Extens.C3.A3o_Usando_o_Registro_do_Windows">Registrar um Local de Extensão Usando o Registro do Windows</h2>
-<p>Instaladores externos (como o Java runtime)podem desejar instalar pontos de integração da aplicação como extensão mesmo se o aplicativo ainda não está instalado. Isto pode ser efetuado no Windows usando o registro (<a href="/en-US/docs/Adding_Extensions_using_the_Windows_Registry">Adding Extensions using the Windows Registry</a>).</p>
-
-<h2 id="Extens.C3.B5es_Multi-Item_XPI" name="Extens.C3.B5es_Multi-Item_XPI">Extensões Multi-Item XPI</h2>
-<p>Em alguns casos um simples arquivo XPI podem desejar instalar múltiplas extensões/temas. Um tipo especial de extensão XPI chamado de <a href="/en-US/docs/Multiple_Item_Packaging">Multiple Item Package</a> que explica como criar este tipo de pacote. (Firefox 1.5/XULRunner 1.8 é requerido.)</p>
-
-<h2 id="Refer.C3.AAncias_Oficiais_para_Toolkit_API" name="Refer.C3.AAncias_Oficiais_para_Toolkit_API">Referências Oficiais para <a href="/pt-PT/docs/Toolkit_API" title="Toolkit_API">Toolkit API</a></h2>
-<div>{{page("/pt-PT/docs/Toolkit_API/Official_References")}}</div>
diff --git a/files/pt-pt/empacotando_temas/index.html b/files/pt-pt/empacotando_temas/index.html
deleted file mode 100644
index 264a4b1045..0000000000
--- a/files/pt-pt/empacotando_temas/index.html
+++ /dev/null
@@ -1,100 +0,0 @@
----
-title: Empacotando Temas
-slug: Empacotando_Temas
-tags:
- - Temas
- - Todas_as_Categorias
- - Toolkit API
-translation_of: Mozilla/Thunderbird/Thunderbird_extensions/Theme_Packaging
----
-<p> </p>
-<p>Este documento descreve como empacotar <a href="pt/Temas">temas</a> para o Firefox e o Thunderbird.</p>
-<h3 id="Pr.C3.A9_Requisitos" name="Pr.C3.A9_Requisitos">Pré Requisitos</h3>
-<p>Fazer um tema para o Firefox ou Thunderbird requer conhecimentos em Cascading Style Sheets (<a href="pt/CSS">CSS</a>), provavelmente <a href="pt/XBL">XBL</a>, e um pouco de design gráfico e habilidade estética (...ou talvez não). Este documento descreve somente como Temas são empacotados em ordem para serem mostrados na janela de Temas do Firefox.</p>
-<h3 id="Disposi.C3.A7.C3.A3o_do_Arquivo_de_Tema" name="Disposi.C3.A7.C3.A3o_do_Arquivo_de_Tema">Disposição do Arquivo de Tema</h3>
-<p>Os temas do Firefox/Thunderbird são empacotados em um arquivo JAR com a seguinte estrutura:</p>
-<pre class="eval">theme.jar:
- install.rdf
- contents.rdf
- preview.png
- icon.png
- browser/<i>files</i>
- global/<i>files</i>
- mozapps/<i>files</i>
- communicator/<i>files</i>
- ...
-
-</pre>
-<ul>
- <li>Você deve ter um nível máximo <a href="pt/Chrome.manifest">chrome.manifest</a> (Firefox/Thunderbird 1.5) ou o arquivo contents.rdf que registre o chrome para o tema (como antes) e também um manifesto <a href="pt/Install.rdf">install.rdf</a> que especifica metadados que são exibidos na janela de Temas.</li>
- <li>preview.png é uma imagem de previsão que será mostrada na área de previsão da janela de Temas. Ela pode ter qualquer tamanho.</li>
- <li>icon.png é um PNG 32x32 (pode conter transparência alfa) que irá aparecer na lista de Temas na janela de Temas.</li>
-</ul>
-<h3 id="install.rdf" name="install.rdf">install.rdf</h3>
-<p>Seu manifesto <a href="pt/Install.rdf">install.rdf</a> parecerá com isto:</p>
-<pre class="eval">&lt;?xml version="1.0"?&gt;
-
-&lt;RDF xmlns="<span class="nowiki">http://www.w3.org/1999/02/22-rdf-syntax-ns#</span>"
- xmlns:em="<span class="nowiki">http://www.mozilla.org/2004/em-rdf#</span>"&gt;
-
- &lt;Description about="urn:mozilla:install-manifest"&gt;
- &lt;em:type&gt;4&lt;/em:type&gt;<i>more properties</i>
- &lt;/Description&gt;
-&lt;/RDF&gt;
-</pre>
-<h4 id="Propriedades_Requeridas_de_install.rdf" name="Propriedades_Requeridas_de_install.rdf">Propriedades Requeridas de install.rdf</h4>
-<p>Seu arquivo install.rdf deve ter as seguintes propriedades. Veja a <a href="pt/Install.rdf">Referência install.rdf</a> para mais informações:</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>
-<h4 id="Propriedades_Opcionais_de_install.rdf" name="Propriedades_Opcionais_de_install.rdf">Propriedades Opcionais de install.rdf</h4>
-<ul>
- <li>em:description</li>
- <li>em:creator</li>
- <li>em:contributor</li>
- <li>em:homepageURL</li>
- <li>em:updateURL</li>
-</ul>
-<p>Note que se o seu tema estiver disponível no website <a class="external" href="http://addons.mozilla.org" rel="freelink">http://addons.mozilla.org</a>, ele não deve incluir uma URL de atualização.</p>
-<h4 id="Arquivo_de_Amostra_install.rdf" name="Arquivo_de_Amostra_install.rdf">Arquivo de Amostra install.rdf</h4>
-<pre class="eval">&lt;?xml version="1.0"?&gt;
-
-&lt;RDF xmlns="<span class="nowiki">http://www.w3.org/1999/02/22-rdf-syntax-ns#</span>"
- xmlns:em="<span class="nowiki">http://www.mozilla.org/2004/em-rdf#</span>"&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;!-- Target Application this extension can install into,
- with minimum and maximum supported versions. --&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;!-- Front End MetaData --&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;<span class="nowiki">http://www.bengoodger.com/</span>&lt;/em:homepageURL&gt;
-
- &lt;!-- Front End Integration Hooks (used by Theme Manager)--&gt;
- &lt;em:internalName&gt;newtheme1&lt;/em:internalName&gt;
- &lt;/Description&gt;
-&lt;/RDF&gt;
-</pre>
-<p>Os seguir estão algumas aplicações comuns de alvos GUIDs que você pode usar na sua propriedade targetApplication:</p>
-<pre class="eval">Firefox {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
-Thunderbird {3550f703-e582-4d05-9a08-453d09bdfdc6}
-Sunbird {718e30fb-e89b-41dd-9da7-e25a45638b28}</pre>
diff --git a/files/pt-pt/eventos_arrastar_e_soltar/index.html b/files/pt-pt/eventos_arrastar_e_soltar/index.html
deleted file mode 100644
index 5c224cd109..0000000000
--- a/files/pt-pt/eventos_arrastar_e_soltar/index.html
+++ /dev/null
@@ -1,33 +0,0 @@
----
-title: Eventos arrastar e soltar
-slug: Eventos_arrastar_e_soltar
-tags:
- - Firefox 3
-translation_of: Archive/Mozilla/Drag_and_drop/Drag_and_drop_events
----
-<p>{{ Fx_minversion_header(3) }}</p>
-<p>Firefox 3 acrescenta dois novos eventos que lhe permitem determinar quando operações de arrastar começam e terminam. Estes eventos são novos no atual projeto da especificação HTML 5.</p>
-<dl>
- <dt>
- <code>drag</code></dt>
- <dd>
- Emitido quando a operação de arrasto começa.</dd>
- <dt>
- <code>dragend</code></dt>
- <dd>
- Emitido quando a operação de arrasto finaliza.</dd>
-</dl>
-<p>Para mais informações sobre arrastar e soltar, veja o artigo <a class="external" href="http://developer.mozilla.org/en/docs/Drag_and_Drop">Drag and Drop</a> (em inglês).</p>
-<p>Você pode ver um exemplo destes eventos em ação aqui:</p>
-<ul>
- <li><a class="external" href="http://developer.mozilla.org/samples/dragdrop/dragevents.txt">Ver código</a></li>
- <li><a class="external" href="http://developer.mozilla.org/samples/dragdrop/dragevents.html">Ver exemplo</a></li>
-</ul>
-<h3 id="Veja_tamb.C3.A9m" name="Veja_tamb.C3.A9m">Veja também</h3>
-<ul>
- <li><a class="external" href="http://www.whatwg.org/specs/web-apps/current-work/#dnd">HTML 5 working draft: Drag and drop</a></li>
- <li><a href="/en/Drag_and_Drop">Drag and Drop</a></li>
- <li>{{ Interface("nsIDragService") }}</li>
-</ul>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/extras_xml/index.html b/files/pt-pt/extras_xml/index.html
deleted file mode 100644
index bd4279062c..0000000000
--- a/files/pt-pt/extras_xml/index.html
+++ /dev/null
@@ -1,116 +0,0 @@
----
-title: XML Extras
-slug: Extras_XML
-tags:
- - Todas_as_Categorias
- - XML
-translation_of: Mozilla/Tech/XML_Extras
----
-<p> </p>
-<p>O módulo XML Extras contém inúmeras <em>características</em> que permitem que os desenvolvedores tratem XML como dados e não somente como um outro formato de documento. O módulo é estruturado como um componente <em>drop-in </em>e expõe suas <em>características</em> XML-as-data tanto para usuários de <a href="/pt/JavaScript" title="pt/JavaScript">JavaScript</a> como para usuários de C++/<a href="/pt/XPCOM" title="pt/XPCOM">XPCOM</a>. O módulo XML Extras é construído por padrão em todas as plataformas e é incluído no <em>instalador </em>do browser, de modo que, ele está disponível no nightly builds.</p>
-<h3 id="Feature_Status" name="Feature_Status">Status das Features</h3>
-<table class="standard-table">
- <tbody>
- <tr>
- <td class="header">Feature</td>
- <td class="header">Status</td>
- </tr>
- <tr>
- <td><a href="/pt/XMLSerializer" title="pt/XMLSerializer">XMLSerializer</a></td>
- <td>Disponível</td>
- </tr>
- <tr>
- <td><a href="/pt/XMLHttpRequest" title="pt/XMLHttpRequest">XMLHttpRequest</a></td>
- <td>Disponível</td>
- </tr>
- <tr>
- <td><a href="/pt/DOMParser" title="pt/DOMParser">DOMParser</a> (string and stream input source)</td>
- <td>Disponível</td>
- </tr>
- <tr>
- <td>Serviços Web com <a href="/pt/SOAP_in_Gecko-based_Browsers" title="pt/SOAP_in_Gecko-based_Browsers">SOAP</a> e <a href="/pt/Accessing_Web_Services_in_Mozilla_Using_WSDL_Proxying" title="pt/Accessing_Web_Services_in_Mozilla_Using_WSDL_Proxying">WSDL</a></td>
- <td>Disponível desde a versão 1.4alpha. Movida para o módulo Serviços Web durante a versão 1.4beta.</td>
- </tr>
- <tr>
- <td>Persistência XML</td>
- <td> </td>
- </tr>
- <tr>
- <td>FIXptr e XPointer</td>
- <td>Disponível desde a versão 1.4alpha no núcleo Mozilla. Movida para os Extras XML durante a versão 1.4beta.</td>
- </tr>
- </tbody>
-</table>
-<p>Veja também:</p>
-<ul>
- <li><a href="/pt/XML_no_Mozilla" title="pt/XML_no_Mozilla">XML no Mozilla</a></li>
- <li><a href="/pt/XML_no_Mozilla#M.C3.A9todos_de_carregamento_e_salvamento_do_DOM" title="pt/XML_no_Mozilla#M.C3.A9todos_de_carregamento_e_salvamento_do_DOM">document.load()</a></li>
- <li><a class="external" href="http://kb.mozillazine.org/Category:XML_in_JavaScript">Alguns exemplos de como lidar com XML</a> da Base de Conhecimento MozillaZine Knowledge Base.</li>
-</ul>
-<h3 id="QA_and_Testing" name="QA_and_Testing">Perguntas Respostas e Testes</h3>
-<p>Existem alguns <a class="external" href="http://www.mozilla.org/xmlextras/tests.html">testes online</a> principalmente para o exercício do método HTTP GET através do <a href="/pt/XMLHttpRequest" title="pt/XMLHttpRequest">XMLHttpRequest</a>.</p>
-<p><span id="result_box" lang="pt"><span class="hps">Outros casos de teste</span> <span class="hps">para cada um dos</span> <span class="hps">componentes</span> <span class="hps">implementadas</span> <span class="hps">listados acima</span> <span class="hps">existem em</span></span> <code><a href="https://dxr.mozilla.org/mozilla-central/source/extensions/xmlextras/tests/" rel="custom">extensions/xmlextras/tests/</a></code>. <span id="result_box" lang="pt"><span class="hps">Conjuntos de testes</span> <span class="hps">mais</span> <span class="hps">exaustivos</span> <span class="hps">precisam ser criadas</span><span>, no entanto.</span> <span class="hps">Se você</span> <span class="hps">quiser ajudar</span> <span class="hps">com</span> <span class="hps">QA,</span> <span class="hps">você pode fazer</span> <span class="hps">o seguinte</span></span>:</p>
-<ul>
- <li><span id="result_box" lang="pt"><span class="hps">Registe-se</span> <span class="hps alt-edited">como proprietário</span> <span class="hps alt-edited">controle de qualidade para</span> <span class="hps">qualquer um dos componentes</span> <span class="hps alt-edited">implementados.</span> <span class="hps">O proprietário</span> <span class="hps">QA</span> <span class="hps">irá gerir</span> <span class="hps">os testes</span> <span class="hps">relacionados com o seu</span> <span class="hps">componente,</span> <span class="hps">atuar como</span> <span class="hps">contato</span> <span class="hps">QA</span> <span class="hps">para bugs</span> <span class="hps">relacionados e</span> <span class="hps">ajudar com os testes</span> <span class="hps">de regressão</span></span>.</li>
- <li><span id="result_box" lang="pt"><span class="hps alt-edited">Contribuir para uma</span> <span class="hps">suíte de testes</span> <span class="hps">ou</span> <span class="hps">testes individuais</span> <span class="hps">que usam os componentes</span> <span class="hps">implementados.</span> <span class="hps">Erros</span> <span class="hps">de arquivos para</span> <span class="hps">novos testes</span> <span class="hps">que você tem,</span> <span class="hps">e/ou</span> <span class="hps">vê-los</span> <span class="hps">em </span></span><code><a href="https://dxr.mozilla.org/mozilla-central/source/extensions/xmlextras/tests/" rel="custom">extensions/xmlextras/tests/</a></code>.</li>
- <li><span id="result_box" lang="pt"><span class="hps">Erros</span> <span class="hps">de arquivo</span> <span class="hps">contra os componentes</span> <span class="hps">implementados.</span> <span class="hps">Os erros deverão</span> <span class="hps">ser apresentadas contra</span> <span class="hps">o componente</span> <span class="hps">XML</span> <span class="hps">no produto</span> <span class="hps">Navegador</span></span>.</li>
-</ul>
-<h3 id="Documentation" name="Documentation">Documentação</h3>
-<p>Provavelmente a melhor maneira de aprender a usar estas tecnologias é através de exemplos. Existem vários em <code><a href="https://dxr.mozilla.org/mozilla-central/source/extensions/xmlextras/tests/" rel="custom">extensions/xmlextras/tests/</a></code>. <span id="result_box" lang="pt"><span class="hps">Se você</span> <span class="hps alt-edited">siguir o link para</span> <span class="hps alt-edited">ver</span> <span class="hps">os exemplos que você</span> <span class="hps">vai precisar</span> <span class="hps alt-edited">olhar no</span> <span class="hps">código fonte da página</span> <span class="hps">para</span> <span class="hps">os documentos HTML</span></span>.</p>
-<p>Para objetos <a href="/pt/XMLHttpRequest" title="pt/XMLHttpRequest">XMLHttpRequest</a> você pode confiar na  <a class="external" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html/63409298-0516-437d-b5af-68368157eae3.asp">documentação Microsoft XMLHttpRequest</a>, <span id="result_box" lang="pt"><span class="hps">com algumas ressalvas</span><span>:</span> <span class="hps">todas as funções e</span> <span class="hps">nomes de propriedades</span> <span class="hps">começam com uma</span> <span class="hps">letra minúscula</span> <span class="hps">e</span> <span class="hps">a criação do objeto</span> <span class="hps">é diferente.</span> <span class="hps">Algumas propriedades não</span> <span class="hps">são implementadas</span></span>.</p>
-<p><span id="result_box" lang="pt"><span class="hps">Thad</span> <span class="hps">Hoffman</span> <span class="hps">escreveu um</span> <span class="hps">documento que</span> <span class="hps">mostra como</span> <span class="hps">você pode imitar a</span></span> <a href="/pt/Using_XML_Data_Islands_in_Mozilla" title="pt/Using_XML_Data_Islands_in_Mozilla">Separação de Dados XML na Mozilla</a>. <span id="result_box" lang="pt"><span class="hps">Edmond</span> <span class="hps">Woychowsky</span> <span class="hps">também tem escrito</span> <span class="hps">artigos sobre</span> <span class="hps">a Separação de Dados XML</span> <span class="hps">na</span><span class="hps"> Mozilla</span></span>: "<a class="external" href="http://builder.com.com/article.jhtml?id=u00220030515woy01.htm"><span class="short_text" id="result_box" lang="pt"><span class="hps">Faça</span> os <span class="hps">dados da separação XML</span> <span class="hps">trabalhar</span> <span class="hps">na Mozilla</span></span></a>", "<a class="external" href="http://builder.com.com/5100-6371-5085227.html"><span class="short_text" id="result_box" lang="pt"><span class="hps">Construir</span> código de paginação XML <span class="hps">cross-browser</span></span></a>" e "<a class="external" href="http://builder.com.com/article.jhtml?id=u00320030718woy01.htm"><span id="result_box" lang="pt"><span class="hps">Implementar</span> <span class="hps">um carrinho de compras</span> <span class="hps">flexível com</span> <span class="hps">XML</span> <span class="hps">e</span> <span class="hps">ASP</span></span></a>". <span class="short_text" id="result_box" lang="pt"><span class="hps">O</span> <span class="hps">Mozilla Developer Center</span> <span class="hps">tem várias páginas</span> <span class="hps">para</span></span> <a href="/pt/XMLHttpRequest" title="pt/XMLHttpRequest">XMLHttpRequest</a>.</p>
-<p><span id="result_box" lang="pt"><span class="hps">Abaixo estão alguns</span> <span class="hps">diferencias</span> <span class="hps">importantes</span> <span class="hps">em</span> <span class="hps">"Extras XML</span><span class="hps">"</span> <span class="hps">entre</span> <span class="hps">Mozilla</span> <span class="hps">e</span> <span class="hps">Microsoft</span> <span class="hps">software</span></span>:</p>
-<table class="standard-table">
- <tbody>
- <tr>
- <td class="header">Diferença</td>
- <td class="header">Microsoft</td>
- <td class="header">Mozilla</td>
- </tr>
- <tr>
- <td>Nomes dos membros</td>
- <td><span class="short_text" id="result_box" lang="pt"><span class="hps">Diferencia maiúsculas de minúsculas</span></span>?</td>
- <td><span class="short_text" id="result_box" lang="pt"><span class="hps">Começa com</span> <span class="hps">letra minúscula</span></span></td>
- </tr>
- <tr>
- <td>Criação de <a href="/pt/XMLHttpRequest" title="pt/XMLHttpRequest">XMLHttpRequest</a></td>
- <td><code>new ActiveXObject("Msxml2.XMLHTTP")</code></td>
- <td><code>new XMLHttpRequest()</code></td>
- </tr>
- <tr>
- <td><code>XMLHttpRequest.send("some string")</code></td>
- <td>ok</td>
- <td>ok começando com marco 0.9.7 (atualmente nightly 2001-11-28). <span class="short_text" id="result_box" lang="pt"><span class="hps">Com</span> <span class="hps">versões</span> <span class="hps">mais antigas</span><span>, passando</span> <span class="hps">para</span> <span class="hps">strings</span></span> <code>send()</code> só funciona no cromo, ver <a href="https://dxr.mozilla.org/mozilla-central/source/extensions/xmlextras/tests/post.html" rel="custom">post.html</a><span class="short_text" id="result_box" lang="pt"><span class="hps">.</span> <span class="hps">A</span> <span class="hps atn">"</span><span>solução</span><span>"</span> <span class="hps">é usar o objeto</span> <span class="hps">DOMParser</span></span> <code>parseFromString()</code> <span id="result_box" lang="pt"><span class="hps">para criar</span> <span class="hps">um documento de</span> <span class="hps">string,</span> <span class="hps">e passar o</span> <span class="hps">documento temporário</span> <span class="hps">em</span></span> <code>send()</code>.</td>
- </tr>
- <tr>
- <td><code>XMLHttpRequest.open("aHost")</code></td>
- <td>ok</td>
- <td><code>file://</code> <span class="short_text" id="result_box" lang="pt"><span class="hps">documentos</span> <span class="hps">podem acessar</span></span> <code>http://</code> <span class="short_text" id="result_box" lang="pt"><span class="hps">documentos, mas</span> <span class="hps">você precisa habilitar os privilégios </span></span><code>UniversalBrowserRead</code> nos seus scripts - ver o documento <a class="external" href="http://www.mozilla.org/projects/security/components/signed-scripts.html#privs">Segurança JavaScript: Scripts assinados</a> para mais detalhes. <span id="result_box" lang="pt"><span class="hps">Normalmente,</span> <span class="hps">os arquivos devem</span> <span class="hps">residir em um</span> <span class="hps">servidor web</span> <span class="hps">para que isso não</span> <span class="hps">represente um problema</span> <span class="hps">(não</span> <span class="hps">que você não precisa</span> <span class="hps">que a linha</span> <span class="hps">seja</span><span>)</span></span>. Adicionalmente, "foo.com:80" e "foo.com:313" <span id="result_box" lang="pt"><span class="hps">são</span> <span class="hps">considerados hospedeiros</span> <span class="hps">diferentes</span> <span class="hps">para fins de segurança</span><span>.</span> <span class="hps">Você não pode</span> <span class="hps">abrir uma conexão com</span> <span class="hps">um host diferente</span></span>.</td>
- </tr>
- <tr>
- <td><a href="/pt/DOMParser" title="pt/DOMParser">DOMParser</a> Creation</td>
- <td><span class="short_text" id="result_box" lang="pt"><span class="hps">não disponível</span></span></td>
- <td><code>new DOMParser()</code></td>
- </tr>
- <tr>
- <td><a href="/pt/XMLSerializer" title="pt/XMLSerializer">XMLSerializer</a> Creation</td>
- <td><span class="short_text" id="result_box" lang="pt"><span class="hps">não disponível</span></span></td>
- <td><code>new XMLSerializer()</code></td>
- </tr>
- </tbody>
-</table>
-<p><span id="result_box" lang="pt"><span class="hps">Documentação mínima</span> <span class="hps">para os componentes</span> <span class="hps">listados acima</span> <span class="hps">podem ser encontrados usando a documentação</span> <span class="hps">Mozilla</span> <span class="hps">gerada pelo </span></span><a class="external" href="http://www.doxygen.org/">Doxygen</a>. <span id="result_box" lang="pt"><span class="hps">Arquivo</span>s de erros <span class="hps">novos</span> <span class="hps">para</span> <span class="hps">contribuições</span> <span class="hps">adicionais de documentação</span><span>, serão</span> <span class="hps">especificamente</span> <span class="hps">destinados a</span> <span class="hps">desenvolvedores de JavaScript</span> <span class="hps">ou para completar</span> <span class="hps">e</span> <span class="hps">esclarecer os comentários no estilo</span> <span class="hps">JavaDoc</span> <span class="hps">nos arquivos</span> <span class="hps">IDL</span></span>.</p>
-<ul>
- <li>nsIDOMSerializer (Currently, the JavaScript constructor is <code>XMLSerializer()</code>)</li>
- <li>nsIDOMParser (Currently, the JavaScript constructor is <code>DOMParser()</code>)</li>
- <li>nsIXMLHttpRequest</li>
-</ul>
-<p><span class="short_text" id="result_box" lang="pt"><span class="hps">Por favor, consulte</span> <span class="hps">a seção</span></span> <a href="/pt/XML_in_Mozilla#XML_Linking_and_Pointing" title="pt/XML_in_Mozilla#XML_Linking_and_Pointing">ligando e apontando XML</a> no documento <a href="/pt/XML_in_Mozilla" title="pt/XML_in_Mozilla">XML na Mozilla</a> para documentação FIXptr e XPointer.</p>
-<h3 id="How_can_I_help.3F" name="How_can_I_help.3F">Como eu posso ajudar?</h3>
-<ul>
- <li>Ajude com o <a href="/pt/XML_in_Mozilla#Testing_and_QA" title="pt/XML_in_Mozilla#Testing_and_QA">teste</a><span class="short_text" id="result_box" lang="pt"><span class="hps"> dos componentes</span> <span class="hps">contidos</span> <span class="hps">dentro do módulo.</span></span></li>
- <li>Contribua <a href="#Documentação">Documentação</a> com o módulo.</li>
- <li><span id="result_box" lang="pt"><span class="hps">Ajuda</span> <span class="hps">o nível do código</span><span>,</span> <span class="hps">contribuindo com pedaços</span> <span class="hps">de código para</span> <span class="hps">correções de erros</span> <span class="hps">ou conclusão de</span> <span class="hps">características</span></span>.</li>
-</ul>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/gecko/index.html b/files/pt-pt/gecko/index.html
deleted file mode 100644
index 52dad9bc73..0000000000
--- a/files/pt-pt/gecko/index.html
+++ /dev/null
@@ -1,106 +0,0 @@
----
-title: Gecko
-slug: Gecko
-tags:
- - Disposição
- - Gecko
- - Gecko versões
- - Mozilla
-translation_of: Mozilla/Gecko
----
-<p><img alt="" class="internal" src="/@api/deki/files/2567/=Netscape-gecko-logo.jpg" style="float: right;"> <strong>Gecko</strong> é o nome do mecanismo de disposição (layout) desenvolvido pelo Projeto da Mozilla. Este foi originalmente chamado de NGLayout.</p>
-
-<p>A função do Gecko é ler o conteúdo da Web, tal como <a href="/pt/CSS" title="pt/CSS">CSS</a>, <a href="/pt/HTML" title="pt/HTML">HTML</a>,  <a href="/pt/JavaScript" title="pt/JavaScript">JavaScript</a> e <a href="/pt/XUL" title="pt/XUL">XUL</a>, e renderizá-lo no ecrã do utilizador ou imprimí-lo. Nas aplicações baseadas em XUL, Gecko também é utilziado para renderizar a interface do utilizador da aplicação.</p>
-
-<p>Gecko é utilizado em muitas aplicações, incluindo alguns navegadores, tal como Firefox, SeaMonkey, etc. (para uma lista completa, por favor, consulte <a class="external" href="https://pt.wikipedia.org/wiki/Gecko_%28Mozilla%29">Artigo da Wikipedia sobre Gecko</a> (em inglês)). Os produtos que utilizam a mesma versão do Gecko têm um suporte idêntico para os padrões.</p>
-
-<p><small>O nome Gecko e o logótipo são marcas registadas da Netscape Communications Corporation, utilizados sob a licença.</small></p>
-
-<h4 id="Versões_do_Gecko">Versões do Gecko</h4>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <th>Versão do Gecko</th>
- <th>Aplicações baseadas</th>
- </tr>
- <tr>
- <td>Gecko 2 (em desenvolvimento)</td>
- <td><a class="internal" href="/pt/Firefox_4_para_desenvolvedores" title="pt/Firefox 4 para desenvolvedores">Firefox 4</a></td>
- </tr>
- <tr>
- <td>Gecko 1.9.2</td>
- <td><a class="internal" href="/pt/Firefox_3.6_para_desenvolvedores" title="pt/Firefox 3.6 para desenvolvedores">Firefox 3.6</a>, Thunderbird 3.1</td>
- </tr>
- <tr>
- <td>Gecko 1.9.1</td>
- <td><a class="internal" href="/pt/Firefox_3.5_para_desenvolvedores" title="pt/Firefox 3.5 para desenvolvedores">Firefox 3.5</a>, <a class="internal" href="/En/Thunderbird_3_for_developers" title="en/Thunderbird 3 for developers">Thunderbird 3</a>, {{ interwiki('wikimo', 'SeaMonkey:New_for_2.0', 'SeaMonkey 2.0') }}</td>
- </tr>
- <tr>
- <td>Gecko 1.9</td>
- <td><a href="/pt/Firefox_3_para_desenvolvedores" title="pt/Firefox 3 para desenvolvedores">Firefox 3</a></td>
- </tr>
- <tr>
- <td>Gecko 1.8.1</td>
- <td><a href="/pt/Firefox_2_para_desenvolvedores" title="pt/Firefox 2 para desenvolvedores">Firefox 2</a>, Thunderbird 2, SeaMonkey 1.1</td>
- </tr>
- <tr>
- <td>Gecko 1.8</td>
- <td><a href="/pt/Firefox_1.5_para_desenvolvedores" title="pt/Firefox 1.5 para desenvolvedores">Firefox 1.5</a>, Thunderbird 1.5, SeaMonkey 1.0</td>
- </tr>
- <tr>
- <td>Gecko 1.7</td>
- <td>Firefox 1.0, Thunderbird 1.0, Nvu 1.0, Mozilla Suite 1.7</td>
- </tr>
- <tr>
- <td colspan="2"><strong>versões mais antigas do Gecko são compatíveis com as versões da Mozilla Suite</strong></td>
- </tr>
- </tbody>
-</table>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h4 id="Documentação"><a href="/Special:Tags" title="Site Tags">Documentação</a></h4>
-
- <dl>
- <dt><a href="/en/Gecko_FAQ" title="en/Gecko_FAQ">FAQs do Gecko</a></dt>
- <dd><small>Perguntas mais frequentes sobre o Gecko.</small></dd>
- </dl>
-
- <dl>
- <dt><a class="external" href="http://www.mozilla.org/newlayout/doc/layout-2006-12-14/master.xhtml">Introdução para a Disposição no Mozilla</a></dt>
- <dd><small>Conversa técnica sobre disposições.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/en/Embedding_Mozilla" title="en/Embedding_Mozilla">Integração do Mozilla</a></dt>
- <dd><small>Utilizando o Gecko na sua própria aplicação.</small></dd>
- </dl>
-
- <dl>
- <dt>{{ interwiki('wikimo', 'Gecko:Home_Page', 'Gecko Home Page on MozillaWiki') }}</dt>
- <dd><small>Lar para os desenvolvedores ativos. <em>Roadmaps</em> e mais recursos atualizados.</small></dd>
- </dl>
-
- <p><span class="alllinks"><a href="/Special:Tags" title="Site Tags">Ver todos...</a></span></p>
- </td>
- <td>
- <h4 id="Comunidade">Comunidade</h4>
-
- <ul>
- <li>Ver fóruns da Mozilla... {{ DiscussionList("dev-tech-layout", "mozilla.dev.tech.layout") }}</li>
- </ul>
-
- <h4 id="Tópicos_Relacionados">Tópicos Relacionados</h4>
-
- <dl>
- <dd><a href="/pt/Normas_Web" title="pt/Normas Web">Normas Web</a>, <a href="/pt/XUL" title="pt/XUL">XUL</a>, <a href="/pt/Embutindo_o_Mozilla" title="pt/Embutindo o Mozilla">Embutindo o Mozilla</a>, <a href="/pt/Desenvolvimento_Mozilla" title="pt/Desenvolvimento Mozilla">Desenvolvimento da Mozilla</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>{{ languages( { "ko": "ko/Gecko", "en": "en/Gecko", "es": "es/Gecko", "fr": "fr/Gecko", "it": "it/Gecko", "ja": "ja/Gecko", "zh-cn": "cn/Gecko", "de": "de/Gecko", "pl": "pl/Gecko" } ) }}</p>
diff --git a/files/pt-pt/gecko_dom_reference/introduction/index.html b/files/pt-pt/gecko_dom_reference/introduction/index.html
deleted file mode 100644
index b47cd81e5f..0000000000
--- a/files/pt-pt/gecko_dom_reference/introduction/index.html
+++ /dev/null
@@ -1,319 +0,0 @@
----
-title: Introdução ao DOM
-slug: Gecko_DOM_Reference/Introduction
-tags:
- - DOM
- - Guía
- - Referencia
- - Referência (2)
- - Referência 2
-translation_of: Web/API/Document_Object_Model/Introduction
----
-<p>{{ ApiRef() }}</p>
-
-<p>Esta secção proporciona uma breve introdução conceitual ao <a href="/pt-PT/docs/DOM/DOM_Reference">DOM</a>: o que é, como é que este fornece a estrutura para documentos <a href="pt/HTML">HTML</a> e <a href="pt/XML">XML</a>, como o pode aceder, e como esta API apresenta a informação de referência e exemplos.</p>
-
-<h2 id="O_que_.C3.A9_o_DOM.3F" name="O_que_.C3.A9_o_DOM.3F">O que é o DOM?</h2>
-
-<p>O 'Modelo de Objeto de Documento (DOM) 'é uma interface de programação para documentos HTML e XML. Ele provê uma representação estruturada do documento e define um meio pelo qual a estrutura pode ser acessada por programas permitindo-os alterar a estrutura do documento, estilo e conteúdo. O DOM provê uma representação do documento como um conjunto estruturado de nós e objetos que têm propriedades e métodos. Essencialmente ele conecta páginas de internet a scripts ou linguagens de programação.</p>
-
-<p>Uma página de internet é um documento. Este documento pode ser exibido numa janela de navegador, ou como código-fonte HTML. Mas é o mesmo documento em ambos os casos. O Document Object Model (DOM) provê uma outra forma de representar, armazenar e manipular o mesmo documento. O DOM é uma representação orientada a objeto completa da página, e pode ser modificada com uma linguagem de script como o JavaScript.</p>
-
-<p>Os padrões <a class="external" href="http://www.w3.org/DOM/">W3C DOM</a> e <a href="https://dom.spec.whatwg.org/">WHATWG DOM</a> são implementados nos navegadores mais modernos. Muitos navegadores estendem o padrão, por isso deve-se ter cuidado ao utilizá-los na <em>Web</em> onde os documentos podem ser acedidos pelos vários navegadores com diferentes DOMs.</p>
-
-<p>Por exemplo, o DOM padrão especifica que o método <code>getElementsByTagName</code> no código abaixo deve devolver uma lista de todos os elementos <code>&lt;P&gt;</code> no documento:</p>
-
-<pre>paragraphs = document.getElementsByTagName("P");
-// paragraphs[0] é o primeiro elemento &lt;p&gt;
-// paragraphs[1] é o segundo elemento &lt;p&gt;, etc.
-alert(paragraphs[0].nodeName);
-</pre>
-
-<p>Todas as propriedades, métodos, e eventos disponíveis para manipular e criar páginas estão organizados em objetos (por exemplo, o objeto <code>document</code> representa o próprio documento, o objeto <code>table</code> implementa a interface DOM <code>HTMLTableElement</code> para acessar tabelas HTML, e assim por diante). Esta documentação dispõe uma referência objeto a objeto para o DOM implementado nos navegadores baseados no Gecko.</p>
-
-<h2 id="DOM_e_JavaScript" name="DOM_e_JavaScript">DOM e JavaScript</h2>
-
-<p>O rápido exemplo acima, parecido com a maioria dos exemplos desta referência, é <a href="pt/JavaScript">JavaScript</a>. Ou seja, ele foi<em>escrito</em> em JavaScript, mas ele<em>usa</em> o DOM para acessar o documento e seus elementos. O DOM não é uma linguagem de programação, mas sem ele, a linguagem JavaScript não teria nenhum modelo ou noção de páginas web, páginas XML e elementos com os quais ela geralmente lida. Todo elemento num documento—o documento como um todo, o cabeçalho, tabelas dentro do documento, cabeçalhos de tabelas, o texto dentro das células— faz parte do document object model para aquele documento, portanto eles podem ser acessados e manipulados fazendo-se uso do DOM e de uma linguagem de scripting como o JavaScript.</p>
-
-<p>No início, JavaScript e o DOM eram fortemente ligados, mas eventualmente evoluíram em entidades separadas. O conteúdo da página é armazenado no DOM e pode ser acessado e manipulado via JavaScript, portanto nós podemos escrever esta equação aproximada:</p>
-
-<p>API(web ou página XML) = DOM + JS(linguagem de scripting)</p>
-
-<p>O DOM foi desenvolvido para ser independente de qualquer linguagem de programação em particular, tornando a representação estrutural do documento para uma única API consistente. Embora nos concentramos exclusivamente em JavaScript nesta documentação de referência, implementações do DOM por ser construídas para qualquer linguagem, como este exemplo em Python demonstra:</p>
-
-<pre class="brush: python"># Python DOM example
-import xml.dom.minidom as m
-doc = m.parse("C:\\Projects\\Py\\chap1.xml");
-doc.nodeName # DOM property of document object;
-p_list = doc.getElementsByTagName("para");
-</pre>
-
-<p>For more information on what technologies are involved in writing JavaScript on the web, see <a href="/en-US/docs/Web/JavaScript/JavaScript_technologies_overview">JavaScript technologies overview</a>.</p>
-
-<h2 id="Como_eu_acesso_o_DOM.3F" name="Como_eu_acesso_o_DOM.3F">Como é que eu acedo ao DOM?</h2>
-
-<p>Você não tem que fazer nada de especial para começar a usar o DOM. Navegadores diferentes tem implementações diferentes do DOM, e estas implementações exibem graus de conformidade variantes em relação ao verdadeiro padrão DOM (um tema que tentamos evitar nesta documentação), mas cada navegador usa algum document object model para tornar as páginas acessíveis para script.</p>
-
-<p>Quando você cria um script–quer seja um elemento in-line <code>&lt;script&gt;</code> or através de uma instrução de carregamento externo–você pode imediatamente começar a fazer uso da API para os elementos <code><a href="pt/DOM/document">document</a></code> ou <code><a href="pt/DOM/window">window</a></code> para manipular o próprio documento ou para acessar os filhos do documento, que são os vários elementos na página. Sua programação em DOM pode ser algo simples como o seguinte código, que mostra uma mensagem atráves da função <code><a href="pt/DOM/window.alert">alert()</a></code> do objeto <code><a href="pt/DOM/window">window</a></code>, ou pode usar métodos do DOM mais sofisticados para realmente criar novos conteúdos como no exemplo maior mais abaixo.</p>
-
-<p>O código JavaScript a seguir exibe um alerta quando o documento é carregado (e quando todo o DOM está disponível para uso).</p>
-
-<pre class="brush: html">&lt;body onload="window.alert('Welcome to my home page!');"&gt;
-
-</pre>
-
-<p>A função abaixo, cria um novo elemento <code>H1</code>, adiciona texto nesse elemento e então adiciona o <code>H1</code> ná árvore de elementos deste documento.</p>
-
-<pre class="brush: html">&lt;html&gt;
- &lt;head&gt;
- &lt;script&gt;
-  // executa essa função quando o documento é carregado
- window.onload = function() {
-
-  // cria dois elementos em uma página HTML que estava vazia
- var heading = document.createElement("h1");
- var heading_text = document.createTextNode("Big Head!");
- heading.appendChild(heading_text);
- document.body.appendChild(heading);
- }
- &lt;/script&gt;
- &lt;/head&gt;
- &lt;body&gt;
- &lt;/body&gt;
-&lt;/html&gt;
-</pre>
-
-<h2 id="Tipos_de_dados_importantes" name="Tipos_de_dados_importantes">Tipos de Dados Importantes</h2>
-
-<p>Esta referência tenta descrever os vários objetos e tipos da maneira mais simples quanto possível. Mas há uma série de diferentes de tipos de dados sendo passados pela API dos quais você deve estar ciente. Por uma questão de simplicidade, exemplos de sintaxe nesta referência da API tipicamente se referem aos nós como <code>element</code>s, a arrays de nós como <code>nodeList</code>s (ou simplesmente <code>element</code>s), e a <code>atributos</code> dos nós como <code>attribute</code>s.</p>
-
-<p>A seguinte tabela descreve brevemente estes tipos de dados.</p>
-
-<table>
- <tbody>
- <tr>
- <td><code>document</code></td>
- <td>Quando um membro retorna um objeto do tipo <code>document</code> (por exemplo, a propriedade <strong>ownerDocument</strong> de um elemento retorna o <code>document</code> ao qual pertence), este objeto é o próprio objeto <code>document</code> raiz. O capítulo <a href="pt/Gecko_DOM_Reference/document">Referência <code>document</code> do DOM</a> descreve o objeto <code>document</code>.</td>
- </tr>
- <tr>
- <td><code>element</code></td>
- <td><code>element</code> se refere a um elemento ou a um nó do tipo <code>element</code> retornado por um membro da API do DOM. Ai invés de dizer, por exemplo, que o método <code>document.createElement()</code> retorna uma referência de objeto para um <code>node</code>, nós apenas dizemos que o método retorna o <code>element</code> que acabou de ser criado no DOM. Objetos <code>element</code> implementam a interface DOM <code>Element</code> e também a interface mais básica <code>Node</code>, ambas que estão incluídas juntas nesta referência.</td>
- </tr>
- <tr>
- <td><code>nodeList</code></td>
- <td>Um <code>nodeList</code> é um array de elementos, como o tipo que é retornado pelo método <code>document.getElementsByTagName()</code>. Itens em uma <code>nodeList</code> são acessados pelo índice em qualquer uma das duas formas:
- <ul>
- <li>list.item(1)</li>
- <li>list{{ mediawiki.external(1) }}</li>
- </ul>
-
- <p>Estas duas formas são equivalentes. Na primeira, <strong>item()</strong> é um único método do objeto <code>nodeList</code>. A última usa uma típica sintaxe de array para buscar o segundo item na lista.</p>
- </td>
- </tr>
- <tr>
- <td><code>attribute</code></td>
- <td>Quando um <code>attribute</code> é retornado por um membro (por exemplo, pelo método <strong>createAttribute()</strong>), ele é uma referência de objeto que expõe uma interface especial (embora pequena) para atributos. Atributos são nós no DOM assim como os elementos o são, embora você raramente pode usá-los como tal.</td>
- </tr>
- <tr>
- <td><code>namedNodeMap</code></td>
- <td>Um <code>namedNodeMap</code> é como um array, mas os itens são acessados por nome ou índice, embora este último caso é meramente uma conveniência de enumeração, uma vez que estão em nenhuma ordem especial na lista. Um <code>namedNodeMap</code> tem um método item() para este propósito, e você também pode adicionar e remover itens de um <code>namedNodeMap</code>.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Interfaces_DOM" name="Interfaces_DOM">Interfaces DOM</h2>
-
-<p>Este guia é sobre os objetos e as verdadeiras<em>coisas</em> que você pode usar para manipular a hierarquia do DOM. É muitas vezes uma questão de indiferença que o objeto representando o elemento HTML <code>form</code> pegue sua propriedade <strong>name</strong> da interface <code>HTMLFormElement</code> mas sua propriedade <strong>className</strong> da própria interface <code>HTMLElement</code>. Em ambos os casos, a propriedade que você quer está simplesmente no objeto form.</p>
-
-<p>Mas a relação entre objetos e interfaces que eles implementam no DOM podem ser confusos, e portanto esta seção tenta dizer um pouco mais sobre as interfaces reais da especificação do DOM e como elas se tornam disponíveis.</p>
-
-<h3 id="Interfaces_e_Objetos" name="Interfaces_e_Objetos">Interfaces e Objetos</h3>
-
-<p>Muitos objetos se valem de muitas interfaces diferentes. O objeto table, por exemplo, implementa uma <a href="pt/DOM/table">Interface do elemento HTML Table</a> especializada, que inclui métodos como <code>createCaption</code> e <code>insertRow</code>. Mas desde que ele também é um elemento HTML, <code>table</code> implementa a interface <code>Element</code> descrita no capítulo <a href="pt/Gecko_DOM_Reference/element">Referência de <code>element</code> do DOM</a>. E finalmente, com um elemento HTML também é, assim como o DOM lhe considera, um nó em uma árvore de nós que criam um modelo de objeto para uma página web ou uma página XML, o elemento table também implementa a mais básica interface <code>Node</code>, a partir da qual o <code>Element</code> deriva.</p>
-
-<p>Quando você tem uma referência para um objeto <code>table</code>, como no exemplo a seguir, você rotineiramente usa todas as três interfaces indiferentemente no objeto, talvez sem saber.</p>
-
-<pre>var table = document.getElementById("table");
-var tableAttrs = table.attributes; // Node/Element interface
-for(var i = 0; i &lt; tableAttrs.length; i++){
- // HTMLTableElement interface: border attribute
- if(tableAttrs[i].nodeName.toLowerCase() == "border")
- table.border = "1";
-}
-// HTMLTableElement interface: summary attribute
-table.summary = "note: increased border";
-</pre>
-
-<h3 id="Interfaces_do_n.C3.BAcleo_do_DOM" name="Interfaces_do_n.C3.BAcleo_do_DOM">Interfaces do núcleo no DOM</h3>
-
-<p>Esta seção lista algumas das interfaces mais comumente usadas no DOM. A idéia não é descrever aqui o que estas APIs fazem, mas sim te dar uma idéia dos tipos de métodos e propriedades que você verá muitas vezes enquanto você usa o DOM. Estas APIs comuns são usadas nos exemplos mais extensos no capítulo <a href="pt/Gecko_DOM_Reference/Examples">Exemplos de DOM</a> no final deste livro.</p>
-
-<p>Os objetos <code>document</code> e <code>window</code> são os objetos cuja interface você geralmente vai usar na maioria das vezes na programação com DOM. Em termos simples, o objeto <code>window</code> representa algo como o navegador, e o objeto <code>document</code> é a raiz do próprio documento. <code>Element</code> descende da interface genérica <code>Node</code>, e estas duas juntas fornecem muitos dos métodos e propriedades que você usa em elementos individuais. Estes elementos também podem ter interfaces específicas para lidar com os tipos de dados que eles contém, como no exemplo do objeto <code>table</code> na seção anterior.</p>
-
-<p>A seguir está uma breve lista das APIs comuns para scripting usando o DOM em web e páginas XML.</p>
-
-<ul>
- <li><code><a href="pt/DOM/document.getElementById">document.getElementById</a>(id)</code></li>
- <li><code>element.<a href="pt/DOM/element.getElementsByTagName">getElementsByTagName</a>(name)</code></li>
- <li><code><a href="pt/DOM/document.createElement">document.createElement</a>(name)</code></li>
- <li><code>parentNode.<a href="pt/DOM/element.appendChild">appendChild</a>(node)</code></li>
- <li><code>element.<a href="pt/DOM/element.innerHTML">innerHTML</a></code></li>
- <li><code>element.<a href="pt/DOM/element.style">style</a>.left</code></li>
- <li><code>element.<a href="pt/DOM/element.setAttribute">setAttribute</a></code></li>
- <li><code>element.<a href="pt/DOM/element.getAttribute">element.getAttribute</a></code></li>
- <li><code>element.<a href="pt/DOM/element.addEventListener">addEventListener</a></code></li>
- <li><code><a href="pt/DOM/window.content">window.content</a></code></li>
- <li><code><a href="pt/DOM/window.onload">window.onload</a></code></li>
- <li><code><a href="pt/DOM/window.dump">window.dump</a></code></li>
- <li><code><a href="pt/DOM/window.scrollTo">window.scrollTo</a></code></li>
-</ul>
-
-<h2 id="Testando_a_API_do_DOM" name="Testando_a_API_do_DOM">Testar a API de DOM</h2>
-
-<p>Este documento fornece amostras para cada interface que você pode usar em seu próprio desenvolvimento web. Em alguns casos, as amostras são páginas HTML completas, com o acesso ao DOM em um elemento &lt;script&gt;, a interface (por exemplo, botões) necessária para disparar o script em um form, e os elementos HTML sobre os quais o DOM opera listados. Quando for este o caso, você pode copiar a colar o conteúdo do exemplo dentro de um novo arquivo HTML, salvá-lo, e executar o exemplo em um navegador.</p>
-
-<p>Há casos, no entanto, que os exemplos são mais concisos. Para executar exemplos que apenas demonstram a relação básica da interface para com os elementos HTML, você pode criar uma página de teste na qual as interfaces podem facilmente ser acessadas por scripts. A seguinte página web, bem simples, fornece um elemento &lt;script&gt; no seu cabeçalho onde você pode colocar funções que testam a interface, alguns poucos elementos HTML com atributos que você pode remover, criar, ou alterar, e a interface web necessária para chamar aquelas funções pelo navegador.</p>
-
-<p>Você pode usar esta página de teste ou criar uma similar a fim de testar as interfaces do DOM nas quais você está interessado e ver como elas funcionam na plataforma do navegador. Você pode atualizar o conteúdo da função <code>test()</code> como necessário, criar mais botões, ou adicionar elementos conforme a necessidade.</p>
-
-<pre class="brush: html">&lt;html&gt;
- &lt;head&gt;
- &lt;title&gt;DOM Tests&lt;/title&gt;
- &lt;script type="application/javascript"&gt;
- function setBodyAttr(attr, value){
- if (document.body) eval('document.body.'+attr+'="'+value+'"');
- else notSupported();
- }
- &lt;/script&gt;
- &lt;/head&gt;
- &lt;body&gt;
- &lt;div style="margin: .5in; height: 400;"&gt;
- &lt;p&gt;&lt;b&gt;&lt;tt&gt;text&lt;/tt&gt;&lt;/b&gt;&lt;/p&gt;
- &lt;form&gt;
- &lt;select onChange="setBodyAttr('text',
- this.options[this.selectedIndex].value);"&gt;
- &lt;option value="black"&gt;black
- &lt;option value="darkblue"&gt;darkblue
- &lt;/select&gt;
- &lt;p&gt;&lt;b&gt;&lt;tt&gt;bgColor&lt;/tt&gt;&lt;/b&gt;&lt;/p&gt;
- &lt;select onChange="setBodyAttr('bgColor',
- this.options[this.selectedIndex].value);"&gt;
- &lt;option value="white"&gt;white
- &lt;option value="lightgrey"&gt;gray
- &lt;/select&gt;
- &lt;p&gt;&lt;b&gt;&lt;tt&gt;link&lt;/tt&gt;&lt;/b&gt;&lt;/p&gt;
- &lt;select onChange="setBodyAttr('link',
- this.options[this.selectedIndex].value);"&gt;
- &lt;option value="blue"&gt;blue
- &lt;option value="green"&gt;green
- &lt;/select&gt; &lt;small&gt;
- &lt;a href="http://www.brownhen.com/dom_api_top.html" id="sample"&gt;
- (sample link)&lt;/a&gt;&lt;/small&gt;&lt;br&gt;
- &lt;/form&gt;
- &lt;form&gt;
- &lt;input type="button" value="version" onclick="ver()" /&gt;
- &lt;/form&gt;
- &lt;/div&gt;
- &lt;/body&gt;
-&lt;/html&gt;
-</pre>
-
-<p>Para testar muitas interfaces em uma única página–por exemplo, uma "suite" de propriedades que afetam as cores de sua página web–você pode criar uma página de testes similar com um completo console de botões, campos de texto e outros elementos HTML. A seguinte captura de tela pode te dar alguma idéia de como as interfaces podem estar agrupadas para teste.</p>
-
-<figure>
-<figcaption>Figura 0.1 Página de Teste de Amostra de DOM</figcaption>
-<img alt="Image:DOM_Ref_Introduction_to_the_DOM.gif" class="internal" src="/@api/deki/files/173/=DOM_Ref_Introduction_to_the_DOM.gif"></figure>
-
-<p>Neste exemplo, os menus suspensos atualizam dinamicamente, tais como aspetos de acessibilidade DOM da página da <em>Web</em> como a cor de fundo (<code>bgColor</code>), a cor das hiperligações (<code>aLink</code>), e a cor do texto (<code>text</code>). Contudo, você cria as suas próprias páginas de teste, e testa as interfaces à medida que as lê, é uma parte importante de aprendizagem em como utilizar o DOM efetivamente.</p>
-
-<h2 id="Subnav">Subnav</h2>
-
-<ul>
- <li><a href="/pt-PT/docs/DOM/DOM_Reference">Referência de DOM</a></li>
- <li><a href="/pt-PT/docs/Gecko_DOM_Reference/Introduction">Introdução ao DOM</a></li>
- <li><a href="/pt-PT/docs/DOM/DOM_Reference/Events">Eventos e o DOM</a></li>
- <li><a href="/pt-PT/docs/DOM/DOM_Reference/Exemplos">Exemplos</a></li>
-</ul>
-
-<div id="SL_balloon_obj" style="display: block;">
-<div class="SL_ImTranslatorLogo" id="SL_button" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%; opacity: 0; display: block; left: -8px; top: -25px; transition: visibility 2s ease 0s, opacity 2s linear 0s;"> </div>
-
-<div id="SL_shadow_translation_result2" style="display: none;"> </div>
-
-<div id="SL_shadow_translator" style="display: none;">
-<div id="SL_planshet">
-<div id="SL_arrow_up" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_Bproviders">
-<div class="SL_BL_LABLE_ON" id="SL_P0" title="Google">G</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P1" title="Microsoft">M</div>
-
-<div class="SL_BL_LABLE_ON" id="SL_P2" title="Translator">T</div>
-</div>
-
-<div id="SL_alert_bbl" style="display: none;">
-<div id="SLHKclose" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_alert_cont"> </div>
-</div>
-
-<div id="SL_TB">
-<table id="SL_tables">
- <tbody>
- <tr>
- <td class="SL_td"><input></td>
- <td class="SL_td"><select><option value="auto">Detectar idioma</option><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_switch_b" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Alternar Idiomas"> </div>
- </td>
- <td class="SL_td"><select><option value="af">Africâner</option><option value="sq">Albanês</option><option value="de">Alemão</option><option value="ar">Arabe</option><option value="hy">Armênio</option><option value="az">Azerbaijano</option><option value="eu">Basco</option><option value="bn">Bengali</option><option value="be">Bielo-russo</option><option value="my">Birmanês</option><option value="bs">Bósnio</option><option value="bg">Búlgaro</option><option value="ca">Catalão</option><option value="kk">Cazaque</option><option value="ceb">Cebuano</option><option value="ny">Chichewa</option><option value="zh-CN">Chinês (Simp)</option><option value="zh-TW">Chinês (Trad)</option><option value="si">Cingalês</option><option value="ko">Coreano</option><option value="ht">Crioulo haitiano</option><option value="hr">Croata</option><option value="da">Dinamarquês</option><option value="sk">Eslovaco</option><option value="sl">Esloveno</option><option value="es">Espanhol</option><option value="eo">Esperanto</option><option value="et">Estoniano</option><option value="fi">Finlandês</option><option value="fr">Francês</option><option value="gl">Galego</option><option value="cy">Galês</option><option value="ka">Georgiano</option><option value="el">Grego</option><option value="gu">Gujarati</option><option value="ha">Hauça</option><option value="iw">Hebraico</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="nl">Holandês</option><option value="hu">Húngaro</option><option value="ig">Igbo</option><option value="id">Indonésio</option><option selected value="en">Inglês</option><option value="yo">Ioruba</option><option value="ga">Irlandês</option><option value="is">Islandês</option><option value="it">Italiano</option><option value="ja">Japonês</option><option value="jw">Javanês</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="lo">Laosiano</option><option value="la">Latim</option><option value="lv">Letão</option><option value="lt">Lituano</option><option value="mk">Macedônico</option><option value="ml">Malaiala</option><option value="ms">Malaio</option><option value="mg">Malgaxe</option><option value="mt">Maltês</option><option value="mi">Maori</option><option value="mr">Marathi</option><option value="mn">Mongol</option><option value="ne">Nepalês</option><option value="no">Norueguês</option><option value="fa">Persa</option><option value="pl">Polonês</option><option value="pt">Português</option><option value="pa">Punjabi</option><option value="ro">Romeno</option><option value="ru">Russo</option><option value="sr">Sérvio</option><option value="st">Sesotho</option><option value="so">Somália</option><option value="sw">Suaíli</option><option value="su">Sudanês</option><option value="sv">Sueco</option><option value="tg">Tadjique</option><option value="tl">Tagalo</option><option value="th">Tailandês</option><option value="ta">Tâmil</option><option value="cs">Tcheco</option><option value="te">Telugo</option><option value="tr">Turco</option><option value="uk">Ucraniano</option><option value="ur">Urdu</option><option value="uz">Uzbeque</option><option value="vi">Vietnamita</option><option value="yi">Yiddish</option><option value="zu">Zulu</option></select></td>
- <td class="SL_td">
- <div id="SL_TTS_voice" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ouça"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_copy" id="SL_copy" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Copiar"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_font_patch"> </div>
-
- <div class="SL_bbl_font" id="SL_bbl_font" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Tamanho da fonte"> </div>
- </td>
- <td class="SL_td">
- <div id="SL_bbl_help" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Ajuda"> </div>
- </td>
- <td class="SL_td">
- <div class="SL_pin_off" id="SL_pin" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Fixar a janela de pop-up"> </div>
- </td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-
-<div id="SL_shadow_translation_result" style=""> </div>
-
-<div class="SL_loading" id="SL_loading" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<div id="SL_player2"> </div>
-
-<div id="SL_alert100">A função de fala é limitada a 200 caracteres</div>
-
-<div id="SL_Balloon_options" style="background: rgb(255, 255, 255) repeat scroll 0% 0%;">
-<div id="SL_arrow_down" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;"> </div>
-
-<table id="SL_tbl_opt" style="width: 100%;">
- <tbody>
- <tr>
- <td><input></td>
- <td>
- <div id="SL_BBL_IMG" style="background: rgba(0, 0, 0, 0) repeat scroll 0% 0%;" title="Mostrar o botão do ImTranslator 3 segundos"> </div>
- </td>
- <td><a class="SL_options" title="Mostrar opções">Opções</a> : <a class="SL_options" title="Histórico de tradução">Histórico</a> : <a class="SL_options" title="Comentários">Comentários</a> : <a class="SL_options" href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=GD9D8CPW8HFA2" title="Faça sua contribuição">Donate</a></td>
- <td><span id="SL_Balloon_Close" title="Encerrar">Encerrar</span></td>
- </tr>
- </tbody>
-</table>
-</div>
-</div>
-</div>
diff --git a/files/pt-pt/gecko_sdk/index.html b/files/pt-pt/gecko_sdk/index.html
deleted file mode 100644
index c215853e97..0000000000
--- a/files/pt-pt/gecko_sdk/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
----
-title: Gecko SDK
-slug: Gecko_SDK
-translation_of: Mozilla/Gecko/Gecko_SDK
----
-<h3 id="Geral" name="Geral">Geral</h3>
-<p>O Gecko SDK é um conjunto de arquivos XPIDL, cabeçalhos e ferramentas para desenvolver XPCOM componentes, que pode, então, por sua vez, por exemplo, Ser acessado a partir de XUL usando JavaScript.</p>
-<p>Note-se que, a fim de desenvolver esses componentes, você não precisa ter a plena fontes de eg Firefox, uma vez que você não acessar partes do front end dentro de um componente. Além disso, uma vez que contém um componente funcionalidade básica, que se destina a executar com todos os produtos da Mozilla plataforma. Portanto, não faz sentido usar um produto específico para construir geral funcionalidade. Essa é a razão pela qual o Gecko SDK foi concebido.</p>
-<p>Não confundir com o Gecko SDK XULRunner. O Gecko SDK é um conjunto de cabeçalho arquivos e ferramentas utilizadas para desenvolver geral XPCOM componentes que acrescentam funcionalidades à plataforma existente, que XULRunner é um quadro que pode ser usada para executar autônomo ou incorporados aplicações baseadas na Mozilla quadro.</p>
-<p>O Gecko SDK contém todas as ferramentas necessárias para fazer script e cabeçalhos NPAPI plugins incluindo o compilador xpidl / linker e as última</p>
-<h3 id="Receba_o_SDK" name="Receba_o_SDK">Receba o SDK</h3>
-<hr>
-<h3 id="Atualiza.C3.A7.C3.B5es" name="Atualiza.C3.A7.C3.B5es">Atualizações</h3>
-<hr>
-<p>Não há necessidade de fazer o download ou reconstruir o Gecko SDK correspondentes às atualizações de segurança do Mozilla (por exemplo, o Mozilla 1.7.3), uma vez que os cabeçalhos e cola libs no Gecko SDK geralmente não são alteradas como resultado de atualizações de segurança. Você tem que fazer para receber e distribuir o mais recente Gecko componentes (gklayout.dll etc)</p>
-<h3 id="Baixando" name="Baixando">Baixando</h3>
-<hr>
-<p>Ao fazer o download do SDK Gecko, é importante escolher a versão que corresponde à versão do Mozilla mais rapidamente que você deseja atingir. Em outras palavras, você não deve fazer o download do SDK 1,7 Gecko se pretender utilizar o componente com 1,6 Mozilla. Isto é importante porque a compatibilidade binária é assegurada apenas com versões futuras do Gecko runtime. Para este tutorial, vamos estar usando a versão 1,7 do Gecko SDK para que o nosso componente binário é compatível com Mozilla 1.7 (e quaisquer produtos derivados, tais como Firefox 1,0 ou Netscape 7.2).</p>
diff --git a/files/pt-pt/install.rdf/index.html b/files/pt-pt/install.rdf/index.html
deleted file mode 100644
index 370f879e28..0000000000
--- a/files/pt-pt/install.rdf/index.html
+++ /dev/null
@@ -1,255 +0,0 @@
----
-title: install.rdf
-slug: install.rdf
-tags:
- - Extensões
- - Toolkit API
-translation_of: Archive/Mozilla/Creating_a_Skin_for_SeaMonkey_2.x/install.rdf
----
-<h3 id="Introdu.C3.A7.C3.A3o" name="Introdu.C3.A7.C3.A3o">Introdução</h3>
-<p>Um Manifesto de Instalação é o arquivo que o Gerenciador de Complementos ativa os usos do aplicativo XUL para determinar informações sobre um complemento enquanto está sendo instalado. Ele contém metadados identificando o complemento, proporcionando informações sobre quem o criou, onde podem ser encontradas mais informações sobre ele, quais versões do aplicativo são compatíveis com esta, como esta pode ser atualizada, e assim por diante.</p>
-<p>O formato do Manifesto de Instalação é RDF/XML.</p>
-<p>O arquivo deve ter o nome de <code>install.rdf</code> e estar no nível mais elevado de um arquivo XPI de complemento.</p>
-<h3 id="Disposi.C3.A7.C3.A3o" name="Disposi.C3.A7.C3.A3o">Disposição</h3>
-<p>A disposição básica de um Manifesto de Instalação é assim:</p>
-<pre class="eval">&lt;?xml version="1.0"?&gt;
-
-&lt;RDF xmlns="<span class="nowiki">http://www.w3.org/1999/02/22-rdf-syntax-ns#</span>"
- xmlns:em="<span class="nowiki">http://www.mozilla.org/2004/em-rdf#</span>"&gt;
- &lt;Description about="urn:mozilla:install-manifest"&gt;
- &lt;!-- properties --&gt;
- &lt;/Description&gt;
-&lt;/RDF&gt;
-</pre>
-<p>Algumas propriedades são necessárias, algumas são opcionais. Algumas tem strings com valores simples, algumas são complexos recursos.</p>
-<h3 id="Refer.C3.AAncia_necess.C3.A1ria_da_propriedade" name="Refer.C3.AAncia_necess.C3.A1ria_da_propriedade">Referência necessária da propriedade</h3>
-<p>Seu Manifesto de Instalação deve especificar estas propriedades corretamente, caso contrário seu complemento poderá não instalar.</p>
-<h4 id="id_.28identifica.C3.A7.C3.A3o.29" name="id_.28identifica.C3.A7.C3.A3o.29">id (identificação)</h4>
-<p>O id da extensão, o qual é um:</p>
-<ul>
- <li>GUID (gerado usando "guidgen" no sistema Windows ou "uuidgen" no sistema Unix) (Firefox 1.0)</li>
- <li><strong>Fifefox 1.5 e mais recentes:</strong> Uma string formatada como:</li>
-</ul>
-<p><code><a class="link-mailto" href="mailto:extensionname@organization.tld" rel="freelink">extensionname@organization.tld</a></code></p>
-<p>O último formato é significantemente mais fácil de gerar e manipular. O Firefox 1.5 checará para assegurar que seu id caia em um formato ou outro e irá recusar-se a instalar complementos que tenham ids malformados.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:id&gt;<a class="link-mailto" href="mailto:myextension@mysite.com" rel="freelink">myextension@mysite.com</a>&lt;/em:id&gt;
-
-&lt;em:id&gt;{daf44bf7-a45e-4450-979c-91cf07434c3d}&lt;/em:id&gt;
-</pre>
-<h4 id="version_.28vers.C3.A3o.29" name="version_.28vers.C3.A3o.29">version (versão)</h4>
-<p>Uma string de versão identifica a versão do complemento fornecido.</p>
-<p>Para o Firefox/Thunderbird 1.0, o formado deve ser conforme as regras especificadas em <a href="/en/Extension_Versioning,_Update_and_Compatibility">en:Extension Versioning, Update and Compatibility</a>. Para Firefox/Thunderbird 1.5, veja <a href="/en/Toolkit_version_format">en:Toolkit version format</a>.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:version&gt;2.0&lt;/em:version&gt;
-
-&lt;em:version&gt;1.0.2&lt;/em:version&gt;
-
-&lt;em:version&gt;0.4.1.2005090112&lt;/em:version&gt;
-
-</pre>
-<p><strong>Firefox 1.5 / XULRunner 1.8</strong> - complementos que não utilizam um formato de versão válida não serão instalados. O formato da versão é diferente, embora seja compatível com 1.0 mais antigas.</p>
-<p><strong>Para complementos hospedados em addons.mozilla.org</strong> — o site de atualizações Mozilla pode re-empacotar seu complemento e corrigir ou rejeitar strings de versão malformadas.</p>
-<h4 id="type_.28tipo.29" name="type_.28tipo.29">type (tipo)</h4>
-<p>Um valor inteiro representando o tipo do complemento.</p>
-<table>
- <tbody>
- <tr>
- <td>2</td>
- <td>Extensões</td>
- </tr>
- <tr>
- <td>4</td>
- <td>Temas</td>
- </tr>
- <tr>
- <td>8</td>
- <td>Locais</td>
- </tr>
- <tr>
- <td>16</td>
- <td>Plugins</td>
- </tr>
- <tr>
- <td>32</td>
- <td><a href="/en/Multiple_Item_Packaging">Multiple Item Package</a></td>
- </tr>
- </tbody>
-</table>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:type&gt;2&lt;/em:type&gt;
-</pre>
-<p><strong>Firefox 1.5</strong> Esta propriedade foi adicionada ao Firefox 1.5, e é somente necessário para complementos que não sejam Extensões e Temas.</p>
-<h4 id="targetApplication_.28alvo_do_aplicativo.29" name="targetApplication_.28alvo_do_aplicativo.29">targetApplication (alvo do aplicativo)</h4>
-<p>Um objeto especificando um aplicativo marcado por este complemento. Este meio que o complemento irá trabalhar com o aplicativo identificado pela propriedade id (<code>&lt;em:id&gt;</code>) especificado (para uma lista compreensível de IDs de aplicativos veja "Valid App Versions for Addon Developers" em <a class="link-https" href="https://addons.mozilla.org/faq.php">Mozilla Addons FAQ</a>), da versão mínima (<code>&lt;em:minVersion&gt;</code>) subindo e incluindo a versão máxima (<code>&lt;em:maxVersion&gt;</code>). Estas strings da versão são formatadas do mesmo modo como <a href="#version_.28vers.C3.A3o.29"><code>version</code> property</a> e serão comparados à versão do aplicativo; isto permite ao autor da extensão especificar quais as versões do Firefox e extensões foram testadas com.</p>
-<p>Nota: O Firefox 1.0-1.0.6 todo tem uma versão de aplicativo de <code>1.0</code>. Atualizações de segurança e estabilidade do Firefox 1.5 têm versão do aplicativo 1.5.0.1, 1.5.0.2, etc. Extensões compatíveis com o Firefox ou Thunderbird 1.5 devem especificar uma maxVersion de 1.5.0.*, de modo que são automaticamente compatíveis com atualizações de segurança e estabilidade.</p>
-<p>Extensões compatíveis com o Firefox 2 devem especificar uma <code>maxVersion</code> de <code>2.0.0.*</code></p>
-<p>O Manifesto de Instalação deve especificar ao menos um destes objetos, e pode especificar mais se os alvos múltiplos da aplicação do complemento suportarem o Gerenciador de Complementos (e.g. Firefox e Thunderbird)</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:targetApplication&gt;
- &lt;Description&gt;
- &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt; <span class="comment">Firefox</span>
- &lt;em:minVersion&gt;1.5&lt;/em:minVersion&gt;
- &lt;em:maxVersion&gt;3.0.*&lt;/em:maxVersion&gt;
- &lt;/Description&gt;
-&lt;/em:targetApplication&gt;
-</pre>
-<h4 id="name_.28nome.29" name="name_.28nome.29">name (nome)</h4>
-<p>O nome do complemento — entendido por exibir o UI.</p>
-<p><strong>Exemplos </strong></p>
-<pre class="eval">&lt;em:name&gt;My Extension&lt;/em:name&gt;
-</pre>
-<h3 id="Refer.C3.AAncia_de_propriedade_opcional" name="Refer.C3.AAncia_de_propriedade_opcional">Referência de propriedade opcional</h3>
-<p>Você pode necessitar fornecer estas propriedades, dependendo das capaciadades do seu complemento.</p>
-<p> </p>
-<h4 id="description_.28descri.C3.A7.C3.A3o.29" name="description_.28descri.C3.A7.C3.A3o.29">description (descrição)</h4>
-<p>Uma pequena descrição do complemento &amp;mdash para exibição na interface de usuário. Esta descrição deve caber em uma curta linha de texto.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:description&gt;Ferramentas avançadas de rodapé.&lt;/em:description&gt;
-</pre>
-<h4 id="creator_.28criador.29" name="creator_.28criador.29">creator (criador)</h4>
-<p>O nome do criador/principal desenvolvedor &amp;mdash para exibição na interface de usuário.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:creator&gt;John Doe&lt;/em:creator&gt;
-</pre>
-<p>or</p>
-<pre class="eval">&lt;em:creator&gt;CoolExtension Team&lt;/em:creator&gt;
-</pre>
-<h4 id="developer_.28desenvolvedor.29" name="developer_.28desenvolvedor.29">developer (desenvolvedor)</h4>
-<p>Os nomes dos co-desenvolvedores. Você pode especificar mais de um valor para especificar múltiplos desenvolvedores. <strong>Novo no Firefox 2.0</strong></p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:developer&gt;Jane Doe&lt;/em:developer&gt;
-&lt;em:developer&gt;Koos van der Merwe&lt;/em:developer&gt;
-</pre>
-<h4 id="translator_.28tradutor.29" name="translator_.28tradutor.29">translator (tradutor)</h4>
-<p>Os nomes dos tradutores. Você pode especificar mais de um valor para especificar múltiplos tradutores. <strong>Novo no Firefox 2.0</strong></p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:translator&gt;Janez Novak&lt;/em:translator&gt;
-&lt;em:translator&gt;Kari Nordmann&lt;/em:translator&gt;
-</pre>
-<h4 id="contributor_.28contribuidor.29" name="contributor_.28contribuidor.29">contributor (contribuidor)</h4>
-<p>Os nomes de contribuidores adicionais. Você pode especificar mais de um valor para especificar múltiplos contribuidores.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:contributor&gt;John Doe&lt;/em:contributor&gt;
-
-&lt;em:contributor&gt;John Doe&lt;/em:contributor&gt;
-&lt;em:contributor&gt;Jane Doe&lt;/em:contributor&gt;
-&lt;em:contributor&gt;Elvis Presley&lt;/em:contributor&gt;
-</pre>
-<h4 id="homepageURL_.28p.C3.A1gina_principal_da_URL.29" name="homepageURL_.28p.C3.A1gina_principal_da_URL.29">homepageURL (página principal da URL)</h4>
-<p>Um link para a página principal do complemento &amp;mdash para exibir na inteface de usuário.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:homepageURL&gt;<span class="nowiki">http://www.foo.com/</span>&lt;/em:homepageURL&gt;
-</pre>
-<h4 id="updateURL_.28URL_de_atualiza.C3.A7.C3.A3o.29" name="updateURL_.28URL_de_atualiza.C3.A7.C3.A3o.29">updateURL (URL de atualização)</h4>
-<p>Um link para um arquivo customizado de Manifesto de Atualização que especifique atualizações disponíveis para o complemento. O formato é descrito abaixo. Se habilitado, o Gerenciador de Complementos periodicamente checará com o arquivo de Manifesto para determinar se novas versões estão disponíveis.</p>
-<p>Seu servidor deve enviar este arquivo como <code>text/rdf</code> ou o checador de atualizações não irá trabalhar. <code>text/xml</code> também parece trabalhar (projetos em mozdev.org)</p>
-<p>O Gerenciador de Complementos irá substituir os seguintes valores neste URL em casos de você querer gerar a resposta RDF dinamicamente, tal como usar PHP ou CGI:</p>
-<table>
- <tbody>
- <tr>
- <td><code>%REQ_VERSION%</code></td>
- <td>A versão requisitada. Atualmente 1</td>
- </tr>
- <tr>
- <td><code>%ITEM_ID%</code></td>
- <td>O <code>id</code> do complemento que terá de atualizar</td>
- </tr>
- <tr>
- <td><code>%ITEM_VERSION%</code></td>
- <td>A <code>version</code> (versão) do complemento que terá de atualizar</td>
- </tr>
- <tr>
- <td><code>%ITEM_MAXAPPVERSION%</code></td>
- <td>A <code>maxVersion</code> (versão máxima) do objeto <code>targetApplication</code> (alvo de aplicação) correspondente à aplicação atual para o complemento ser atualizado.</td>
- </tr>
- <tr>
- <td><code>%APP_ID%</code></td>
- <td>O <code>id</code> atual da aplicação</td>
- </tr>
- <tr>
- <td><code>%APP_VERSION%</code></td>
- <td>A <code>version</code> (versão) atual aplicação</td>
- </tr>
- <tr>
- <td><code>%APP_OS%</code></td>
- <td>O valor de <code>OS_TARGET</code> do sistema de construção do Firefox, identificando o sistema operacional a ser usado. <strong>Novo no Firefox 1.5</strong></td>
- </tr>
- <tr>
- <td><code>%APP_ABI%</code></td>
- <td>O valor de <code>TARGET_XPCOM_ABI</code> do sistema de construção do Firefox, identificando o compilador/combinação de arquitetura usada para compilar a atual aplicação. <strong>Novo no Firefox 1.5</strong></td>
- </tr>
- </tbody>
-</table>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:updateURL&gt;<span class="nowiki">http://www.foo.com/update.cgi?id=%ITEM_ID%&amp;amp;version=%ITEM_VERSION%</span>&lt;/em:updateURL&gt;
-&lt;em:updateURL&gt;<span class="nowiki">http://www.foo.com/extension/windows.rdf</span>&lt;/em:updateURL&gt;
-</pre>
-<p><strong>Para complementos hospedados em addons.mozilla.org:</strong> Você não pode especificar a propriedade de URL de atualização. Por padrão, aplicativos Mozilla usando o Gerenciador de Complementos (tal como o Firefox e o Thunderbird) enviaram requerimentos de atualização para <code>addons.mozilla.org</code> usando o serviço web padrão. Toda a vez que você atualiza para uma nova versão do seu complemento ou muda seus parâmetros de compatibilidade através da interface do autor, seu Manifesto de Atualização será gerado automaticamente.</p>
-<p><strong>Formato do Manifesto de Atualização:</strong> O Manifesto de Atualização é uma fonte de dados RDF/XML. Para exemplos de um Manifesto de Atualização, veja <a href="/en/Extension_Versioning,_Update_and_Compatibility#Custom Update RDF Format">Extension Versioning, Update and Compatibility</a> e <a href="/en/Enabling_Extension_Updates_(external)">en:Enabling Extension Updates (external)</a>.</p>
-<h4 id="optionsURL_.28URL_de_op.C3.A7.C3.B5es.29" name="optionsURL_.28URL_de_op.C3.A7.C3.B5es.29">optionsURL (URL de opções)</h4>
-<p>A URL <code>chrome://</code> da caixa de diálogo das opções da extensão. Isto é utilizável somente para extensões. Se esta propriedade é especificada, quando a extensão é selecionada na lista de Extensões, o botão de Opções é habilitado e mostrará isto.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:optionsURL&gt;<a class="external" rel="freelink">chrome://myext/content/options.xul</a>&lt;/em:optionsURL&gt;
-</pre>
-<h4 id="aboutURL_.28URL_sobre.29" name="aboutURL_.28URL_sobre.29">aboutURL (URL sobre)</h4>
-<p>A URL <code>chrome://</code> da caixa de diálogo de opções da extensão. Isto é utilizável somente para extensões. Se esta propriedade é especificada, quando a extensão é selecionada na lista de Extensões, o link Sobre... no menu de contexto da extensão exibirá este diálogo, antes que o padrão.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:aboutURL&gt;<a class="external" rel="freelink">chrome://myext/content/about.xul</a>&lt;/em:aboutURL&gt;
-</pre>
-<h4 id="iconURL_.28URL_de_.C3.ADcones.29" name="iconURL_.28URL_de_.C3.ADcones.29">iconURL (URL de ícones)</h4>
-<p>Um URL <code>chrome://</code> para um ícone 32x32 para exibir na lista de complementos. Se esta propriedade não é especificada um ícone padrão é utilizado.</p>
-<pre class="eval">&lt;em:iconURL&gt;<a class="external" rel="freelink">chrome://myext/skin/icon.png</a>&lt;/em:iconURL&gt;
-</pre>
-<p>Nota: <em>Para o exemplo acima trabalhar você também terá que adicionar uma linha <code>skin package</code> ao seu arquivo <code>chrome.manifest</code>. Veja <a href="/pt/chrome.manifest#skin_.28pele.29" title="pt/chrome.manifest#skin_.28pele.29">Registro Chrome</a>.</em> Alternativamente você pode colocar seu ícone no diretório especificado na linha do seu <code>content package</code>.</p>
-<h4 id="hidden_.28oculto.29" name="hidden_.28oculto.29">hidden (oculto)</h4>
-<p>Um valor booleano que pode ser <code>true</code> (verdadeiro) faz que o complemento não apareça na lista de complementos, proporcionando um complemento que é instalado em uma <a href="/pt/install.rdf#.C3.81rea_de_acesso_restrito" title="pt/install.rdf#.C3.81rea_de_acesso_restrito">área de acesso restrito</a> (então ela não trabalhará para complementos instalados no perfil). Isto é para empacotar ganchos de integração às aplicações maiores onde ter uma entrada na lista de Extensões não faz sentido.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:hidden&gt;true&lt;/em:hidden&gt;
-</pre>
-<h4 id="targetPlatform_.28plataforma_alvo.29" name="targetPlatform_.28plataforma_alvo.29">targetPlatform (plataforma alvo)</h4>
-<p>Uma string especificando uma plataforma que o complemento suporte. Isto contém qualquer valor de OS_TARGET sozinho ou combinado com <a href="/en/XPCOM_ABI">:en:TARGET_XPCOM_ABI</a>, separado por sublinhado (_).</p>
-<p>OS_TARGET é típicamente a saída do comando 'uname -s' na plataforma alvo, e.g.:</p>
-<ul>
- <li><code>WINNT</code> para Windows NT, 2000, XP e mais recentes</li>
- <li><code>Linux</code> para todas as versões do Linux</li>
- <li><code>Darwin</code> para todas as versões do MacOS X</li>
-</ul>
-<p>Você pode especificar múltiplas propriedades targetPlatform por manifesto. Se algum valor inicia os parâmetros de construção do aplicativo, ele estará instalado; se não, o usuário receberá uma mensagem de erro apropriada.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:targetPlatform&gt;WINNT_x86-msvc&lt;/em:targetPlatform&gt;
-
-&lt;em:targetPlatform&gt;Linux&lt;/em:targetPlatform&gt;
-
-&lt;em:targetPlatform&gt;Darwin_ppc-gcc3&lt;/em:targetPlatform&gt;
-</pre>
-<p>Normalmente, você usaria somente a parte do sistema operacional para temas ou para extensões que não são interamente "cross-plataform". Para extensões incluindo componentes binários (compilados), você nunca deve usar o sistema operacional sozinho, mas inclua o <a href="/en/XPCOM_ABI">:en:ABI (s)</a> que compilou os componentes com. Se você quer incluir múltiplas versões de componentes, você devia usar também <a href="/en/Bundles#Platform-specific Subdirectories">:en:Platform-specific Subdirectories</a>.</p>
-<p><strong>Notas</strong></p>
-<ul>
- <li>No mesmo arquivo de manifesto, você mesmo pode misturar valores com ou sem ABI. Se um valor para o aplicativo do sistema operacional é encontrado e requisite algum ABI específico, o ABI é considerado importante para este sistema operacional e o aplicativo recusará a instalação do complemento se ele não encontrar uma combinação de partida sistema operacional/ABI. Este meio que todos os exemplos anteriores ocorreram em um manifesto, o complemento instalará em qualquer construção Linux do aplicativo, indiferente de seu ABI, mas não em uma construção Windows Cygwin.</li>
-</ul>
-<ul>
- <li>Talvez possa construir do Firefox e do Thunderbird os quais não "sabem" suas ABI (portas preferidas para plataformas raras, ou construções não-oficiais). Estas construções recusarão a instalação de qualquer complemento que requisite um ABI especifico para sua plataforma.</li>
-</ul>
-<p><strong>Firefox 1.5</strong> Esta propriedade foi adicionada para o Firefox/Thunderbird 1.5. Versões anteriores destes aplicativos irão ignorar as restrições e instalaram o complemento sem levar em conta a plataforma.</p>
-<h3 id="Refer.C3.AAncia_de_propriedade_obsoleta" name="Refer.C3.AAncia_de_propriedade_obsoleta">Referência de propriedade obsoleta</h3>
-<p>Estas propriedades são requisitadas em versões antigas do Gerenciador de Complementos, mas tem que ser recolocadas com mecanismos novos e melhores.</p>
-<h4 id="file_.28arquivo.29" name="file_.28arquivo.29">file (arquivo)</h4>
-<p><strong>Firefox 1.0</strong> Esta propriedade aponta para um arquivo chrome <code>.jar</code> que contém pacotes chrome que requisitam registro com o Registro Chrome.</p>
-<p>A propriedade <code>&lt;em:file&gt;</code> tem um objeto de valor complexo. O URL deste valor é <code>urn:mozilla:extension:file:jarFile.jar</code> onde <code>jarFile.jar</code> é o nome do arquivo jar que contém o pacote de arquivos chrome, un-jarred (e.g. <code>urn:mozilla:extension:file:directory</code>).</p>
-<p>Este objeto tem uma propriedade de <code>package</code> (pacote) (com um caminho demtro do arquivo jar ou diretório que leva à localização de onde o arquivo <code>contents.rdf</code> está responsável pelo registro de onde o pacote está localizado), uma propriedade <code>locale</code> (idem, mas para registrar o local) e a propriedade <code>skin</code> (idem, mas para registrar o material do tema).</p>
-<p>Em extensões para o Firefox 1.5, esta propriedade não é necessária: o <code><a href="/pt/chrome.manifest" title="pt/chrome.manifest">chrome.manifest</a></code> no nível máximo do XPI é usado para localizar o chrome para registrar. Se não há chrome.manifest, esta propriedade ainda é lida pelo Gerenciador de Complementos e o chrome.manifest é gerado de um antigo estilo contents.rdf.</p>
-<p><strong>Exemplos</strong></p>
-<pre class="eval">&lt;em:file&gt;
- &lt;Description about="urn:mozilla:extension:file:myext.jar"&gt;
- &lt;em:package&gt;content/myext/&lt;/em:package&gt;
- &lt;em:locale&gt;locale/en-US/myext/&lt;/em:locale&gt;
- &lt;em:skin&gt;skin/classic/myext/&lt;em:skin&gt;
- &lt;/Description&gt;
-&lt;/em:file&gt;
-</pre>
-<p>Um Manifesto de Instalação pode especificar múltiplas propriedades <code>file</code>, um por um arquivo jar ou subdiretório que contenha o chrome para registrar.</p>
-<h3 id="Gloss.C3.A1rio" name="Gloss.C3.A1rio">Glossário</h3>
-<h3 id=".C3.81rea_de_acesso_restrito" name=".C3.81rea_de_acesso_restrito">Área de acesso restrito</h3>
-<p>Uma <em>área de acesso restrito</em> é um local de instalação que pode ser restrito com uma conta de acesso restrito, sem ter em conta se a situação é restringida com privilégios do usuário atual (veja <a href="https://dxr.mozilla.org/mozilla-central/source/toolkit/mozapps/extensions/public/nsIExtensionManager.idl#80" rel="custom">nsIInstallLocation::restricted</a>). Normalmente, a pasta <code>($APPDIR)/extensions</code> e a localização do registro de instalação embaixo de <code>HKEY_LOCAL_MACHINE</code> (veja <a href="/en/Adding_Extensions_using_the_Windows_Registry">en:Adding Extensions using the Windows Registry</a> para detalhes) são restritas.</p>
-<p>Os <code>($PROFILE)/extensions</code> e <code>HKEY_CURRENT_USER</code> locais de instalação, na outra mão, não são restritos.</p>
diff --git a/files/pt-pt/melhorias_das_css_no_firefox_3/index.html b/files/pt-pt/melhorias_das_css_no_firefox_3/index.html
deleted file mode 100644
index 5f192a3142..0000000000
--- a/files/pt-pt/melhorias_das_css_no_firefox_3/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: Melhorias das CSS no Firefox 3
-slug: Melhorias_das_CSS_no_Firefox_3
-tags:
- - CSS
- - Firefox 3
- - Todas_as_Categorias
-translation_of: Mozilla/Firefox/releases/3/CSS_improvements
----
-<div>{{FirefoxSidebar}}</div><p>{{ Fx_minversion_header(3) }}</p>
-<p>O Firefox 3 oferece algumas melhorias à sua implementação CSS. Enquanto estas mudanças são documentadas nas páginas apropriadas da documentação, este artigo proporciona uma introdução destas melhorias para que desenvolvedores possam aprender mais facilmente quais foram estas mudanças.</p>
-<ul>
- <li>Os valores <code>inline-block</code> e <code>inline-table</code> da propriedade {{ Cssxref("display") }} estão agora implementados.</li>
- <li>A propriedade {{ Cssxref("font-size-adjust") }} agora trabalha em todas as plataformas; anteriormente ela era suportada somente no Windows.</li>
- <li>Suporte de <code>rgba()</code> e <code>hsla()</code> para {{ Cssxref("color") }} ({{ Bug(147017) }})</li>
- <li>Suporte à pseudo-classe {{ Cssxref(":default") }} ({{ Bug(302186) }})</li>
- <li>Os valores <code>-moz-max-content</code>, <code>-moz-min-content</code>, <code>-moz-fit-content</code> e <code>-moz-available</code> foram adicionados a {{ Cssxref("width") }}, {{ Cssxref("min-width") }} e {{ Cssxref("max-width") }} ({{ Bug(311415) }} e {{ Bug(402706) }})</li>
- <li>Hífens leves em HTML (<code>&amp;shy;</code>) são agora suportados.</li>
- <li>Abas pré-formatadas trabalham muito melhor em fontes proporcionais, seguindo as especificações do CSS 2.1.</li>
- <li>A propriedade {{ Cssxref("ime-mode") }} é suportada.</li>
- <li>A propriedade CSS <code>text-rendering</code> para HTML é agora suportada ({{ Bug(387969) }}).</li>
- <li>As propriedades CSS <code>-moz-border-<var>*</var>-start</code> e <code>-moz-border-<var>*</var>-end</code> foram implementadas ({{ Bug(74880) }}).</li>
- <li><code>-moz-initial</code> está agora implementado para quase todas as propriedades CSS (exceto <code>quotes</code> e <code>-moz-border-<var>*</var>-colors</code>) {{ Bug(80887) }}.</li>
- <li><code>window.getComputedStyle()</code> agora suporta todas as propriedades CSS suportadas ({{ Bug(316981) }}).</li>
- <li>O valor <code>none</code> da propriedade {{ Cssxref("content") }} é agora suportado ({{ Bug(378535) }}).</li>
- <li>O valor <code>none</code> da propriedade {{ Cssxref("cursor") }} é agora suportado ({{ Bug(346690) }}).</li>
- <li>Imagens de fundo agora prendem-se adequadamente a <code>-moz-border-radius</code> ({{ Bug(24998) }}).</li>
- <li>O valor <code>pre-wrap</code> da propriedade {{ Cssxref("white-space") }} é agora suportado ({{ Bug(261081) }}).</li>
- <li>Seletores como <a href="pt/CSS/%3afirst-child">:first-child</a>, <a href="pt/CSS/%3aonly-child">:only-child</a>, <a href="pt/CSS/%3alast-child">:last-child</a> ({{ Bug(73586) }}), <a href="pt/CSS/%3aempty">:empty</a> ({{ Bug(98997) }}), ou o
- <i>
- combinador</i>
- ({{ Bug(229915) }}) são agora atualizados dinamicamente ({{ Bug(401291) }}).</li>
- <li>Valores negativos da propriedade {{ Cssxref("z-index") }} são suportados normalmente.</li>
-</ul>
-<h3 id="Veja_tamb.C3.A9m" name="Veja_tamb.C3.A9m">Veja também</h3>
-<ul>
- <li><a href="pt/Firefox_3_para_desenvolvedores">Firefox 3 para desenvolvedores</a></li>
- <li><a href="pt/Melhorias_do_DOM_no_Firefox_3">Melhorias do DOM no Firefox 3</a></li>
-</ul>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
-<p>{{ languages( { "en": "en/CSS/improvements_in_Firefox_3", "es": "es/Mejoras_CSS_en_Firefox_3", "fr": "fr/Am\u00e9liorations_CSS_dans_Firefox_3", "ja": "ja/CSS_improvements_in_Firefox_3", "pl": "pl/Poprawki_CSS_w_Firefoksie_3" } ) }}</p>
diff --git a/files/pt-pt/mozilla/add-ons/amo/index.html b/files/pt-pt/mozilla/add-ons/amo/index.html
deleted file mode 100644
index 3857ed65ca..0000000000
--- a/files/pt-pt/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/pt-pt/mozilla/add-ons/amo/policy/em_destaque/index.html b/files/pt-pt/mozilla/add-ons/amo/policy/em_destaque/index.html
deleted file mode 100644
index 71eafffe67..0000000000
--- a/files/pt-pt/mozilla/add-ons/amo/policy/em_destaque/index.html
+++ /dev/null
@@ -1,85 +0,0 @@
----
-title: AMO - Políticas de Extensões em Destaque
-slug: Mozilla/Add-ons/AMO/Policy/Em_destaque
-translation_of: Mozilla/Add-ons/AMO/Policy/Featured
----
-<p>{{AddonSidebar}}</p>
-
-<p>Featured add-ons are top-quality extensions and themes highlighted on <a href="https://addons.mozilla.org/en-US/firefox/extensions/?sort=featured">AMO</a>, Firefox's Add-ons Manager, and across other Mozilla websites. These add-ons showcase the power of Firefox customization and are useful to a wide audience.</p>
-
-<p>Featured extensions are chosen by the Featured Extensions Advisory Board, a small group of extension developers and fans from the Mozilla community who have volunteered to review and vote on nominations.</p>
-
-<p>Todos os meses, são escolhidas novas <a href="https://addons.mozilla.org/pt-PT/firefox/search/?featured=true&amp;type=extension">extensões em destaque</a>.</p>
-
-<h3 id="Critérios_para_Extensões_em_Destaque">Critérios para Extensões em Destaque</h3>
-
-<p>Before nominating an extension to be featured, please ensure it meets the following criteria:</p>
-
-<ol>
- <li>The extension must have a complete and informative listing on AMO. This means:
- <ul>
- <li>a 64-pixel custom icon</li>
- <li>a clear and concise name (no lengthy keywords)</li>
- <li>a clear and concise summary of the extension's functionality</li>
- <li>detailed description and privacy policy, if applicable</li>
- <li>updated screenshots of the extension's functionality</li>
- </ul>
- </li>
- <li>The extension must have excellent user reviews and any problems or support requests must be promptly addressed by the developer.</li>
- <li>The extension must have a minimum of 500 users.</li>
- <li>The extension must be built with <a href="https://developer.mozilla.org/Add-ons/WebExtensions">WebExtensions</a> API.</li>
- <li>The extension must be compatible with the latest release of Firefox.</li>
- <li><strong>Most importantly</strong>, the extension must have wide consumer appeal to Firefox's users and be outstanding in nearly every way: user experience, performance, security, and usefulness or entertainment value.</li>
-</ol>
-
-<h3 id="Painel_de_Descoberta">Painel de Descoberta</h3>
-
-<p>The Get Add-ons section (also referred to as the Discovery Pane) in about:addons serves a distinct editorial function: it is a tightly curated list of extensions and themes selected by Mozilla staff to address an array of the most common user needs (e.g. ad blockers, screenshot tools, etc.). The Discovery Pane is primarily intended to introduce extensions to Firefox users who have limited experience with browser customization. As such, we only select extensions that meet the highest standards of functionality, user experience, and Firefox compatibility.</p>
-
-<p>Only content that is part of AMO’s <a class="external text" href="https://addons.mozilla.org/en-US/firefox/search/?featured=true&amp;type=extension" rel="nofollow">Featured Extensions collection</a> will be considered for the Discovery Pane; please note that featured content must meet certain <a href="https://wiki.mozilla.org/AMO/Featured_Board_Process#Add-on_Requirements" title="AMO/Featured Board Process">criteria</a>.</p>
-
-<p>Discovery Pane content is updated monthly, though some highly popular extensions may remain on the page for an indefinite period of time.</p>
-
-<p>If you’d like to nominate a great extensions for consideration in the Discovery Pane, please send us a link to the add-on on AMO to <strong>amo-featured@mozilla.org</strong> and we’ll add your nomination to the editorial review queue. There’s no need to mention you’re nominating add-ons specifically for the Discovery Pane, but feel free to note that if you like.</p>
-
-<h3 id="Nomear_um_Extra">Nomear um Extra</h3>
-
-<p>If you wish to nominate an extension to be featured and it meets the criteria above, send an email to <a href="mailto:amo-featured@mozilla.org">amo-featured@mozilla.org</a> with:</p>
-
-<ul>
- <li>the extension name, URL, and whether you are its developer</li>
- <li>a short explanation of why the extension has wide appeal and should be featured</li>
- <li>optionally, links to any external reviews or articles mentioning the extension</li>
-</ul>
-
-<p>Extension nominations are reviewed by the Advisory Board once a month. Common reasons for rejection include lacking wide appeal to consumers, a suboptimal user experience, quality or security issues, incompatibility, and similarity to another featured extension. Rejected extension cannot be re-nominated within 3 months.</p>
-
-<h3 id="Rodar_Extensões_em_Destaque">Rodar Extensões em Destaque</h3>
-
-<p>Mozilla and the Featured Extensions Advisory Board regularly evaluate and rotate out featured extensions. Some of the most common reasons for extensions being removed from the featured list are:</p>
-
-<ul>
- <li>Lack of growth — Extensions that are featured typically experience a substantial gain in both downloads and active users. If an extension is not demonstrating growth in any substantial way, that's a good indicator the extension may not be very useful to our users.</li>
- <li>Negative reviews — Featured extensions should have a great experience and very few bugs, so extensions with many negative reviews may be reconsidered.</li>
- <li>Incompatibility with upcoming Firefox versions — Featured extensions are expected to be compatible with stable and beta versions of Firefox. Extensions not yet compatible with a Beta version of Firefox four weeks before its expected release will lose their featured status.</li>
-</ul>
-
-<h3 id="Aderir_ao_Conselho_Consultivo_de_Extensões_em_Destaque">Aderir ao Conselho Consultivo de Extensões em Destaque</h3>
-
-<p>Every six months a new Advisory Board is chosen based on applications from the add-ons community. Members must:</p>
-
-<ul>
- <li>be active members of the add-ons community, whether as a developer, evangelist, or fan</li>
- <li>commit to trying all the nominations submitted, giving their feedback, and casting their votes every month</li>
- <li>abstain from voting on extensions that they have any business or personal affiliations with, as well as direct competitors of any such extensions</li>
-</ul>
-
-<p>Members of the Mozilla Add-ons team may veto any extension's selection because of security, privacy, compatibility, or any other reason, but in general it is up to the Board to select extensions to feature.</p>
-
-<p>This featured policy only applies to the addons.mozilla.org global list of featured extensions. Extensions featured in other locations are often pulled from this list, but Mozilla may feature any extension in other locations without the Board's consent. Additionally, locale-specific features override the global defaults, so if a locale has opted to select its own features, some or all of the global features may not appear in that locale.</p>
-
-<p>Follow the <a href="http://blog.mozilla.com/addons">Add-ons Blog</a> or <a href="http://www.twitter.com/mozamo">@mozamo</a> on Twitter to learn when the next application period opens.</p>
-
-<p><em>Última atualização: 12 de abril de 2018</em></p>
-
-<p><span class="comment seoSummary">How up-and-coming add-ons become featured and what's involved in the process. </span></p>
diff --git a/files/pt-pt/mozilla/add-ons/amo/policy/index.html b/files/pt-pt/mozilla/add-ons/amo/policy/index.html
deleted file mode 100644
index 2dd894f5bd..0000000000
--- a/files/pt-pt/mozilla/add-ons/amo/policy/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Políticas AMO
-slug: Mozilla/Add-ons/AMO/Policy
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Mozilla/Add-ons/AMO/Policy
----
-<p>Mozilla está empenhada em garantir uma grande experiência com os extras para os nossos utilizadores e desenvolvedores. Por favor, reveja as políticas abaixo antes de submeter o seu extra.</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="/en-US/Add-ons#Contact_us">Contacting us</a></strong>
-
- <p> How to get in touch with us regarding these policies or your add-on.</p>
-
-</dl>
diff --git a/files/pt-pt/mozilla/add-ons/amo/policy/revisões/index.html b/files/pt-pt/mozilla/add-ons/amo/policy/revisões/index.html
deleted file mode 100644
index 96e6d880f5..0000000000
--- a/files/pt-pt/mozilla/add-ons/amo/policy/revisões/index.html
+++ /dev/null
@@ -1,160 +0,0 @@
----
-title: Políticas de Extras
-slug: Mozilla/Add-ons/AMO/Policy/Revisões
-tags:
- - Extras
- - Política de Revisão
-translation_of: Mozilla/Add-ons/AMO/Policy/Reviews
----
-<p>{{AddonSidebar}}</p>
-
-<p>Os extras estendem os recursos principais do Firefox, permitindo que os utilizadores modifiquem e personalizem a sua experiência na Web. Um ecossistema de extras saudável, baseado na confiança, é vital para que os programadores sejam bem-sucedidos e os utilizadores se sintam seguros, tornando o Firefox deles próprio. Por estes motivos, a Mozilla requer que todos os extras estejam em conformidade com o seguinte conjunto de políticas sobre as práticas aceitáveis. O abaixo, não se destina para servir como aconselhamento jurídico, nem pretende servir como uma lista abrangente de termos para incluir na política de privacidade do seu extra.</p>
-
-<p>Todos os extras estão sujeitos a estas políticas, independentemente de como eles são distribuídos. Os extras que não estejam em conformidade com estas políticas podem estar sujeitos à rejeição ou desativação pela Mozilla.</p>
-
-<h2 id="Sem_Surpresas">Sem Surpresas</h2>
-
-<p>As surpresas podem ser apropriadas em muitas situações, mas não são bem-vindas quando a segurança, a privacidade e o controlo do utilizador estão em jogo. É extremamente importante ser o mais transparente possível quando submeter um extra. Os utilizadores deverão ser capazes de discernir facilmente qual é a funcionalidade do seu extra e não receber experiências inesperadas do utilizador depois de o instalal.</p>
-
-<h3 id="Funcionalidades_Inesperadas">Funcionalidades Inesperadas</h3>
-
-<p>“Funcionalidades" inesperadas são aquelas que não estão relacionadas com a função principal do extra e provavelmente não são do nome do extra ou da descrição esperada por um utilizador que está a instalar esse extra.</p>
-
-<p>Um extra deveria incluir qualquer funcionalidade inesperada que se enquadre numa das seguintes categorias:</p>
-
-<ul>
- <li>Potencialmente compromete a privacidade ou a segurança do utilizador (tal como enviar dados para terceiros)</li>
- <li>Altera as definições predefinidas, tal como o novo separador, a página inicial ou o motor de pesquisa</li>
- <li>Faz alterações inesperadas no navegador ou no conteúdo da Web</li>
- <li>Inclui recursos ou funcionalidades não relacionadas com as funções principais do extra</li>
-</ul>
-
-<p>Então, a(s) funcionalidade(s) "inesperada(s)" devem seguir todos os seguintes requisitos:</p>
-
-<ul>
- <li>A descrição do extra deve indicar claramente quais as alterações que o extra efetua.</li>
- <li>Todas as alterações devem ser "opcionais", o que significa que o utilziador deve executar uma ação não predefinida para aprovar a alteração. As alterações que solicitam aos utilizadores por meio do sistema de permissões não requerem uma opção adicional.</li>
- <li>A interface de opções deve declarar claramente o nome do extra que está a solicitar a alteração.</li>
-</ul>
-
-<h2 id="Conteúdo">Conteúdo</h2>
-
-<p>Os extras que utilizarem as marcas registadas da Mozilla devem obedecer à <a href="https://www.mozilla.org/en-US/foundation/trademarks/policy/">Política de Marcas Registadas da Mozilla</a>. Se o extra utiliza “Firefox” no seu nome, o padrão de nomeação que o extra deve seguir é “&lt;nome do Extra&gt; por Firefox”.</p>
-
-<p>Além disso, os extras listados em <a href="https://addons.mozilla.org/pt-PT/firefox/">Extras para o Firefox</a> (AMO) devem seguir as seguintes políticas:</p>
-
-<ul>
- <li>All add-ons submitted for listing on AMO are subject to Mozilla’s <a href="https://www.mozilla.org/en-US/about/legal/acceptable-use/">Conditions of Use</a>.</li>
- <li>Add-ons must disclose when payment is required to enable any functionality.</li>
- <li>Any add-ons, or add-on content, hosted on Mozilla site(s) must conform to the laws of the United States.</li>
- <li>The add-on listing should have an easy-to-read description about everything it does, and any information it collects. Please consult our best practices guide for <a href="https://developer.mozilla.org/en-US/Add-ons/Listing">creating an appealing listing</a>.</li>
- <li>Add-ons that are intended for internal or private use, or for distribution testing may not be listed on AMO. Such add-ons may be <a href="https://developer.mozilla.org/en-US/Add-ons/Distribution#Self-distributed_(unlisted)_versions">uploaded for self-distribution</a> instead.</li>
- <li>If the add-on is a fork of another add-on, the name must clearly distinguish it from the original and provide a significant difference in functionality and/or code.</li>
-</ul>
-
-<h2 id="Linhas_Diretrizes_de_Submissão">Linhas Diretrizes de Submissão</h2>
-
-<p>Os extras devem funcionar apenas conforme o descrito e devem fornecer uma experiência de utilizador atraente. Com base na descrição do extra, um utilizador deve ser capaz de entender e utilizar os recursos do extra sem exigir conhecimento especializado. Dicas sobre como criar uma boa experiência do utilziador para o seu extra podem ser encontradas <a href="/pt-PT/Add-ons/WebExtensions/As_melhores_praticas_de_experiencia_do_utilizador">aqui</a>.</p>
-
-<p>During review, the add-on undergoes basic testing in addition to code review. To facilitate the functional testing, the add-on author must provide testing information and, if applicable, testing credentials required to use the add-on if an account is needed for any part of the add-on’s functionality.</p>
-
-<p>Issues brought up during review must be addressed using best efforts. If corrections have been requested, the new version should not contain unrelated changes, as this complicates the review process and can lead to further rejections.</p>
-
-<h3 id="Submissão_de_Código_Fonte">Submissão de Código Fonte</h3>
-
-<p>Add-ons may contain transpiled, obfuscated, minified or otherwise machine-generated code, but Mozilla needs to review a copy of the human-readable source code. The author must provide this information to Mozilla during submission as well as instructions on how to reproduce the build.</p>
-
-<p>The provided source code will be reviewed by an administrator and will not be redistributed in any way. The code will only be used for the purpose of reviewing the add-on. Failure to provide this information will result in rejection.</p>
-
-<p>Please read our <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Source_Code_Submission">Source Code Submission guidelines</a> to avoid unexpected rejections.</p>
-
-<h2 id="Práticas_de_Desenvolvimento">Práticas de Desenvolvimento</h2>
-
-<p>In general, developers are free to maintain their add-ons in the manner they choose. However, in order to maintain appropriate data security and effectively review code, we do have certain technical requirements that all add-ons must meet. In particular, potentially dangerous APIs may only be used in ways that are demonstrably safe, and code within add-ons that cannot be verified as behaving safely and correctly may need to be refactored.</p>
-
-<p>While any code, method or practice in a submitted add-on is subject to review and rejection, the following requirements are of particular importance:</p>
-
-<ul>
- <li>Add-ons must only request those permissions that are necessary for function</li>
- <li>Add-ons must be self-contained and not load remote code for execution</li>
- <li>Add-ons must use encrypted channels for sending sensitive user data</li>
- <li>Add-ons should avoid including duplicate or unnecessary files</li>
- <li>Add-on code must be written in a way that is reviewable and understandable. Reviewers may ask you to refactor parts of the code if it is not reviewable.</li>
- <li>Add-ons must not negatively impact the performance or stability of Firefox.</li>
- <li>Only release versions of third-party libraries and/or frameworks may be included with an add-on. Modifications to these libraries/frameworks are not permitted.</li>
-</ul>
-
-<h2 id="Gestão_Recolha_e_Divulgação_de_Dados">Gestão, Recolha e Divulgação de Dados</h2>
-
-<p>You must disclose how the add-on collects, uses, stores and shares user data in the privacy policy field on AMO. Mozilla expects that the add-on limits data collection whenever possible, in keeping with Mozilla’s <a href="https://www.mozilla.org/en-US/about/policy/lean-data/">Lean Data Practices</a> and Mozilla’s <a href="https://www.mozilla.org/en-US/privacy/principles/">Data Privacy Principles</a>, and uses the data only for the purpose for which it was originally collected.</p>
-
-<p>User data includes all information the add-on collects, regardless of the manner. It can be personal data actively provided by the user (such as a name or email address), technical data (such as operating system, build ID, version numbers, crash reports, activation, updates), and interaction or activity data (add-on activity data, visited URLs, console logs), including interactions with Firefox.</p>
-
-<p>The add-on’s privacy policy must be the full policy text; it cannot be a link to an externally hosted privacy policy. In addition, the privacy policy must:</p>
-
-<ul>
- <li>be specific and exclusive to the add-on,</li>
- <li>clearly describe the purpose of the data collection,</li>
- <li>set forth the exact data to be collected,</li>
- <li>address the add-on’s particular privacy properties.</li>
-</ul>
-
-<p>A summary of this information must be included in the add-on’s listing description. Finally, you and your add-on must also comply with all applicable data privacy laws as well as any other laws that may apply to your specific add-on.</p>
-
-<h3 id="Interações_do_Utilizador_e_Dados_Técnicos">Interações do Utilizador e Dados Técnicos</h3>
-
-<ul>
- <li>Users must be provided a clear way to control this data collection. The control mechanism must be shown during the installation process of the add-on.</li>
- <li>Add-ons must only collect information about add-on performance and/or use.</li>
- <li>Collecting ancillary information (e.g. any data not explicitly required for the add-on’s basic functionality) is prohibited.</li>
-</ul>
-
-<h3 id="Cookies">Cookies</h3>
-
-<ul>
- <li>If your add-on installs cookies, this must also be disclosed in the add-on’s privacy policy.</li>
- <li>The add-on privacy policy must clearly express the placing and purposes of the cookie(s). It is highly recommended that you disclose the types of cookies being used.</li>
- <li>Users must be provided an opportunity to refuse the storage of or access to cookies, and must be informed of the consequences of doing so (e.g., without a functional cookie, the add-on may not work).</li>
- <li>Installing cookies that are not explicitly required for the add-on’s functionality is prohibited.</li>
-</ul>
-
-<h3 id="Dados_Pessoais">Dados Pessoais</h3>
-
-<ul>
- <li>If you are collecting any personal information, the users must provide affirmative consent (i.e., explicit opt-in from the user). It must be clear to the user that they give consent to the collection of personal data.</li>
- <li>Collecting ancillary personal information (e.g., any data not explicitly required for the add-on’s basic functionality) is prohibited.</li>
- <li>Any transmission of this type of data must use secure, encrypted connections.</li>
-</ul>
-
-<h3 id="Protocolos_de_Privacidade_Adicionais">Protocolos de Privacidade Adicionais</h3>
-
-<ul>
- <li>Leaking local or user-sensitive information to websites or other processes (e.g., using native messaging) is prohibited.</li>
- <li>If the add-on uses native messaging, the privacy policy must clearly disclose which information is being exchanged with the native application. Data exchanged with the native application must be in accordance with our No Surprises policy.</li>
- <li>HTTPS must be used for security and privacy-sensitive operations such as transmitting passwords or tokens.</li>
- <li>Browsing data from private browsing sessions must not be stored.</li>
- <li>Identity information must not be leaked to web content in private browsing sessions.</li>
-</ul>
-
-<h2 id="Vulnerabilidades_de_Segurança">Vulnerabilidades de Segurança</h2>
-
-<p>Because add-ons run in an environment with elevated privileges relative to ordinary web pages, they present a very serious set of security considerations. They have the potential to open security holes not only in the add-ons themselves, but also in the browser, in web pages, and, in particularly distressing cases, the entire system the browser is running on.</p>
-
-<p>As a result, we take our security policies very seriously and apply them to all add-ons, whether hosted on AMO or not. We expect all add-ons to be secure and well-maintained in handling both their own data and their user’s data. They must also securely manage all of their interactions with the web, the browser and the operating system.</p>
-
-<h2 id="Monetização">Monetização</h2>
-
-<ul>
- <li>Os mecanismos de monetização devem cumprir com as políticas na secção <em>Divulgação, Recolha e Gestão de Dados</em>. Em particular, um extra deve ser acompanhado de um mecanismo de controle de utilizador claro (e opção para dados pessoais) apresentado durante o processo de instalação ou atualização do extra. A recolha de informação auxiliar para monetização é proibida.</li>
- <li>Um extra que injetar publicidade no conteúdo da página da Web deve identificar claramente o conteúdo injetado como originário do extra.</li>
- <li>A inclusão de mineiros de criptomoedas ou funcionalidades similares num extra é proibida.</li>
- <li>A modificação do conteúdo da Web ou a facilitação de redirecionamentos para incluir etiquetas de promoção de afiliados não é permitida. Por outro lado, a utilização da promoção de afiliação nos elementos da interface do utilizador claramente identificada como pertencentes ao extra é aceitável.</li>
-</ul>
-
-<h2 id="Conformidade_e_Lista_de_Bloqueio">Conformidade e Lista de Bloqueio</h2>
-
-<p>Para os extras que não correspondem com estas políticas, a Mozilla pode rejeitar ou bloquear as versões afetadas ou extras completos, dependendo da extensão da sua não conformidade.</p>
-
-<p>Geralmente, a Mozilla tentará entrar em contacto com o(s) programador(es) do extra e fornecer um prazo razoável para que os problemas sejam corrigidos antes que um bloqueio seja implementado. Se um extra for considerado malicioso ou se os seus programadores tiverem se mostrado inalcançáveis ou não responderem, ou no caso de violações recorrentes, a inclusão na listagem de bloqueio ser imediata.</p>
-
-<p>A Mozilla reserva o direito de bloquear ou eliminar a conta do programador em addons.mozilla.org, evitando assim a utilização adicional do serviço.</p>
diff --git a/files/pt-pt/mozilla/add-ons/crição_de_extensões_firefox_com_sistema_mozilla/index.html b/files/pt-pt/mozilla/add-ons/crição_de_extensões_firefox_com_sistema_mozilla/index.html
deleted file mode 100644
index 35a9c7fbe1..0000000000
--- a/files/pt-pt/mozilla/add-ons/crição_de_extensões_firefox_com_sistema_mozilla/index.html
+++ /dev/null
@@ -1,518 +0,0 @@
----
-title: >-
- Criação de extensões personalizadas do Firefox com o sistema de criação da
- Mozilla
-slug: Mozilla/Add-ons/Crição_de_extensões_Firefox_com_Sistema_Mozilla
-translation_of: >-
- Archive/Add-ons/Creating_Custom_Firefox_Extensions_with_the_Mozilla_Build_System
----
-<p>{{AddonSidebar}}</p>
-
-<p>Existe uma <a href="/pt-PT/Add-ons" title="en/Extensions">abundância de  material</a> na criação de extensões para Firefox. Todos estes documentos atualmente assumem, contudo, que está a desenvolver a sua extensão utilizando apena <a href="/en/JavaScript" title="en/JavaScript">JavaScript </a>e <a href="/en/XUL" title="en/XUL">XUL</a>. Para extenões complexas, poderá ser necessário criar componentes em C++ que proporcionam uma funcionalidade adicional. Os motivos pelos quais poderá querer incluir componentes C++ na sua extensão incluem:</p>
-
-<div class="m2">
-<div class="mrg">
-<div class="client" id="baseBody" style="">
-<div id="textContainer" style="DISPLAY: block;">
-<div id="FtxtWnd" style="">
-<div class="targetTxt"> </div>
-</div>
-</div>
-</div>
-</div>
-</div>
-
-<ul>
- <li>Need for high-performance beyond what can be delivered by JavaScript code.</li>
- <li>Use of third-party libraries written in C or C++.</li>
- <li>Use of Mozilla interfaces that are not exposed via <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> (e.g. <a href="/en/NSPR" title="en/NSPR">NSPR</a>).</li>
-</ul>
-
-<div class="note"><strong>Note:</strong> With the modern JIT Javascript Engine in Gecko and <a href="/en/js-ctypes/js-ctypes_reference" title="js-ctypes reference">js-ctypes</a> more extension code can be written only in JavaScript than ever before.  Please consider all of your options carefully before deciding to use native code (C++) in your extension. In addition, binary components need to be recompiled for every major Firefox release, which can be frustrating.</div>
-
-<p>This article describes how to set up the development environment for a large, complex Firefox extension with any or all of the above-mentioned requirements. I should also stress that you do <em>not</em> have to build Mozilla or use the Mozilla build system if you want to create C++ components for Mozilla. If you are just looking to create an <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> component or two, this is probably overkill, and you might want to take a look at <a class="external" href="http://www.iosart.com/firefox/xpcom/">this guide</a> instead. On the other hand, if you are an experienced developer or team, and you know that you are going to build a large, complex extension, you would do well to consider the approach described in this article.</p>
-
-<p>One final note: I’ve only tried these techniques inside Firefox, but they’ll probably work more or less unchanged on other Gecko-based platforms like Thunderbird or Seamonkey. If someone can confirm this and/or provide guidelines for what’s different, I’ll update the article to incorporate this information.</p>
-
-<h3 id="Bambi_Cruza-se_com_Mozilla">Bambi Cruza-se com Mozilla</h3>
-
-<p>None of this is for the faint of heart. In particular, the initial step involves building Mozilla, which is a huge - nay, gargantuan! - project. Many intelligent developers have been driven to the brink of insanity trying to build it for the first time. If you're not an experienced C++ developer, I wouldn’t even bother. Stick to JavaScript.</p>
-
-<h4 id="Nas_Plataformas_do_Windows">Nas Plataformas do Windows</h4>
-
-<p>The first time I built Mozilla I used <a href="/En/Developer_Guide/Build_Instructions/Windows_Prerequisites" title="En/Developer_Guide/Build_Instructions/Windows_Prerequisites">this guide</a>. I can’t even remember why anymore, but I got stuck in a number of places, and the whole affair ended up taking far longer than I originally expected. Much furniture was smashed, much hair torn out by the roots. Here’s a <a class="external" href="http://whereswalden.com/mozilla/msvcfree/">comprehensive looking guide</a> that’s gotten good reviews. Follow every step methodically and you’ll probably be alright. Focus on the fact that once you get the build working, it’ll probably work effortlessly from then on. Maybe.</p>
-
-<h4 id="Em_Outras_Plataformas">Em Outras Plataformas</h4>
-
-<p>On other platforms, namely Linux and MacOS, the process is much easier. All the tools for building are available built-in, and therefore all you have to do is run some commands in the terminal. You can find full instructions for almost any OS <a href="/En/Developer_Guide/Build_Instructions" title="En/Developer_Guide/Build_Instructions">here</a>.</p>
-
-<h3 id="Estruturar_o_Seu_Projeto">Estruturar o Seu Projeto</h3>
-
-<p>Mozilla includes a number of complex extensions that are integrated into its build process. It has thus been necessary to solve all of the issues involved in creating and registering XPCOM components, building JAR files and manifests, installing the lot into the Firefox <code>extensions/</code> directory and so forth. So it behooves us to piggyback on this infrastructure to build our extension.</p>
-
-<p>First of all, think of a catchy name for your extension and create a directory with that name under the <code>/mozilla/extensions/</code> directory. Use only lowercase letters. You should see a bunch of other directories (<code>inspector/</code>, <code>reporter/</code> and so forth) at the same level in the build tree.</p>
-
-<p>Note that before actually building anything, the Mozilla build system invokes a configuration process that generates the actual makefiles used for the build from makefile templates called <code>Makefile.in</code>. The actual makefiles tend to be very similar or identical to the templates, but the extra flexibility gained from having the makefiles generated dynamically is one of the things that makes the build system so powerful.</p>
-
-<h4 id="Anatomia_de_uma_Extensão_C_Simples">Anatomia de uma Extensão C++ Simples</h4>
-
-<p>We assume that you are using C++ to write XPCOM components that can be used either from other C++ components or from JavaScript. The process of creating a component is actually relatively straightforward when the Mozilla build system is used.</p>
-
-<p>In the simplest case, a component will consist of a single main directory with two subdirectories, <code>public/</code> and <code>src/</code>. The main directory and each subdirectory must contain a <code>Makefile.in</code> (from now on I’ll just refer to this file as a makefile although we know that it is actually used to generate the real makefile). This makefile says two things. First of all, it lists the subdirectories that make up the extension, so the build system knows where to look for additional makefiles. Secondly, it instructs the build system to create a new extension, rather than copying the components directly into Firefox’s binary directory. The main advantage of using an extension is that it is easy to package everything up and install it on another machine.</p>
-
-<p>So here’s your basic, plain-vanilla top-level makefile (<code>Makefile.in</code> in the main extension directory):</p>
-
-<pre>DEPTH = ../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-MODULE = myextension
-
-DIRS = public src
-
-XPI_NAME = myextension
-INSTALL_EXTENSION_ID = myextension@mycompany.com
-XPI_PKGNAME = myextension
-
-DIST_FILES = install.rdf
-
-include $(topsrcdir)/config/rules.mk
-</pre>
-
-<p>A detailed description of the make process, describing the key features of this makefile, can be found <a href="/en/How_Mozilla's_build_system_works" title="en/How_Mozilla's_build_system_works">here</a>. <strong>MODULE</strong> and <strong>XPI_NAME</strong> are both set to the name of your extension; they should be repeated in all project makefiles so that all of the files land in the same place in the XPI staging area (see below). <strong>INSTALL_EXTENSION_ID</strong> is the unique ID of your extension. This can be a GUID, but the format shown above is prettier and, let’s face it, a lot easier to remember. You don’t have to provide an <strong>XPI_PKGNAME</strong>, but if you do an XPI file, suitable for distribution, is automatically created in the root of the XPI staging area (<code>/mozilla/$(MOZ_OBJDIR)/dist/xpi-stage/</code>).</p>
-
-<p>Every extension must include an <code>install.rdf</code> file that tells Firefox how to install it. This file should be located in the main extension directory and look something like this:</p>
-
-<pre class="brush: xml">&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;myextension@mycompany.com&lt;/em:id&gt;
- &lt;em:version&gt;0.1&lt;/em:version&gt;
-
- &lt;em:targetApplication&gt;
- &lt;!-- Firefox --&gt;
- &lt;Description&gt;
- &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;
- &lt;em:minVersion&gt;1.0+&lt;/em:minVersion&gt;
- &lt;em:maxVersion&gt;1.0+&lt;/em:maxVersion&gt;
- &lt;/Description&gt;
- &lt;/em:targetApplication&gt;
-
- &lt;!-- front-end metadata --&gt;
- &lt;em:name&gt;My First Extension&lt;/em:name&gt;
- &lt;em:description&gt;Just an example.&lt;/em:description&gt;
- &lt;em:creator&gt;allpeers.com&lt;/em:creator&gt;
- &lt;em:homepageURL&gt;http://www.allpeers.com/blog/&lt;/em:homepageURL&gt;
- &lt;/Description&gt;
-&lt;/RDF&gt;
-</pre>
-
-<p>There's a <a href="/en/Install_Manifests" title="en/Install_Manifests">detailed description</a> of the format of the <code>install.rdf</code> file. Use the <strong>DIST_FILES</strong> variable in the makefile to tell <code>make</code> to copy the file into the extension directory and (optional) XPI file.</p>
-
-<h4 id="Interfaces_Públicas">Interfaces Públicas</h4>
-
-<p>The <code>public/</code> directory contains any interfaces that need to be accessed by other modules. These can be <a class="external" href="http://www.mozilla.org/scriptable/xpidl/idl-authors-guide/index.html">IDL</a> files describing <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> interfaces, which are used to generate normal C++ header files for inclusion in your source files. They can also be normal C++ header files that are to be used directly by other modules. The easiest way to accomplish the latter is to use inline implementations for all methods so you don’t have any additional linking dependencies. Otherwise you will have to link statically to your module if you use these public headers in other modules. Personally I would discourage this practice (among other things, static linking means the same code gets loaded more than once into memory, and the code won’t be available from JavaScript or other non-C++ languages) and encourage the use of XPCOM wherever possible.</p>
-
-<p>The makefile in the <code>public/</code> directory should follow this model:</p>
-
-<pre>DEPTH = ../../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-MODULE = myextension
-XPIDL_MODULE = myextension
-
-XPI_NAME = myextension
-
-EXPORTS = \
- myHeader.h \
- $(NULL)
-
-XPIDLSRCS = \
- myIFirstComponent.idl \
- myISecondComponent.idl \
- $(NULL)
-
-include $(topsrcdir)/config/rules.mk
-</pre>
-
-<p><strong>XPIDL_MODULE</strong> is the name of the generated XPT file that contains type information about your <a class="external" href="http://www.mozilla.org/scriptable/xpidl/idl-authors-guide/index.html">IDL</a> interfaces. If you have multiple modules, make absolutely sure that you use a different value for <strong>XPIDL_MODULE</strong> for each one. Otherwise the first module’s XPT file will be overwritten by the second and you’ll get <strong>NS_ERROR_XPC_BAD_IID</strong> errors when you try to access its IDL interfaces from your code. The files under <strong>EXPORTS</strong> are copied directly to the <code>/mozilla/$(MOZ_OBJDIR)/dist/include/</code> directory and are thus accessible from other modules (the value of <strong>MOZ_OBJDIR</strong> is defined in <code>/mozilla/.mozconfig</code>). XPIDLSRCS are run through the IDL processor, and the generated C++ headers are copied into the same include directory. In addition, an XPT (type library) file is generated and placed in the <code>components/</code> subdirectory of your extension.</p>
-
-<h4 id="Ficheiros_Fonte">Ficheiros Fonte</h4>
-
-<p>Now it’s time to create the makefile and source files in the <code>src/</code> subdirectory. If you're implementing interfaces that you've described using IDL, the easiest way to do this is to leave the <code>src/</code> directory empty and run <code>make</code> on the <code>public/</code> directory only; this will be explained shortly.</p>
-
-<p>Then open the generated header file for your interface from <code>/mozilla/$(MOZ_OBJDIR)/dist/include/</code>. It contains stubs for the component .H and .CPP files that you can copy and paste into your implementation files. All you have to do is fill in the implementation stubs in the C++ file and you’re good to go.</p>
-
-<p>Here’s an example of the makefile you need to place into your <code>src</code> directory:</p>
-
-<pre class="eval">DEPTH = ../../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-IS_COMPONENT = 1
-<a href="/en/MODULE" title="en/MODULE">MODULE</a> = myextension
-<a href="/en/LIBRARY_NAME" title="en/LIBRARY_NAME">LIBRARY_NAME</a> = myExtension
-<a href="/en/USE_STATIC_LIBS" title="en/USE_STATIC_LIBS">USE_STATIC_LIBS</a> = 1
-
-XPI_NAME = myextension
-
-<a href="/en/CPPSRCS" title="en/CPPSRCS">CPPSRCS</a> = \
- myFirstComponent.cpp \
- mySecondComponent.cpp \
- myExtension.cpp \
- $(NULL)
-
-include $(topsrcdir)/config/rules.mk
-
-<a href="/en/EXTRA_DSO_LDOPTS" title="en/EXTRA_DSO_LDOPTS">EXTRA_DSO_LDOPTS</a> += \
- $(MOZ_COMPONENT_LIBS) \
- $(NSPR_LIBS) \
- $(NULL)
-</pre>
-
-<p>In this example, the first two files contain the implementation of the extension’s two components. The final file, <code>myExtension.cpp</code>, contains the code necessary to register these components, as described in the next section.</p>
-
-<h4 id="Registar_os_Seus_Componentes">Registar os Seus Componentes</h4>
-
-<p><a href="/pt-PT/docs/Mozilla/Tech/XPCOM/Guide/Alterações_XPCOM_Gecko_2.0" title="XPCOM changes in Gecko 2.0">Este artigo </a>explica como registar os componentes XPCOM no Gecko 2.0 e superior.</p>
-
-<h4 id="Criação_de_Extensão">Criação de Extensão</h4>
-
-<p>As mentioned above, you’ll probably want to build your extension immediately after creating your IDL files in order to generate the C++ stubs for your component implementations. I’m assuming that you’ve already built Firefox successfully. If not, return immediately to the beginning of this article and don’t come back til you have a functioning <code>firefox.exe</code>. Do not pass go. Do not collect $200.</p>
-
-<p>Still here? Okay, now we have to modify your <code>.mozconfig</code> (in the <code>/mozilla/</code> root directory) so that your extension is built along with Mozilla. Add the following line at the end of the file:</p>
-
-<pre class="brush: shell">ac_add_options --enable-extensions=default,myextension
-</pre>
-
-<p>Now launch <code>make</code> from the Mozilla root:</p>
-
-<pre class="brush: shell">make -f client.mk build
-</pre>
-
-<p>Even if you have an up-to-date Firefox build, you’ll have to wait a while for <code>make</code> to recurse over the entire Mozilla source tree looking for new stuff (on my machine, which is pretty fast, this takes a good 10-15 minutes). Eventually it will reach your extension and generate a bunch of stuff under <code>/mozilla/$(MOZ_OBJDIR)/</code>:</p>
-
-<ul>
- <li>Exported header files and generated header files (from IDL) in <code>dist/include/</code></li>
- <li>Static libraries for your modules in <code>dist/lib/</code> (in case other modules want to link statically to your stuff instead of using XPCOM).</li>
- <li>XPI file in <code>dist/xpi-stage/myextension.xpi</code>.</li>
- <li>Generated makefiles for your projects in <code>extensions/myextension/</code> (remember, we’re under <code>/mozilla/$(MOZ_OBJDIR)/</code>.</li>
- <li>Everything else in <code><a class="link-mailto" href="mailto:dist/bin/extensions/myextension@mycompany.com" rel="freelink">dist/bin/extensions/myextension@mycompany.com</a>/</code>.</li>
-</ul>
-
-<p>A lot of this stuff won’t get created on this first pass since <code>make</code> will gag when it doesn’t find the source files for your components. Don’t worry about this; all you need are the generated header files that contain the C++ implementation stubs. Go back and flesh out the C++ implementation of your components so that the build can complete next time. Remember that you should never, ever modify any of these generated files. Always modify the files used to generate them and rerun <code>make</code>. If you’re changing the generated files directly, you’re probably doing something wrong.</p>
-
-<p>The process of walking the entire Mozilla tree takes a long time. If you already have a Mozilla build, you can avoid this by creating a makefile for your extension directly. Go to the root of your $(MOZ_OBJDIR) and (from a bash-compatible shell) enter:</p>
-
-<pre class="eval">../build/autoconf/make-makefile extensions/myextension
-</pre>
-
-<p>If your $(MOZ_OBJDIR) is located outside your $(TOPSRCDIR), you'll need to do:</p>
-
-<pre class="eval">$(TOPSRCDIR)/build/autoconf/make-makefile -t $(TOPSRCDIR) extensions/myextension
-</pre>
-
-<p>in order for the script to know where your source is (it'll use the extension path you gave it relative to the current dir to figure out where you want your makefiles to go).</p>
-
-<p>This will generate the proper makefile for your extension. Whether you build the whole Mozilla tree or take this shortcut, you can build from now on by going to <code>/mozilla/$(MOZ_OBJDIR)/extensions/myextension/</code> and typing "make" on the command line. It should build your component without bothering with the rest of Mozilla. If everything works out, you’ll see your XPI file in the XPI staging area. You’ll also see the "exploded" version of the XPI (i.e. the unzipped directory structure) underneath <code>/mozilla/$(MOZ_OBJDIR)/dist/bin/extensions</code>. (If something goes wrong, figure out what, fix it and then come back here and add it to this article.)</p>
-
-<p>To make sure that the build really finished, launch Firefox and check that your extension is listed when you select Tools/Extensions. If you are using Firefox as your regular browser (and if you’re not, why not!?), you might be annoyed by the fact that you have to close regular Firefox before running your custom-built version. If so, try setting the <strong>MOZ_NO_REMOTE</strong> environment variable to "1" before running the development version of Firefox. You’ll also need to use a different profile for your development version:</p>
-
-<pre class="brush: shell">firefox -P <em>development</em>
-</pre>
-
-<p>Where <em>development</em> is replaced with the name of the extra profile you’ve created. This will let you run both versions of Firefox simultaneously, saving you oodles of time over the course of the build/test cycle.</p>
-
-<h4 id="Nenhum_Local_Como_o_Chrome">Nenhum Local Como o Chrome</h4>
-
-<p>Yippee-ki-yay! Now you have an extension that does, well, absolutely nothing. It’s time to do something with those groovy components that you’ve implemented and registered. The simplest way to do this is to write some <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a> and <a href="/en/XUL" title="en/XUL">XUL</a> code. At this point, it would be very helpful to have a bit of experience <a href="/en/Extensions" title="en/Extensions">writing "regular" extensions</a> (i.e. without using custom C++ components). If you’ve never done this, I strongly recommend that you think of a cool idea for something simple that you’ve always wanted to tweak in Firefox and write it. Just displaying a new menu item that opens a "Hello, World!" dialog box would be already be a great exercise to get warmed up with.</p>
-
-<p>Assuming you know how to write XUL/JavaScript extensions, you’re aware that the most important stuff goes in the <code>chrome/</code> directory of your extension. Well, the fact that you’re also using C++ components doesn’t change that one whit. So now you need to create the normal <code>content/</code>, <code>locale/</code> and <code>skin/</code> directories in which to place your chrome files. Personally I like placing these directly under the root directory of my module, but I don’t suppose it makes any difference if you prefer putting them under a <code>chrome/</code> subdirectory or whatever. Let freedom reign!</p>
-
-<p>Once you’ve written the necessary chrome files (for instance, an overlay that adds a menu item to instantiate and use one of your components), you need to package them up as part of your extension. This is accomplished through the use of a <a href="/en/JAR_Manifests" title="en/JAR_Manifests">JAR Manifest</a>. For our simple extension example, this file might look something like this:</p>
-
-<pre>myextension.jar:
-% content myextension %content/
-% locale myextension en-US %locale/en-US/
-% skin myextension classic/1.0 %skin/classic/
-% overlay chrome://browser/content/browser.xul chrome://myextension/content/MyExtensionOverlay.xul
- content/MyExtensionOverlay.js (content/MyExtensionOverlay.js)
- content/MyExtensionOverlay.xul (content/MyExtensionOverlay.xul)
- locale/en-US/MyExtension.dtd (locale/en-US/MyExtension.dtd)
- locale/en-US/MyExtension.properties (locale/en-US/MyExtension.properties)
- skin/classic/MyExtension.css (skin/classic/MyExtension.css)
-</pre>
-
-<p>Place this code in a file called <code>jar.mn</code> in the root directory of your extension, making sure that the paths in parentheses point to actual files (when interpreted relative to the root directory). You also have to make one small change to the makefile in the same directory, adding the following line:</p>
-
-<pre class="eval">USE_EXTENSION_MANIFEST = 1
-</pre>
-
-<p>This tells <code>make</code> to create a single manifest file called <code>chrome.manifest</code> instead of creating separate manifests with goofy names for each package.</p>
-
-<p>Now launch <code>make</code> again, and you should see a <code>chrome</code> subdirectory appear in your extension (<code>/mozilla/$(MOZ_OBJDIR)<a class="link-mailto" href="mailto:/dist/bin/extensions/myextension@mycompany.com" rel="freelink">/dist/bin/extensions/myextension@mycompany.com</a>/</code>). Note that the <code>chrome</code> directory contains a JAR (i.e. ZIP) file with all the chrome files listed in <code>jar.mn</code> as well as a complete directory structure mirroring that of the JAR file. The directory structure, however, is empty. Why? I don’t know. Don’t worry about this, the files in the JAR are the ones that are actually used.</p>
-
-<h4 id="Mantedo-a_Complexa">Mantedo-a Complexa</h4>
-
-<p>If you’re developing a really complex extension with lots of <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> components, you’ll probably want to divide your code up into smaller modules.</p>
-
-<h5 id="Kinda_Sorta_Complex_Extensions">Kinda, Sorta Complex Extensions</h5>
-
-<p>For a moderately complex extension, it’s probably enough just to subdivide the code into a single level of modules. Let’s assume that you have a <code>base/</code> module that defines a bunch of basic XPCOM components and an <code>advanced/</code> module that defines some chrome as well as other components that use the basic components. Your complete directory structure will look something like this:</p>
-
-<ul>
- <li>myextension
- <ul>
- <li>base
- <ul>
- <li>public</li>
- <li>src</li>
- </ul>
- </li>
- <li>advanced
- <ul>
- <li>content</li>
- <li>locale
- <ul>
- <li>en-US</li>
- <li>...other locales...</li>
- </ul>
- </li>
- <li>public</li>
- <li>skin
- <ul>
- <li>classic</li>
- <li>...other skins...</li>
- </ul>
- </li>
- <li>src</li>
- </ul>
- </li>
- </ul>
- </li>
-</ul>
-
-<p>Other than that, nothing really changes. The makefiles in the <code>base/</code> and <code>advanced/</code> directories should look more or less like your original root makefile, remembering to change the <strong>DEPTH</strong> variable to account for the fact that they’ve moved a level further away from the Mozilla root. You also need to remove the <strong>DIST_FILES</strong> variable since that’s going to be in the top-level makefile. Every makefile that generates anything should define the <strong>XPI_NAME</strong> variable to make sure generated files go into your extension and not into the global <code>components/</code> directory. In fact, just define this in every makefile to be safe. You can use the same <strong>MODULE</strong> in both <code>base/</code> and <code>advanced/</code> so that all the generated include files go into the same directory, but make sure that you don’t use the same <strong>XPIDL_MODULE</strong> in the two <code>public/</code> directories or one of the component type libraries (i.e. XPT files) will overwrite the other one and all hell will break loose.</p>
-
-<p>Each module must also have a different value for the <strong>LIBRARY_NAME</strong> variable. This is the name of the generated dynamic library, so if we call the libraries "myBase" and "myAdvanced", we’ll end up with <code>myBase.dll</code> and <code>myAdvanced.dll</code> (on Windows, at least). And each of these modules is going to have a separate C++ file for registering components. So there will be two files that look like <code>myExtension.cpp</code> in the original example, say <code>Base.cpp</code> and <code>Advanced.cpp</code>. Finally, each module will obviously have its own <code>jar.mn</code>, though they can reference the same JAR filename and package name if you want all the chrome files to be organized in a single JAR file and package. The only file that really stays put is <code>install.rdf</code>, which still exists once and only once in the extension root directory.</p>
-
-<p>As for the top-level makefile, it will now look like this:</p>
-
-<pre>DEPTH = ../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-MODULE = myextension
-
-DIRS = base advanced
-
-XPI_NAME = myextension
-INSTALL_EXTENSION_ID = myextension@mycompany.com
-XPI_PKGNAME = myextension
-
-DIST_FILES = install.rdf
-
-include $(topsrcdir)/config/rules.mk
-</pre>
-
-<h5 id="Extensões_Complexas_Sérias">Extensões Complexas Sérias</h5>
-
-<p>At some point, even a single module may grow to the point where you want to divide it further into submodules. The difference between having separate modules and having a single module with separate submodules is that the submodules all share the same file for registering components (the famous <code>myExtension.cpp</code> file), and when compiled they create a single dynamic library. The decision to split a module into submodules is all about code organization; it doesn’t really affect the final product at all.</p>
-
-<p>To split a module into submodules, first create a subdirectory for each submodule. Then create an additional directory called <code>build/</code>. Each submodule will be configured to create a static library, and the <code>build/</code> directory will pull these libraries together to create a single dynamic component library. Confused? Here’s an example, showing just the <code>advanced/</code> subbranch of the <code>myextension/</code> directory:</p>
-
-<ul>
- <li>advanced
- <ul>
- <li>build</li>
- <li>intricate
- <ul>
- <li>public</li>
- <li>src</li>
- </ul>
- </li>
- <li>multifarious
- <ul>
- <li>public</li>
- <li>src</li>
- </ul>
- </li>
- <li>content</li>
- <li>locale
- <ul>
- <li>en-US</li>
- <li>...other locales...</li>
- </ul>
- </li>
- <li>skin
- <ul>
- <li>classic</li>
- <li>...other skins...</li>
- </ul>
- </li>
- </ul>
- </li>
-</ul>
-
-<p>As you can see, we’ve split <code>advanced/</code> into two submodules: <code>intricate/</code> and <code>multifarious/</code>, and we’ve added an additional <code>build/</code> subdirectory. We’ve left the chrome directories directly under <code>advanced/</code>, since they aren’t tied to any specific submodule. This means that <code>jar.mn</code> will stay in the same place.</p>
-
-<p>The <code>intricate/</code> and <code>multifarious/</code> makefiles will look a lot like the original <code>advanced/</code> makefile, but we’ll need to tweak them a bit. As always, we have to adjust the <strong>DEPTH</strong> variable since the makefiles are deeper in the directory structure. And we should change the <strong>LIBRARY_NAME</strong> to indicate that we’re generating a static library for each submodule. By convention the "_s" suffix is used for this purpose. So let’s call them "myIntricate_s" and "myMultifarious_s". Finally, we define the variable <strong>FORCE_STATIC_LIB</strong>, resulting in a makefile that starts something like this:</p>
-
-<pre>DEPTH = ../../../../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-MODULE = myextension
-LIBRARY_NAME = myIntricate_s
-FORCE_STATIC_LIB = 1
-USE_STATIC_LIBS = 1
-
-XPI_NAME = myextension
-
-...more stuff here...
-</pre>
-
-<p>The <code>build</code> makefile pulls together the static libraries generated by the submodules and creates a single (dynamic) component library:</p>
-
-<pre>DEPTH = ../../../..
-topsrcdir = @top_srcdir@
-srcdir = @srcdir@
-VPATH = @srcdir@
-
-include $(DEPTH)/config/autoconf.mk
-
-IS_COMPONENT = 1
-MODULE = myextension
-LIBRARY_NAME = myAdvanced
-USE_STATIC_LIBS = 1
-
-XPI_NAME = myextension
-
-DEFINES += XPCOM_GLUE
-
-SHARED_LIBRARY_LIBS = \
- $(DIST)/lib/$(LIB_PREFIX)myIntricate_s.$(LIB_SUFFIX) \
- $(DIST)/lib/$(LIB_PREFIX)myMultifarious_s.$(LIB_SUFFIX) \
- $(DIST)/lib/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) \
- $(DIST)/lib/$(LIB_PREFIX)xul.$(LIB_SUFFIX) \
- $(DIST)/lib/$(LIB_PREFIX)nss3.$(LIB_SUFFIX) \
- $(NULL)
-
-CPPSRCS = \
- Advanced.cpp \
- $(NULL)
-
-include $(topsrcdir)/config/rules.mk
-
-LOCAL_INCLUDES += \
- -I$(srcdir)/../intricate/src \
- -I$(srcdir)/../multifarious/src \
- $(NULL)
-</pre>
-
-<p>The makefile in the <code>advanced/</code> directory should list the <code>intricate/</code>, <code>multifarious/</code> and <code>build/</code> directories in its <strong>DIRS</strong> variable. Make sure that <code>build/</code> comes last since it can’t create the component library until the other makefiles have completed.</p>
-
-<h3 id="Outros_Tópicos">Outros Tópicos</h3>
-
-<h4 id="Adicionar_Ficheiros_de_Dados_às_Suas_Extensões">Adicionar Ficheiros de Dados às Suas Extensões</h4>
-
-<p>In some cases, you may wish to include additional files in your extension that don’t belong in the <code>chrome/</code> subdirectory. Examples might be database files or XML schemas. This can be achieved by adding a custom step to your makefile that copies the files from the source tree into the extension’s target directory.</p>
-
-<h5 id="Copiar_Ficheiros_de_Dados_para_a_Diretoria_de_Destino">Copiar Ficheiros de Dados para a Diretoria de Destino</h5>
-
-<p>Let’s say that you have some data files containing statistical information that you want to include in your extension and make available to your components. You’ve placed these files, which have the extension .TXT, into a <code>stats/</code> subdirectory under your extension directory in the source tree. The following makefile rule can be used to copy these files into the final target directory of the extension:</p>
-
-<pre>export::
- if test ! -d $(FINAL_TARGET)/stats; then \
- $(NSINSTALL) -D $(FINAL_TARGET)/stats; \
- fi
- $(INSTALL) $(srcdir)/*.txt $(FINAL_TARGET)/stats
-</pre>
-
-<h5 id="Aceder_aos_Ficheiros_de_Dados_a_partir_dos_Componentes">Aceder aos Ficheiros de Dados a partir dos Componentes</h5>
-
-<p>The trick to accessing your data files is to figure out where the home directory of your extension is. Rumor has it that at some future date, this will possible through the <code><a href="/en/XPCOM_Interface_Reference/nsIExtensionManager" title="en/XPCOM_Interface_Reference/nsIExtensionManager">nsIExtensionManager</a></code> interface or something similar. In the meantime, there is a simple and reliable hack that can be used to achieve this. In the implementation of any JavaScript XPCOM component, there is a special <strong>__LOCATION__</strong> (two leading and two trailing underscores) symbol that points to the component’s implementation file. So you can write a simple component which deduces the root directory of your extensions by extrapolating from its location.</p>
-
-<p><a class="external" href="http://www.builderau.com.au/program/soa/Creating_XPCOM_components_with_JavaScript/0,39024614,39206503,00.htm">This article</a> explains how to create an XPCOM component in JavaScript. You’ll need an IDL file for an interface that looks something like this:</p>
-
-<pre>interface myILocation : nsISupports
-{
- readonly attribute nsIFile locationFile;
-};
-</pre>
-
-<p>Place the IDL file in the <code>public/</code> directory of your project or subproject. In the <code>src/</code> directory, place the JavaScript file that implements the component. The component implementation will include the methods for retrieving the path or file for the extension’s home directory:</p>
-
-<pre class="brush: js">myLocation.prototype =
-{
- QueryInterface: function(iid)
- {
- if (iid.equals(nsISupports))
- return this;
- if (iid.equals(myILocation))
- return this;
-
- Components.returnCode = Components.results.NS_ERROR_NO_INTERFACE;
- return null;
- },
-
- get locationFile()
- {
- return __LOCATION__.parent.parent;
- }
-}
-</pre>
-
-<p>This assumes that the component resides in a subdirectory of the extension directory (by convention, this directory is called <code>components/</code>). The <code>parent</code> property of <strong>__LOCATION__</strong> returns the <code>components/</code>, and the <code>parent</code> of this is the extension directory.</p>
-
-<p>The last step is to modify the makefile of the source directory where you placed your JavaScript file so that it is copied into the appropriate location in the extension:</p>
-
-<pre>export::
- $(INSTALL) $(srcdir)/*.js $(FINAL_TARGET)/components
-</pre>
-
-<p>Now you can instantiate an instance of this component and use the <code>locationFile</code> property to get an <code><a href="/en/XPCOM_Interface_Reference/nsIFile" title="en/XPCOM_Interface_Reference/nsIFile">nsIFile</a></code> interface that points to your extension’s home directory.</p>
-
-<h4 id="Using_Third-Party_Libraries">Using Third-Party Libraries</h4>
-
-<p>For more sophisticated extensions, you may want to integrate third-party libraries that provide specialized functionality for database connectivity, image processing, networking and the like. If you want your extension to run on all Firefox platforms, you will need to have the source code for the library in question, so I assume that this is available.</p>
-
-<p>The most convenient approach from the perspective of the development cycle is to create a Mozilla-style makefile for the library. This works well for libraries that have a straightforward make process without extensive configuration. A good example of this is the SQLite library included in the Mozilla build tree at <code>db/sqlite</code>. By adapting the makefile in this way, the library is created as part of the standard Mozilla build process, which eliminates additional build steps. The downside is that you will need to update the modified makefile any time a new version of the library is released.</p>
-
-<p>For libraries that have complex configuration processes, use a non-standard compiler or have other special characteristics, it may be unfeasible to create a Mozilla-compliant makefile. In this case, I would recommend placing the entire library distribution inside the project or subproject that uses it. So if library <code>acmelib</code> is used inside the <code>multifarious/</code> subproject in the above example, it would be placed as a subdirectory underneath that subproject (at the same level as <code>public/</code> and <code>src/</code>).</p>
-
-<p>Of course, this means that you will have to build <code>acmelib</code> manually on all platforms before launching the Mozilla build. But at least you can then refer to include files and import libraries from your component using relative paths.</p>
-
-<h4 id="Building_for_Multiple_Platforms">Building for Multiple Platforms</h4>
-
-<p>TODO</p>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information">Original Document Information</h2>
-
-<ul>
- <li>Author: Matthew Gertner - July 26, 2005.</li>
- <li>Permission granted to migrate in Jan 2006, including permission to relicense under the CC:By-SA.</li>
- <li>Original Source: <a class="external" href="http://www.allpeers.com/blog/creating-complex-firefox-extensions/" rel="freelink">http://www.allpeers.com/blog/creatin...ox-extensions/</a></li>
-</ul>
-</div>
-
-<p> </p>
diff --git a/files/pt-pt/mozilla/add-ons/distribuicao/index.html b/files/pt-pt/mozilla/add-ons/distribuicao/index.html
deleted file mode 100644
index eede6b7581..0000000000
--- a/files/pt-pt/mozilla/add-ons/distribuicao/index.html
+++ /dev/null
@@ -1,78 +0,0 @@
----
-title: Assinar e distribuir os seus extras
-slug: Mozilla/Add-ons/Distribuicao
-tags:
- - Extensões
- - Extensões da Web
- - Extras
- - assinatura
- - distribuição
- - publicação
- - revisões
-translation_of: Mozilla/Add-ons/Distribution
----
-<div>{{AddonSidebar}}</div>
-
-<p>Os extras precisam de ser assinados antes de serem instalados nas versões beta e de lançamento do Firefox. Este processo de assinatura ocorre via addons.mozilla.org (AMO), independentemente de optar por distribuir o seu extra via AMO ou por si mesmo.</p>
-
-<p>Nós aqui analisamos os requisitos de assinatura e as revisões relacionadas, antes de discutir como escolher entre o distribuir no AMO ou distribuir um extra por si mesmo. Nós também analisamos os canais disponíveis no AMO e respondemos a questões sobre propriedade e disputas de código.</p>
-
-<h2 class="brush: js" id="Assinar_os_seus_extras">Assinar os seus extras</h2>
-
-<p>Starting with Firefox 43, add-on extensions and multi-item add-ons that include extensions need to be signed by Mozilla before they can install in release and beta versions of Firefox. Themes, and other types of add-ons such as spelling dictionaries, don't need to be signed.</p>
-
-<p>Unsigned extensions can be installed in <a href="/en-US/Firefox/Developer_Edition">Developer Edition</a>, Nightly, and <a href="/en-US/Firefox/Enterprise_deployment">ESR</a> versions of Firefox, after toggling the <em>xpinstall.signatures.required</em> preference in <code>about:config</code>.</p>
-
-<p>Mozilla signs add-ons through the <a href="https://addons.mozilla.org/developers/addon/submit">AMO</a> website and provides three methods for submitting your add-on for signing:</p>
-
-<ul>
- <li>upload your add-on through the <a href="/en-US/Add-ons/Distribution/Submitting_an_add-on">Developer Hub on AMO</a>.</li>
- <li>use the <a href="http://addons-server.readthedocs.io/en/latest/topics/api/signing.html">addons.mozilla.org signing API</a>.</li>
- <li>use <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/web-ext_command_reference#web-ext_sign">web-ext sign.</a></li>
-</ul>
-
-<p>All the signing options are subject to the <a href="/en-US/Add-ons/AMO/Policy/Agreement">Firefox Add-on Distribution Agreement</a>.</p>
-
-<p>Using the signing API or web-ext returns you signed add-ons, with no distribution listing created on AMO. If you take the option to upload your add-on through the AMO Developer Hub, you're given a choice between listing on AMO or self-distribution. If you choose self-distribution, at the end of the process you download signed copies of your add-on.</p>
-
-<p>Regardless of the method used all add-ons must pass an automated validation before they are signed. They may also be subject to a manual code review. The review criteria applied to add-ons are found in the <a href="/en-US/docs/Mozilla/Add-ons/AMO/Policy/Reviews">Add-on Policies</a>.</p>
-
-<h2 id="Distributir_o_seu_extra">Distributir o seu extra</h2>
-
-<p>You aren't required to list or distribute your add-on through AMO. You'll, therefore, need to decide if you want to distribute and list your add-on through AMO or distribute it yourself. Here are some things you should consider:</p>
-
-<ul>
- <li>AMO is a very popular distribution platform, with millions of monthly visitors and installations. It's integrated into the Firefox Add-ons Manager, allowing for easy installation of add-ons published on AMO.</li>
- <li>When an add-on is listed on AMO, updates to installed copies are handled automatically by Firefox each time a new version is listed on AMO.<br>
- To enable Firefox to automatically update self-distributed add-ons, the URL where Firefox can find updates needs to be included in the add-on manifest's <a href="/en-US/Add-ons/Updates">update_link</a> key. Self-distributed add-ons that don't have an update URL check AMO for updates and are updated to a listed version, if one is available.</li>
-</ul>
-
-<p>For more information on how to submit an add-on for distribution on AMO or self-distribution, see <a href="/en-US/docs/Mozilla/Add-ons/Distribution/Submitting_an_add-on">Submitting an add-on.</a></p>
-
-<h2 id="Mais_informação_sobre_AMO">Mais informação sobre AMO</h2>
-
-<h3 id="Propriedade">Propriedade</h3>
-
-<p>Os extras no AMO podem ter vários utilizadores com permissão para atualizar e gerir a listagem. Os autores de um extra podem transferir a propriedade e adicionar programadores à listagem de um extra por meio do <em>Hub </em>do Programdor. Não é necessária nenhuma interação com os representantes da Mozilla para uma transferência de propriedade.</p>
-
-<p> </p>
-
-<h4 id="Para_transferir_propriedade">Para transferir propriedade</h4>
-
-<ul>
- <li>Make sure the new owner has an account on <a href="https://addons.mozilla.org/">addons.mozilla.org</a>. New accounts can be created using the "Register or Log in" button, after which the owner must confirm their email address.</li>
- <li>Sign into your account on the <a href="https://addons.mozilla.org/developers/">Add-on Developer Hub</a>, and click "Edit Listing" for the extension you want to transfer.</li>
- <li>On the left-hand side of the screen, you will see a blue box labeled "Edit Information". Click "Manage Authors &amp; License" — from the resulting page you can add and remove authors.</li>
- <li>One you have added the new author's email address, set that person as the extension owner and make sure the "Listed" box has a checkmark. Now you can remove yourself by clicking the "x" next to your email address.</li>
- <li>When you're done, click "Save Changes". The new owner will be able to manage updates, listing information, etc., when logged in.</li>
-</ul>
-
-<p> </p>
-
-<h3 id="Disputas_de_códogo">Disputas de códogo</h3>
-
-<p>Many add-ons allow their source code to be viewed. This does not mean that the source code is open source or available for use in another add-on. The original author of an add-on retains copyright of their work unless otherwise noted in the add-on's license.</p>
-
-<p>If we're notified of a copyright or license infringement, we will take steps to address the situation per the DMCA, which may include taking down the add-on listing. Details about this process and how to report trademark or licensing issues can be <a href="https://www.mozilla.org/en-US/about/legal/report-abuse/">found here</a>.</p>
-
-<p>If you are unsure of the current copyright status of an add-on's source code, you must contact the author and get explicit permission before using the source code.</p>
diff --git a/files/pt-pt/mozilla/add-ons/linhas_diretrizes_para_extras/index.html b/files/pt-pt/mozilla/add-ons/linhas_diretrizes_para_extras/index.html
deleted file mode 100644
index 4293fe9c74..0000000000
--- a/files/pt-pt/mozilla/add-ons/linhas_diretrizes_para_extras/index.html
+++ /dev/null
@@ -1,8 +0,0 @@
----
-title: Linhas Diretrizes para Extras
-slug: Mozilla/Add-ons/Linhas_diretrizes_para_extras
-translation_of: 'https://extensionworkshop.com/documentation/publish/add-on-policies/'
----
-<div class="warning">
-<p>Este documento já não é válido. Por favor, consulte o documento de <a href="/pt-PT/docs/Mozilla/Add-ons/AMO/Policy/Revisões">Políticas de Revisão</a> para o conjunto atual das políticas de extras.</p>
-</div>
diff --git a/files/pt-pt/mozilla/add-ons/sdk/index.html b/files/pt-pt/mozilla/add-ons/sdk/index.html
deleted file mode 100644
index 1c160220ae..0000000000
--- a/files/pt-pt/mozilla/add-ons/sdk/index.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: Add-on SDK
-slug: Mozilla/Add-ons/SDK
-tags:
- - Add-on SDK
- - Jetpack
-translation_of: Archive/Add-ons/Add-on_SDK
----
-<div class="warning">
-<p>Support for extensions using XUL/XPCOM or the Add-on SDK was removed in Firefox 57, released November 2017. As there is no supported version of Firefox enabling these technologies, this page will be removed by December 2020.</p>
-
-<p>Add-ons using the techniques described in this document are considered a legacy technology in Firefox. Don't use these techniques to develop new add-ons. Use <a href="/en-US/Add-ons/WebExtensions">WebExtensions</a> instead. If you maintain an add-on which uses the techniques described here, consider migrating it to use WebExtensions.</p>
-
-<p><strong>Starting from <a href="https://wiki.mozilla.org/RapidRelease/Calendar">Firefox 53</a>, no new legacy add-ons will be accepted on addons.mozilla.org (AMO) for desktop Firefox and Firefox for Android.</strong></p>
-
-<p><strong>Starting from <a href="https://wiki.mozilla.org/RapidRelease/Calendar">Firefox 57</a>, only extensions developed using WebExtensions APIs will be supported on Desktop Firefox and Firefox for Android. </strong></p>
-
-<p>Even before Firefox 57, changes coming up in the Firefox platform will break many legacy extensions. These changes include multiprocess Firefox (e10s), sandboxing, and multiple content processes. Legacy extensions that are affected by these changes should migrate to use WebExtensions APIs if they can. See the <a href="https://blog.mozilla.org/addons/2017/02/16/the-road-to-firefox-57-compatibility-milestones/">"Compatibility Milestones" document</a> for more information.</p>
-
-<p>A wiki page containing <a href="https://wiki.mozilla.org/Add-ons/developer/communication">resources, migration paths, office hours, and more</a>, is available to help developers transition to the new technologies.</p>
-</div>
-<p>Pode criar extras do Firefox utilizando <strong><u>Add-on SDK</u></strong>. Pode utilizar várias tecnologias da Web padrão: CSS, HTML e JavaScript, para criar os extras. O SDK inclui as APIs de JavaScript APIs, que pode utilziar para criar extras e ferramentas para a criação, execução, testes, e empacotamento dos extras.</p>
-
-<hr>
-<h3 id="Tutoriais"><a href="/en-US/Add-ons/SDK/Tutorials">Tutoriais</a></h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#getting-started">Getting started</a></dt>
- <dd>How to <a href="/en-US/Add-ons/SDK/Tutorials/Installation">install the SDK</a> and <a href="/en-US/Add-ons/SDK/Tutorials/Getting_Started_(jpm)">use the jpm tool</a> to develop, test, and package add-ons.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#interact-with-the-browser">Interact with the browser</a></dt>
- <dd><a href="/en-US/Add-ons/SDK/Tutorials/Open_a_Web_Page">Open web pages</a>, <a href="/en-US/Add-ons/SDK/Tutorials/Listen_For_Page_Load">listen for pages loading</a> and <a href="/en-US/Add-ons/SDK/Tutorials/List_Open_Tabs">list open pages</a>.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#development-techniques">Development techniques</a></dt>
- <dd>Learn about common development techniques, such as <a href="/en-US/Add-ons/SDK/Tutorials/Unit_testing">unit testing</a>, <a href="/en-US/Add-ons/SDK/Tutorials/Logging">logging</a>, <a href="/en-US/Add-ons/SDK/Tutorials/Creating_Reusable_Modules">creating reusable modules</a>, <a href="/en-US/Add-ons/SDK/Tutorials/l10n">localization</a>, and <a href="/en-US/Add-ons/SDK/Tutorials/Mobile_development">mobile development</a>.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#create-user-interfaces">Create user interface components</a></dt>
- <dd>Create user interface components such as <a href="/en-US/Add-ons/SDK/Tutorials/Adding_a_Button_to_the_Toolbar">toolbar buttons</a>, <a href="/en-US/Add-ons/SDK/Tutorials/Add_a_Context_Menu_Item">context menus</a>, <a href="/en-US/Add-ons/SDK/Tutorials/Add_a_Menu_Item_to_Firefox">menu items</a>, and <a href="/en-US/Add-ons/SDK/Tutorials/Display_a_Popup">dialogs</a>.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials#modify-web-pages">Modify web pages</a></dt>
- <dd>Modify pages <a href="/en-US/Add-ons/SDK/Tutorials/Modifying_Web_Pages_Based_on_URL">matching a URL pattern</a> or dynamically <a href="/en-US/Add-ons/SDK/Tutorials/Modifying_the_Page_Hosted_by_a_Tab">modify a particular tab</a>.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tutorials/Annotator">Putting it together</a></dt>
- <dd>Walkthrough of the Annotator example add-on.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h3 id="Guias">Guias</h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/Guides#contributors-guide">Contributor's guide</a></dt>
- <dd>Learn <a href="/en-US/Add-ons/SDK/Guides/Getting_Started">how to start contributing</a> to the SDK and about the most important idioms used in the SDK code such as <a href="/en-US/Add-ons/SDK/Guides/Modules">modules</a>, <a href="/en-US/Add-ons/SDK/Guides/Classes_and_Inheritance">classes and inheritance</a>, <a href="/en-US/Add-ons/SDK/Guides/Private_Properties">private properties</a>, and <a href="/en-US/Add-ons/SDK/Guides/Content_Processes">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 working with content scripts.</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>
- <dt><a href="/en-US/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK">Multiprocess Firefox and the SDK</a></dt>
- <dd>How to check whether your add-on is compatible with multiprocess Firefox or not and fix it accordingly.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h3 id="Referência">Referência</h3>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Add-ons/SDK/High-Level_APIs">High-Level APIs</a></dt>
- <dd>Reference documentation for the high-level SDK APIs.</dd>
- <dt><a href="/en-US/Add-ons/SDK/Tools">Tools reference</a></dt>
- <dd>Reference documentation for the <a href="/en-US/Add-ons/SDK/Tools/jpm">jpm 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">Low-Level APIs</a></dt>
- <dd>Reference documentation for the low-level SDK APIs.</dd>
-</dl>
-</div>
-</div>
diff --git a/files/pt-pt/mozilla/add-ons/themes/conceitos_tema/index.html b/files/pt-pt/mozilla/add-ons/themes/conceitos_tema/index.html
deleted file mode 100644
index bb59c4386f..0000000000
--- a/files/pt-pt/mozilla/add-ons/themes/conceitos_tema/index.html
+++ /dev/null
@@ -1,230 +0,0 @@
----
-title: Conceitos de Tema
-slug: Mozilla/Add-ons/Themes/Conceitos_tema
-tags:
- - Tema
- - extra
-translation_of: Mozilla/Add-ons/Themes/Theme_concepts
----
-<div>{{AddonSidebar()}}</div>
-
-<p>Os temas desenvolvidos utilizando a <a href="/pt-PT/docs/Mozilla/Add-ons/WebExtensions">WebExtensions API</a> no Firefox permitem-lhe alterar a aparência do navegador ao adicionar imagens na área do cabeçalho do navegador Firefox; esta é a área por trás da barra de menus, barras de ferramentas, barra de endereço, barra de pesquisa e seuparador de faixa.</p>
-
-<p>Estas opções de temas podem ser implementadas como temas estáticos (embora as próprias imagens do tema possam ser animadas) ou como temas dinâmicos criados numa extensão do navegador.</p>
-
-<div class="note">
-<p>If you have a <a href="/en-US/docs/Mozilla/Add-ons/Themes/Lightweight_themes">lightweight theme</a> it will be converted to this new theme format automatically before lightweight themes are deprecated. You do not need to port your theme. However, please feel free to update your themes to use any of the new features described here.</p>
-</div>
-
-<h2 id="Temas_estásticos">Temas estásticos</h2>
-
-<p>Static themes are specified using the same resources as a browser extension: a <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a> file to define the theme components with those components stored in the same folder as the manifest.json file or a sub folder. These resources are then packed in a zip for publication on <a href="https://addons.mozilla.org">addons.mozilla.org</a> (AMO).</p>
-
-<div class="note">
-<p>A theme and browser extension functionality cannot be defined in one package, such as including a theme to complement an extension. You can, however, programmatically include a theme in an extension using the Theme API. See <a href="#Dynamic_themes">Dynamic themes</a>.</p>
-</div>
-
-<h3 id="Definir_um_tema">Definir um tema</h3>
-
-<p>To create a theme (in this example a simple, single image theme):</p>
-
-<ul>
- <li>Create a folder in a suitable location on your computer.</li>
- <li>Add the theme image file to the folder:
- <pre>&lt;mytheme&gt;
- &lt;your_header_image&gt;.&lt;type&gt;</pre>
- </li>
- <li>Create a file called manifest.json in the folder and edit its content as follows:
- <pre class="brush: json">{
- "manifest_version": 2,
- "version": "1.0",
- "name": "&lt;your_theme_name&gt;",
- "theme": {
- "images": {
- "headerURL": "&lt;your_header_image&gt;.&lt;type&gt;"
- },
- "colors": {
- "accentcolor": "#FFFFFF",
- "textcolor": "#000"
- }
- }
-}
-</pre>
- Where:
-
- <ul>
- <li><code>"accentcolor":</code> is the heading area background color for your theme.</li>
- <li><code>"</code><code>textcolor</code><code>":</code> the color of the text in the heading area.</li>
- </ul>
- </li>
- <li>Package your theme and submit it to AMO, <a href="/en-US/Add-ons/WebExtensions/Publishing_your_WebExtension">following these instructions</a>.</li>
-</ul>
-
-<h3 id="Static_theme_approaches">Static theme approaches</h3>
-
-<p>There are two approaches you can take to theming the header area of Firefox: using a single image or using multiple images. You could combine the two, but it’s easier to treat them separately.</p>
-
-<h4 id="Single_image_themes">Single image themes</h4>
-
-<p>This is the basic or minimal theming option, where you define:</p>
-
-<ul>
- <li>a single image, which is anchored to the top right of the header area.</li>
- <li>A color for the text in the header.</li>
-</ul>
-
-<p>The area your header image needs to fill is a maximum of 200 pixels high. The maximum image width is determined by the resolution of the monitor Firefox is displaying on and how much of the monitor Firefox is using. Practically, this means you would need to allow for a width of up to 5120 pixels wide (for the next generation of 5k monitors). However, rather than creating a very wide image, a better approach is to use a narrower image with a transparent left edge so that it fades to the background color. For example, we could use this image<br>
- <img alt="An image of a weta (the common name for a group of about 70 insect species in the families Anostostomatidae and Rhaphidophoridae, endemic to New Zealand) with the left edge fading to total transparency." src="https://mdn.mozillademos.org/files/15215/weta.png" style="height: 200px; width: 406px;"><br>
- combined with a complementary background color, to create this effect in the header<br>
- <img alt="A single image theme using the weta.png image" src="https://mdn.mozillademos.org/files/15217/basic_theme.png" style="height: 113px; width: 679px;"></p>
-
-<p>See details about this theme in the <a href="https://github.com/mdn/webextensions-examples/tree/master/themes">themes</a> example <a href="https://github.com/mdn/webextensions-examples/tree/master/themes/weta_fade">weta_fade</a>.</p>
-
-<p>Obviously, you can still provide a single wide image if you prefer.</p>
-
-<h4 id="Multiple_image_themes">Multiple image themes</h4>
-
-<p>As an alternative to creating a single image theme, you have the option to use multiple images. These images can be individually anchored to locations within the header, with the option to apply tiling to each image.</p>
-
-<p>Depending on the effect you want to create you may need to suppress the mandatory <code>"</code><code>headerURL</code><code>":</code> image with an empty or transparent image. You would use an empty or transparent image if, for example, you wanted to tile a centrally justified image, such as<br>
- <img alt="An image of a weta (the common name for a group of about 70 insect species in the families Anostostomatidae and Rhaphidophoridae, endemic to New Zealand) with the left and right edges fading to total transparency." src="https://mdn.mozillademos.org/files/15219/weta_for_tiling.png" style="height: 200px; width: 270px;"><br>
- to create this effect<br>
- <img alt="A single image theme using the additional images option to align an image to the center of the heading and tile it. " src="https://mdn.mozillademos.org/files/15221/tiled_theme.png" style="height: 113px; width: 679px;"><br>
- Here you specify the weta image like this:</p>
-
-<pre class="brush: json" dir="ltr">"images": {
- "headerURL": "empty.png",
- "additional_backgrounds": [ "weta_for_tiling.png"]
-},</pre>
-
-<p dir="ltr">and the images tiling with:</p>
-
-<pre class="brush: json" dir="ltr">"properties": {
- "additional_backgrounds_alignment": [ "top" ],
- "additional_backgrounds_tiling": [ "repeat" ]
-},</pre>
-
-<p>Full details of how to setup this theme can be found in the <a href="https://github.com/mdn/webextensions-examples/tree/master/themes">themes</a> example <a href="https://github.com/mdn/webextensions-examples/tree/master/themes/weta_tiled">weta_tiled</a>. Full detais of the alignment and tiling options can be found in the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">"theme" key description</a>.</p>
-
-<p>Alternatively, you can use multiple images, say combining the original weta image with this one anchored to the left of the header<br>
- <img alt="An image of a weta (the common name for a group of about 70 insect species in the families Anostostomatidae and Rhaphidophoridae, endemic to New Zealand) with the right edge fading to total transparency." src="https://mdn.mozillademos.org/files/15223/weta-left.png" style="height: 200px; width: 406px;"><br>
- to create this effect<br>
- <img alt="A theme using the additional images option to place two mirrored image to the left and right of the browser header." src="https://mdn.mozillademos.org/files/15225/multi_image_theme.png" style="height: 113px; width: 679px;"></p>
-
-<p>Where the images are specified with:</p>
-
-<pre class="brush: json" dir="ltr">"images": {
- "headerURL": "empty.png",
- "additional_backgrounds": [ "weta.png", "weta-left.png"]
-},</pre>
-
-<p dir="ltr">and their alignment by:</p>
-
-<pre class="brush: json" dir="ltr">"properties": {
- "additional_backgrounds_alignment": [ "right top" , "left top" ]
-},</pre>
-
-<p>Full details of how to setup this theme can be found in the <a href="https://github.com/mdn/webextensions-examples/tree/master/themes">themes</a> example <a href="https://github.com/mdn/webextensions-examples/tree/master/themes/weta_mirror">weta_mirror</a>. Full detais of the alignment options can be found in the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">"theme" key description</a>.</p>
-
-<h3 id="Static_animated_themes">Static animated themes</h3>
-
-<p>It is possible to create an animated theme using an APNG format image, as in the <a href="https://github.com/mdn/webextensions-examples/tree/master/themes">themes</a> example <a href="https://github.com/mdn/webextensions-examples/tree/master/themes/animated">animated</a>. However, remember that rapid animations, such as the one in the example might be too distracting for a practical theme.</p>
-
-<p dir="ltr">You can also animate themes programmatically, which we discuss in <a href="#Dynamic_themes">Dynamic themes</a>.</p>
-
-<h2 id="Temas_dinâmicos">Temas dinâmicos</h2>
-
-<p>As an alternative to defining a static theme, you can use the {{WebExtAPIRef("theme")}} API to control the theme used in Firefox from within a browser extension. There are a couple of use cases for this option:</p>
-
-<ul>
- <li>To bundle a theme with a browser extension, as an added extra.</li>
- <li>Create a dynamic theme that changes under programmatic control.</li>
-</ul>
-
-<p>And, obviously, you can combine the two and bundle a programmatically controlled theme with your extension.</p>
-
-<p>Using the {{WebExtAPIRef("theme")}} API is straightforward. First, request "theme"<a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions"> permission</a> in the extension's<a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json"> manifest.json</a> file. Next, you build a JSON object containing the same information you would use in a static theme’s manifest.json, Finally, pass the JSON object in a {{WebExtAPIRef("theme.update()")}} call.</p>
-
-<p>For example, the following code, from the <a href="https://github.com/mdn/webextensions-examples/tree/master/dynamic-theme">dynamic theme example</a> defines the content for the day and night elements of the dynamic theme:</p>
-
-<pre class="brush: js" dir="ltr">const themes = {
- 'day': {
- images: {
- headerURL: 'sun.jpg',
- },
- colors: {
- accentcolor: '#CF723F',
- textcolor: '#111',
- }
- },
- 'night': {
- images: {
- headerURL: 'moon.jpg',
- },
- colors: {
- accentcolor: '#000',
- textcolor: '#fff',
- }
- }
-};</pre>
-
-<p>The theme.Theme object is then passed to {{WebExtAPIRef("theme.update()")}} to change the header theme, as in this code snippet from the same example:</p>
-
-<pre class="brush: js" dir="ltr">function setTheme(theme) {
- if (currentTheme === theme) {
- // No point in changing the theme if it has already been set.
- return;
- }
- currentTheme = theme;
- browser.theme.update(themes[theme]);
-}</pre>
-
-<p dir="ltr">Learn more about dynamic themes and see an additional example in the following video:</p>
-
-<p dir="ltr">{{EmbedYouTube("ycckyrUN0AY")}}</p>
-
-<p dir="ltr"> </p>
-
-<p dir="ltr">If you have not built a browser extension before, check out <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Your_first_WebExtension">Your first extension</a> for a step-by-step guide.</p>
-
-<h2 id="Compatibilidade_entre_navegadores">Compatibilidade entre navegadores</h2>
-
-<p>There is currently limited compatibility between themes in the major browsers. Opera takes an entirely different approach, and Microsoft Edge themes are not yet open to developers.</p>
-
-<p>There is some compatibility between Firefox static themes and Chrome themes, providing the ability to port a single header image theme from Firefox to Chrome. This would be done by amending the manifest.json keys as follows:</p>
-
-<ul>
- <li><code>"headerURL":</code> to <code>"theme_frame":</code></li>
- <li><code>"accentcolor":</code> to <code>"frame":</code></li>
- <li><code>"textcolor":</code> to <code>"tab_text":</code></li>
-</ul>
-
-<p>Noting that "frame": and "tab_text": support RGB color definition only.</p>
-
-<p>So, in the single image theme example (weta_fade) could be supported in Chrome using the following manifest.json file:</p>
-
-<pre class="brush: json" dir="ltr">{
- "manifest_version": 2,
- "version": "1.0",
- "name": "&lt;your_theme_name&gt;",
- "theme": {
- "images": {
- "theme_frame": "weta.png"
- },
- "colors": {
- "frame": [ 173 , 176 , 159 ],
- "tab_text": [ 0 , 0 , 0 ]
- }
- }
-}</pre>
-
-<p>However, there will be a couple of differences:</p>
-
-<ul>
- <li>Chrome tiles the <code>“theme_frame”:</code> image from the left of the header area.</li>
- <li><code>"tab_text":</code> only affects the text on the highlighted/active tab.</li>
-</ul>
-
-<p dir="ltr"><img alt="The basic theme example using the Chrome compatible manifest.json keys, showing the differences in how those keys are implemented." src="https://mdn.mozillademos.org/files/15227/basic_in_chrome.png" style="height: 113px; width: 679px;"></p>
-
-<p>For more information, see the notes on <a href="/en-US/Add-ons/WebExtensions/manifest.json/theme#Chrome_compatibility">Chrome compatibility</a>.</p>
diff --git a/files/pt-pt/mozilla/add-ons/themes/index.html b/files/pt-pt/mozilla/add-ons/themes/index.html
deleted file mode 100644
index 26dfb24673..0000000000
--- a/files/pt-pt/mozilla/add-ons/themes/index.html
+++ /dev/null
@@ -1,49 +0,0 @@
----
-title: Temas
-slug: Mozilla/Add-ons/Themes
-tags:
- - Apresentação e Disposição
- - Extras
- - Temas
-translation_of: Mozilla/Add-ons/Themes
----
-<p>{{AddonSidebar}}</p>
-
-<p>Temas permite-lhe alterar a apresentação e disposição da interface do utilizador e personalizar a seu gosto. Saiba como criar e partilhar os temas!</p>
-
-<div class="column-container">
-<div class="column-half">
-<h2 class="Documentation" id="Documentation" name="Documentation">Temas de Navegador</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Add-ons/Themes/Theme_concepts">Browser theme concepts</a></dt>
- <dd>Get an introduction to creating themes for the latest versions of Firefox</dd>
-</dl>
-
-<h2 class="Documentation" id="Documentation" name="Documentation">Temas Simples</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Themes/Lightweight_themes" title="Themes/Lightweight themes">Lightweight themes</a></dt>
- <dd>Building lightweight themes for Firefox</dd>
- <dt><a href="/en-US/Add-ons/Themes/Lightweight_Themes/FAQ">Lightweight themes FAQ</a></dt>
- <dd>Get answers to commonly asked questions</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<h2 id="Ferramentas_e_Recursos">Ferramentas e Recursos</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">Browser theme manifest.json keys</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/theme">Browser extensions theme API</a></li>
- <li><a href="http://vanillaorchidstutorials.blogspot.com/2015/11/mozilla-themes-focal-point-sizing.html">Lightweight themes tutorial</a></li>
- <li><a href="https://discourse.mozilla.org/c/add-ons/themes">Discourse forum</a></li>
- <li><a href="https://blog.mozilla.org/addons/category/personas/">Theme related blog posts</a></li>
- <li><a href="/en-US/Mozilla/Add-ons/Themes/Obsolete">Archived resources</a></li>
-</ul>
-</div>
-</div>
-
-<p> </p>
-
-<p> </p>
diff --git a/files/pt-pt/mozilla/add-ons/themes/obsolete/creating_a_skin_for_firefox/index.html b/files/pt-pt/mozilla/add-ons/themes/obsolete/creating_a_skin_for_firefox/index.html
deleted file mode 100644
index 9d187b7315..0000000000
--- a/files/pt-pt/mozilla/add-ons/themes/obsolete/creating_a_skin_for_firefox/index.html
+++ /dev/null
@@ -1,33 +0,0 @@
----
-title: Creating a Skin for Firefox
-slug: Mozilla/Add-ons/Themes/Obsolete/Creating_a_Skin_for_Firefox
-tags:
- - Add-ons
- - NeedsTranslation
- - Themes
- - TopicStub
-translation_of: Archive/Themes/Creating_a_Skin_for_Firefox
----
-<h2 id="Introduction" name="Introduction">Introduction</h2>
-
-<p>In order to create a skin for Firefox, there are three things you need to know: how to edit images, how to extract zip files, and how to modify CSS. Firefox uses standard GIF, PNG, and JPEG images for the buttons and CSS to style everything else in the interface.</p>
-
-<h3 id="What_is_a_skin" name="What_is_a_skin">What is a skin?</h3>
-
-<p>A skin does not totally change the interface; instead, it just defines how the interface looks. You can't change what happens when the user right clicks on an image, but you can change the look of the right click menu (Make it blue with pink polka dots, for example). If you want to change the functionality of Firefox, you'll have to look into modifying the chrome, which is beyond the scope of this document.</p>
-
-<h2 id="Contents" name="Contents">Contents</h2>
-
-<ul>
- <li><a href="/en-US/docs/Creating_a_Skin_for_Firefox_Getting_Started">Getting Started</a></li>
-</ul>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information" name="Original_Document_Information">Informações Sobre o Documento Original</h2>
-<ul>
-<li>Autor(es): Neil Marshall and Tucker Lee</li>
-<li>Outros Contribuidores: Brent Marshall, CDN (http://themes.mozdev.org), JP Martin, Boris Zbarsky, Asa Dotzler, WeSaySo, David James, Dan Mauch, Anders Conbere, Tim Regula (http://www.igraphics.nn.cx)</li>
-<li>Informações sobre Copyright: Copyright 2002-2003 Neil Marshall, permission given to MDC to migrate into the wiki April 2005 via email.</li>
-<li>Original Location: <a class="external" href="http://www.eightlines.com/neil/mozskin" rel="noopener">http://www.eightlines.com/neil/mozskin</a></li>
-</ul>
-</div>
diff --git a/files/pt-pt/mozilla/add-ons/themes/obsolete/index.html b/files/pt-pt/mozilla/add-ons/themes/obsolete/index.html
deleted file mode 100644
index d420b6ebf0..0000000000
--- a/files/pt-pt/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/pt-pt/mozilla/add-ons/thunderbird/index.html b/files/pt-pt/mozilla/add-ons/thunderbird/index.html
deleted file mode 100644
index b15b535a59..0000000000
--- a/files/pt-pt/mozilla/add-ons/thunderbird/index.html
+++ /dev/null
@@ -1,135 +0,0 @@
----
-title: Thunderbird extensions
-slug: Mozilla/Add-ons/Thunderbird
-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/pt-pt/mozilla/calendar/calendar_versions/index.html b/files/pt-pt/mozilla/calendar/calendar_versions/index.html
deleted file mode 100644
index 7e8c1a7958..0000000000
--- a/files/pt-pt/mozilla/calendar/calendar_versions/index.html
+++ /dev/null
@@ -1,1037 +0,0 @@
----
-title: Versões de Calendário
-slug: Mozilla/Calendar/Calendar_Versions
-tags:
- - Calendário
- - Lightning
- - Sunbird
-translation_of: Mozilla/Calendar/Calendar_Versions
----
-<p>Esta página tem como objetivo fornecer um resumo de qual a versão do Lightning que é compatível com a versão do Thunderbird. Esta também mostra qual a versão da plataforma Mozilla que é utilizada na respetiva versão do Sunbird e do Lightning.</p>
-
-<p>O objetivo principal da 'Equipa do Calendário' é sincronizar o ciclo de lançamento do Lightning com o Thunderbird. Isto geralmente significa que nós iremos utilizar o código base mais recente do Thunderbird e da Mozilla (comm-central e mozilla-central) para o desenvolvimento ativo. Se o agendamento do Thunderbird ainda não estiver clara, nós retrocederemos as alterações para uma ramificação mais antiga.</p>
-
-<p>Nota: se estiver a ter problemas e o calendário está em falta, primeiro consulte  <a href="https://support.mozilla.org/en-US/kb/calendar-updates-issues-thunderbird">calendar update issues</a>, porque depois do Thunderbird 52 Lightning está integrado (empacotado com o Thunderbird) e não deveria de ter que transferir a extensão. Mas se estiver a executar o Thunderbird - versão 45 ou anterior, utilize a hiperligação de transferência abaixo..</p>
-
-<h2 id="Lightning">Lightning</h2>
-
-<h3 id="Resumo_de_Desenvolvimento">Resumo de Desenvolvimento</h3>
-
-<div class="warning">
-<p>As compilações do Lightning listadas abaixo devem ser consideradas instáveis ​​e estão disponíveis apenas para fins de desenvolvimento e testes.</p>
-</div>
-
-<table class="standard-table" style="height: 182px; width: 1456px;">
- <thead>
- <tr>
- <th>Lightning<br>
- Versão</th>
- <th>Thunderbird<br>
- Versão</th>
- <th>SeaMonkey<br>
- Versão</th>
- <th>
- <p>Plataforma Mozilla<br>
- Versão</p>
- </th>
- <th>Build Name</th>
- <th>Changelog</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td style="white-space: nowrap;">6.8a1</td>
- <td style="white-space: nowrap;"><a href="https://ftp.mozilla.org/pub/mozilla.org/thunderbird/nightly/latest-comm-central/">66.0a1</a><br>
- "Daily"</td>
- <td style="white-space: nowrap;">2.63a1</td>
- <td style="white-space: nowrap;">mozilla66</td>
- <td style="white-space: nowrap;">"nightly"<br>
- (comm-central)</td>
- <td style="white-space: nowrap;"><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.8">changes in 6.8</a></td>
- </tr>
- <tr>
- <td style="white-space: nowrap;">6.7b1</td>
- <td style="white-space: nowrap;"><a href="https://www.mozilla.org/en-US/thunderbird/all-beta.html">65.0b1</a><br>
- "Beta"</td>
- <td style="white-space: nowrap;">2.62b1</td>
- <td style="white-space: nowrap;">mozilla65</td>
- <td style="white-space: nowrap;">"beta"<br>
- (comm-beta)</td>
- <td style="white-space: nowrap;"><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.7">changes in 6.7</a></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Lançamentos_Estáveis">Lançamentos Estáveis</h3>
-
-<p>The Lightning releases listed below are considered stable and are recommend for daily usage. </p>
-
-<p>If you are having trouble and calendar is missing, first see <a href="https://support.mozilla.org/en-US/kb/calendar-updates-issues-thunderbird">calendar update issues</a>, because after Thunderbird 52 Lightning is built-in (bundled with Thunderbird) and you should not need to download the extension. </p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th>Lightning<br>
- Versão</th>
- <th>Thunderbird<br>
- Versão</th>
- <th>SeaMonkey<br>
- Versão</th>
- <th>Plataforma Mozilla<br>
- Versão</th>
- <th>Data de Lançamento</th>
- <th>Registo de Alterações</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>6.7b1 (Beta)</td>
- <td>65.0 (Beta)</td>
- <td>2.62</td>
- <td>mozilla65</td>
- <td> </td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.7">changes in 6.7</a></td>
- </tr>
- <tr>
- <td>6.6b4 (Beta)</td>
- <td>64.0 (Beta)</td>
- <td>2.61</td>
- <td>mozilla64</td>
- <td>December 2, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.6">changes in 6.6</a></td>
- </tr>
- <tr>
- <td>6.5b1 (Beta)</td>
- <td>63.0 (Beta)</td>
- <td>2.60</td>
- <td>mozilla63</td>
- <td>October 11, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.5">changes in 6.5</a></td>
- </tr>
- <tr>
- <td>6.4b1 (Beta)</td>
- <td>62.0 (Beta)</td>
- <td>2.59</td>
- <td>mozilla62</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.4">changes in 6.4</a></td>
- </tr>
- <tr>
- <td>6.3b1 (Beta)</td>
- <td>61.0 (Beta)</td>
- <td>2.58</td>
- <td>mozilla61</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.3">changes in 6.3</a></td>
- </tr>
- <tr>
- <td>6.2.3.3</td>
- <td>60.3.3</td>
- <td>2.57</td>
- <td>mozilla60</td>
- <td>December 5, 2018</td>
- <td> </td>
- </tr>
- <tr>
- <td>6.2.3.2</td>
- <td>60.3.2</td>
- <td>2.57</td>
- <td>mozilla60</td>
- <td>November 30, 2018</td>
- <td> </td>
- </tr>
- <tr>
- <td>6.2.3.1</td>
- <td>60.3.1</td>
- <td>2.57</td>
- <td>mozilla60</td>
- <td>November 15, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.2.3">changes in 6.2.3</a> / <a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.2.3.1">changes in 6.2.3.1</a></td>
- </tr>
- <tr>
- <td>6.2.2.1</td>
- <td>60.2.1</td>
- <td>2.57</td>
- <td>mozilla60</td>
- <td>October 2, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.2.2.1">changes in 6.2.2.1</a></td>
- </tr>
- <tr>
- <td>6.2</td>
- <td>60.0</td>
- <td>2.57</td>
- <td>mozilla60</td>
- <td>August 6, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.2">changes in 6.2</a></td>
- </tr>
- <tr>
- <td>6.1b2 (Beta)</td>
- <td>59.0 (Beta)</td>
- <td>2.56</td>
- <td>mozilla59</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.1">changes in 6.1</a></td>
- </tr>
- <tr>
- <td>6.0b3 (Beta)</td>
- <td>58.0 (Beta)</td>
- <td>2.55</td>
- <td>mozilla58</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=6.0">changes in 6.0</a></td>
- </tr>
- <tr>
- <td>5.9b2 (Beta)</td>
- <td>57.0 (Beta)</td>
- <td>2.54</td>
- <td>mozilla57</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.9">changes in 5.9</a></td>
- </tr>
- <tr>
- <td>5.8b4 (Beta)</td>
- <td>56.0 (Beta)</td>
- <td>2.53</td>
- <td>mozilla56</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.8">changes in 5.8</a></td>
- </tr>
- <tr>
- <td>5.7b2 (Beta)</td>
- <td>55.0 (Beta)</td>
- <td>2.52</td>
- <td>mozilla55</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.7">changes in 5.7</a></td>
- </tr>
- <tr>
- <td>5.6b3 (Beta)</td>
- <td>54.0 (Beta)</td>
- <td>2.51</td>
- <td>mozilla54</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.6">changes in 5.6</a></td>
- </tr>
- <tr>
- <td>5.5b2 (Beta)</td>
- <td>53.0 (Beta)</td>
- <td>2.50</td>
- <td>mozilla53</td>
- <td>October 10, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.5">changes in 5.5</a></td>
- </tr>
- <tr>
- <td>5.4.9.1</td>
- <td>52.9.1</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>July 10, 2018</td>
- <td>---</td>
- </tr>
- <tr>
- <td>5.4.8</td>
- <td>52.8.0</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>May 18, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.8">changes in 5.4.8</a></td>
- </tr>
- <tr>
- <td>5.4.7</td>
- <td>52.7.0</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>March 23, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.7">changes in 5.4.7</a></td>
- </tr>
- <tr>
- <td>5.4.6</td>
- <td>52.6.0</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>January 25, 2018</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.6">changes in 5.4.6</a></td>
- </tr>
- <tr>
- <td>5.4.5.2</td>
- <td>52.5.2</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>December 22, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.5">changes in 5.4.5</a></td>
- </tr>
- <tr>
- <td>5.4.4</td>
- <td>52.4.0</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>October 6, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.4">changes in 5.4.4</a></td>
- </tr>
- <tr>
- <td>5.4.3</td>
- <td>52.3.0</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>August 16, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.3">changes in 5.4.3</a></td>
- </tr>
- <tr>
- <td>5.4.2.1</td>
- <td>52.2.1</td>
- <td>----</td>
- <td>mozilla52</td>
- <td>June 23, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.2">changes in 5.4.2</a> / <a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.2.1">changes in 5.4.2.1</a></td>
- </tr>
- <tr>
- <td>5.4.1.1</td>
- <td>52.1.1</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>May 15, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.1">changes in 5.4.1</a> / <a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.1.1">changes in 5.4.1.1</a></td>
- </tr>
- <tr>
- <td>5.4.0.1</td>
- <td>52.0.1</td>
- <td>---</td>
- <td>mozilla52</td>
- <td>April 14, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4.0.1">changes in 5.4.0.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/5.4">5.4</a></td>
- <td>52.0</td>
- <td>2.49</td>
- <td>mozilla52</td>
- <td>April 4, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.4">changes in 5.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/5.3b2">5.3b2</a> (Beta)</td>
- <td>51.0 (Beta)</td>
- <td>2.48</td>
- <td>mozilla51</td>
- <td>March 19, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.3">changes in 5.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/5.2b1">5.2b1</a> (Beta)</td>
- <td>50.0 (Beta)</td>
- <td>2.47</td>
- <td>mozilla50</td>
- <td>October 16, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.2">changes in 5.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/5.1b1">5.1b1</a> (Beta)</td>
- <td>49.0 (Beta)</td>
- <td>2.46</td>
- <td>mozilla49</td>
- <td>October 16, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.1">changes in 5.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/5.0b1">5.0b1</a> (Beta)</td>
- <td>48.0 (Beta)</td>
- <td>2.45</td>
- <td>mozilla48</td>
- <td>October 16, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=5.0">changes in 5.0</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.9b2">4.9b2</a> (Beta)</td>
- <td>47.0 (Beta)</td>
- <td>2.44</td>
- <td>mozilla47</td>
- <td>July 1, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.9">changes in 4.9</a></td>
- </tr>
- <tr>
- <td>4.8b1 (Beta)</td>
- <td>46.0 (Beta)</td>
- <td>2.43</td>
- <td>mozilla46</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.8">changes in 4.8</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.8">4.7.8</a></td>
- <td>45.8.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>March, 7 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.8">changes in 4.7.8</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.7">4.7.7.1</a></td>
- <td>45.7.1</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>February 7, 2017</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.7">changes in 4.7.7</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.6">4.7.6</a></td>
- <td>45.6.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>December 28, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.6">changes in 4.7.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.5">4.7.5.1</a></td>
- <td>45.5.1</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>November 30, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.5">changes in 4.7.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.4">4.7.4</a></td>
- <td>45.4.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>October 3, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.4">changes in 4.7.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.3">4.7.3</a></td>
- <td>45.3.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>August 30, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.3">changes in 4.7.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.2">4.7.2</a></td>
- <td>45.2.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>June 30, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.2">changes in 4.7.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7.1">4.7.1.1</a></td>
- <td>45.1.1</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>May 31, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7.1.1">changes in 4.7.1.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.7">4.7</a></td>
- <td>45.0</td>
- <td>2.42</td>
- <td>mozilla45</td>
- <td>April 25, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.7">changes in 4.7</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.6b1">4.6b1</a> (Beta)</td>
- <td>44.0 (Beta)</td>
- <td>2.41</td>
- <td>mozilla44</td>
- <td>January 21, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.6">changes in 4.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.5b1">4.5b1</a> (Beta)</td>
- <td>43.0 (Beta)</td>
- <td>2.40</td>
- <td>mozilla43</td>
- <td>January 8, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.5">changes in 4.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.4b2">4.4b2</a> (Beta)</td>
- <td>42.0 (Beta)</td>
- <td>2.39</td>
- <td>mozilla42</td>
- <td>October 14, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.4">changes in 4.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.3b2">4.3b2</a> (Beta)</td>
- <td>41.0 (Beta)</td>
- <td>2.38</td>
- <td>mozilla41</td>
- <td>September 16, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.3">changes in 4.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.2b1">4.2b1</a> (Beta)</td>
- <td>40.0 (Beta)</td>
- <td>2.37</td>
- <td>mozilla40</td>
- <td>July 30, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.2">changes in 4.2</a></td>
- </tr>
- <tr>
- <td>4.1b1 (Beta)</td>
- <td>39.0 (Beta)</td>
- <td>2.36</td>
- <td>mozilla39</td>
- <td>---</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.1">changes in 4.1</a></td>
- </tr>
- <tr>
- <td>4.0.7.2</td>
- <td>38.7.2</td>
- <td>---</td>
- <td>mozilla38</td>
- <td>April 4, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.7">changes in 4.0.7</a> / <a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.7.1">changes in 4.0.7.1</a></td>
- </tr>
- <tr>
- <td>4.0.6</td>
- <td>38.6.0</td>
- <td>---</td>
- <td>mozilla38</td>
- <td>February 16, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.6">changes in 4.0.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.5.2">4.0.5.2</a></td>
- <td>38.5.1</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>January 21, 2016</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.5">changes in 4.0.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.4.1">4.0.4.1</a></td>
- <td>38.4.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>November 30, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.4">changes in 4.0.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.3.1">4.0.3.1</a></td>
- <td>38.3.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>October 8, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;product=Calendar&amp;target_milestone=4.0.3">changes in 4.0.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.2.1">4.0.2.1</a></td>
- <td>38.2.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>September 16, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:4.0.2.1">changes in 4.0.2.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.2">4.0.2</a></td>
- <td>38.2.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>August 14, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:4.0.2">changes in 4.0.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.1.2">4.0.1.2</a></td>
- <td>38.1.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>July 23, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:4.0.1.2">changes in 4.0.1.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.1">4.0.1</a></td>
- <td>38.1.0</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>July 8, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:4.0.1">changes in 4.0.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/4.0.0.1">4.0.0.1</a></td>
- <td>38.0.1</td>
- <td>2.35</td>
- <td>mozilla38</td>
- <td>June 12, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:4.0.0.1">changes in 4.0.0.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.9b1">3.9b1</a> (Beta)</td>
- <td>37.0 (Beta)</td>
- <td>2.34</td>
- <td>mozilla37</td>
- <td>March 14, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.9">changes in 3.9</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.8b2">3.8b2</a> (Beta)</td>
- <td>36.0 (Beta)</td>
- <td>2.33</td>
- <td>mozilla36</td>
- <td>March 12, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.8">changes in 3.8</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.7b1">3.7b1</a> (en-US only)</td>
- <td>---</td>
- <td>2.32</td>
- <td>mozilla35</td>
- <td>January 28, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.7">changes in 3.7</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.6b3">3.6b3</a> (Beta)</td>
- <td>34.0 (Beta)</td>
- <td>2.31</td>
- <td>mozilla34</td>
- <td>December 17, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.6">changes in 3.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.5b1">3.5b1</a> (Beta)</td>
- <td>33.0 (Beta)</td>
- <td>2.30</td>
- <td>mozilla33</td>
- <td>September 23, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.5">changes in 3.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.4b1">3.4b1</a> (Beta)</td>
- <td>32.0 (Beta)</td>
- <td>2.29</td>
- <td>mozilla32</td>
- <td>August 18, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.4">changes in 3.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.3.3">3.3.3</a></td>
- <td>31.0</td>
- <td>2.28</td>
- <td>mozilla31</td>
- <td>January 28, 2015</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.3.3">changes in 3.3.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.3.2">3.3.2</a></td>
- <td>31.0</td>
- <td>2.28</td>
- <td>mozilla31</td>
- <td>December 27, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.3.2">changes in 3.3.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.3.1">3.3.1</a></td>
- <td>31.0</td>
- <td>2.28</td>
- <td>mozilla31</td>
- <td>September 23, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.3.1">changes in 3.3.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.3">3.3</a></td>
- <td>31.0</td>
- <td>2.28</td>
- <td>mozilla31</td>
- <td>July 21, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.3">changes in 3.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.2b1">3.2b1</a></td>
- <td>30.0 (Beta)</td>
- <td>2.27</td>
- <td>mozilla30</td>
- <td>May 9, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.2">changes in 3.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.1b1">3.1b1</a></td>
- <td>29.0 (Beta)</td>
- <td>2.26</td>
- <td>mozilla29</td>
- <td>April 24, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.1">changes in 3.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/3.0b1">3.0b1</a></td>
- <td>28.0 (Beta)</td>
- <td>2.25</td>
- <td>mozilla28</td>
- <td>March 6, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:3.0">changes in 3.0</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.9b1">2.9b1</a></td>
- <td>27.0 (Beta)</td>
- <td>2.24</td>
- <td>mozilla27</td>
- <td>December 19, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.9">changes in 2.9</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.8b1">2.8b1</a></td>
- <td>26.0 (Beta)</td>
- <td>2.23</td>
- <td>mozilla26</td>
- <td>November 15, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.8">changes in 2.8</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.7b1">2.7b1</a></td>
- <td>25.0 (Beta)</td>
- <td>2.22</td>
- <td>mozilla25</td>
- <td>October 17, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.7">changes in 2.7</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.6">2.6.6</a></td>
- <td>24.5.0</td>
- <td>---</td>
- <td>mozilla24.5</td>
- <td>June 19, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.6">changes in 2.6.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.5">2.6.5</a></td>
- <td>24.5.0</td>
- <td>---</td>
- <td>mozilla24.5</td>
- <td>May 13, 2014</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.5">changes in 2.6.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.4">2.6.4</a></td>
- <td>24.2.0</td>
- <td>---</td>
- <td>mozilla24.2</td>
- <td>December 11, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.4">changes in 2.6.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.3">2.6.3</a></td>
- <td>24.1.1</td>
- <td>---</td>
- <td>mozilla24.1.1</td>
- <td>November 19, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.3">changes in 2.6.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.2">2.6.2</a></td>
- <td>24.1.0</td>
- <td>---</td>
- <td>mozilla24.1</td>
- <td>October 29, 2013</td>
- <td>---</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6.1">2.6.1</a></td>
- <td>24.0.1</td>
- <td>---</td>
- <td>mozilla24.0.1</td>
- <td>October 13, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.1">changes in 2.6.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/2.6">2.6</a></td>
- <td>24.0</td>
- <td>2.21</td>
- <td>mozilla24</td>
- <td>September 11, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6">changes in 2.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.5b2" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.5b2">2.5b2</a></td>
- <td>---</td>
- <td>2.20</td>
- <td>mozilla23</td>
- <td>July 8, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.5" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.5">changes in 2.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.4b1" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/#beta-channel">2.4b1</a></td>
- <td>---</td>
- <td>2.19</td>
- <td>mozilla22</td>
- <td>May 24, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.4" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.4">changes in 2.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.3b2" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.3b2">2.3b2</a></td>
- <td>---</td>
- <td>2.18</td>
- <td>mozilla21</td>
- <td>May 8, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.3" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.3">changes in 2.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.2b1" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.2b1">2.2b1</a></td>
- <td>---</td>
- <td>2.17</td>
- <td>mozilla20</td>
- <td>March 6, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.2+-milestone:1.2.2" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.2+-milestone:1.2.2">changes in 2.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.1b1" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.1b1">2.1b1</a></td>
- <td>---</td>
- <td>2.16</td>
- <td>mozilla19</td>
- <td>February 12, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.1+-milestone:1.2.1" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.1+-milestone:1.2.1">changes in 2.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.0b1" title="https://addons.mozilla.org/en-US/thunderbird/addon/lightning/versions/2.0b1">2.0b1</a></td>
- <td>---</td>
- <td>2.15</td>
- <td>mozilla18</td>
- <td>November 29, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.0+-milestone:1.2.0" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.0+-milestone:1.2.0">changes in 2.0</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9.1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9.1">1.9.1</a></td>
- <td>17.0</td>
- <td>2.14</td>
- <td>mozilla17</td>
- <td>March 6, 2013</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.9.1+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.9.1+resolution:FIXED">changes in 1.9.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9">1.9</a></td>
- <td>17.0</td>
- <td>2.14</td>
- <td>mozilla17</td>
- <td>November 20, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.9+-milestone:1.9.1+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.9+-milestone:1.9.1+resolution:FIXED">changes in 1.9</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.8" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.8">1.8</a></td>
- <td>16.0</td>
- <td>2.13</td>
- <td>mozilla16</td>
- <td>October 09, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.8+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.8+resolution:FIXED">changes in 1.8</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.7" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.7">1.7</a></td>
- <td>15.0</td>
- <td>2.12</td>
- <td>mozilla15</td>
- <td>August 28, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.7+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.7+resolution:FIXED">changes in 1.7</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.6" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.6">1.6</a></td>
- <td>14.0</td>
- <td>2.11</td>
- <td>mozilla14</td>
- <td>July 17, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.6+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.6+resolution:FIXED">changes in 1.6</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5.2" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5.2">1.5.2</a></td>
- <td>13.0</td>
- <td>2.10</td>
- <td>mozilla13</td>
- <td>June 21, 2012</td>
- <td>---</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5.1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5.1">1.5.1</a></td>
- <td>13.0</td>
- <td>2.10</td>
- <td>mozilla13</td>
- <td>June 14, 2012</td>
- <td>---</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.5">1.5</a></td>
- <td>13.0</td>
- <td>2.10</td>
- <td>mozilla13</td>
- <td>June 4, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.5+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.5+resolution:FIXED">changes in 1.5</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.4" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.4">1.4</a></td>
- <td>12.0</td>
- <td>2.9</td>
- <td>mozilla12</td>
- <td>April 23, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.4+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.4+resolution:FIXED">changes in 1.4</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.3" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.3">1.3</a></td>
- <td>11.0</td>
- <td>2.8</td>
- <td>mozilla11</td>
- <td>March 13, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.3+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.3+resolution:FIXED">changes in 1.3</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.3" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.3">1.2.3</a></td>
- <td>10.0</td>
- <td>2.7</td>
- <td>mozilla10</td>
- <td>March 9, 2012</td>
- <td>---</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.1">1.2.1</a></td>
- <td>10.0</td>
- <td>2.7</td>
- <td>mozilla10</td>
- <td>February 3, 2012</td>
- <td>---</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2">1.2</a></td>
- <td>10.0</td>
- <td>2.7</td>
- <td>mozilla10</td>
- <td>January 23, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.2+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.2+resolution:FIXED">changes in 1.2</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.1.1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.1.1">1.1.1</a></td>
- <td>9.0</td>
- <td>2.6</td>
- <td>mozilla9</td>
- <td>January 5, 2012</td>
- <td><a href="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.1+resolution:FIXED" title="https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+milestone:1.1+resolution:FIXED">changes in 1.1</a></td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0">1.0</a></td>
- <td>8.0</td>
- <td>2.5</td>
- <td>mozilla8</td>
- <td>November 7, 2011</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b7" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b7">1.0b7</a></td>
- <td>7.0</td>
- <td>2.4</td>
- <td>mozilla7</td>
- <td>September 27, 2011</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b5" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b5">1.0b5</a></td>
- <td>6.0</td>
- <td>2.3</td>
- <td>mozilla6</td>
- <td>July 29, 2011</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b4" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b4">1.0b4</a></td>
- <td>5.0</td>
- <td>2.2</td>
- <td>mozilla5</td>
- <td>June 28, 2011</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b2" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b2">1.0b2</a></td>
- <td>3.1.*</td>
- <td>---</td>
- <td>mozilla-1.9.2</td>
- <td>June 24, 2010</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.0b1">1.0b1</a></td>
- <td>3.0.*</td>
- <td>2.0</td>
- <td>mozilla-1.9.1</td>
- <td>January 12, 2010</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/0.9" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/0.9">0.9</a></td>
- <td>2.0.0.*</td>
- <td>---</td>
- <td>mozilla-1.8.1</td>
- <td>September 23, 2008</td>
- <td> </td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/0.8" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/0.8">0.8</a></td>
- <td>2.0.0.*</td>
- <td>---</td>
- <td>mozilla-1.8.1</td>
- <td>April 4, 2008</td>
- <td> </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Lançamentos_de_ESR_Estáveis">Lançamentos de ESR Estáveis</h3>
-
-<p>Thunderbird 10 and 17 were considered Extended Support Releases (ESR), which Lightning is compatible with. We followed the ESR policy of Thunderbird and only did releases for security fixes. Additionally, some fixes may have been backported for important regressions related to enterprise features like invitations.</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th>Lightning<br>
- Versão</th>
- <th>Thunderbird<br>
- Versão</th>
- <th>SeaMonkey<br>
- Versão</th>
- <th>Plataforma Mozilla<br>
- Versão</th>
- <th>Data de Lançamento</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9.1" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.9">1.9.1</a></td>
- <td>17.0esr</td>
- <td>2.14</td>
- <td>mozilla17</td>
- <td>March 6, 2013</td>
- </tr>
- <tr>
- <td><a href="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.3" title="https://addons.mozilla.org/thunderbird/addon/lightning/versions/1.2.3">1.2.3</a></td>
- <td>10.0esr</td>
- <td>2.7</td>
- <td>mozilla10</td>
- <td>March 9, 2012</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Sunbird">Sunbird</h2>
-
-<p>Por favor, note que o Sunbird foi descontinuado, consulte este blogue para detalhes. Não haverá mais lançamento do Sunbird até novo aviso.</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Sunbird<br>
- Versão</th>
- <th scope="col">Mozilla Platform<br>
- Versão</th>
- <th scope="col">Data de Lançamento</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>1.0b1</td>
- <td>1.9.1</td>
- <td>March 30, 2010</td>
- </tr>
- <tr>
- <td>0.9</td>
- <td>1.8.1</td>
- <td>September 23, 2008</td>
- </tr>
- <tr>
- <td>0.8</td>
- <td>1.8.1</td>
- <td>April 4, 2008</td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/mozilla/calendar/index.html b/files/pt-pt/mozilla/calendar/index.html
deleted file mode 100644
index 17e6540daa..0000000000
--- a/files/pt-pt/mozilla/calendar/index.html
+++ /dev/null
@@ -1,80 +0,0 @@
----
-title: Calendar
-slug: Mozilla/Calendar
-tags:
- - Calendar
- - NeedsTranslation
- - NeedsUpdate
- - TopicStub
-translation_of: Mozilla/Calendar
----
-<table>
- <tbody>
- <tr>
- <td><img src="/@api/deki/files/3621/=Sunbird-Logo-148x155.png" alt="Sunbird-Logo-148x155.png" style="width: 148px; height: 155px;" class="internal default"></td>
- <td>
- <p><span class="seoSummary">The Mozilla Calendar Project is a community driven project based on the Mozilla application architecture. The Project's heart is a calendaring backend based on libical. The <a href="http://www.mozilla.org/projects/calendar/lightning/" class="external" title="http://www.mozilla.org/projects/calendar/lightning/">Lightning extension</a> is built on top of this platform and provides integrated calendaring capabilities for Mozilla Messaging's Email client <a href="/en/Thunderbird" class="internal" title="En/Thunderbird">Thunderbird</a>.</span></p>
- <p>Mozilla Calendar emphasizes free and open source technology and supports standardized technology like the ical/ics (<a href="http://tools.ietf.org/html/rfc2445" class="external" title="http://tools.ietf.org/html/rfc2445">rfc2445</a>) format and the CalDAV (<a href="http://tools.ietf.org/html/rfc4791" class="external" title="http://tools.ietf.org/html/rfc4791">rfc4791</a>) protocol, which is implemented by many freely available servers and also some commercial providers.</p>
- </td>
- </tr>
- </tbody>
-</table>
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td style="vertical-align: top;">
- <h2 id="Development_Topics">Development Topics</h2>
- <dl>
- <dt>
- <a href="/en/Simple_Sunbird_build" class="internal" title="en/Simple Sunbird build">Building Calendar</a></dt>
- <dd>
- Information about building Calendar with the new <a href="/en/comm-central" class="internal" title="en/comm-central">comm-central</a> repository. There is also a simple build page for <a href="/en/Simple_Thunderbird_build#Building_Thunderbird_and_Lightning" class="internal" title="en/Simple Thunderbird build#Building Thunderbird and Lightning">Thunderbird including Lightning</a> and information about <a href="/en/How_comm-central's_build_system_works" class="internal" title="en/How comm-central's build system works">how comm-central works</a>.</dd>
- </dl>
- <dl>
- <dt>
- <a href="https://wiki.mozilla.org/Calendar:Creating_an_Extension" class="link-https" title="https://wiki.mozilla.org/Calendar:Creating_an_Extension">Creating a Calendar extension</a></dt>
- <dd>
- Tutorial on creating a Calendar extension for Sunbird and Lightning.</dd>
- </dl>
- <dl>
- <dt>
- <a href="/en/Calendar/Localization" class="internal" title="En/Calendar/Localization"><strong>Localization</strong></a></dt>
- <dd>
- How to get started with translating Calendar into your language and how to build Lightning in your language. </dd>
- <dt>
- Testing Calendar</dt>
- <dd>
- <a href="/en/Calendar/MozMill_Testing" class="internal" title="En/Calendar/MozMill Testing">CalendarUtils reference</a> for writing <a href="/en/Mozmill_Tests" class="internal" title="en/Mozmill Tests">Mozmill tests</a>, which can automatically test the UI so that regressions can be easily found.</dd>
- <dt>
- <a href="/en/Calendar/Calendar_Versions" title="en/Calendar/Calendar Versions">Calendar Versions</a></dt>
- <dd>
- This page will tell you which Calendar version fits with which Mozilla Platform and where current development is being done.</dd>
- </dl>
- </td>
- <td style="vertical-align: top;">
- <h2 id="Tools">Tools</h2>
- <dl>
- <dt>
- <a href="https://bugzilla.mozilla.org/query.cgi?format=specific&amp;product=Calendar" class="link-https" title="https://bugzilla.mozilla.org/query.cgi?format=specific&amp;product=Calendar">Bugzilla</a></dt>
- <dd>
- The <a href="/en/Bugzilla" class="internal" title="En/Bugzilla">Bugzilla</a> database used to track issues for Mozilla projects.</dd>
- <dd>
-  </dd>
- <dt>
- <a href="http://mxr.mozilla.org/comm-central/" class="external" title="http://mxr.mozilla.org/comm-central/">MXR</a></dt>
- <dd>
- Browse and search the Calendar source code repository on the Web.</dd>
- <dd>
-  </dd>
- <dt>
- <a href="https://wiki.mozilla.org/Calendar:QA_CalDAV_Support" class="link-https" title="https://wiki.mozilla.org/Calendar:QA_CalDAV_Support">Calendar Servers</a></dt>
- <dd>
- Setup your own calendar server, or check to see how well commercial products are supported.</dd>
- <dt>
-  </dt>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-<p> </p>
diff --git a/files/pt-pt/mozilla/criacao_barra_lateral_firefox/index.html b/files/pt-pt/mozilla/criacao_barra_lateral_firefox/index.html
deleted file mode 100644
index 737ebb5925..0000000000
--- a/files/pt-pt/mozilla/criacao_barra_lateral_firefox/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: Criação de uma barra lateral do Firefox
-slug: Mozilla/Criacao_barra_lateral_Firefox
-tags:
- - Extensões
- - Extras
- - Firefox
-translation_of: Mozilla/Creating_a_Firefox_sidebar
----
-<p>Os publicadores da Web podem oferecer aos visitantes uma <strong>barra lateral do Firefox</strong> para encorajar à sua participação. Existem duas maneiras de criar uma barra lateral para os utilizadores do Firefox: a API Social e uma extensão. Pode escolher dependendo das suas necessidades e recursos.</p>
-
-<h2 id="A_API_Social">A API Social</h2>
-
-<div class="geckoVersionNote">
-<p>Este conteúdo abrange as funcionalidades introduzidas no <a href="/en-US/docs/Mozilla/Firefox/Releases/17">Firefox 17</a>.</p>
-</div>
-
-<p>A <a href="/pt-PT/docs/Social_API">API Social</a> é uma nova API da Mozilla que permite aos serviços de redes sociais integrar o seu conteúdo na jabela do navegador. De momento, o <a href="https://blog.mozilla.org/blog/2013/05/14/stay-social-with-firefox/">Cliqz, </a><a href="https://blog.mozilla.org/blog/2012/12/03/firefox-gets-social-w-facebook/">Facebook</a>, <a href="https://blog.mozilla.org/blog/2013/05/14/stay-social-with-firefox/">mixi e a MSN</a> têm uma parceria com a Mozilla, como provedores sociais. Agora que a <a href="https://blog.mozilla.org/futurereleases/2013/06/27/social-api-for-all/">API está disponível para todos os programadores da Web</a>, então vale a pena conferir se está a oferecer um serviço social.</p>
-
-<h2 id="Uma_extensão">Uma extensão</h2>
-
-<p>An <a href="/en-US/docs/Extensions">extension</a> is a kind of <a href="/en-US/docs/Mozilla/Add-ons">add-ons</a> that adds new functionalities to Firefox. There is a wide range of extensions available, and <a href="https://addons.mozilla.org/en-US/firefox/search/?q=sidebar">some of them provide a sidebar</a>. Such kind of sidebar can be a simple Web panel or a full-featured extension that is completely integrated with the browser. There are some ways to create an extension:</p>
-
-<ul>
- <li>The <a href="/en-US/Add-ons/SDK/Low-Level_APIs/ui_sidebar">new sidebar API</a> has been implemented in Firefox 29 as part of the <a href="/en-US/Add-ons/SDK">Add-on SDK</a>. It's the easiest way to create an extension with a sidebar.</li>
- <li>You can also build a <a href="/en-US/Add-ons/Bootstrapped_extensions">restartless extension</a> yourself without the SDK. A <a href="https://github.com/kyoshino/simple-sidebar">sample extension to add a Web panel</a> is available as a starter.</li>
- <li>If you'd like to have a deeper integration with the browser to offer more complex features, a <a href="/en-US/docs/Creating_a_Firefox_sidebar_extension">traditional overlay extension</a> can be an option. The document might be obsolete, though.</li>
-</ul>
-
-<h2 id="A_API_window.sidebar">A API <code>window.sidebar</code></h2>
-
-<p>{{ obsolete_header(23) }}</p>
-
-<p>As of <a href="/en-US/docs/Mozilla/Firefox/Releases/23">Firefox 23</a>, the <code>addPanel</code> and <code>addPersistentPanel</code> functions have been removed from the deprecated, Netscape-derived {{ domxref("window.sidebar") }} object. That means the ability to add a traditional sidebar panel is no longer available from Web content. The new Social API or an extension can be used instead as described above.</p>
-
-<h2 id="Consulte_Também">Consulte Também</h2>
-
-<ul>
- <li>Bootstrap addon demo which adds a sidebar with browser for HTML content: <a href="https://gist.github.com/Noitidart/8728393">https://gist.github.com/Noitidart/8728393</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/criação_de_um_complemento_de_dicionário_de_verificação_ortográfica/index.html b/files/pt-pt/mozilla/criação_de_um_complemento_de_dicionário_de_verificação_ortográfica/index.html
deleted file mode 100644
index 50a536375d..0000000000
--- a/files/pt-pt/mozilla/criação_de_um_complemento_de_dicionário_de_verificação_ortográfica/index.html
+++ /dev/null
@@ -1,95 +0,0 @@
----
-title: Criação de um complemento de dicionário de verificação ortográfica
-slug: Mozilla/Criação_de_um_complemento_de_dicionário_de_verificação_ortográfica
-tags:
- - Complemento
- - add-on
-translation_of: Mozilla/Creating_a_spell_check_dictionary_add-on
----
-<p>Esta página descreve como montar um dicionário de verificação ortográfica Hunspell como um complemento do Firefox, ou como atulizar um complemento existente, e assim, este pode ser instalado, desinstalado e atualizado sem reiniciar.</p>
-
-<h2 id="Partes_necessárias">Partes necessárias</h2>
-
-<p>To create a dictionary add-on, you first need two things:</p>
-
-<ul>
- <li>A spell check dictionary in Hunspell or Myspell format, with a license which allows you to use it. Such a dictionary consists of two files, one with a <code>.dic</code> and one with an <code>.aff</code> file extension.</li>
- <li>A locale code to describe the language of the dictionary. For example <code>en-US</code>, <code>de-DE</code> or <code>da</code>. It is important to choose the right locale code, or the spell checker will not be able to match the language of your dictionary against the language of a web page in order to select the right dictionary to use.</li>
-</ul>
-
-<p>If you are creating a new dictionary, as opposed to updating an existing one, please make sure that there is not already a <a href="https://addons.mozilla.org/en-US/firefox/language-tools/" title="https://addons.mozilla.org/en-US/firefox/language-tools/">dictionary available</a> for your locale. If there already is one, try contacting the author to get it updated, or contact <a href="https://wiki.mozilla.org/AMO:Editors" title="https://wiki.mozilla.org/AMO:Editors">AMO editors</a> if the author does not respond.</p>
-
-<h2 id="Packaging">Packaging</h2>
-
-<p>A Firefox add-on is a ZIP file renamed to use an <code>.xpi</code> file extension instead of the normal <code>.zip</code> file extension. To create a dictionary add-on, simply create a ZIP file which contains the following files and folders:</p>
-
-<p><code>my-dictionary.xpi</code></p>
-
-<ul>
- <li><code>install.rdf</code></li>
- <li><code>dictionaries/</code>
- <ul>
- <li><em>locale-code</em><code>.dic</code></li>
- <li><em>locale-code</em><code>.aff</code></li>
- </ul>
- </li>
-</ul>
-
-<p>The <code>.dic</code> and <code>.aff</code> files must be placed in a subfolder named <code>dictionaries</code> within the ZIP file. Both files must have the locale code as their file name. You also have to add a file named <code>install.rdf</code> to the root of the ZIP file. This file contains information about your add-on such as name and version number (see below). In addition to these required files, you may add optional files, for example to give your add-on an <a href="/en-US/docs/Install_Manifests#iconURL" title="/en-US/docs/Install_Manifests#iconURL">icon</a> or to describe the license of the dictionary.</p>
-
-<p>Here is an example of the <code>install.rdf</code> file. You can create and edit it with a plain text editor such as Notepad.</p>
-
-<p><code>&lt;?xml version="1.0"?&gt;<br>
- &lt;RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"<br>
-      xmlns:em="http://www.mozilla.org/2004/em-rdf#"&gt;<br>
-   &lt;Description about="urn:mozilla:install-manifest"&gt;<br>
-     &lt;em:id&gt;<span style="color: #ff0000;"><strong><em>locale-code</em></strong></span>@dictionaries.addons.mozilla.org&lt;/em:id&gt;<br>
-     &lt;em:version&gt;<em><strong><span style="color: #ff0000;">version number</span></strong></em>&lt;/em:version&gt;<br>
-     &lt;em:type&gt;64&lt;/em:type&gt;<br>
-     &lt;em:unpack&gt;true&lt;/em:unpack&gt;<br>
-     &lt;em:name&gt;<span style="color: #ff0000;"><em><strong>Name</strong></em></span>&lt;/em:name&gt;<br>
-     <em><strong>&lt;!--<br>
-       Other <a href="/en-US/docs/Install_Manifests" title="/en-US/docs/Install_Manifests">install.rdf metadata</a> such as em:localized, em:description, em:creator,<br>
-       em:developer, em:translator, em:contributor or em:homepageURL<br>
-     --&gt;</strong></em><br>
- <br>
-     &lt;!-- Firefox --&gt;<br>
-     &lt;em:targetApplication&gt;<br>
-       &lt;Description&gt;<br>
-         &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;<br>
-         &lt;em:minVersion&gt;18.0a1&lt;/em:minVersion&gt;<br>
-         &lt;em:maxVersion&gt;46.0&lt;/em:maxVersion&gt;<br>
-       &lt;/Description&gt;<br>
-     &lt;/em:targetApplication&gt;<br>
- <br>
-     &lt;!-- Thunderbird --&gt;<br>
-     &lt;em:targetApplication&gt;<br>
-       &lt;Description&gt;<br>
-         &lt;em:id&gt;{3550f703-e582-4d05-9a08-453d09bdfdc6}&lt;/em:id&gt;<br>
-         &lt;em:minVersion&gt;18.0a1&lt;/em:minVersion&gt;<br>
-         &lt;em:maxVersion&gt;22.0&lt;/em:maxVersion&gt;<br>
-       &lt;/Description&gt;<br>
-     &lt;/em:targetApplication&gt;<br>
- <br>
-     &lt;!-- SeaMonkey --&gt;<br>
-     &lt;em:targetApplication&gt;<br>
-       &lt;Description&gt;<br>
-         &lt;em:id&gt;{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}&lt;/em:id&gt;<br>
-         &lt;em:minVersion&gt;2.15a1&lt;/em:minVersion&gt;<br>
-         &lt;em:maxVersion&gt;2.49&lt;/em:maxVersion&gt;<br>
-       &lt;/Description&gt;<br>
-     &lt;/em:targetApplication&gt;<br>
-   &lt;/Description&gt;<br>
- &lt;/RDF&gt;</code></p>
-
-<p>There are some rules about how you should adapt the <code>install.rdf</code> file:</p>
-
-<ul>
- <li>If you are creating a new dictionary add-on, we recommend that the <code>em:id</code> consists of your locale code followed by <code>@dictionaries.addons.mozilla.org</code>, but if there is more than one dictionary for your language (for example the German "old spelling" versus "new spelling" dictionaries), you may need to choose another ID, that follows the <a href="/en-US/docs/Install_Manifests#id" title="/en-US/docs/Install_Manifests#id">rules of em:id</a>. If you update an existing dictionary add-on, you must keep the existing <code>em:id</code>, or your users will not be updated to the latest version.</li>
- <li>The <code>em:version</code> should follow the <a href="/en-US/docs/Toolkit_version_format" title="/en-US/docs/Toolkit_version_format">rules of Mozilla add-on version numbers</a>, and if you update an existing dictionary add-on, the new version number must be greater than the old one.</li>
- <li>Don't change <code>em:type</code> or <code>em:unpack</code>, and don't add a <code>em:bootstrap</code> element. Type = 64 indicates that the add-on is in the restartless format, and unpack is required for Hunspell to read the dictionary.</li>
- <li>Although the restartless format for dictionary add-ons were introduced in Gecko 10, dictionary updates only works starting from Gecko 18. The <code>em:minVersion</code> should therefore be the same as in the example above (or greater). If you set <code>em:minVersion</code> to a lower value, Gecko 10-17 will not be able to update your dictionary add-on once the restartless dictionary is installed (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=782118">bug 782118</a>), and Gecko 10-16 may warn the user that your dictionary is not compatible, when users try to update to a newer version of Firefox/Thunderbird (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=782115" title="https://bugzilla.mozilla.org/show_bug.cgi?id=782115">bug 782115</a>).</li>
- <li>Update the <code>em:maxVersion</code> to the <a href="https://addons.mozilla.org/en-us/firefox/pages/appversions/" title="https://addons.mozilla.org/en-us/firefox/pages/appversions/">greatest versions available</a>.</li>
-</ul>
-
-<p>Once you have added these files to your ZIP file and renamed the file to have the <code>.xpi</code> extension, you can install your add-on in Firefox and test it. After a successful test, you can upload your add-on to <a href="https://addons.mozilla.org/" title="https://addons.mozilla.org/">addons.mozilla.org</a> and ask for it to be included in the <a href="https://addons.mozilla.org/en-US/firefox/language-tools/" title="https://addons.mozilla.org/en-US/firefox/language-tools/">Dictionaries &amp; Language Packs</a> page.</p>
diff --git a/files/pt-pt/mozilla/firefox/edição_programador/index.html b/files/pt-pt/mozilla/firefox/edição_programador/index.html
deleted file mode 100644
index 3f3e7d3c90..0000000000
--- a/files/pt-pt/mozilla/firefox/edição_programador/index.html
+++ /dev/null
@@ -1,36 +0,0 @@
----
-title: Edição do Programador
-slug: Mozilla/Firefox/Edição_Programador
-tags:
- - Beta
- - Bugs
- - Developer Edition
- - Edição de Desenvolvimento
- - Edição do Programador
- - Erros
- - Latest
- - Mais Recentes
-translation_of: Mozilla/Firefox/Developer_Edition
----
-<div>{{FirefoxSidebar}}</div>
-
-<p>A 'Edição do Programador' do Firefox é uma versão do Firefox que está preparada para os programadores da Web. Esta inclui:</p>
-
-<ul>
- <li><strong>as funcionalidades mais recentes do Firefox</strong>: a Edição de Desenvolvimento do Firefox substitui o canal antigo Aurora.
-
- <ul>
- <li>Cada nova versão inclui funcionalidades que foram estabilizadas por meio das compilações noturnas</li>
- <li>As novas funcionalidades entram no canal do Firefox Beta seis semanas antes de serem lançadas</li>
- <li>As novas funcionalidades são estáveis durente 12 semanas antes de aparecerem na versão lançada do Firefox</li>
- </ul>
- </li>
- <li><strong>um perfil do programador separado</strong>: isto significa que pode executar facilmente a 'Edição de Desenvolvimento' com a sua versão Beta ou de lançamento do Firefox.</li>
- <li><strong>ferramentas de desenvolvimento experimentais</strong>: nós iremos incluir as ferramentas experimentais que ainda não são prontas para produção. Por exemplo, a 'Edição de Desenvolvimento' inclui o <a href="/en-US/docs/Tools/Firefox_Tools_Adapter">Adaptador de Ferramentas do Firefox</a> (descontinuado), que permite-lhe ligar às <a href="/pt-PT/docs/Tools">Ferramentas de desenvolvimento do Firefox</a> para outros navegadores, tais como Safari no iOS e Chrome no Android.</li>
- <li><strong>preferências adaptadas para os programadores da Web</strong>: nós definimos valores de preferência predefinidos personalizados para os programadores da Web. Por exemplo, chrome e a depuração remota estão ativados por predefinição na 'Edição de Desenvolvimento'.</li>
- <li><strong>um tema distinto</strong>: isto inclui o acesso mais rápido às ferramentas de programador.</li>
-</ul>
-
-<p><a href="/pt-PT/docs/Mozilla/Firefox/Releases" style="margin: 0 40px 20px 40px; padding: 10px; text-align: center; border-radius: 4px; display: inline-block; 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;">Novidades na Edição do Programador?</a></p>
-
-<p><a href="https://www.mozilla.org/pt-PT/firefox/developer/" style="float: right; margin: 0 30px 20px 30px; padding: 10px; text-align: center; border-radius: 4px; display: inline-block; 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;">Transferir a Edição do Programador</a></p>
diff --git a/files/pt-pt/mozilla/firefox/multiple_profiles/index.html b/files/pt-pt/mozilla/firefox/multiple_profiles/index.html
deleted file mode 100644
index b7935947d7..0000000000
--- a/files/pt-pt/mozilla/firefox/multiple_profiles/index.html
+++ /dev/null
@@ -1,244 +0,0 @@
----
-title: Múltiplos perfis do Firefox
-slug: Mozilla/Firefox/Multiple_profiles
-tags:
- - Firefox
- - Guía
- - Perfis
- - Perguntas e Respostas
- - Principiante
-translation_of: Mozilla/Firefox/Multiple_profiles
----
-<div>{{FirefoxSidebar}}</div>
-
-<p class="summary">Um perfil no Firefox é a coleção de definições. personalizações, extras, e outras personalizações que um utilizador criou ou instalou na sua cópia do Firefox. Pode encontrar mais <a href="https://support.mozilla.org/pt-PT/kb/perfis-onde-firefox-armazena-os-seus-marcadores">detalhes sobre os perfis</a> no site de apoio do utilizador final da Mozilla.</p>
-
-<h2 id="Razões_para_ter_múltiplos_profiles">Razões para ter múltiplos profiles</h2>
-
-<p>The casual user may want to have different profiles for different family members. Having different profiles would allow each person to have his or her own set of bookmarks, settings, and add-ons.</p>
-
-<p>Web developers might want a secondary profile for testing websites, apps, or other projects on different Firefox channels. For example, you might want to have some extensions installed for Web development, but not for general-purpose Web browsing. While using the Nightly channel, you may encounter some add-ons that have become temporarily incompatible with new API changes, until the add-on developer has a chance to update them. You can remove such add-ons from your profile for Nightly use while keeping them for use with other profiles.</p>
-
-<p>For QA, testing, and bug triaging contributors, you may want to have multiple development versions of Firefox installed, each with its own profile. Creating new profiles for testing can keep you from losing your preferences, bookmarks, and history. It takes little time to set up a new profile, and once it is complete, all of your Firefox versions will update separately and can be run simultaneously.</p>
-
-<h2 id="Canais_de_desenvolvimento_do_navegador_disponíveis">Canais de desenvolvimento do navegador disponíveis</h2>
-
-<p>There are four available browser channels, each at a different level of stability and development. The four channels are <a class="link-https" href="https://www.mozilla.org/firefox/new/" title="Firefox Stable">Release</a>, <a class="link-https" href="https://www.mozilla.org/firefox/beta/" title="Firefox Beta">Beta</a>, <a href="https://www.mozilla.org/firefox/aurora/">Developer Edition</a>, and <a class="external" href="https://nightly.mozilla.org/" title="Firefox Nightly">Nightly</a>. The Release channel is recommended for most users, as it is the "official release" channel. However, for those more adventurous, you can try one of the other three channels to see what is coming in Firefox and play around with emerging features. The Beta channel contains the features that are expected to be in the next release of Firefox and are in final stages of testing. Aurora contains experimental features, which are not yet at beta quality. Nightly contains the latest code from Firefox developers and is the least stable channel.</p>
-
-<h2 id="Ferramentas_de_terceiros">Ferramentas de terceiros</h2>
-
-<p>In addition to the built-in Profile Manager and the external Profile Manager, there are a few third-party tools that make working with multiple profiles easy.</p>
-
-<div class="note">
-<p>This list is by no means exhaustive. Please add any helpful tools you discover to the list!</p>
-</div>
-
-<h3 id="Mac_OS_X">Mac OS X</h3>
-
-<ul>
- <li><a href="http://davemartorana.com/multifirefox/">Multifirefox</a> by Dave Martorana</li>
-</ul>
-
-<h2 id="Gestão_de_perfis">Gestão de perfis</h2>
-
-<h3 id="Determining_the_profile_while_Firefox_is_running">Determining the profile while Firefox is running</h3>
-
-<p>To determine the profile of a currently-running Firefox instance in Windows, macOS or Linux,</p>
-
-<ol>
- <li>Type about:profiles into the browser URL search bar.</li>
- <li>The page presents a list of all of your profiles, each beginning with "Profile: " followed by its name.</li>
- <li>The one being run by this Firefox instance will include the bold text "<strong>This is the profile in use</strong>" For example, if you find that text beneath the entry for "Profile: Suzie", then you are running in a profile named <em>Suzie</em>.</li>
-</ol>
-
-<h3 id="Launching_Firefox_into_a_Desired_Profile">Launching Firefox into a Desired Profile</h3>
-
-<p id="You_cannot_change_the_profile_while_Firefox_is_running._Although_it_is_possible_in_some_cases_to_have_multiple_instances_of_Firefox_running_in_different_profiles_to_avoid_confusion_you_should_first_exitquitterminate_all_running_instances_of_Firefox_FirefoxDeveloperEdition_or_Nightly._Then_follow_the_instructions_below_applicable_to_your_operating_system."><strong>You cannot change the profile while Firefox is running.</strong>  Although it is possible in some cases to have multiple instances of Firefox running in different profiles, to avoid confusion, you should first exit/quit/terminate all running instances of <em>Firefox</em>, <em>FirefoxDeveloperEdition</em> or <em>Nightly</em>.  Then follow the instructions below, applicable to your operating system.</p>
-
-<h4 id="Windows">Windows</h4>
-
-<h5 id="Windows_XP">Windows XP</h5>
-
-<ol>
- <li>Click the Start button.</li>
- <li>Click "Run".</li>
- <li>
- <p>Type <code>firefox --ProfileManager</code>.</p>
- </li>
-</ol>
-
-<h5 id="Windows_Vista7">Windows Vista/7</h5>
-
-<ol>
- <li>Click the Start button.</li>
- <li>Click the search bar at the bottom.</li>
- <li>
- <p>Type <code>firefox --ProfileManager</code>.</p>
- </li>
-</ol>
-
-<h5 id="Windows_88.1">Windows 8/8.1</h5>
-
-<ol>
- <li>Press "Windows + R" on your keyboard.</li>
- <li>Type <code>firefox --ProfileManager</code>.</li>
-</ol>
-
-<p>If the Profile Manager window does not open, Firefox may have been running in the background, even though it was not visible. Close all instances of Firefox, or restart the computer, and then try again.</p>
-
-<h4 id="Linux">Linux</h4>
-
-<p>If Firefox is already included in your Linux distribution, or if you have installed Firefox with the package manager of your Linux distribution:</p>
-
-<ol>
- <li>At the top of the Firefox window, click on the File menu and select Quit.</li>
- <li>In Terminal run <code>firefox --ProfileManager</code></li>
-</ol>
-
-<p>If the Profile Manager window does not open, Firefox may have been running in the background, even though it was not visible. Close all instances of Firefox, or restart the computer and then try again.</p>
-
-<h4 id="macOS">macOS</h4>
-
-<ol>
- <li>Run the <em>Terminal</em> application, which is found in Applications/Utilities.</li>
- <li>Type or paste in the path to Firefox, followed by <code>.app/Contents/MacOS/firefox</code>.  For example, if Firefox is installed in the recommended location, you would enter <code>/Applications/Firefox.app/Contents/MacOS/firefox</code>.</li>
- <li>If you have the path to your desired profile handy, enter a space character, followed by <code>-profile</code> followed by another space character, followed by the full path to the profile folder you wish to launch into.  This will launch Firefox immediately.  Otherwise, enter a space character followed by <code>--profilemanager</code>.  This will present the Profile Manager window in which you can make your selection.</li>
- <li>Hit <em>return.</em></li>
-</ol>
-
-<p>Here is a complete example Terminal command from steps 2-3:</p>
-
-<pre>/Applications/Firefox.app/Contents/macOS/firefox -profile /Users/Suzie/Library/Application\ Support/Firefox/Profiles/r99d1z7c.default</pre>
-
-<p>If you want to do this frequently and more easily, you may wish to create an <em>Automator</em> application, as explained in <a href="http://sonnygill.net/mac/mac-multiple-firefox-profiles/">this tutorial</a>.</p>
-
-<h3 id="Criar_um_perfil">Criar um perfil</h3>
-
-<h4 id="Creating_a_profile_through_the_Profile_Manager">Creating a profile through the Profile Manager</h4>
-
-<p>These instructions should be the same for all operating systems.</p>
-
-<ol>
- <li>To start the Create Profile Wizard, click "Create Profile..." in the Profile Manager.</li>
- <li>Click Next and enter the name of the profile. Use a profile name that is descriptive, such as your personal name. This name is not exposed to the Internet.</li>
- <li>You can also choose where to store the profile on your computer. To select storage location, click Choose Folder....</li>
- <li>If you choose your folder location for the profile, select a new or empty folder. If you choose a folder that isn't empty, and you later remove the profile and choose the \"Delete Files\" option, everything inside that folder will be deleted.</li>
- <li>To create the new profile, click Finish.</li>
-</ol>
-
-<h4 id="Creating_a_profile_through_the_Firefox_browser">Creating a profile through the Firefox browser</h4>
-
-<p>You can create a new Firefox profile directly from the browser.</p>
-
-<ol>
- <li>Type about:profiles into the browser URL search bar</li>
- <li>On the page, click Create a New Profile button</li>
- <li>Read the introduction, and click Next</li>
- <li>Enter a profile name for your new Profile. Use a profile name that is descriptive, such as your personal name. This name is not exposed to the Internet.</li>
- <li>Optionally, to change where the profile will be stored on your computer, click Choose Folder...</li>
- <li>To create the new profile, click Finish.</li>
-</ol>
-
-<h3 id="Eliminar_um_perfil">Eliminar um perfil</h3>
-
-<ol>
- <li>In the Profile Manager, select the profile to remove, and click Delete Profile....</li>
- <li>Confirm that you wish to delete the profile:
- <ul>
- <li>Don't Delete Files removes the profile from the Profile Manager yet retains the profile data files on your computer in the storage folder so that your information is not lost. "Don't Delete Files" is the preferred option, because it saves the old profile's folder, allowing you to recover the files to a new profile.</li>
- <li>Delete Files removes the profile and its files, including the profile bookmarks, settings, passwords, etc.<br>
- <br>
- {{ warning("If you use the \"Delete Files\" option, the profile folder, and files will be deleted. This action cannot be undone.") }}</li>
- <li>Cancel interrupts the profile deletion.</li>
- </ul>
- </li>
-</ol>
-
-<h3 id="Renomear_um_perfil">Renomear um perfil</h3>
-
-<ol>
- <li>In the Profile Manager, select the profile you want to rename, and then click "Rename Profile".</li>
- <li>Enter a new name for the profile and click on OK.</li>
-</ol>
-
-<div class="note">
-<p>Nota: The folder containing the files for the profile is not renamed.</p>
-</div>
-
-<h2 id="Opções">Opções</h2>
-
-<h3 id="Trabalhar_off-line">Trabalhar off-line</h3>
-
-<p>Choosing this option loads the selected profile, and starts Firefox offline. You can view previously viewed web pages, and experiment with your profile.</p>
-
-<h3 id="Não_perguntar_no_arranque">Não perguntar no arranque</h3>
-
-<p>If you have multiple profiles, Firefox prompts you for the profile to use each time you start Firefox. Select this option to allow Firefox to load the selected profile, without prompting at startup.</p>
-
-<div class="note">
-<p>Nota: To access other profiles after selecting this option, you must start the Profile Manager first.</p>
-</div>
-
-<h2 id="Utilizar_os_perfis">Utilizar os perfis</h2>
-
-<h3 id="Windows_2">Windows</h3>
-
-<p>If you want to have the profile manager to pop up each time you start Firefox, so you can choose a profile, you will need to edit the "Target" of the launch icon. To do this:</p>
-
-<ol>
- <li>Right-click the icon and choose "Properties".</li>
- <li>When the properties dialog box pops up, you should see a "Target" text field that you can edit, and it should show the current file path.</li>
- <li>After the closing quote, add <code>-ProfileManager</code>.</li>
- <li>Click Ok.</li>
-</ol>
-
-<p>Now whenever you double click that icon, the profile manager should appear, allowing you to choose which profile you'd like to use.</p>
-
-<p>If you want individual icons to launch specific profiles, you will need to edit the "Target" of each icon. To do this:</p>
-
-<ol>
- <li>Right-click the icon and choose "Properties".</li>
- <li>When the properties dialog box pops up, you should see a "Target" text field that you can edit, and it should show the current file path.</li>
- <li>To permanently set a specific profile, add <code>-p PROFILE_NAME</code> to the target path, but outside of the quotes, replacing "PROFILE_NAME" with the actual profile name you chose.</li>
- <li>If you would also like to allow multiple instances of Firefox to run at the same time, add <code>-no-remote</code> after the profile name.</li>
-</ol>
-
-<p>Once you are all done, click Ok. Do this for each icon you'd like to have a specific profile for. Once done, each one should automatically start with the specified profile<code>.</code></p>
-
-<h3 id="Linux_2">Linux</h3>
-
-<p>There is no extremely straightforward way to create custom application launchers in Gnome 3 like there was in Gnome 2. The following tutorial will help get you going overall: <a class="external" href="https://blog.randell.ph/how-to-create-custom-application-launchers-in-gnome-3/" title="How to create custom application launchers in gnome 3">Gnome 3 Custom application launcher</a>. Once you get to the point of adding a new item, you can have the profile dialog show up every time or set the launcher to launch a specific profile.</p>
-
-<p>If you want to have the profile manager to pop up each time you start Firefox, so you can choose a profile, you will need to set the command line for your new launcher.</p>
-
-<ol>
- <li>Set the "command" text field to target the executable file, likely "/usr/bin/firefox", and add the <code>-p</code> parameter.</li>
-</ol>
-
-<p>If you want individual icons to launch specific profiles, you will need to set the command line for your new launcher. To do this:</p>
-
-<ol>
- <li>Set the "command" text field to target the executable file, likely "/usr/bin/firefox", and add the <code>-p PROFILE_NAME</code> parameter, replacing "PROFILE_NAME" with the specific profile.</li>
- <li>Repeat as necessary, for each additional profile you want to set.</li>
- <li>If you would also like to allow multiple instances of Firefox to run at the same time, add "-no-remote" after the profile name.</li>
-</ol>
-
-<h3 id="Mac_OS_X_2">Mac OS X</h3>
-
-<p>You can find a useful tutorial to set up custom launchers here: <a href="https://spf13.com/post/managing-multiple-firefox-profiles-in-os-x/" title="Managing Multiple Firefox Profiles in OSX">Managing Multiple Firefox Profiles in OSX</a>. Do note it's best to follow all steps in the "Creating the scripts" section, including the "edit Info.plist" step. Leave off the profile name if you want the profile selector to show up every time you launch.</p>
-
-<h2 id="Configurar_vários_perfis_para_diferentes_canais_do_Firefox">Configurar vários perfis para diferentes canais do Firefox</h2>
-
-<p>This section will be especially helpful if you are a developer, wanting to work with multiple channels, and each having their separate launcher.</p>
-
-<h3 id="Windows_3">Windows</h3>
-
-<p>In Windows, the Developer and Nightly builds get their own directory in the "Programs" folder, so you don't have to worry about where to store the downloaded files. However, all three will attempt to use the same profile by default. You won't want to keep this behavior, because the different channels have different levels of features. To set each launcher, follow the Windows instructions at <a href="#Windows">Windows Launcher</a>.</p>
-
-<h3 id="Linux_3">Linux</h3>
-
-<p>In Linux, things aren't as automatically set up. You will likely get a prompt to download a tar.bz2 file to extract from. Extract the files to a new directory, and use the new launcher instructions from <a href="#Linux">here</a>. The only change you will need to make is the command path. You will want to set it to the directory where you extracted the Firefox channel's tar.bz2 file, and the executable "firefox" file located within this directory. The remaining profile assignment methods will remain the same. You will want to, for sure, add the <code>-no-remote</code> part to the end of the command field, so that you could run multiple instances at the same time.</p>
-
-<h3 id="Mac_OS_X_3">Mac OS X</h3>
-
-<p>You can find a useful tutorial to set up custom launchers here: <a href="https://spf13.com/post/managing-multiple-firefox-profiles-in-os-x/" title="Managing Multiple Firefox Profiles in OSX">Managing Multiple Firefox Profiles in OSX</a>. Do note it's best to follow all steps in the "Creating the scripts" section, including the "edit Info.plist" step. Also, you'll want to change the path in the do shell script to point to the correct .app file for the Firefox channel you want to target.</p>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/cross_process_object_wrappers/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/cross_process_object_wrappers/index.html
deleted file mode 100644
index d6efcd07ea..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/cross_process_object_wrappers/index.html
+++ /dev/null
@@ -1,157 +0,0 @@
----
-title: Cross Process Object Wrappers
-slug: Mozilla/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers
----
-<div>{{FirefoxSidebar}}</div><div class="summary">
-<p>Este documento descreve <em>Cross Process Object Wrappers</em> (CPOWs), que permite ao código de <em>chrome </em>aceder sincronamente ao conteúdo no 'Multiprocessos do Firefox'.</p>
-</div>
-
-<div class="warning">
-<p>Note that from Firefox 47 onwards, <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers#Safe_and_unsafe_CPOWs">unsafe CPOW usage</a> is no longer permitted in browser code. If browser code tries an unsafe CPOW operation, the browser will throw an exception and you'll see an "unsafe CPOW usage forbidden” error in the <a href="/en-US/docs/Tools/Browser_Console">Browser Console</a>.</p>
-
-<p>Add-on code is still allowed to use CPOWs "unsafely". However, if an add-on passes a CPOW into a platform API, and that platform API then attempts an unsafe operation on it, this will throw an exception. So as a general rule, add-ons should avoid passing CPOWs into non-addon code.</p>
-</div>
-
-<p>In multiprocess Firefox, chrome code runs in a different process from web content. So chrome code can't directly interact with web content: instead, it must factor out the code that interacts with web content into separate scripts that are called frame scripts.</p>
-
-<p>Chrome code can load frame scripts into the content process using the message manager, and can then communicate with them using a message-passing API. To learn more about this, see the documentation on using the <a href="/en-US/docs/The_message_manager">message manager</a>.</p>
-
-<p><strong>Chrome to content messaging must be asynchronous</strong>. This is because the chrome process runs the Firefox UI, so if it were blocked by the content process, then a slow content process could cause Firefox to become unresponsive to users.<br>
- <br>
- Converting synchronous code to be asynchronous can be difficult and time-consuming. As a migration aid, the messaging framework enables frame scripts to make content objects available to chrome through a wrapper called a Cross Process Object Wrapper, also known as a CPOW. However, although CPOWs are convenient, they have <a href="/en-US/docs/Cross_Process_Object_Wrappers#Limitations_of_CPOWs">serious limitations and can cause responsiveness problems</a>, so should only be used when necessary and only as a migration aid.</p>
-
-<h2 id="Passagem_de_CPOWs_de_frame_scripts">Passagem de CPOWs de <em>frame scripts</em></h2>
-
-<p>Frame scripts can send messages to chrome using one of two global functions: <a href="/en-US/docs/The_message_manager#Content_to_chrome"><code>sendAsyncMessage()</code> or <code>sendSyncMessage()</code></a>. The optional third parameter to each of these functions is an object whose properties are objects to wrap. For example, this frame script sends a DOM node to chrome when the user clicks it, as the <code>clicked</code> property of the third argument:</p>
-
-<pre class="brush: js">// frame script
-addEventListener("click", function (event) {
- sendAsyncMessage("my-e10s-extension-message", {}, { clicked : event.target });
-}, false);</pre>
-
-<p>In the chrome script, the DOM node is now accessible through a Cross Process Object Wrapper, as a property of the <code>objects</code> property of the message. The chrome script can get and set the wrapped object's properties and call its functions:</p>
-
-<pre class="brush: js">// chrome script
-windowMM.addMessageListener("my-e10s-extension-message", handleMessage);
-
-function handleMessage(message) {
- let wrapper = message.objects.clicked;
- console.log(wrapper.innerHTML);
- wrapper.innerHTML = "&lt;h2&gt;Modified by chrome!&lt;/h2&gt;"
- wrapper.setAttribute("align", "center");
-}</pre>
-
-<h2 id="CPOWs_gerados_automaticamente">CPOWs gerados automaticamente</h2>
-
-<p>Add-ons that have not declared themselves multiprocess compatible are set up with a number of <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#Compatibility_shims">compatibility shims</a>. One of these shims provides the following behavior: whenever chrome code tries to access content directly (for example, through <a href="/en/docs/Working_with_windows_in_chrome_code#The_content_shortcut"><code>window.content</code></a> or <a href="/en-US/docs/Mozilla/Tech/XUL/browser#p-contentDocument"><code>browser.contentDocument</code></a>), it is given back a CPOW that wraps the content object. This means that examples like this will actually work, even in multiprocess Firefox:</p>
-
-<pre class="brush: js">gBrowser.selectedBrowser.contentDocument.body.innerHTML = "replaced by chrome code";</pre>
-
-<p>It's still important to keep in mind, though, that this is access through a CPOW and not direct access to content.</p>
-
-<h2 id="CPOWs_bidirecionais">CPOWs bidirecionais</h2>
-
-<p>A common pattern is for chrome code to access content objects and add event listeners to them. To deal with this, CPOWs are bidirectional. This means that if content passes a CPOW to the chrome process, the chrome process can synchronously pass objects (such as event listener functions) into functions defined in the CPOW.</p>
-
-<p>This means you can write code like this:</p>
-
-<pre class="brush: js">// frame script
-
-/*
-On mouseover, send the button to the chrome script as a CPOW.
-*/
-
-var button = content.document.getElementById("click-me");
-
-button.addEventListener("mouseover", function (event) {
- sendAsyncMessage("my-addon-message", {}, { element : event.target });
-}, false);</pre>
-
-<pre class="brush: js">// chrome script
-
-/*
-Load the frame script, then listen for the message.
-When we get the message, extract the CPOW and add
-a function as a listener to the button's "click" event.
-*/
-
- browserMM.loadFrameScript("chrome://my-addon/content/frame-script.js", false);
- browserMM.addMessageListener("my-addon-message", function(message) {
- let wrapper = message.objects.element;
- wrapper.addEventListener("click", function() {
- console.log("they clicked");
- });
- });
-</pre>
-
-<h2 id="Mapear_conteúdo_de_documentos_para_navegadores_XUL">Mapear conteúdo de documentos para navegadores XUL</h2>
-
-<p>A common pattern is to get the XUL <a href="/en-US/docs/XUL/browser"><code>&lt;browser&gt;</code></a> that corresponds to a content document. To enable this, <code>gBrowser.getBrowserForDocument</code> and <code>gBrowser.getBrowserForContentWindow</code> can be passed a CPOW for the content document and content window, respectively, and return the XUL  <code>&lt;browser&gt; </code>that these documents / windows belong to. Both return <code>null</code> if no such browser can be found.</p>
-
-<h2 id="Limitações_de_CPOWs">Limitações de CPOWs</h2>
-
-<p>Although CPOWs can be convenient they have several major limitations, which are listed below.</p>
-
-<h3 id="CPOWs_e_APIs_de_plataforma">CPOWs e APIs de plataforma</h3>
-
-<p>You can't pass CPOWs into platform APIs that expect to receive DOM objects. For example, you can't pass a CPOW into <a href="http://dxr.mozilla.org/mozilla-central/source/dom/interfaces/base/nsIFocusManager.idl"><code>nsIFocusManager.setFocus()</code></a>.</p>
-
-<p>Also, from Firefox 47 onwards, browser code can no longer perform <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers#Safe_and_unsafe_CPOWs">unsafe CPOW operations</a>. This means that as an add-on developer, you should not pass CPOWs into browser APIs.</p>
-
-<h3 id="Reação_de_Chrome">Reação de <em>Chrome</em></h3>
-
-<p>The lack of a synchronous API on the chrome side is intentional: because the chrome process runs the Firefox UI, any responsiveness problems affect the whole browser. By making the chrome process block on the content process, CPOWs break this principle and allow unresponsive content process to make the whole browser unresponsive.</p>
-
-<p>Consulte em baixo <strong>CPOWs seguros e inseguros</strong> para mais sobre isto.</p>
-
-<h3 id="Desempenho">Desempenho</h3>
-
-<p>Although the wrapper looks just like an object completely contained in the chrome script scope, it's really just a reference to an object in the content process. When you access a property of the wrapper, it sends a synchronous message to the content process and returns the result. This means it is many times slower to use than an object.</p>
-
-<h3 id="Ordenação_de_mensagem">Ordenação de mensagem</h3>
-
-<p>CPOWs can violate assumptions you might make about message ordering. Consider this code:</p>
-
-<pre class="brush: js">mm.addMessageListener("GotLoadEvent", function (msg) {
- mm.sendAsyncMessage("ChangeDocumentURI", {newURI: "hello.com"});
- let uri = msg.objects.document.documentURI;
- dump("Received load event: " + uri + "\n");
-});
-</pre>
-
-<p>This sends a message asking the frame script to change the current document URI, then accesses the current document URI via a CPOW. You might expect the value of <code>uri</code> to come back as "hello.com". But it might not: in order to avoid deadlocks, CPOW messages can bypass normal messages and be processed first. It’s possible that the request for the documentURI property will be processed before the "ChangeDocumentURI" message, in which case <code>uri</code> will have its previous value.<br>
- <br>
- For this reason, it’s best not to mix CPOWs with normal message manager messages. It’s also a bad idea to use CPOWs for anything security-related, since you may get results that are not consistent with surrounding code that might use the message manager.</p>
-
-<h2 id="CPOWs_seguros_e_inseguros">CPOWs seguros e inseguros</h2>
-
-<p>The main reason CPOWs can be bad for responsiveness is that they make the chrome process block on the content process.</p>
-
-<p>Essentially, the problem is this: suppose the content process is busy with some long-running operation (for example, garbage collection). In multiprocess Firefox, the browser UI is still responsive, because it's running in a different process. But if the chrome process then tries to use a CPOW, the chrome process will block until the content process is ready to respond. Suddenly, what looked like a simple property access could block the UI for a noticeable amount of time:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/12485/unsafe-cpow.svg" style="display: block; height: 579px; margin-left: auto; margin-right: auto; width: 897px;"></p>
-
-<p>There is one scenario, though, in which this is not a problem: when the content process is already blocking on a synchronous message it sent to the chrome process.</p>
-
-<p>The content process is blocked anyway waiting for the chrome process, so there's no chance, in this situation, that the CPOW call will block on some long-running activity in the content process. The content process can respond immediately to the CPOW call:</p>
-
-<p><br>
- <img alt="" src="https://mdn.mozillademos.org/files/12481/safe-cpow.svg" style="display: block; height: 472px; margin-left: auto; margin-right: auto; width: 640px;"></p>
-
-<p>There is still a performance cost to the CPOW in this situation, because the CPOW call is an IPC call instead of a simple property access in the same process. However, the potential impact on responsiveness is much smaller.</p>
-
-<p>Also, in this situation, the content process is in a known state. We know it's blocked waiting for the synchronous message to return, and we know that won't change during the CPOW call. This makes the CPOW call much safer than it would otherwise be.</p>
-
-<p>This situation is thus called "safe CPOW usage". All other uses of CPOWs are called "unsafe CPOW usage".</p>
-
-<p>Consulyat também:</p>
-
-<ul>
- <li><a href="https://mikeconley.ca/blog/2015/02/17/on-unsafe-cpow-usage-in-firefox-desktop-and-why-is-my-nightly-so-sluggish-with-e10s-enabled/">https://mikeconley.ca/blog/2015/02/17/on-unsafe-cpow-usage-in-firefox-desktop-and-why-is-my-nightly-so-sluggish-with-e10s-enabled/</a></li>
- <li><a href="http://blog.lassey.us/2015/01/10/unsafe-cpow-usage/">http://blog.lassey.us/2015/01/10/unsafe-cpow-usage/</a></li>
-</ul>
-
-<p> </p>
-
-<p> </p>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/depuracao_de_frame_scripts/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/depuracao_de_frame_scripts/index.html
deleted file mode 100644
index 6f22e9a0b7..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/depuracao_de_frame_scripts/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
----
-title: Depuração de frame scripts
-slug: Mozilla/Firefox/Multiprocess_Firefox/Depuracao_de_frame_scripts
-tags:
- - Caixa de ferramentas de Conteúdo de Navegador
- - Multiprocessos do Firefox
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Debugging_frame_scripts
----
-<div>{{FirefoxSidebar}}</div><div class="geckoVersionNote">
-<p>A Caixa de Ferramentas de Conteúdo de Navegador só está disponível no Firefox Nightly, e apenas se extiver a executar o Firefox no modo de multiprocessos.</p>
-</div>
-
-<p>You can use the Browser Content Toolbox to debug frame scripts. The Browser Content Toolbox is a separate window that includes some of the standard <a href="/en-US/docs/Tools">Firefox Developer Tools</a> - specifically: the <a href="/en-US/docs/Web/API/Console">console</a>, the <a href="/en-US/docs/Tools/Debugger">JavaScript debugger</a>, and <a href="/en-US/docs/Tools/Scratchpad">Scratchpad</a> - but attaches them to the browser's content process. This means you can debug the frame scripts in your add-on.</p>
-
-<h2 id="Abrir_a_Caixa_de_Ferrmanetas_de_Conteúdo_de_Navegador">Abrir a Caixa de Ferrmanetas de Conteúdo de Navegador</h2>
-
-<p>{{EmbedYouTube("Cg6X_zIu7Xk")}}</p>
-
-<p>To open the Browser Content Toolbox, you'll need to:</p>
-
-<ul>
- <li>be running Firefox Nightly</li>
- <li>have multiprocess Firefox enabled: open the "Preferences" page, select "Enable E10S (multi-process)", and restart. As a visual indicator that you're running multiprocess Firefox, the titles of remote tabs are underlined.</li>
- <li>enable the <a href="/en-US/docs/Tools/Tools_Toolbox#Settings">"chrome and add-on debugging" and "remote debugging" options in the Firefox Developer Toolbox Options</a></li>
-</ul>
-
-<p>You should now see an item labeled "Browser Content Toolbox" in the Developer submenu in the Firefox Menu (or Tools menu if you display the menu bar or are on OS X). It opens in a separate window:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/9761/browser-content-toolbox.png" style="display: block; height: 854px; margin-left: auto; margin-right: auto; width: 723px;">If you've used the <a href="/en-US/docs/Tools/Tools_Toolbox">Firefox Developer Tools</a> before, this should look pretty familiar.</p>
-
-<p>Along the top is a row of tabs that you can use to switch the active tool. Currently, we only support the <a href="/en-US/docs/Web/API/Console">Console</a>, the <a href="/en-US/docs/Tools/Debugger">Debugger</a>, and <a href="/en-US/docs/Tools/Scratchpad">Scratchpad</a> in the Browser Content Toolbox. At the right of this row are three buttons that activate the <a href="/en-US/docs/Tools/Web_Console#The_split_console">split console</a>, open settings, and close the toolbox.</p>
-
-<p>The rest of the toolbox is taken up with the tool you've currently selected.</p>
-
-<h2 id="Utilização">Utilização</h2>
-
-<p>{{EmbedYouTube("XF0ULNnNOxg")}}</p>
-
-<h3 id="O_Depurador">O Depurador</h3>
-
-<p>The Debugger lists all the scripts that are loaded into the content process. You'll find your frame scripts listed under the chrome:// URL you registered for them:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/9771/browser-content-toolbox-listing.png" style="display: block; margin-left: auto; margin-right: auto; width: 723px;">You can set breakpoints, of course, and do all the other <a href="/en-US/docs/Tools/Debugger">things supported by the debugger</a>.</p>
-
-<h3 id="A_Consola">A Consola</h3>
-
-<p>The Console logs output from your frame scripts. If you want to use it to evaluate JavaScript in your frame script's scope, there's a trick you need to know:</p>
-
-<ul>
- <li>Set a breakpoint in your frame script.</li>
- <li>When you hit the breakpoint, switch to the Console, or activate the <a href="/en-US/docs/Tools/Web_Console#The_split_console">split console</a> by pressing "Escape".</li>
-</ul>
-
-<p>Now the console's scope is your frame script's scope, and you can interact directly with it:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/9769/browser-content-toolbox-debugging.png" style="display: block; margin-left: auto; margin-right: auto; width: 839px;"></p>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/gestor_de_mensagens/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/gestor_de_mensagens/index.html
deleted file mode 100644
index 88d8419e69..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/gestor_de_mensagens/index.html
+++ /dev/null
@@ -1,74 +0,0 @@
----
-title: Gestor de mensagens
-slug: Mozilla/Firefox/Multiprocess_Firefox/Gestor_de_mensagens
-tags:
- - API
- - Guia(2)
- - JavaScript
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Message_Manager
----
-<div>{{FirefoxSidebar}}</div><p>Os gestores de mensagens fornecem uma maneira para o código de <em>JavaScript</em> <em>chrome</em>-privilegiado para comunicar através dos limites de processo. Eles são particularmente úteis para permitir que código do <em>chrome</em>, incluindo o código do navegador e o código de extensão, para aceder ao conteúdo da <em>Web </em>enquanto o navegador está a executar conteúdo da <em>Web</em> num processo separado</p>
-
-<p>Message managers provide a way for chrome-privileged JavaScript code to communicate across process boundaries. They are particularly useful for allowing chrome code, including the browser's code and extension's code, to access web content while the browser is running web content in a separate process.</p>
-
-<p>These guides explain how to use message managers in multiprocess Firefox.</p>
-
-<p>Note that none of this requires multiprocess Firefox: everything described here will work with single-process Firefox, so the same code will work on both variants.</p>
-
-<hr>
-<h2 id="Guias">Guias</h2>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Message_manager_overview">Message manager overview</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Frame_script_loading_and_lifetime">Frame script loading and lifetime</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Communicating_with_frame_scripts">Communicating with frame scripts</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Performance">Performance Best Practices</a></dt>
- <dd> </dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Frame_script_environment">Frame script environment</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/_Limitations_of_frame_scripts">Limitations of frame scripts</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Message_Manager/Process_scripts">Process scripts</a></dt>
- <dd> </dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Referência_de_API">Referência de API</h2>
-
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIFrameScriptLoader">nsIFrameScriptLoader</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMessageListenerManager">nsIMessageListenerManager</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMessageBroadcaster">nsIMessageBroadcaster</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMessageSender">nsIMessageSender</a></dt>
- <dd> </dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISyncMessageSender">nsISyncMessageSender</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIContentFrameMessageManager">nsIContentFrameMessageManager</a></dt>
- <dd> </dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIProcessScriptLoader">nsIProcessScriptLoader</a></dt>
- <dd> </dd>
-</dl>
-</div>
-</div>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/glossario/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/glossario/index.html
deleted file mode 100644
index 22bb1b5b57..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/glossario/index.html
+++ /dev/null
@@ -1,36 +0,0 @@
----
-title: Glossário
-slug: Mozilla/Firefox/Multiprocess_Firefox/Glossario
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Glossary
----
-<div>{{FirefoxSidebar}}</div><div class="column-container">
-<div class="column-half">
-<dl>
- <dt>Child-to-parent CPOWs</dt>
- <dd>CPOWs that refer to objects in the parent (chrome) process.</dd>
- <dt>Chrome process (also called the parent process)</dt>
- <dd>The operating system process that runs the Firefox UI, including the toolbar, dialog boxes, and features like session restoration. All add-on code that doesn't run in frame scripts runs here.</dd>
- <dt>Content process (also called the child process)</dt>
- <dd>The operating system process that runs web content, in multiprocess Firefox. Code for frame scripts runs in this process.</dd>
- <dt>Content scripts</dt>
- <dd>Deprecated term for frame scripts.</dd>
- <dt>CPOWs</dt>
- <dd>CPOW stands for Cross Process Object Wrapper. A CPOW gives chrome code synchronous access to content objects, as a migration aid. <a href="/en-US/docs/Cross_Process_Object_Wrappers">See more about CPOWs</a>.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt>Frame scripts</dt>
- <dd>When chrome code needs to interact with web content, it factors the code that needs to access content into separate scripts, and loads them into the content process. These separate scripts are called frame scripts. We used to call these scripts "content scripts" but have deprecated that term.</dd>
- <dt>Message manager</dt>
- <dd>Message managers enable chrome code to load frame scripts into content processes, and communicate with them using a message-passing API. <a href="/en-US/docs/The_message_manager">See more about message managers</a>.</dd>
- <dt>Parent-to-child CPOWs</dt>
- <dd>CPOWs that refer to objects that live in the child (content) process.</dd>
- <dt>Shim</dt>
- <dd>...</dd>
-</dl>
-</div>
-</div>
-
-<p> </p>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/index.html
deleted file mode 100644
index 8bf746e32a..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/index.html
+++ /dev/null
@@ -1,79 +0,0 @@
----
-title: Multiprocessos do Firefox
-slug: Mozilla/Firefox/Multiprocess_Firefox
-tags:
- - Firefox
-translation_of: Mozilla/Firefox/Multiprocess_Firefox
----
-<div>{{FirefoxSidebar}}</div>
-
-<p>Nas versões antigas do Firefox para PC, todo o navegador era executado num único processo do sistema operativo. Em particular, o <em>JavaScript </em>que executa a IU do navegador (também conhecido como "código do chrome") executa o mesmo processo como o código nas páginas da <em>Web</em> (também conhecido como "conteúdo" ou "conteúdo da <em>Web</em>").<br>
- <br>
- As últimas versões do Firefox executam a IU do navegador num processo separado do conteúdo da <em>Web</em>. Na primeira iteração dessa arquitetura, todos os separadores do navegador funcionam no mesmo processo e a IU do navegador é executada num processo diferente. Em iterações futuras, nós esperamos ter mais doque um processo de conteúdo. O projeto que está a distribuir 'Multiprocessos do Firefox' é chamado de <em> Electrolysis</em>, por vezes abreviado para <em>e10s</em>.</p>
-
-<p>As páginas da <em>Web</em> normais não são afetadas pelo 'Multiprocessos do Firefox'. As pessoas que trabalham no próprio Firefox e os programadores de extras do Firefox não serão afetados se o seu código depende de ser capaz de aceder diretamente ao conteúdo da <em>Web</em>.</p>
-
-<p>Em vez de aceder ao conteúdo da <em>web</em> diretamente, o código do <em>chrome</em> terá que utilizar o <a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Message_manager">gestor de mensagens</a>. Para ajudar a facilitar esta transição, nós implementamos <em><a href="https://developer.mozilla.org/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross Process Object Wrappers</a></em> e alguns <a href="/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#Compatibility_shims"><em>shims</em> de compatibilidade para os programadores de extras</a>. Se é um programador de extras perguntando-se a si mesmo se está ou não afetado por esta alteração, consulte o <a href="/pt-PT/docs/Archive/Add-ons/Trabalhar_com_multiprocessos_Firefox">guia para trabalhar com multiprocessos do Firefox</a>.</p>
-
-<hr>
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Resumo_técnico">Resumo técnico</a></dt>
- <dd>A very high-level view of how multiprocess Firefox is implemented.</dd>
- <dt><a href="/en-US/Firefox/Multiprocess_Firefox/Web_content_compatibility">Guia de compatibilidade do conteúdo da Web</a></dt>
- <dd>Guidelines and details on potential Web site compatibility issues that may arise due to the transition. Tip: there aren't very many!</dd>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Glossario">Glossário</a></dt>
- <dd>Uma referência para o gíria utilizada em 'Multiprocessos do Firefox'.</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Message_Manager">Gestor de mensagens</a></dt>
- <dd>Complete guide to the objects used to communicate between chrome and content.</dd>
- <dt><a href="/en-US/Mozilla/Add-ons/SDK/Guides/Multiprocess_Firefox_and_the_SDK">Extras baseados em SDK</a></dt>
- <dd>How to migrate add-ons developed using the Add-on SDK.</dd>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Quais_os_URIs_que_carregam_e_onde">Quais os URIs que carregam e onde</a></dt>
- <dd>A quick guide to which URIs - chrome:, about:, file:, resource: - are loaded into which process.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/Firefox/Multiprocess_Firefox/Motivation">Motivação</a></dt>
- <dd>Why we are implementing multiprocess Firefox: performance, security, and stability.</dd>
- <dt><a href="/Mozilla/Add-ons/Working_with_multiprocess_Firefox">Guia de migração de extras</a></dt>
- <dd>If you are an add-on developer, find out if you are affected and how to update your code.</dd>
- <dt><a href="/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross Process Object Wrappers</a></dt>
- <dd>Cross Process Object Wrappers are a migration aid, giving chrome code synchronous access to content.</dd>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Depuracao_de_frame_scripts">Depuração de processos do conteúdo</a></dt>
- <dd>How to debug code running in the content process, including frame and process scripts.</dd>
- <dt><a href="/docs/Mozilla/Firefox/Multiprocess_Firefox/Tab_selection_in_multiprocess_Firefox">Seleção de separador nos multiprocessos do Firefox</a></dt>
- <dd>How switching tabs works in multiprocess Firefox.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<div class="column-container">
-<div class="column-half">
-<dl>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Limitacoes_de_chrome_scripts">Limitações de chrome scripts</a></dt>
- <dd>Práticas que já não irão funcionar no código de <em>chrome</em>, e como as fixar.</dd>
-</dl>
-</div>
-
-<div class="column-half">
-<dl>
- <dt><a href="/pt-PT/Firefox/Multiprocess_Firefox/Limitacoes_de_frame_scripts">Limitações de frame scripts</a></dt>
- <dd>Práticas que já não irão funcionar dentro de <em>frame scripts</em>, e o que fazer.</dd>
-</dl>
-</div>
-</div>
-
-<hr>
-<h2 id="Contacte-nos">Contacte-nos</h2>
-
-<p>Saiba mais sobre o projeto, participe, ou coloque as suas perguntas.</p>
-
-<ul>
- <li><strong>Página do Projeto de Electrolysis</strong> (EN): <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>Lista de endereços/discussão</strong>: <a href="https://groups.google.com/forum/#!forum/mozilla.dev.tech.electrolysis">dev.tech.electrolysis</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_chrome_scripts/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_chrome_scripts/index.html
deleted file mode 100644
index f761b2c6f7..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_chrome_scripts/index.html
+++ /dev/null
@@ -1,215 +0,0 @@
----
-title: Limitações de "chrome scripts"
-slug: Mozilla/Firefox/Multiprocess_Firefox/Limitacoes_de_chrome_scripts
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts
----
-<div>{{FirefoxSidebar}}</div><p>This page describes patterns that used to work in the chrome process that will no longer work in multiprocess Firefox. These are the sorts of things that will break an old add-on in multiprocess Firefox. The fix is generally some variant of "do that in a frame script loaded into the content process".</p>
-
-<p>This is one of a pair of articles: the other one lists <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_frame_scripts">limitations of frame scripts</a>.</p>
-
-<h2 id="Compatibilidade_de_shims">Compatibilidade de <em>shims</em></h2>
-
-<p>For many of the patterns described here we've implemented compatibility shims so the patterns still work. For example: whenever extensions try to access web content from the chrome process, the browser will return a <a href="https://developer.mozilla.org/en-US/docs/Cross_Process_Object_Wrappers">Cross Process Object Wrapper</a> that gives the chrome code synchronous access to the content.</p>
-
-<p>You'll get the shims for your add-on by default, unless you set the <a href="/en-US/Add-ons/Install_Manifests#multiprocessCompatible"><code>multiprocessCompatible</code> flag in your add-on's install manifest</a>.</p>
-
-<p>However, these shims are not a substitute for migrating extensions:</p>
-
-<ul>
- <li>they are only a temporary measure, and will be removed eventually</li>
- <li>they can have a bad effect on responsiveness</li>
- <li>there are likely to be edge cases in which they don't work properly</li>
-</ul>
-
-<p>You can see all the places where your add-on uses compatibility shims by setting the <span><code>dom.ipc.shims.enabledWarnings</code> preference and watching the browser console as you use the add-on.</span></p>
-
-<p>The rest of this page documents patterns that don't work in multiprocess Firefox as well as how are shims try to paper over the problem. For each pattern we've noted:</p>
-
-<ul>
- <li>whether a shim exists and what kind of behavior it provides</li>
- <li>how to update your add-on so you don't need the shim</li>
-</ul>
-
-<h2 id="gBrowser.contentWindow_window.content...">gBrowser.contentWindow, window.content...</h2>
-
-<h3 id="Sem_shim">Sem <em>shim</em></h3>
-
-<p>All APIs in the chrome process that provide direct access to content objects will no longer work. For example:</p>
-
-<pre class="brush: js">// chrome code
-
-gBrowser.contentWindow; // null
-
-gBrowser.contentDocument; // null
-
-gBrowser.selectedBrowser.contentWindow; // null
-
-window.content; // null
-
-content; // null
-</pre>
-
-<p>As a special note, docshells live in the content process, so they are also inaccessible:</p>
-
-<pre>gBrowser.docShell; // null
-
-gBrowser.selectedBrowser.docShell; // null</pre>
-
-<h3 id="Com_shim">Com <em>shim</em></h3>
-
-<p>The shim will give you a <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">CPOW</a> for the content object in these situations.</p>
-
-<p>In some situations, the content process may not be initialized when an add-on asks for access to its content. In this case, the shim will return a JavaScript object that looks somewhat like a window or a document for about:blank. However, this "dummy" object is completely static and only exposes a few of the normal properties that windows and documents have. For this reason, add-ons that try to access content objects in fresh &lt;browser&gt; elements may run into trouble.</p>
-
-<p>To make the shim unnecessary: factor the code that needs to access content into a separate script, load that script into the content process as a frame script, and communicate between the chrome script and the frame script using the message-passing APIs. See the article on <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">using the message manager</a>.</p>
-
-<h2 id="Limitações_de_CPOWs">Limitações de CPOWs</h2>
-
-<p><a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">Cross process object wrappers</a> (CPOWs) are a migration aid giving chrome code synchronous access to content objects. However, there are various <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers#Limitations_of_CPOWs">limitations on the kinds of things you can do with a CPOW</a>.</p>
-
-<div class="warning">
-<p>Note that from Firefox 47 onwards, <a href="https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers#Safe_and_unsafe_CPOWs">unsafe CPOW usage</a> is no longer permitted in browser code. If browser code tries an unsafe CPOW operation, the browser will throw an exception and you'll see an "unsafe CPOW usage forbidden” error in the <a href="https://developer.mozilla.org/en-US/docs/Tools/Browser_Console">Browser Console</a>.</p>
-
-<p>Add-on code is still allowed to use CPOWs "unsafely". However, if an add-on passes a CPOW into a platform API, and that platform API then attempts an unsafe operation on it, this will throw an exception. So as a general rule, add-ons should avoid passing CPOWs into non-addon code.</p>
-</div>
-
-<h2 id="nsIContentPolicy">nsIContentPolicy</h2>
-
-<h3 id="Sem_shim_2">Sem <em>shim</em></h3>
-
-<p>In multiprocess Firefox, if you register the <code><a href="http://dxr.mozilla.org/mozilla-central/source/dom/base/nsIContentPolicy.idl">nsIContentPolicy</a></code> in the chrome process then it will never see any attempts to load web content, because they happen in the content process.</p>
-
-<h3 id="Com_shim_2">Com <em>shim</em></h3>
-
-<p>The shim enables you to add content policies in the chrome process. It transparently registers an <code>nsIContentPolicy</code> in the content process, whose <code>shouldLoad</code> just forwards to the chrome process. The content to check is forwarded as a <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">CPOW</a>. The chrome process then checks the content against the policy supplied by the add-on, and forwards the response back to the child to be enforced.</p>
-
-<p>To make the shim unnecessary: define and register <code>nsIContentPolicy</code> in the content process. If you need to ensure that the policy is only registered once, use a <a href="/en-US/docs/User:wbamberg/Multiprocess_Firefox-2/Message_manager/Process_scripts">process script </a>to register the policy.</p>
-
-<h2 id="nsIWebProgressListener">nsIWebProgressListener</h2>
-
-<p>This API will work in the chrome process. There is a shim that gives you access to the <code>DOMWindow</code> property of the <a href="http://dxr.mozilla.org/mozilla-central/source/uriloader/base/nsIWebProgress.idl"><code>nsIWebProgress</code></a> object passed into <code>onStateChange</code>. However, the <code>DOMWindow</code> is passed asynchronously, so by the time the chrome process receives it, the DOM might have changed (for example, because code running in the content process modified it or we navigated to a different page). We're working on fixing this issue in <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1118880">bug 1118880</a>.</p>
-
-<p>Also note that unlike other shims, this shim is always active.</p>
-
-<p>Alternatively, you can use <code>nsIWebProgressListener</code> in the content process.</p>
-
-<h2 id="Observadores_no_processo_de_chrome">Observadores no processo de <em>chrome</em></h2>
-
-<p>Depending on the topic, you need to register observers in either the chrome process or in a frame script.</p>
-
-<p>For most topics you need to register observers in the chrome process.</p>
-
-<p>However, you must listen to <a href="/en/docs/Observer_Notifications#Documents"><code>content-document-global-created</code> and <code>document-element-inserted</code></a> in a frame script. <a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/ds/nsIObserver.idl">Observers</a> for these topics get content objects as the <code>aSubject</code> argument to <code>observe()</code>, so notifications are not sent to the chrome process.</p>
-
-<p>There is a shim that will forward these two topics to the chrome process, sending <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">CPOWs</a> as the <code>aSubject</code> argument.</p>
-
-<h3 id="Pedidos_de_HTTP">Pedidos de HTTP</h3>
-
-<p>You can't observe <a href="https://developer.mozilla.org/en/docs/Observer_Notifications#HTTP_requests">HTTP requests</a> in the content process. If you do, you'll get an error.<br>
- <br>
- If you do so in the chrome process, it will mostly work. The subject for the observer notification will be an <code><a href="http://dxr.mozilla.org/mozilla-central/source/netwerk/protocol/http/nsIHttpChannel.idl">nsIHttpChannel</a></code> as you would expect.</p>
-
-<p>A common pattern here is to use the <code>notificationCallbacks</code> property of the <code>nsIHttpChannel</code> to get the DOM window that initiated the load, like this:</p>
-
-<pre class="brush: js">observe: function (subject, topic, data) {
- if (topic == "http-on-modify-request") {
- var httpChannel = subject.QueryInterface(Ci.nsIHttpChannel);
- var domWindow = httpChannel.notificationCallbacks.getInterface(Ci.nsIDOMWindow);
- }
-}</pre>
-
-<p>Or this:</p>
-
-<pre class="brush: js">observe: function (subject, topic, data) {
- if (topic == "http-on-modify-request") {
- var httpChannel = subject.QueryInterface(Ci.nsIHttpChannel);
- var domWindow = httpChannel.notificationCallbacks.getInterface(Ci.nsILoadContext).associatedWindow;
- }
-}</pre>
-
-<p>In multiprocess Firefox these patterns will no longer work: the <code>getInterface</code> call will fail.</p>
-
-<p>In multiprocess Firefox, <code>notificationCallbacks</code> is a special object that tries to emulate the single-process <code>notificationsCallbacks</code> object as best it can. It will return a dummy <code>nsILoadContext</code> when asked, but any attempt to get a window out of it will fail.<br>
- <br>
- There is an outstanding bug (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1108827">bug 1108827</a>) to implement a shim here that will make <code>notificationCallbacks</code> a <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">CPOW</a> for the objects in the content process.</p>
-
-<p>The correct way to access the DOM window is through a message manager. In an HTTP observer, you can get the browser message manager for the window using code like this:</p>
-
-<pre class="brush: js">observe: function (subject, topic, data) {
- if (topic == "http-on-modify-request") {
- var httpChannel = subject.QueryInterface(Ci.nsIHttpChannel);
- var loadContext = httpChannel.notificationCallbacks.getInterface(Ci.nsILoadContext);
- // topFrameElement is the &lt;browser&gt; element
- var topFrameElement = loadContext.topFrameElement;
- var browserMM = topFrameElement.messageManager;
- console.log("browserMM: " + browserMM);
- }
-}</pre>
-
-<p>However, before Firefox 38, this technique will not work if multiprocess Firefox is disabled: specifically, <code>topFrameElement</code> will be null. This means that if you need to write code that works before Firefox 38 and on both multiprocess and non-multiprocess variants, you need to implement both paths:</p>
-
-<ul>
- <li>test whether <code>topFrameElement</code> is null</li>
- <li>if it is, you're running in single-process Firefox, and should use the old way</li>
- <li>if it isn't, you're running in multiprocess Firefox and should use the new way</li>
-</ul>
-
-<p>From Firefox 38 onwards, the topFrameElement approach always works.</p>
-
-<h2 id="Eventos_DOM">Eventos DOM</h2>
-
-<h3 id="Sem_shim_3">Sem <em>shim</em></h3>
-
-<p>In multiprocess Firefox, if you want to register an event listener on some content DOM node, that needs to happen in the content process.</p>
-
-<p>It used to be that if you registered a listener on the <a href="/en-US/docs/XUL/browser">XUL <code>&lt;browser&gt;</code></a>  or <a href="/en-US/docs/XUL/tab"><code>&lt;tab&gt;</code></a> element that hosted some DOM content, then events in the content would bubble up to the XUL and you could handle them there. This no longer happens in multiprocess Firefox.</p>
-
-<h3 id="Com_shim_3">Com <em>shim</em></h3>
-
-<p>The shim intercepts chrome process code that adds listeners to XUL elements and sets up listeners in the content process, relaying the result back to the chrome process. The <a href="/en-US/docs/Web/API/Event"><code>Event</code></a> object itself is relayed to the chrome process as a <a href="/en-US/Firefox/Multiprocess_Firefox/Cross_Process_Object_Wrappers">CPOW</a>.</p>
-
-<p>To make the shim unnecessary: register event listeners on the global object inside a <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">frame script</a>. For example:</p>
-
-<pre class="brush: js">addEventListener("load", handler, true) // for example</pre>
-
-<div>If you need to contact the chrome process when that happens, send it a message.</div>
-
-<div> </div>
-
-<h2 id="Sandboxes"><em>Sandboxes</em></h2>
-
-<div>You can create sandboxes in the chrome or the content process. Sandboxes are often used as a safe way to manipulate web content, and if that's your goal, create the sandbox in the content process.</div>
-
-<div> </div>
-
-<div>There is a shim for sandboxes: if you make a sandbox in the chrome process and give it content principals (by passing a CPOW as the first argument to <a href="/en-US/docs/Components.utils.Sandbox">Components.utils.Sandbox</a>) then we'll actually make it in the content process.</div>
-
-<div> </div>
-
-<div>
-<h2 id="nsIAboutModule">nsIAboutModule</h2>
-
-<p>By default, custom about: pages registered using <code><a href="/en-US/docs/XPCOM_Interface_Reference/nsIAboutModule">nsIAboutModule</a></code> are loaded in the chrome process. This means that you can't access their content from the content process (via XHR, for example).</p>
-
-<p>You can change this default in the code you use to register the about: URI. See <a href="/en-US/Firefox/Multiprocess_Firefox/about:_and_chrome:_URIs">about: and chrome: URIs</a>.</p>
-</div>
-
-<h2 id="Módulos_de_código_de_JavaScript_(JSMs)">Módulos de código de <em>JavaScript </em>(JSMs)</h2>
-
-<div>In single-process Firefox, you can use <a href="/en-US/docs/Mozilla/JavaScript_code_modules">JavaScript code modules (JSMs)</a> to maintain global state. In multiprocess Firefox, a JSM loaded into one process does not share any state with the same JSM loaded into a different process: so you can't use a JSM to share state between the chrome and content processes.</div>
-
-<div> </div>
-
-<div>If an add-on wants to use a JSM to share state in this way, it's best to load the JSM in the chrome process, and have frame scripts store and access the JSM's state by sending messages to the chrome process using the message manager.</div>
-
-<div> </div>
-
-<h2 id="nsIProtocolHandler">nsIProtocolHandler</h2>
-
-<div>In multiprocess Firefox, code which registers a custom protocol using <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIProtocolHandler">nsIProtocolHandler</a></code> must register the custom protocol in the child content process.</div>
-
-<div>If the custom protocol is registered only in the chrome process, no iframes or tabs will be able to load any resource from the custom procotol.</div>
-
-<div> </div>
-
-<div>The solution is to register the custom protocol in the content process. You can do this by loading a frame script or, with the Add-on SDK, you can use <a href="/en-US/Add-ons/SDK/Low-Level_APIs/remote_parent#Loading_modules_into_the_child_process"><code>remoteRequire()</code> in the "remote/parent" module</a>.</div>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_frame_scripts/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_frame_scripts/index.html
deleted file mode 100644
index 999472c499..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/limitacoes_de_frame_scripts/index.html
+++ /dev/null
@@ -1,103 +0,0 @@
----
-title: Limitações de frame scripts
-slug: Mozilla/Firefox/Multiprocess_Firefox/Limitacoes_de_frame_scripts
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Limitations_of_frame_scripts
----
-<div>{{FirefoxSidebar}}</div><p>Frame scripts run with <a href="/en-US/docs/Security_check_basics#Principals">system privileges</a> and have access to the <a href="/en-US/docs/Components_object">Components</a> object, enabling them to use <a href="/en-US/docs/Mozilla/Tech/XPCOM">XPCOM</a> objects and <a href="/en-US/docs/Mozilla/JavaScript_code_modules">JSMs</a>. Many privileged APIs will just work in a content process. Anything that just manipulates data structures will just work. XHR and Workers will work. However, some APIs  that work in the chrome process will not work in a frame script. This article lists the most important of these APIs.</p>
-
-<p>This is one of a pair of articles: the other one lists <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts">limitations of chrome scripts</a>.</p>
-
-<h2 id="Restrições_de_Segurança_no_Acesso_de_Ficheiro">Restrições de Segurança no Acesso de Ficheiro</h2>
-
-<p>Processes that host remote content are isolated from the local system through a content security sandbox. One of the functions of the sandbox is to restrict access to the local file system by processes that host remote content. Since frame and process scripts often execute in remote content processes these scripts are subject to the same file access rules placed on remote content. Therefore frame scripts should not attempt to access the local file system directly, as these calls will fail.</p>
-
-<p>Examples of APIs Add-on authors should avoid in frame scripts:</p>
-
-<ul>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/netwerk/base/public/nsIFileStreams.idl"><code>nsIFileInputStream</code></a></li>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/netwerk/base/public/nsIFileStreams.idl"><code>nsIFileOutputStream</code></a></li>
- <li><a href="/en-US/docs/Extensions/Using_the_DOM_File_API_in_chrome_code">Constructing a <code>File</code> from a string or <code>nsIFile</code></a> (but <code>File</code> objects can be sent via message manager)</li>
- <li><code><a href="/en-US/docs/Web/API/HTMLInputElement/mozSetFileNameArray">HTMLInputElement.mozSetFileNameArray</a></code> (alternative: <code>mozSetFileArray</code>)</li>
-</ul>
-
-<h2 id="XUL_e_IU_de_navegador">XUL e IU de navegador</h2>
-
-<p>Anything that tries to touch the browser UI or anything to do with XUL is likely to not work in the content process. For example:</p>
-
-<ul>
- <li><code><a href="http://dxr.mozilla.org/mozilla-central/source/embedding/components/windowwatcher/nsIPromptService.idl">nsIPromptService</a></code></li>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/widget/nsIFilePicker.idl"><code>nsIFilePicker</code></a></li>
- <li><code>nsIXUL*</code></li>
- <li>&lt;need more examples&gt;</li>
-</ul>
-
-<h2 id="Serviços">Serviços</h2>
-
-<p>Some services will not work in frame scripts.</p>
-
-<ul>
- <li>Services.search</li>
- <li>Services.downloads</li>
-</ul>
-
-<h2 id="Janelas_de_Chrome">Janelas de <em>Chrome</em></h2>
-
-<p>Anything that needs to use chrome windows will not work in the content process. For example:</p>
-
-<ul>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/mobile/android/components/SessionStore.idl"><code>nsISessionStore</code></a></li>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/xpfe/appshell/nsIWindowMediator.idl"><code>nsIWindowMediator</code></a></li>
- <li>&lt;need more examples&gt;</li>
-</ul>
-
-<h2 id="Places_API">Places API</h2>
-
-<p>A <a href="/pt-PT/docs/Mozilla/Tech/Places">API de Places</a> não pode ser utilizada dentro de uma <em>frame script</em>. Por exemplo:</p>
-
-<ul>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/toolkit/components/places/nsINavHistoryService.idl"><code>nsINavHistoryService</code></a></li>
- <li><a href="http://dxr.mozilla.org/mozilla-central/source/toolkit/components/places/nsINavBookmarksService.idl"><code>nsINavBookmarksService</code></a></li>
-</ul>
-
-<h2 id="Observadores_no_processo_de_conteúdo">Observadores no processo de conteúdo</h2>
-
-<p>As noted in <a href="https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#Observers_in_the_chrome_process">Observers in the chrome process</a>, most <a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/ds/nsIObserver.idl">observers</a> should be registered in the chrome process and will not work in the content process. The exceptions are:</p>
-
-<ul>
- <li><code><a href="https://developer.mozilla.org/en-US/docs/Observer_Notifications#Documents">content-document-global-created</a></code></li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Observer_Notifications#Documents"><code>document-element-inserted</code></a></li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Observer_Notifications#Windows"><code>outer-window-destroyed</code></a></li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Observer_Notifications#Windows"><code>inner-window-destroyed</code></a></li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Observer_Notifications#Windows"><code>dom-window-destroyed</code></a></li>
-</ul>
-
-<p>These must be registered in the content process.</p>
-
-<h2 id="QI_from_content_window_to_chrome_window">QI from content window to chrome window</h2>
-
-<div>There's a particular pattern often used to get from a content window to the associated chrome window. It looks something like this:</div>
-
-<div> </div>
-
-<pre class="brush: js">window.QueryInterface(Ci.nsIInterfaceRequestor)
- .getInterface(Ci.nsIWebNavigation)
- .QueryInterface(Ci.nsIDocShellTreeItem)
- .rootTreeItem
- .QueryInterface(Ci.nsIInterfaceRequestor)
- .getInterface(Ci.nsIDOMWindow);</pre>
-
-<div>This will no longer work. In the content process the root tree item is an <a href="http://dxr.mozilla.org/mozilla-central/source/dom/interfaces/base/nsITabChild.idl"><code>nsITabChild</code></a>, that cannot be converted to an <code>nsIDOMWindow</code>, so the second <code>getInterface</code> call here will fail.</div>
-
-<div> </div>
-
-<p>If you want a chrome window: send a message from the content process using the <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">message manager</a>. The <a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIMessageListener#receiveMessage()"><code>target</code></a> property of the object passed into the message handler in the chrome process is the XUL <a href="/en-US/docs/XUL/browser"><code>&lt;browser&gt;</code></a> receiving the message, and you can get the chrome window from that (Note: I'm not really sure how...).</p>
-
-<h2 id="nsIAboutModule">nsIAboutModule</h2>
-
-<p>By default, custom <code>about:</code> pages registered using <a href="http://dxr.mozilla.org/mozilla-central/source/netwerk/protocol/about/nsIAboutModule.idl"><code>nsIAboutModule</code></a> are loaded in the chrome process. This means that you can't access their content from the content process (via XHR, for example).</p>
-
-<p>You can change this default in the code you use to register the about: URI. See <a href="/en-US/Firefox/Multiprocess_Firefox/about:_and_chrome:_URIs">about: and chrome: URIs</a>.</p>
-
-<h2 id="Módulos_de_código_de_JavaScript_(JSMs)">Módulos de código de <em>JavaScript</em> (JSMs)</h2>
-
-<div>In multiprocess Firefox, a JSM loaded into the content process does not share any state with the same JSM loaded into the chrome process. See the entry in the <a href="/en-US/Firefox/Multiprocess_Firefox/Limitations_of_chrome_scripts#JavaScript_code_modules_%28JSMs%29">Limitations on chrome scripts</a> page.</div>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/quais_os_uris_que_carregam_e_onde/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/quais_os_uris_que_carregam_e_onde/index.html
deleted file mode 100644
index 7a4ae7a993..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/quais_os_uris_que_carregam_e_onde/index.html
+++ /dev/null
@@ -1,62 +0,0 @@
----
-title: Quais os URIs que carregam e onde
-slug: Mozilla/Firefox/Multiprocess_Firefox/Quais_os_URIs_que_carregam_e_onde
-tags:
- - Processo de Chrome
- - Processo de Conteúdo
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Which_URIs_load_where
----
-<div>{{FirefoxSidebar}}</div><p>Baseado inicialmente no esquema de URI da página, o navegador pode decidir se deseja carregar uma página no processo de <em>chrome</em> ou um processo de conteúdo. Para alguns esquemas, pode alterar o comportamento predefinido.</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Esquema</th>
- <th scope="col">Comportamento</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>about:</code></td>
- <td>
- <p>By default, <code>about:</code> pages are always loaded in the chrome process. However, when you register a new <code>about:</code> page, you can change this default.</p>
-
- <p>Two new flags are defined in <code><a href="https://dxr.mozilla.org/mozilla-central/source/netwerk/protocol/about/nsIAboutModule.idl">nsIAboutModule</a></code>:</p>
-
- <ul>
- <li><code>URI_CAN_LOAD_IN_CHILD</code>: the page will be loaded in the same process as the <code><a href="/en-US/docs/XUL/browser">browser</a></code> that has loaded it.</li>
- <li><code>URI_MUST_LOAD_IN_CHILD</code>: the page will always be loaded in a child process.</li>
- </ul>
-
- <p>To use one of these flags, return it from your implementation of <code>getURIFlags</code> in the <a href="/en-US/docs/Custom_about:_URLs">code that registers the <code>about:</code> URI</a>.</p>
-
- <p>If you use these flags, you must register the about page in the framescript for each tab. If you do not set multiprocessCompatible to true in your install.rdf then shims will be used. But the e10s shims will be deprecated soon. Read more here - <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1257201">Bug 1257201</a>.</p>
- </td>
- </tr>
- <tr>
- <td><code>chrome:</code></td>
- <td>
- <p>By default, <code>chrome:</code> pages are always loaded in the chrome process. However, when you register a new <code>chrome:</code> page, you can change this default.</p>
-
- <p>Two new flags are defined in the <a href="/en-US/docs/Chrome_Registration">chrome.manifest file</a>:</p>
-
- <ul>
- <li>remoteenabled: the page will be loaded in the same process as the <code><a href="/en-US/docs/XUL/browser">browser</a></code> that has loaded it.</li>
- <li>remoterequired: the page will always be loaded in a child process.</li>
- </ul>
- </td>
- </tr>
- <tr>
- <td><code>file:</code></td>
- <td>
- <p>Carregado sempre num processo de conteúdo.</p>
-
- <p><strong>Nota:</strong> This does not mean <code>file:</code> URIs can be used freely by code in content processes. Sandboxing may blacklist particular directories and future changes may restrict <code>file:</code> URIs to a separate content process, isolated from regular web content. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1187099">bug 1187099</a> how this can affect addons attempting to load files from the profile directory.</p>
- </td>
- </tr>
- <tr>
- <td><code>resource:</code></td>
- <td>Carregado sempre num processo de conteúdo.</td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/mozilla/firefox/multiprocess_firefox/resumo_técnico/index.html b/files/pt-pt/mozilla/firefox/multiprocess_firefox/resumo_técnico/index.html
deleted file mode 100644
index aa2613a58e..0000000000
--- a/files/pt-pt/mozilla/firefox/multiprocess_firefox/resumo_técnico/index.html
+++ /dev/null
@@ -1,164 +0,0 @@
----
-title: Resumo técnico
-slug: Mozilla/Firefox/Multiprocess_Firefox/Resumo_técnico
-translation_of: Mozilla/Firefox/Multiprocess_Firefox/Technical_overview
----
-<div>{{FirefoxSidebar}}</div><div class="note">
-<p>This page is an edited extract from Bill McCloskey's blog post on multiprocess Firefox: <a class="external external-icon" href="http://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/">http://billmccloskey.wordpress.com/2013/12/05/multiprocess-firefox/</a></p>
-</div>
-
-<p>At a very high level, multiprocess Firefox works as follows. The process that starts up when Firefox launches is called the <em>parent process</em>. Initially, this process works similarly to single-process Firefox: it opens a window displaying <a href="http://mxr.mozilla.org/mozilla-central/source/browser/base/content/browser.xul"><code>browser.xul</code></a>, which contains all the principal UI elements for Firefox. Firefox has a flexible GUI toolkit called XUL that allows GUI elements to be declared and laid out declaratively, similar to web content. Just like web content, the Firefox UI has a <code>window</code> object, which has a <code>document</code> property, and this document contains all the XML elements from <code>browser.xul</code>. All the Firefox menus, toolbars, sidebars, and tabs are XML elements in this document. Each tab element contains a <code>&lt;browser&gt;</code> element to display web content.</p>
-
-<p>The first place where multiprocess Firefox diverges from single-process Firefox is that each <code>&lt;browser&gt;</code> element has a <code>remote="true"</code> attribute. When such a browser element is added to the document, a new content process is started. This process is called a <em>child process</em>. An IPC channel is created that links the parent and child processes. Initially, the child displays <code>about:blank</code>, but the parent can send the child a command to navigate elsewhere.</p>
-
-<h2 id="Desenho"><strong id="drawing">Desenho</strong></h2>
-
-<p>Somehow, displayed web content needs to get from the child process to the parent and then to the screen. Multiprocess Firefox depends on a new Firefox feature called <a href="http://benoitgirard.wordpress.com/2012/05/15/off-main-thread-compositing-omtc-and-why-it-matters/"><em>off main thread compositing</em></a> (OMTC). In brief, each Firefox window is broken into a series of <em>layers</em>, somewhat similar to layers in Photoshop. Each time Firefox draws, these layers are submitted to a compositor thread that clips and translates the layers and combines them together into a single image that is then drawn.</p>
-
-<p>Layers are structured as a tree. The root layer of the tree is responsible for the entire Firefox window. This layer contains other layers, some of which are responsible for drawing the menus and tabs. One subtree displays all the web content. Web content itself may be broken into multiple layers, but they’re all rooted at a single “content” layer.</p>
-
-<p>In multiprocess Firefox, the content layer subtree is actually a shim. Most of the time, it contains a placeholder node that simply keeps a reference to the IPC link with the child process. The content process retains the actual layer tree for web content. It builds and draws to this layer tree. When it’s done, it sends the structure of its layer tree to the parent process via IPC. Backing buffers are shared with the parent either through shared memory or GPU memory. References to this memory are sent as part of the layer tree. When the parent receives the layer tree, it removes its placeholder content node and replaces it with the actual tree from content. Then it composites and draws as normal. When it’s done, it puts the placeholder back.</p>
-
-<p>The basic architecture of how OMTC works with multiple processes has existed for some time, since it is needed for Firefox OS. However, Matt Woodrow and David Anderson have done a lot of work to get everything working properly on Windows, Mac, and Linux. One of the big challenges for multiprocess Firefox will be getting OMTC enabled on all platforms. Right now, only Macs use it by default.</p>
-
-<h2 id="User_input"><strong id="input">User input</strong></h2>
-
-<p>Events in Firefox work the same way as they do on the web. Namely, there is a DOM tree for the entire window, and events are threaded through this tree in capture and bubbling phases. Imagine that the user clicks on a button on a web page. In single-process Firefox, the root DOM node of the Firefox window gets the first chance to process the event. Then, nodes lower down in the DOM tree get a chance. The event handling proceeds down through to the XUL <code>&lt;browser&gt;</code> element. At this point, nodes in the web page’s DOM tree are given a chance to handle the event, all the way down to the button. The bubble phase follows, running in the opposite order, all the way back up to the root node of the Firefox window.</p>
-
-<p>With multiple processes, event handling works the same way until the <code>&lt;browser&gt;</code> element is hit. At that point, if the event hasn’t been handled yet, it gets sent to the child process by IPC, where handling starts at the root of the content DOM tree. The parent process then waits to run its bubbling phase until the content process has finished handling the event.</p>
-
-<h2 id="Inter-process_communication"><strong id="ipc">Inter-process communication</strong></h2>
-
-<p>All IPC happens using the Chromium IPC libraries. Each child process has its own separate IPC link with the parent. Children cannot communicate directly with each other. To prevent deadlocks and to ensure responsiveness, the parent process is not allowed to sit around waiting for messages from the child. However, the child is allowed to block on messages from the parent.</p>
-
-<p>Rather than directly sending packets of data over IPC as one might expect, we use code generation to make the process much nicer. The IPC protocol is defined in <a href="https://wiki.mozilla.org/IPDL">IPDL</a>, which sort of stands for “inter-* protocol definition language”. A typical IPDL file is <code><a href="http://mxr.mozilla.org/mozilla-central/source/netwerk/ipc/PNecko.ipdl">PNecko.ipdl</a></code>. It defines a set messages and their parameters. Parameters are serialized and included in the message. To send a message <code>M</code>, C++ code just needs to call the method <code>SendM</code>. To receive the message, it implements the method <code>RecvM</code>.</p>
-
-<p>IPDL is used in all the low-level C++ parts of Gecko where IPC is required. In many cases, IPC is just used to forward actions from the child to the parent. This is a common pattern in Gecko:</p>
-
-<pre class="brush: cpp">void AddHistoryEntry(param) {
- if (XRE_GetProcessType() == GeckoProcessType_Content) {
- // If we're in the child, ask the parent to do this for us.
- SendAddHistoryEntry(param);
- return;
- }
-
- // Actually add the history entry...
-}
-
-bool RecvAddHistoryEntry(param) {
- // Got a message from the child. Do the work for it.
- AddHistoryEntry(param);
- return true;
-}
-</pre>
-
-<p>When <code>AddHistoryEntry</code> is called in the child, we detect that we’re inside the child process and send an IPC message to the parent. When the parent receives that message, it calls <code>AddHistoryEntry</code> on its side.</p>
-
-<p>For a more realistic illustration, consider the Places database, which stores visited URLs for populating the awesome bar. Whenever the user visits a URL in the content process, we call <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/components/places/History.cpp?rev=8b9687f6c602#2326">this code</a>. Notice the content process check followed by the <code>SendVisitURI</code> call and an immediate return. The message is received <a href="http://mxr.mozilla.org/mozilla-central/source/dom/ipc/ContentParent.cpp?rev=fecda5f4a0df#2666">here</a>; this code just calls <code>VisitURI</code> in the parent.</p>
-
-<p>The code for IndexedDB, the places database, and HTTP connections all runs in the parent process, and they all use roughly the same proxying mechanism in the child.</p>
-
-<h2 id="Frame_scripts"><strong id="contentscripts">Frame scripts</strong></h2>
-
-<p>IPDL takes care of passing messages in C++, but much of Firefox is actually written in JavaScript. Instead of using IPDL directly, JavaScript code relies on <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">the message manager</a> to communicate between processes. To use the message manager in JS, you need to get hold of a message manager object. There is a global message manager, message managers for each Firefox window, and message managers for each <code>&lt;browser&gt;</code> element. A message manager can be used to load JS code into the child process and to exchange messages with it.</p>
-
-<p>As a simple example, imagine that we want to be informed every time a <code>load</code> event triggers in web content. We’re not interested in any particular browser or window, so we use the global message manager. The basic process is as follows:</p>
-
-<pre class="brush: js">// Get the global message manager.
-let mm = Cc["@<span class="skimlinks-unlinked">mozilla.org/globalmessagemanager;1</span>"].
- getService(Ci.nsIMessageListenerManager);
-
-// Wait for load event.
-mm.addMessageListener("GotLoadEvent", function (msg) {
- dump("Received load event: " + <span class="skimlinks-unlinked">msg.data.url</span> + "\n");
-});
-
-// Load code into the child process to listen for the event.
-mm.loadFrameScript("chrome://content/<span class="skimlinks-unlinked">content-script.js</span>", true);
-</pre>
-
-<p>For this to work, we also need to have a file <code>content-script.js</code>:</p>
-
-<pre class="brush: js">// Listen for the load event.
-addEventListener("load", function (e) {
- // Inform the parent process.
- let docURL = content.document.documentURI;
- sendAsyncMessage("GotLoadEvent", {url: docURL});
-}, false);
-</pre>
-
-<p>This file is called a <em>frame script</em>. When the <code>loadFrameScript</code> function call runs, the code for the script is run once for each <code>&lt;browser&gt;</code> element. This includes both remote browsers and regular ones. If we had used a per-window message manager, the code would only be run for the browser elements in that window. Any time a new browser element is added, the script is run automatically (this is the purpose of the <code>true</code> parameter to <code>loadFrameScript</code>). Since the script is run once per browser, it can access the browser’s window object and docshell via the <code>content</code> and <code>docShell</code> globals.</p>
-
-<p>The great thing about frame scripts is that they work in both single-process and multiprocess Firefox. To learn more about the message manager, see the <a href="/en-US/Firefox/Multiprocess_Firefox/The_message_manager">message manager guide</a>.</p>
-
-<h2 id="Cross-process_APIs"><strong id="shims">Cross-process APIs</strong></h2>
-
-<p>There are a lot of APIs in Firefox that cross between the parent and child processes. An example is the <code>webNavigation</code> property of XUL <code>&lt;browser&gt;</code> elements. The <code>webNavigation</code> property is an object that provides methods like <code>loadURI</code>, <code>goBack</code>, and <code>goForward</code>. These methods are called in the parent process, but the actions need to happen in the child. First I’ll cover how these methods work in single-process Firefox, and then I’ll describe how we adapted them for multiple processes.</p>
-
-<p>The <code>webNavigation</code> property is defined using the XML Binding Language (XBL). XBL is a declarative language for customizing how XML elements work. Its syntax is a combination of XML and JavaScript. Firefox uses XBL extensively to customize XUL elements like <code>&lt;browser&gt;</code> and <code>&lt;tabbrowser&gt;</code>. The <code>&lt;browser&gt;</code> customizations reside in <code><a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/browser.xml?rev=754cf7fc84cd">browser.xml</a></code>. <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/browser.xml?rev=754cf7fc84cd#262">Here</a> is how <code>browser.webNavigation</code> is defined:</p>
-
-<pre class="brush: xml">&lt;field name="_webNavigation"&gt;null&lt;/field&gt;
-
-&lt;property name="webNavigation" readonly="true"&gt;
- &lt;getter&gt;
- &lt;![CDATA[
- if (!this._webNavigation)
- this._webNavigation = this.docShell.QueryInterface(Components.interfaces.nsIWebNavigation);
- return this._webNavigation;
- ]]&gt;
- &lt;/getter&gt;
-&lt;/property&gt;
-</pre>
-
-<p>This code is invoked whenever JavaScript code in Firefox accesses <code>browser.webNavigation</code>, where <code>browser</code> is some <code>&lt;browser&gt;</code> element. It checks if the result has already been cached in the <code>browser._webNavigation</code> field. If it hasn’t been cached, then it fetches the navigation object based off the browser’s <em>docshell</em>. The docshell is a Firefox-specific object that encapsulates a lot of functionality for loading new pages, navigating back and forth, and saving page history. In multiprocess Firefox, the docshell lives in the child process. Since the <code>webNavigation</code> accessor runs in the parent process, <code>this.docShell</code> above will just return null. As a consequence, this code will fail completely.</p>
-
-<p>One way to fix this problem would be to create a fake docshell in C++ that could be returned. It would operate by sending IPDL messages to the real docshell in the child to get work done. We may eventually take this route in the future. We decided to do the message passing in JavaScript instead, since it’s easier and faster to prototype things there. Rather than change every docshell-using accessor to test if we’re using multiprocess browsing, we decided to create a new XBL binding that applies only to remote <code>&lt;browser&gt;</code> elements. It is called <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/widgets/remote-browser.xml?rev=9583bd3099ae"><code>remote-browser.xml</code></a>, and it extends the existing <code>browser.xml</code> binding.</p>
-
-<p>The <code>remote-browser.xml</code> binding returns a JavaScript <em>shim object</em> whenever anyone uses <code>browser.webNavigation</code> or other similar objects. The shim object is implemented <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/modules/RemoteWebNavigation.jsm">in its own JavaScript module</a>. It uses the message manager to send messages like <code>"WebNavigation:LoadURI"</code> to <a href="http://mxr.mozilla.org/mozilla-central/source/toolkit/content/browser-child.js?rev=9583bd3099ae#107">a content script loaded by <code>remote-browser.xml</code></a>. The content script performs the actual action.</p>
-
-<p>The shims we provide emulate their real counterparts imperfectly. They offer enough functionality to make Firefox work, but add-ons that use them may find them insufficient. I’ll discuss strategies for making add-ons work in more detail later.</p>
-
-<h2 id="Cross-process_object_wrappers"><strong id="cpows">Cross-process object wrappers</strong></h2>
-
-<p>The message manager API does not allow the parent process to call <code>sendSyncMessage</code>; that is, the parent is not allowed to wait for a response from the child. It’s detrimental for the parent to wait on the child, since we don’t want the browser UI to be unresponsive because of slow content. However, converting Firefox code to be asynchronous (i.e., to use <code>sendAsyncMessage</code> instead) can sometimes be onerous. As an expedient, we’ve introduced a new primitive that allows code in the parent process to access objects in the child process synchronously.</p>
-
-<p>These objects are called cross-process object wrappers, frequently abbreviated to CPOWs. They’re created using the message manager. Consider this example content script:</p>
-
-<pre class="brush: js">addEventListener("load", function (e) {
- let doc = content.document;
- sendAsyncMessage("GotLoadEvent", <strong>{}, {document: doc}</strong>);
-}, false);
-</pre>
-
-<p>In this code, we want to be able to send a reference to the document to the parent process. We can’t use the second parameter to <code>sendAsyncMessage</code> to do this: that argument is converted to JSON before it is sent up. The optional third parameter allows us to send object references. Each property of this argument becomes accessible in the parent process as a CPOW. Here’s what the parent code might look like:</p>
-
-<pre class="brush: js">let mm = Cc["@<span class="skimlinks-unlinked">mozilla.org/globalmessagemanager;1</span>"].
- getService(Ci.nsIMessageListenerManager);
-
-mm.addMessageListener("GotLoadEvent", function (msg) {
- let uri = <strong>msg.objects.document.documentURI</strong>;
- dump("Received load event: " + uri + "\n");
-});
-mm.loadFrameScript("chrome://content/<span class="skimlinks-unlinked">content-script.js</span>", true);
-</pre>
-
-<p>It’s important to realize that we’re send object <em>references</em>. The <code>msg.objects.document</code> object is only a wrapper. The access to its <code>documentURI</code> property sends a synchronous message down to the child asking for the value. The dump statement only happens after a reply has come back from the child.</p>
-
-<p>Because every property access sends a message, CPOWs can be slow to use. There is no caching, so 1,000 accesses to the same property will send 1,000 messages.</p>
-
-<p>Another problem with CPOWs is that they violate some assumptions people might have about message ordering. Consider this code:</p>
-
-<pre class="brush: js">mm.addMessageListener("GotLoadEvent", function (msg) {
- mm.sendAsyncMessage("ChangeDocumentURI", {newURI: "<span class="skimlinks-unlinked">hello.com</span>"});
- let uri = <strong>msg.objects.document.documentURI</strong>;
- dump("Received load event: " + uri + "\n");
-});
-</pre>
-
-<p>This code sends a message asking the child to change the current document URI. Then it accesses the current document URI via a CPOW. You might expect the value of <code>uri</code> to come back as <code>"hello.com"</code>. But it might not. In order to avoid deadlocks, CPOW messages can bypass normal messages and be processed first. It’s possible that the request for the <code>documentURI</code> property will be processed before the <code>"ChangeDocumentURI"</code> message, in which case <code>uri</code> will have some other value.</p>
-
-<p>For this reason, it’s best not to mix CPOWs with normal message manager messages. It’s also a bad idea to use CPOWs for anything security-related, since you may not get results that are consistent with surrounding code that might use the message manager.</p>
-
-<p>Despite these problems, we’ve found CPOWs to be useful for converting certain parts of Firefox to be multiprocess-compatible. It’s best to use them in cases where users are less likely to notice poor responsiveness. As an example, we use CPOWs to implement the context menu that pops up when users right-click on content elements. Whether this code is asynchronous or synchronous, the menu cannot be displayed until content has responded with data about the element that has been clicked. The user is unlikely to notice if, for example, tab animations don’t run while waiting for the menu to pop up. Their only concern is for the menu to come up as quickly as possible, which is entirely gated on the response time of the content process. For this reason, we chose to use CPOWs, since they’re easier than converting the code to be asynchronous.</p>
-
-<p>It’s possible that CPOWs will be phased out in the future. Asynchronous messaging using the message manager gives a user experience that is at least as good as, and often strictly better than, CPOWs. We strongly recommend that people use the message manager over CPOWs when possible. Nevertheless, CPOWs are sometimes useful.</p>
diff --git a/files/pt-pt/mozilla/firefox_for_android/index.html b/files/pt-pt/mozilla/firefox_for_android/index.html
deleted file mode 100644
index 12be7a39c2..0000000000
--- a/files/pt-pt/mozilla/firefox_for_android/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
----
-title: Firefox para Android
-slug: Mozilla/Firefox_for_Android
-tags:
- - Firefox
- - Mobile
-translation_of: Mozilla/Firefox_for_Android
----
-<p>Para cada vez mais pessoas, os dispositivos móveis são o meio principal, ou até o único meio, para aceder à Internet.<a class="link-https" href="https://www.mozilla.org/en-US/mobile/"> Firefox para Android</a> (nome de código Fennec) é um navegador aberto, personalizável, baseado em padrões, tal como a versão Firefox para pc.</p>
-
-<p>Firefox para Android cria a sua interface gráfica a partir de widgets nativos do Android em vez de XUL: isto aumenta de forma significativa o seu desempenho, especialmente o tempo de arranque, e o consumo de memória.</p>
-
-<h2 id="Contribuir_para_o_Firefox_para_Android">Contribuir para o Firefox para Android</h2>
-
-<p>O ponto de partida para informação acertca do projecto Firefox para Android é a <a class="link-https" href="https://wiki.mozilla.org/Mobile">página Wiki do projecto</a>.</p>
-
-<p>Podes ajudar a criar e melhorar Firefox para Android:</p>
-
-<ul>
- <li>Ajude-nos com <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_for_Android/Compatibility_Testing">testes de compatibilidade</a></li>
- <li>Subscreva a newsletter <a href="https://mail.mozilla.org/listinfo/mobile-firefox-dev">mobile-firefox-dev</a></li>
- <li>Contacte a nossa equipa atrvés do <a href="irc://irc.mozilla.org/#mobile">IRC</a></li>
- <li>Junte-se no nosso <a href="https://wiki.mozilla.org/Mobile/Notes">Encontro de Desenvolvimente da Quarta-Feira</a></li>
- <li>Mantenha-se atualizado com notícias do projeto em <a href="http://planet.firefox.com/mobile/">Planeta Firefox Móvel</a>, <a href="http://fennecnightly.tumblr.com/">Tumblr</a> e <a href="https://twitter.com/FennecNightly">Twitter</a></li>
- <li><a href="https://wiki.mozilla.org/Mobile/Fennec/Android">Desenvolva e personalize no Firefox para Android</a> (Fennec)</li>
-</ul>
-
-<h2 id="Programar_para_a_Web_móvel">Programar para a Web móvel</h2>
-
-<p>Nós começamos a criar um guia para <a href="/En/Mobile" title="En/Mobile">desenhar sites da Web para os dispositivos móveis</a>.</p>
-
-<p>Com Firefox para Android, pode aceder a um numero of APIs que expoem as capacidades subjacentes do dispositivo, diminuíndo a distância entre a Web e as aplicações nativas:</p>
-
-<ul>
- <li><a href="/pt-PT/docs/Web/API/API_do_Estado_da_Bateria"><u>Bateria</u></a></li>
- <li><u><a href="/pt-PT/docs/Archive/B2G_OS/API/Camera_API" title="Using the Camera API">Câmara</a></u></li>
- <li><u><a href="/en/API/WebTelephony/Introduction_to_WebTelephony" title="Introduction to WebTelephony">WebTelephony</a></u></li>
- <li><u><a href="/en/API/WebSMS/Introduction_to_WebSMS" title="Introduction to WebSMS">WebSMS</a></u></li>
- <li><u><a href="/pt-PT/docs/Web/API/Geolocation/Utilizacao_da_geolocalizacao" title="Using geolocation">Geoloca</a><a href="/pt-PT/docs/Web/API/Geolocation/Utilizacao_da_geolocalizacao" title="Using geolocation">lização</a></u></li>
- <li><a href="/pt-PT/docs/Web/API/Detetar_orientacao_dispositivo"><u>Orientação</u></a></li>
- <li><a href="https://developer.mozilla.org/en/WebAPI/Web_Activities">Atividades Web</a></li>
-</ul>
-
-<p>Para testar o seu site da Web no Firefox para Android, pode instalar o Firefox para Android no seu dispositivo móvel ou pode executá-lo no seu computador utilizando o <a class="link-https" href="https://wiki.mozilla.org/Mobile/Fennec/Android/Emulator">Emulador Android.</a>.</p>
-
-<h2 id="Desenvolver_extras_para_dispositivos_móveis">Desenvolver extras para dispositivos móveis</h2>
-
-<p><a href="/en/Extensions/Mobile" title="en/Extensions/Firefox_on_Android">Firefox for Android supports add-ons</a> using the exact same <a href="/en/Extensions" title="en/Extensions">extension system</a> used by all other Gecko-based applications. We did not invent a new add-on system. This means that building an add-on for Firefox on Android is the <a href="/en/Building_an_Extension" title="en/Building_an_Extension">same process</a> that would be used for desktop Firefox. Add-ons that work with desktop Firefox <strong>do not</strong> automatically work in Firefox on Android. The user interfaces are just too different.</p>
-
-<div class="note">O Firefox no Android tem um identificador de aplicação único que deve ser utilizado em <code>install.rdf</code>. O identificador é <code>{aa3c5121-dab2-40e2-81ca-7ea25febc110}</code></div>
-
-<p>Both classic restart-required and newer <a href="/en/Extensions/Bootstrapped_extensions" title="en/Extensions/Bootstrapped_extensions">restartless</a> add-on approaches are supported. Using the restartless approach is preferred whenever possible because the user experience is far superior to forcing an application restart when installing or removing an add-on.</p>
-
-<h3 id="Resumo_Rápido">Resumo Rápido</h3>
-
-<ul>
- <li>There is no visible XUL in the UI, so using overlays to try to add or change UI is useless.</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="/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>
-
-<h2 id="Obter_ajuda_com_o_Firefox_para_Android">Obter ajuda com o Firefox para Android</h2>
-
-<p>A documentação e tutoriais para utilizar e a resolução de problemas do Firefox para Android estão disponíveis no <a class="external" href="https://support.mozilla.org/pt-PT/products/mobile" title="http://support.mozilla.org/mobile">site da Web de Apoio da Mozilla</a>.</p>
-
-<h2 id="Install_Firefox_for_Android">Install Firefox for Android</h2>
-
-<p>If you don't already have Firefox installed on your Android device, you can do so at the <a href="https://www.mozilla.org/en-US/firefox/android/">Google Play store</a>. See the SUMO article <a href="https://support.mozilla.org/en-US/kb/install-firefox-android-device-using-google-play">Install Firefox on an Android device using Google Play</a> for detailed instructions.</p>
-
-<h3 id="Alternate_installs">Alternate installs</h3>
-
-<p>There are some unofficial builds and specialized installations for devices which don't officially support Firefox for Android. Here are some helpful links for these (keep in mind they are <strong>not supported by Mozilla</strong> and <strong>you are using them at your own risk!</strong>).</p>
-
-<ul>
- <li><a href="https://support.mozilla.org/en-US/kb/installing-firefox-android-amazon-kindle-fire">Installing Firefox for Android on Amazon Kindle Fire</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/how_to_get_a_stacktrace_for_a_bug_report/index.html b/files/pt-pt/mozilla/how_to_get_a_stacktrace_for_a_bug_report/index.html
deleted file mode 100644
index 0c9d6d4e8d..0000000000
--- a/files/pt-pt/mozilla/how_to_get_a_stacktrace_for_a_bug_report/index.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: Como obter um rastreamento para o relatório de erros
-slug: Mozilla/How_to_get_a_stacktrace_for_a_bug_report
-tags:
- - Bugzilla
-translation_of: Mozilla/How_to_get_a_stacktrace_for_a_bug_report
----
-<p>Se registar um relatório de crache no Bugzilla sobre um crache, deverá incluir um rastreamento (<em>call stack</em>) no seu relatório. Um rastreamento irá dizer aos programadores da Mozilla o que aconteceu e fornecer um ponto de partida para investigar a sua causa. Este artigo descreve como utilizar o 'relatóriod e Crache' da Mozilla (<em>Breakpad</em>) para obter uma Id. de crache, que os nossos engenheiros podem utilizar para obter um rastreamento, e formas alternativas de obter um rastreamento se não conseguir uma Id. de crache.</p>
-
-<h2 id="Requisitos">Requisitos</h2>
-
-<p>You need a binary build of Firefox from <a class="external" href="http://www.mozilla.com/en-US/firefox/">Mozilla.org</a>. SeaMonkey and Thunderbird also support crash reporting.</p>
-
-<p>Mozilla's crash report server currently only has debug information for Mozilla builds and thus the crash reporter cannot work if you use a build from a Linux distribution or if you compile from source code. In these cases you will need to use one of the <a href="#Alternative_ways_to_get_a_stacktrace">alternative methods</a> listed below.</p>
-
-<div class="note"><strong>Nota: </strong>When filing a crash report, it is important to know whether the crash occurs with <a class="external" href="http://support.mozilla.com/en-US/kb/Safe+Mode" title="http://support.mozilla.com/en-US/kb/Safe+Mode">Firefox safe mode</a>. This helps engineers determine whether a particular <a class="external" href="http://support.mozilla.com/en-US/kb/Troubleshooting+extensions+and+themes" title="http://support.mozilla.com/en-US/kb/Troubleshooting+extensions+and+themes">extension</a> or <a class="external" href="http://support.mozilla.com/en-US/kb/Troubleshooting+plugins" title="http://support.mozilla.com/en-US/kb/Troubleshooting+plugins">plugin</a> is the cause of the crash.</div>
-
-<h2 id="Como_obter_uma_Id._de_crache_com_o_'Relat´rio_de_Crache'_da_Mozilla">Como obter uma Id. de crache com o 'Relat´rio de Crache' da Mozilla</h2>
-
-<table style="width: 100%;">
- <tbody>
- <tr>
- <td>
- <p><strong>1. Crash and submit a report to the system.</strong></p>
-
- <p>The Mozilla Crash Reporter window should automatically come up after Firefox crashes. If you have any additional information about the crash, such as additional detail on what you were doing at the time that may have triggered the crash, please enter it into the comments box. Be sure that you <strong>check the "Tell Mozilla about this crash"</strong><strong> checkbox</strong> and click the restart button. The crash reporter should now submit the crash report and Firefox should open again.</p>
-
- <div class="note">The "Details" button gives additional data about the incident, however this is not useful in a bug report.</div>
- </td>
- <td>
- <p style="text-align: center;"><img alt="reporter.jpg" class="internal lwrap" src="../../../../@api/deki/files/2854/=reporter.jpg?size=webview" style="float: left; height: 307px; width: 300px;"></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<table style="width: 100%;">
- <tbody>
- <tr>
- <td>
- <p><strong>2. Tell us the ID of the report you submitted.</strong></p>
-
- <p>To access all of your submitted reports<strong> type "about:crashes" into the Firefox address bar</strong> and press enter. Firefox should open a list of IDs for your submitted crash reports. Copy two or three of the IDs for the appropriate crashes and paste them into your Bugzilla report. Please check the listed times to avoid copying the ID of an unrelated crash report.</p>
-
- <div class="note">You can prefix a "bp-" to the beginning of an ID to make Bugzilla turn it into a link: <strong>bp-</strong>a70759c6-1295-4160-aa30-bc4772090918</div>
- </td>
- <td>
- <p style="text-align: center;"><img alt="crashlist.jpg" class="internal lwrap" src="../../../../@api/deki/files/2855/=crashlist.jpg?size=webview" style="float: left; height: 403px; width: 450px;"></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="How_to_get_the_crash_ID_if_Firefox_crashes_on_startup">How to get the crash ID if Firefox crashes on startup</h3>
-
-<p>If Firefox crashes on startup you can still access your submitted crash reports. Crash reports are accessible from all Firefox profiles, so if a <a class="external" href="http://support.mozilla.com/en-US/kb/Managing+Profiles" title="http://support.mozilla.com/en-US/kb/Managing+Profiles">new profile</a> does not crash you can use it to access them through "about:crashes" <a class="external" href="/En/How_to_get_a_stacktrace_for_a_bug_report#How_to_get_a_crash_ID_with_the_Mozilla_Crash_Reporter" title="https://developer.mozilla.org/En/How_to_get_a_stacktrace_for_a_bug_report#How_to_get_a_crash_ID_with_the_Mozilla_Crash_Reporter">as above</a>.</p>
-
-<h4 id="Aceder_às_Ids._do_relatório_de_crache_fora_do_Firefox">Aceder às Ids. do relatório de crache fora do Firefox</h4>
-
-<p>If you cannot load Firefox at all you can find the crash report files at this location depending on your operating system:</p>
-
-<p>Windows : <span class="filename">%APPDATA%\Mozilla\Firefox\Crash Reports\submitted\</span><br>
- OS X : <span class="filename">~/Library/Application Support/Firefox/Crash Reports/submitted/</span><br>
- Linux : <span class="filename">~/.mozilla/firefox/Crash Reports/submitted/</span></p>
-
-<p>Each file in this folder contains one submitted crash report ID. You can check the modified or creation time for each file to discern which crash reports are relevant to your bug report.</p>
-
-<h2 id="Modos_alternativos_para_obter_um_rastreamento">Modos alternativos para obter um rastreamento</h2>
-
-<p>If the Mozilla crash reporter doesn't come up or isn't available you will need to obtain a stacktrace manually:</p>
-
-<h4 id="Windows">Windows</h4>
-
-<p>See the article <a class="internal" href="/en/How_to_get_a_stacktrace_with_WinDbg" title="En/How to get a stacktrace with WinDbg">Create a stacktrace with Windbg</a> for information on how to do this.</p>
-
-<p>For a full process dump, see <a href="/en-US/docs/How_to_get_a_process_dump_with_Windows_Task_Manage" title="/en-US/docs/How_to_get_a_process_dump_with_Windows_Task_Manage">How to get a process dump with Windows Task Manager [en-US]</a></p>
-
-<h4 id="OS_X">OS X</h4>
-
-<p>Run /Applications/Utilities/Console.app.  Expand "~/Library/Logs" and "CrashReporter", then look for logs for "firefox-bin".</p>
-
-<h4 id="Linux">Linux</h4>
-
-<p>Note that for most distros the package you need to get symbols for will be something like "xulrunner", not "firefox".</p>
-
-<h2 id="Where_did_my_crash_get_submitted.3F" name="Where_did_my_crash_get_submitted.3F">Os ficheiros de relatórios de crache no seu computador</h2>
-
-<p>When Breakpad initially catches a crash it first writes crash report files (e.g. .dump and .extra files) into the 'pending' subdirectory of its 'Crash Reports' directory.</p>
-
-<p>If Breakpad successfully sends the crash report to the reporting server then, by default, the files added to the 'pending' subdirectory for the crash are removed, and a .txt file is placed in the 'submitted' directory containing the crash ID that the reporting server recorded the crash under. If you want Breakpad to leave the .dump and .extra files on your computer so that you can examine them locally, then set the MOZ_CRASHREPORTER_NO_DELETE_DUMP environment variable to 1.</p>
-
-<ul>
- <li>Ubuntu:  <a class="link-https" href="https://wiki.ubuntu.com/MozillaTeam/Bugs#Obtain%20a%20backtrace%20from%20an%20apport%20crash%20report%20(using%20gdb)" title="https://wiki.ubuntu.com/MozillaTeam/Bugs#Obtain a backtrace from an apport crash report (using gdb)">Instructions from the Ubuntu Team</a></li>
- <li>openSUSE:  <a class="external" href="http://en.opensuse.org/openSUSE:Bugreport_application_crashed" title="http://en.opensuse.org/openSUSE:Bugreport_application_crashed">General instructions from openSUSE</a></li>
- <li>Fedora: <a class="external" href="http://fedoraproject.org/wiki/StackTraces" title="http://fedoraproject.org/wiki/StackTraces">Capturing Stack Traces</a></li>
- <li>Gentoo: <a class="external" href="http://www.gentoo.org/doc/en/bugzilla-howto.xml#doc_chap2" title="http://www.gentoo.org/doc/en/bugzilla-howto.xml#doc_chap2">Debugging using GDB</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/implementacao_do_pontoon_num_projeto_da_mozilla/index.html b/files/pt-pt/mozilla/implementacao_do_pontoon_num_projeto_da_mozilla/index.html
deleted file mode 100644
index 05fb22e5c3..0000000000
--- a/files/pt-pt/mozilla/implementacao_do_pontoon_num_projeto_da_mozilla/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
----
-title: Implementação do Pontoon num projeto da Mozilla
-slug: Mozilla/Implementacao_do_Pontoon_num_projeto_da_Mozilla
-tags:
- - Localização
- - Tradução
-translation_of: Mozilla/Implementing_Pontoon_in_a_Mozilla_website
----
-<p><a class="external" href="https://pontoon.mozilla.org" title="https://pontoon.mozilla.org">Pontoon</a> é uma ferramenta de localização (l10n), O-Que-Vê-É-O-Que-Obtém (WYSIWYG) baseada na Web. É uma ferramenta muito simples e intuitiva que requer poucos conhecimentos técnicos para os tradutores utilizarem, que irá reduzir o seu tempo para publicar as versões loacalizadas do seu projeto. Aqui, nós iremos discutir como é que pode utilizar o Pontoon com o seu projeto da Mozilla.</p>
-
-<div class="note">
-<p><strong>Would you like to improve Pontoon?</strong> Learn how to get involved on <a href="https://github.com/mozilla/pontoon">GitHub</a>.</p>
-</div>
-
-<div class="note">
-<p><strong>Just getting started with your project l10n?</strong> Check out the wiki on <a href="https://wiki.mozilla.org/L10n:NewProjects">getting your project localized</a>.</p>
-</div>
-
-<h2 id="A._Make_your_project_localizable">A. Make your project localizable</h2>
-
-<p>We realize that these are already considered to be standard <a href="http://mozweb.readthedocs.org/en/latest/reference/l10n.html">best practices</a> for localizing projects at Mozilla, but we feel it's good to add them here as a little reminder.</p>
-
-<ol>
- <li>Ensure that your project supports one of the l10n frameworks (<a href="http://www.gnu.org/software/gettext/">gettext</a>, <a href="http://docs.oasis-open.org/xliff/xliff-core/v2.0/xliff-core-v2.0.html">XLIFF</a>, <a href="http://l20n.org/">L20n</a>, <a href="https://github.com/mozilla-l10n/langchecker/wiki/.lang-files-format">lang</a>, <a href="https://en.wikipedia.org/wiki/.properties">properties</a>, etc.).</li>
- <li>Extract localizable strings into resource files.</li>
- <li>Push resource files to a repository (SVN, HG, Git).
- <ul>
- <li>Individual locale folders must be located at the same nesting level of the directory tree. Source locale needs to be called <code>templates</code>, <code>en-US</code>, <code>en-us</code> or <code>en</code>. If multiple folders with such name exist in the repository and contain files in a supported file format, the first one will be used. You may want to put all locale folders in a dedicated <code>locales</code> folder for this purpose. Locale code must not be part of the file name.</li>
- <li>Correct pattern:
- <pre>/locales/{locale_code}/path/to/file.extension</pre>
- </li>
- <li>Incorrect pattern:
- <pre>/locales/{locale_code}/path/to/file.{locale_code}.extension</pre>
- </li>
- </ul>
- </li>
- <li>Make sure Pontoon has write access to the repository.
- <ul>
- <li>If using GitHub, add <a href="https://github.com/mozilla-pontoon">mozilla-pontoon</a> or <a href="https://github.com/orgs/mozilla/teams/pontoon-l10n-robots">pontoon-l10n-robots</a> as collaborator to your project.</li>
- </ul>
- </li>
-</ol>
-
-<h2 id="B._(optional)_Enable_in-page_localization_of_your_web_project">B. (optional) Enable in-page localization of your web project</h2>
-
-<ol>
- <li>Link a script from your HTML <code>&lt;body&gt;</code> element, so Pontoon can talk to your site, detect content and make it localizable in place. You only need to do this in the environment that will be used for in-page localization, e.g. staging server:
-
- <ul>
- <li>
- <pre id="line1"><span> </span><span>&lt;<span class="start-tag">script</span> <span class="attribute-name">src</span>="<a class="attribute-value">https://pontoon.mozilla.org/pontoon.js</a>"</span><span>&gt;&lt;/<span class="end-tag">script</span>&gt;</span></pre>
- </li>
- </ul>
- </li>
- <li>If your site uses <a href="/docs/Web/Security/CSP">CSP</a>, please make sure that the following is permitted for domain <code>pontoon.mozilla.org</code>:
- <ol>
- <li>loading inside iframe</li>
- <li>loading remote CSS</li>
- <li>loading remote images</li>
- </ol>
- </li>
- <li>If your site uses the <a href="/docs/Web/HTTP/Headers/X-Frame-Options">X-Frame-Options</a> header, please make sure loading inside iframe is permitted for domain <code>pontoon.mozilla.org</code>.</li>
- <li>Make sure your site supports HTTPS. It's free, automated and open. <a href="https://letsencrypt.org/">Let's encrypt</a>!</li>
-</ol>
-
-<h2 id="C._Add_your_project_to_Pontoon">C. Add your project to Pontoon</h2>
-
-<p>Your project is now ready to be set up in Pontoon. Please file a bug in <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Localization%20Infrastructure%20and%20Tools&amp;component=Administration%20%2F%20Setup">Localization Infrastructure and Tools :: Administration / Setup</a> and provide the following information:</p>
-
-<ul>
- <li>Project name</li>
- <li>Repository URL</li>
- <li>List of requested locales</li>
- <li>Website URL, including all subpage URLs (only if using in-page localization)</li>
-</ul>
-
-<p>For more details, please get in touch with the <a href="mailto:pontoon-team@mozilla.com">Project Management Team</a>.</p>
diff --git a/files/pt-pt/mozilla/ligar/index.html b/files/pt-pt/mozilla/ligar/index.html
deleted file mode 100644
index 2fda2a50be..0000000000
--- a/files/pt-pt/mozilla/ligar/index.html
+++ /dev/null
@@ -1,117 +0,0 @@
----
-title: Ligar com Mozilla
-slug: Mozilla/Ligar
-tags:
- - Ligar
- - Mozilla
-translation_of: Mozilla/Connect
----
-<p class="summary">Habilitar, inspirar e colaborar para tornar a Web na plataforma primária mais utilizada, para criar experiências através de todos os dispositivos interligados.</p>
-
-<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="Blogue_de_Hacks">Blogue de Hacks</h2>
-
-<p>Um recurso chave para as pessoas desenvolverem para a Web Aberta, o blogue de Hacks da Mozilla oferece notícias e discussões sobre as últimas tecnologias da e funcionalidades de navegador.</p>
-
-<div class="callout-link-wrapper"><a class="callout-link ignore-external" href="https://hacks.mozilla.org/" style="white-space: normal;">Read it now </a></div>
-</div>
-</div>
-
-<div class="dev-program-callout">
-<div class="callout-link-container">
-<h2 id="Canais_de_OpiniõesCríticas">Canais de Opiniões/Críticas</h2>
-
-<p>Teum uma <a href="http://mzl.la/devtools">idea fantástica paras as Ferramentas de Desenvolvimento</a>? Contacte-nos e ajude a moldar as funcionalidades de futuro!</p>
-<a class="callout-link ignore-external" href="http://stackoverflow.com/r/mozilla" style="white-space: normal;"> </a></div>
-</div>
-
-<div class="dev-program-callout">
-<div class="callout-link-container">
-<h2 id="Hack_na_MDN">Hack na MDN</h2>
-
-<p>Whether you hack code or text, we have <a href="/en-US/docs/MDN/Getting_Started">ways you can help make MDN better</a>. When you create an MDN profile, you can show off your work here, and get early access to MDN 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;">Join or login </a></div>
-</div>
-</div>
-</div>
-
-<div class="dev-program-explanation dev-program-block">
-<h2 id="Ligar_com_Mozilla">Ligar com 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. We offer help and other resources towards this goal, through various channels. We invite you to connect, learn, and share your knowledge.</p>
-
-<p>Reach out to us at devrel@mozilla.com or on the irc.mozilla.org #devrel IRC channel. We also have a newsletter keeping you informed about 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>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="https://hacks.mozilla.org/">subscribe to the Hacks blog</a> and <a href="https://marketplace.firefox.com/developers/#newsletter-signup">subscribe to the newsletter</a>!</p>
-
-<p>If you're on <a href="http://www.twitter.com/MozDevNet">Twitter</a>, <a href="http://www.twitter.com/MozDevNet">follow us</a> and hear about doc updates, jobs, contributor opportunities, and more.</p>
-
-<h2 id="Aderir_à_Mozilla" style="line-height: 30px;"><strong>Aderir à Mozilla</strong></h2>
-
-<p>If you want to go beyond connecting with <strong>Mozilla</strong>, you can join <strong>Mozilla </strong>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 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.</p>
-
-<h3 id="Oportunidade_para_aprender_qualquer_coisa_nova"><strong>Oportunidade para aprender qualquer coisa nova </strong></h3>
-
-<div>
-<p>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 have never done unit testing, and cannot get permission to do so at work then coding for an open source project would be an excellent place to learn more about it. 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. 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="O_que_eu_obtenho_ao_contribuir"><strong>O que eu obtenho ao contribuir? </strong></h3>
-
-<p>Exploring many things and gaining 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. 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 like to see you listed as a contributor to an open source project. It may also help with the work experience section of your CV/resumé.</p>
-
-<h3 id="Como_pode_contribuir_para_a_Mozilla"><strong>Como pode contribuir para a Mozilla</strong></h3>
-
-<p>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:</p>
-
-<ul>
- <li><a href="http://www.whatcanidoformozilla.org/">Codificação</a></li>
- <li><a href="http://www.whatcanidoformozilla.org/">Desenvolvimento da Web</a></li>
- <li><a href="/en-US/Firefox_OS/Developing_Gaia">Firefox OS</a></li>
- <li><a href="https://quality.mozilla.org/teams/">Perguntas de Respostas</a></li>
- <li><a href="https://wiki.mozilla.org/Marketplace/Contributing/Addons">Complementos</a></li>
- <li><a href="https://wiki.mozilla.org/Marketplace/Contributing/Apps">Aplicações</a></li>
- <li><a href="/en-US/docs/MDN/Getting_started">Documentação de desenvolvimento (aqui na MDN)</a></li>
-</ul>
-</div>
-</div>
-
-<div class="column-container dev-program-block">
-<div class="column-half" id="Developer_discussions"> </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="Onde_está_a_Mozilla">Onde está a Mozilla?</h2>
-
-<p><a class="heading-link" href="https://www.mozilla.org/en-US/contribute/events/">View attendees and details on our Events page... </a></p>
-</div>
-
-<div class="column-5">
-<h2 id="Outros_recursos">Outros recursos</h2>
-
-<ul class="no-bullets">
- <li><a href="http://www.youtube.com/user/mozhacks">Hacks da</a> <a href="http://www.youtube.com/user/mozhacks">Mozilla</a> <a href="http://www.youtube.com/user/mozhacks"> no YouTube</a>
-
- <ul>
- <li><a href="http://www.youtube.com/playlist?list=PLo3w8EB99pqIHIUUv08hBCHq1OgPKhdo0">Vídeos do Firefox OS</a></li>
- <li><a href="http://www.youtube.com/playlist?list=PLo3w8EB99pqLZNY22xKbTEzMfYo9PXAlm">Vídeos de ferramentas de Desenvolvimento do Firefox</a></li>
- </ul>
- </li>
- <li><strong>Siga-nos no Twitter</strong>
- <ul class="no-bullets">
- <li><a href="https://twitter.com/mozdevnet">@MozDevNet</a>: Notícias e notas da MDN</li>
- <li><a href="https://twitter.com/mozhacks">@mozhacks</a>: Novidades no blogue de Hacks</li>
- <li><a href="https://twitter.com/mozappsdev">@mozappsdev</a>: Para os responsáveis pelo desenvolvimento de aplicação da Web</li>
- <li> </li>
- </ul>
- </li>
-</ul>
-</div>
-</div>
diff --git a/files/pt-pt/mozilla/localization/aplicação_tradução_com_mercurial/index.html b/files/pt-pt/mozilla/localization/aplicação_tradução_com_mercurial/index.html
deleted file mode 100644
index ef44aa26fa..0000000000
--- a/files/pt-pt/mozilla/localization/aplicação_tradução_com_mercurial/index.html
+++ /dev/null
@@ -1,282 +0,0 @@
----
-title: Tradução da Aplicação com Mercurial
-slug: Mozilla/Localization/aplicação_tradução_com_mercurial
-translation_of: Mozilla/Localization/Application_Translation_with_Mercurial
----
-<h4 id="draft">{{draft}}</h4>
-
-<h2 id="Verifique_qual_o_idioma_que_está_disponível_para_tradução">Verifique qual o idioma que está disponível para tradução</h2>
-
-<ol>
- <li>Find out on which branch localization is done for your locale: Read <a href="https://l10n.mozilla.org/teams/">your localization team's page</a> by clicking on the team with your <a href="https://en.wikipedia.org/wiki/Language_code">language code</a> (e.g. "de" for German). The localization lead for your language knows the branch. The <strong>default localization branch</strong> is <strong>aurora</strong>.</li>
- <li>Next check what is still untranslated by going to <a href="https://l10n.mozilla.org/teams/">Localization status page</a> and click on the page for your language.</li>
- <li>In the section "Applications &amp; Sign-offs", you will find different products and branches which are currently in translation.
- <ul>
- <li>gaia-* denotes branches of <a href="http://www.mozilla.org/en-US/firefox/os/">Firefox OS</a>, the operating system for mobile devices.</li>
- <li>Firefox and fx-* denote branches of <a href="http://www.mozilla.org/firefox">Firefox for Desktop</a>, the browser for desktops and notebooks running, Windows, Mac OS or Linux.</li>
- <li>Fennec and fennec-* denote branches of <a href="http://www.mozilla.org/en-US/firefox/fx/">Firefox for Mobile</a>, the Firefox browser for the Android operating system.</li>
- <li>Thunderbird and tb-* denote branches of <a href="http://www.mozilla.org/thunderbird">Thunderbird</a>, the mail client, newsgroup and feed reader and chat client. The localization of the <a href="https://www.mozilla.org/en-US/projects/calendar/">Lightning calendar add-on </a>also takes place on these branches.</li>
- <li>SeaMonkey and sea-* denote branches of <a href="http://www.seamonkey-project.org/">SeaMonkey</a>, the suite consisting of browser, mail and chat client and more.</li>
- <li>Lightning and cal-* denote branches of Lightning, the calendar add-on for Thunderbird. The localization of Lightning now happens on Thunderbird's tb-* branches, the cal-* branches have been retired.<span id="cke_bm_478E" style="display: none;"> </span></li>
- </ul>
- </li>
- <li>In this example, we assume Firefox for Desktop shall be localized and that the localization branch is aurora. Scroll to the <strong>fx_aurora</strong> text.</li>
- <li>Read the text next to it.
- <ul>
- <li>If it is '<strong>Translated</strong>', the branch has already been translated. Either translate a different product now or contact the person responsible for localization from the team's page (see above) so he can notify you by mail when the next strings for translation become available.</li>
- <li>If it is a red text consisting of a <strong>number</strong> and the word '<strong>missing</strong>', then there are untranslated texts and you can move on with this guide.<br>
-  </li>
- </ul>
- </li>
-</ol>
-
-<h2 id="Ferramentas_Necessárias">Ferramentas Necessárias</h2>
-
-<h4 id="Pré-requisitos_de_criação">Pré-requisitos de criação</h4>
-
-<p>First, get the required programs to compile Mozilla applications like Firefox and Thunderbird from <a href="/pt-PT/docs/Guia_do_desenvolvedor/Instruções_de_compilação">Instruções de Compilação</a>. This is only necessary once.</p>
-
-<div class="warning">
-<p>MozillaBuild deve estar instalado num caminho de ficheiro absoluto sem espaços em branco, senão este será interrompido..</p>
-</div>
-
-<h4 id="Programa_de_comparação_de_ficheiro">Programa de comparação de ficheiro</h4>
-
-<p>For the translation, it is recommend to use file comparison program to compare the English file (containing the new texts) with the file of your locale (which is still missing the new strings). This example uses <a href="http://winmerge.org/">WinMerge</a>: Download and install it. A comparison of alternatives (e.g. for Linux and Mac OS) is available on <a href="https://en.wikipedia.org/wiki/Comparison_of_file_comparison_tools">Wikipedia</a>.</p>
-
-<h4 id="Editor_de_ficheiro_e_texto">Editor de ficheiro e texto</h4>
-
-<p>For editing individual files a text editor can be a better choice than a file comparion program, e.g. because the file is new and everything has to be translated, the file is too customized to compare it to the English one, or special functionality is required (e.g. bookmarking untranslated lines). Use a text editor you are comfortable with. This example uses <a href="http://notepad-plus-plus.org/">Notepad++</a>.</p>
-
-<h4 id="Ferramenta_de_monitorização_do_progresso">Ferramenta de monitorização do progresso</h4>
-
-<p>To track which strings and files already have been translated and later also to see which new strings have already been tested in the product as being a good translation for the functionality behind the translated strings and that the translated texts fit into the available, the translation progress should be tracked. This can be done in a text editor or word processor or any other tool in which you can attach different kind of states to the individual texts to translate. The Firefox extension <a href="https://addons.mozilla.org/firefox/addon/scrapbook/">Scrapbook</a> is used in this guide. Install it into your default Firefox profile (you will have more than one profile when following this guide).</p>
-
-<h2 id="Obter_os_Textos_atuais_em_inglês_e_o_seu_idioma">Obter os Textos atuais em inglês e o seu idioma</h2>
-
-<h4 id="Obter_os_textos_em_inglês_com_o_código_fonte">Obter os textos em inglês com o código fonte</h4>
-
-<p>Get the source code by downloading the following file:</p>
-
-<ul>
- <li><strong>Firefox Desktop</strong> or <strong>Firefox for Android</strong>: Download the <strong>mozilla-&lt;branch&gt;.hg</strong> file (e.g. mozilla-aurora.hg) from <a href="https://ftp.mozilla.org/pub/mozilla.org/firefox/bundles/">https://ftp.mozilla.org/pub/mozilla.org/firefox/bundles/</a> The file is not small, but after initially downloading it, you only need to download the latest changes in the future.</li>
- <li><strong>Thunderbird</strong>, <strong>Lightning</strong> or <strong>SeaMonkey</strong>: Download the <strong>comm-&lt;branch&gt;.hg</strong> file (e.g. comm-aurora.hg) from <a href="http://ftp.mozilla.org/pub/mozilla.org/thunderbird/bundles/">https://ftp.mozilla.org/pub/mozilla.org/thunderbird/bundles/</a></li>
-</ul>
-
-<p>In the next step, we will unpack the source code:</p>
-
-<ol>
- <li>Open an input shell, e.g. by pressing the Windows key and R on the keyboard <img alt="Screenshot of Windows key + R key" src="https://mdn.mozillademos.org/files/7211/windows%20key%20plus%20r.png" style="height: 30px; width: 82px;"> or by calling the "<code>Run...</code>" command from the Windows "Start" button, and then typing <code><strong>cmd</strong></code> and pressing the Enter key.</li>
- <li>Launch the installed MozillaBuild toolset by launching it with its path, e.g. <code>C:\Mozilla\Coding\Buildtools\MozillaBuild\start-shell-msvc2010.bat</code> You can autocomplete the file path after typing a few characters and then pressing the Tabulator key.<br>
- If you launch the start-shell-l10n.bat, compiling features will be disabled. You can create translation patches, but creating language packs for the application, binary repacks of the application (changing the localization of the program), and compiling the application likely won't work.</li>
- <li>You are now in the Mozilla development environment which emulates a Linux environment. Now go to the directory where you want to put the source code. It's highly recommended to put it onto the fastest hard drive in the device. File paths here work starting with a slash (/) followed by the drive letter, and then the directory structure like on Windows, but using slashes (/) instead of backslashes (\). So let's go to C:\Mozilla by typing<br>
- <code>cd /c/Mozilla/</code></li>
- <li>Create a new directory for the source code:<br>
- <code>mkdir mozilla-aurora</code></li>
- <li>Initialize the new directory as new repository:<br>
- <code>hg init mozilla-aurora</code></li>
- <li>Go into the new directory:<br>
- <code>cd mozilla-aurora</code></li>
- <li>Unpack the source code:<br>
- <code>hg unbundle /path/to/the/downloaded/mozilla-aurora.hg</code><br>
- This can take some time, mostly depending on the performance of the hard drive.</li>
- <li>Extract the files:<br>
- <code>hg update</code></li>
-</ol>
-
-<h4 id="Obter_os_textos_para_a_sua_localização">Obter os textos para a sua localização</h4>
-
-<ol>
- <li>Go back to the parent folder of <code>mozilla-aurora</code>:<br>
- <code>cd ..</code></li>
- <li>Find the localization repository for your branch and language on <a href="http://hg.mozilla.org/">http://hg.mozilla.org/</a> E.g. for aurora and German (language code 'de'), it is <code>http://hg.mozilla.org/releases/l10n/mozilla-aurora/de/</code> Copy that url to the clipboard.</li>
- <li>Copy the repository to your computer by running the following command:<br>
- <code>hg clone http://hg.mozilla.org/releases/l10n/mozilla-aurora/de/ de-mozilla-aurora</code><br>
- This should proceed pretty fast.<br>
- On Windows, you can paste the url by calling the Paste command from the window menu in the upper left corner of the window.</li>
-</ol>
-
-<h2 id="Configurar_as_suas_definições_de_utilizador_do_Mercurial">Configurar as suas definições de utilizador do Mercurial</h2>
-
-<p>Still in the command prompt, go to your home directory in the file system, e.g. for a Windows user, it looks like C:\Users\MyName , depending on your Windows version:</p>
-
-<p><code>cd /c/Users/MyName</code></p>
-
-<p>Now list all the files here:</p>
-
-<p><code>ls -a</code></p>
-
-<p>If there is no file called <code>.hgrc</code> , create it with</p>
-
-<p><code>&gt; .hgrc</code></p>
-
-<p>This file stores your general Mercurial settings (Mercurial is the tool which manages the source code and its history of changes).</p>
-
-<p>Now go in the file system to the file and open it in your favorite text editor. Windows users can use e.g. <a href="http://notepad-plus-plus.org/">Notepad++</a>.</p>
-
-<p>Paste the following content into the file:</p>
-
-<pre>[ui]
-username = Firstname Lastname &lt;mynick@example.com&gt;
-merge = internal:merge
-
-[alias]
-qexport = export -g -r qtip
-qexportall = diff -r qparent
-
-[defaults]
-commit = -v
-diff = -p -U 8
-qdiff = -p -U 8
-qnew = -U
-
-[diff]
-git = 1
-showfunc = 1
-unified = 8
-
-[extensions]
-hgext.mq =
-progress =
-
-[hooks]
-
-</pre>
-
-<p>Put in your name and email address which later will be public on the internet after your translation patch got accepted and uploaded. Save the file and close it.</p>
-
-<h2 id="Ativar_filas_do_Mercurial_(correções_revertíveis)">Ativar filas do Mercurial (correções revertíveis)</h2>
-
-<p>Some time will pass between the moment in which you start the localization, finish it, test it, improve it, upload it for review and get review (maybe not approved on first try). Other localizers will likely have done changes to the translation, either adding new texts, removing obsolete ones or improving the current texts. This can cause conflicts between the changes you created and theirs. For this reason, updating patches kann be necessary so Mercurial is still able to find the lines in the files which it has to replace or where it has to add them. <a href="/en-US/docs/Mercurial_Queues">Mercurial queues</a> allow to revert changes and also pull changes and reapply your local changes.</p>
-
-<p>Go back to the localization directory:</p>
-
-<p><code>cd /c/Mozilla/de-mozilla-aurora</code></p>
-
-<p>Initiate Mercurial queues:</p>
-
-<p><code>hg qinit</code></p>
-
-<h2 id="Conhecer_o_estilo_de_tradução">Conhecer o estilo de tradução</h2>
-
-<p>For having good chances that the translation suggestions get accepted, they should match the translation style of the texts in the application already translated. In general, the labels in the applications should have the same style like the operating system, e.g. use the same order of subject, verb and objects; decline verbs or not like the operating system does.</p>
-
-<p>The following resources can help figuring out the translation style and translate according to them:</p>
-
-<ul>
- <li><a href="https://l10n.mozilla.org/teams/">Check your localization team's page</a> by clicking on the team with your <a href="https://en.wikipedia.org/wiki/Language_code">language code</a> (e.g. "de" for German) for a style guide (e.g. <a href="https://wiki.mozilla.org/L10n:Teams:de/Leitfaden_%C3%9Cbersetzung">style guide</a> for German).</li>
- <li><a href="http://transvision.mozfr.org/">Transvision</a> offers searching for texts and text ids ("entities" or "keys"), allowing to quickly find translations for already translated texts.</li>
- <li><a href="http://www.microsoft.com/language/de-de/default.aspx">Microsoft's terminology search</a> allows fast lookups of localized technical terms.</li>
-</ul>
-
-<h2 id="Escolher_o_que_traduzir">Escolher o que traduzir</h2>
-
-<p>Go to the <a href="https://l10n.mozilla.org/teams/">Localization status page</a> and click on the '&lt;number&gt; missing' label of the Firefox branch on which you want to translate, e.g. <strong>fx_aurora</strong>. The page which opens has a bar holding information about how many texts (strings) have already been translated, how many there are in English and your locale and have the same text, and how many are missing in your local. The interesting part follows below as list of missing texts.</p>
-
-<p><img alt="unchanged localization report" src="https://mdn.mozillademos.org/files/7303/mozilla%20-%20localization%20report%20-%20new.png" style="height: 396px; width: 483px;"></p>
-
-<p>The first line shows the locale for which the texts are being translated (in this example: de - German). With the second line start the file paths of the files which require changes. The file paths follow the directory structure of the locale repository downloaded for translation. In this example, the file aboutDialog can be found in the folder browser/chrome/browser/. The text striked through are texts which have been removed in the English version and can also be removed from the locale being worked on. In this example we will translate the one new text with the id <strong>privatebrowsingpage.howToStart4</strong> in the file <strong>aboutPrivateBrowsing.dtd</strong>.</p>
-
-<p>Tips for finding files with usually easily translateable texts:</p>
-
-<ul>
- <li>Look for files in browser/chrome/browser/</li>
- <li>Look for a file with only a few changes</li>
- <li>Suggestions
- <ul>
- <li>Files starting with <strong>about</strong>...</li>
- <li>Files in the <strong>preferences</strong> directory (browser/chrome/browser/preferences/)</li>
- <li>The <strong>browser.dtd</strong> and <strong>browser.properties</strong> files if there aren't too many new strings.</li>
- </ul>
- </li>
-</ul>
-
-<h2 id="Monotorizar_o_progresso_de_tradução">Monotorizar o progresso de tradução</h2>
-
-<p>If you translate more than a few strings, you usually want to keep track of what has already been translated (and later if the text has been tested in the product as fitting into the available area and suiting the functionality it describes). This guide achieves this with the Firefox extension <a href="https://addons.mozilla.org/firefox/addon/scrapbook/">Scrapbook</a>.</p>
-
-<ol>
- <li>You installed Scrapbook earlier, now open it in Firefox either by calling it from the Firefox menu bar (press the Alt key to show it if necessary) using "View" &gt; "Sidebar" &gt; "Scrapbook" or by clicking its toolbar button which you likely have to add by toolbar customization if you didn't do this before.</li>
- <li>Drag the tab with the localization error showing missing and obsolete strings to the sidebar.</li>
- <li>After Scrapbook has saved the web page to your local disk, click with the right mouse button on the page in the sidebar and choose "Properties" from the context menu which gets opened. Rename it something meaningful, e.g. "Firefox &lt;version number&gt; translation".</li>
- <li>After you saved the dialog, click with the left mouse button on the page in the sidebar to open the locally saved copy.</li>
-</ol>
-
-<h2 id="Abrir_ficheiros_em_inglês_e_o_idioma_de_destino_lado-a-lado">Abrir ficheiros em inglês e o idioma de destino lado-a-lado</h2>
-
-<p>The localization report shows the IDs of added or removed texts, but the English text itself is still unknown. We get this by comparing the English version of the file with the one of the locale we are translating in. To do so,</p>
-
-<ol>
- <li>Launch WinMerge.</li>
- <li>From its "File" menu, choose "Save project".</li>
- <li>For the file path of the left directory, go to the downloaded <code>mozilla-aurora</code> source code and then into its <strong><code>browser/locales/en-US/</code></strong> folder. In this example, the absolute file path is <code>C:\Mozilla\mozilla-aurora\browser\locales\en-US</code>.</li>
- <li>Enable read-only mode for the left directory.</li>
- <li>For the file path of the right directory, go to the downloaded translation directory <code>de-mozilla-aurora</code> and then into its <code>browser</code> folder. In this example, the absolute file path is <code>C:\Mozilla\de-mozilla-aurora\browser</code>.</li>
- <li>Save this comparison as project so you can easily relaunch this comparision without selecting the directories again. A good name is e.g. <code>translation-mozilla-aurora-browser.winmerge</code></li>
- <li>Open the comparison you just saved.</li>
-</ol>
-
-<h2 id="A_tradução">A tradução</h2>
-
-<ol>
- <li>
- <p>Bring the console with Mercurial to the front.</p>
- </li>
- <li>
- <p class="brush: bash">Start tracking changes you make against the localization repository by telling it that with the <strong><code>qnew</code></strong> subcommand to save these changes as patch in a mercurial queue. This patch needs a name, choose something meaning full like "<code>Firefox-&lt;version number&gt;-more-details</code>". In this example, <code>Firefox-29-aboutPrivateBrowsing</code> will be used.<br>
- <code>hg qnew Firefox-29-aboutPrivateBrowsing</code></p>
- </li>
- <li>Switch back to WinMerge and navigate to <code>browser/chrome/browser/</code> and open the <code>aboutPrivateBrowsing.dtd</code> file. You will see something like this:<br>
- <img alt="single file comparision in WinMerge without changes by the user" src="https://mdn.mozillademos.org/files/7305/mozilla%20-%20compare%20-%20unchanged.png"><br>
- On the left, you see an overview of the comparison of the English and the non-English file. Gray parts indicate blocks of texts which can't be found in that file, dark yellow represents changed lines and light yellow the parts of text in it which is different.</li>
- <li>Below the license header which should never changed, the texts are organized in the following format:<br>
- <code>&lt;!ENTITY stringid "Text which will be shown in Firefox"&gt;</code></li>
- <li>As you can see there is a bigger block of text not recognized. This is due to the texts which have in the English versionmoved from below the string with the id <code>privatebrowsingpage.howToStart3</code> to a position above it. Cut and paste these strings in the localized file so their position corresponds to the on in the English file.</li>
- <li>Press the F5 key or click the reload button in WinMerge's toolbar to re-compare the files.</li>
- <li>Now copy the empty lines below <code>privatebrowsingpage.learnMore</code> and the line <code>&lt;!-- TO BE REMOVED POST-AUSTRALIS --&gt;</code> to the localized file. This text is a comment (which in .dtd files always can be found between <code>&lt;!--</code> and <code>--&gt;</code>). There is no need to translate this text.</li>
- <li>Now we copy the two missing lines from the English file and insert them in the localized file:<br>
- <code>&lt;!-- LOCALIZATION NOTE (privatebrowsingpage.howToStart4): please leave &amp;newPrivateWindow.label; intact in the translation --&gt;<br>
- &lt;!ENTITY privatebrowsingpage.howToStart4               "To start Private Browsing, you can also select &amp;newPrivateWindow.label; from the menu."&gt;</code><br>
- The first line is a comment providing information on the localization of the text in the following line. <code>&amp;newPrivateWindow.label;</code> has to be left unchanged so it can be replaced with the text of the string id <code>&amp;newPrivateWindow.label;</code> whis is stored elsewhere<code>.</code></li>
- <li><strong>Translation time</strong>: Translate the text. Afterwars, the line should look somehow like this:<br>
- <code>&lt;!ENTITY privatebrowsingpage.howToStart4               "Der private Modus kann auch über den Menü-Eintrag &amp;newPrivateWindow.label; gestartet werden."&gt;</code></li>
- <li>Save the file.</li>
-</ol>
-
-<h2 id="Exportar_as_alterações_como_correção">Exportar as alterações como correção</h2>
-
-<p>A patch is a file containing recorded changes to a repository. It can be used to apply these changes to a copy of the repository yet without these changes.</p>
-
-<ol>
- <li>Tell Mercurial to store the changes in the Mercurial queue with the <code>qref</code> command. We also create a commit message which will describe the changes in the patch and later get used when the patched gets checked in ('added') to the official repository with the localized files. For the commit message, we have to use the <code>-m</code> command line flag,<br>
- <code>hg qref -m "Firefox 29: Localize missing string in aboutPrivateBrowsing.dtd"</code><br>
- You can change the commit message in the Mercurial queue every time by calling <code>hg qref</code> again.</li>
- <li>Now export the patch to the file system using the <code>qexport</code> command which is defined in the <code>.hgrc</code> file (see above):<br>
- <code>hg qexport &gt; ../firefox-29-aboutPrivateBrowsing-v1.patch</code><br>
- This creates a patch file called <code>firefox-29-aboutPrivateBrowsing-v1.patch</code> containing the changes in the parent directory of <code>de-mozilla-aurora</code> (in this example: <code>C:\Mozilla\</code>).</li>
-</ol>
-
-<h2 id="Correção_ortográfica_e_alterar_a_correção_(patch)">Correção ortográfica e alterar a correção (patch)</h2>
-
-<p>Now proof-read the patch. This detects often more than 90 percent of the possible reasons for the reviewer to not accept the patch. If you find that changes have to be done, edit the real aboutPrivateBrowsing.dtd file from the localization repository, save it and follow the steps from Exporting the changes as patch (see above).</p>
-
-<h2 id="Validar_a_tradução_no_produto">Validar a tradução no produto</h2>
-
-<p>This guide hasn't yet a section about the validation of the translation. Please follow the instructions from the <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Localization/Quick_start_guide/QA_phase">QA phase section of the Localization quick start guide</a>.</p>
-
-<h2 id="Submeter_a_correção_(patch)_para_revisão">Submeter a correção (patch) para revisão</h2>
-
-<p>Now the patch has to be shared so the people currently trusted to change the official translation can review the suggested changes.</p>
-
-<ol>
- <li>File a <a href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Mozilla%20Localizations">bug ("ticket") in the Mozilla Localization product</a> and choose as component the localization for which you have translated.</li>
- <li>Choose a meaningful bug summary which will be shown for searches etc. like in this example "Firefox 29: aboutPrivateBrowsing.dtd"</li>
- <li>Fill any important and additional information into the description field.</li>
- <li>Click the 'Add attachment' button.</li>
- <li>Select the exported patch file with the file picker. The checkbox for 'patch' should get automatically checked.</li>
- <li>Add a meaningful name for the attachment, e.g. aboutPrivateBrowsing.dtd, patch, v1</li>
- <li>Go to the review 'Flags' category and set the one for <strong>review</strong> to <strong>?</strong>, meaning that you request review for the patch.</li>
- <li>In the text field next to it, add the mail address of the person leading the translation of the locale. This information can be found on the <a href="https://l10n.mozilla.org/teams/">page of the localization team</a>.</li>
- <li>Submit the bug report.</li>
- <li>Now you have to wait for the review of that person. This can happen on the same day, on the next weekend or later, but should happen in the timeframe given for the localization of aurora. If the person requests changes, follow the instructions under <strong>Proof-reading and altering the patch</strong>. If the reviewer accepts the changes, the patch will get uploaded and your translation will officially be added to Firefox.</li>
-</ol>
diff --git a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/configuracao_inicial/index.html b/files/pt-pt/mozilla/localization/guia_iniciação_rápida/configuracao_inicial/index.html
deleted file mode 100644
index abde7e440f..0000000000
--- a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/configuracao_inicial/index.html
+++ /dev/null
@@ -1,81 +0,0 @@
----
-title: Configuração Inciail
-slug: Mozilla/Localization/Guia_iniciação_rápida/Configuracao_inicial
-translation_of: Mozilla/Localization/Quick_start_guide/Initial_setup
----
-<p>Como um pré-requisito para contribuir com o programa de L10n, precisa de ter acesso aos códigos, ferramentas e um ambiente local adequadamente configurado (ou seja, o seu computador pessoal). Também precisa de determinar se já existe um esforço de localização para o seu idioma. Aqui, nós irmos ver as contas de que precisa, bem como as ferramentas e as suas configurações que precisa de configurar antes de contribuir.</p>
-
-<h3 id="Nova_ou_existente">Nova ou existente</h3>
-
-<p>Before anything else, you need to know if you will be creating a new localization or joining an existing one. This will determine what information is most applicable to you throughout the rest of this guide.</p>
-
-<p>Veja o que faz:</p>
-
-<p>Look through the existing <a class="link-https" href="https://wiki.mozilla.org/L10n:Teams" title="https://wiki.mozilla.org/L10n:Teams">localization community directory</a> to see if one already exists for your locale.</p>
-
-<ol start="1" style="list-style-type: lower-alpha;">
- <li><span style="color: #0000cd;">If a community already exists, reach out to them and ask how you can help.</span></li>
- <li><span style="color: #ff8c00;">If a community doesn't exist, send an <a class="link-https" href="https://groups.google.com/forum/?fromgroups#!forum/mozilla.dev.l10n.new-locales" title="https://groups.google.com/forum/?fromgroups#!forum/mozilla.dev.l10n.new-locales">email to the new-locales newsgroup</a> for additional guidance</span><span style="color: #ff8c00;">.</span></li>
-</ol>
-
-<h3 id="Contas">Contas</h3>
-
-<p>There are a handful of accounts that you need to be aware of as you begin. They're not required for you to begin contributing, but will be required when you are preparing to produce an official release. For now, simply be aware that these will become important as your efforts progress. These accounts will store your code, contributions, and help you produce an official localization.</p>
-
-<dl>
- <dt style="margin-left: 40px;">hg (Mercurial)</dt>
- <dd style="">Mercurial is the revision control environment that houses the main Mozilla source code as well as localized code for each official Mozilla localization. You will need this for localizing Mozilla applications. Hg commit access is <u>not</u> necessary to begin localizing. After you have some experience with hg, you may want to get commit access. At that point, you must visit the <a class="external" href="http://www.mozilla.org/hacking/committer/" title="http://www.mozilla.org/hacking/committer/">Mozilla Committer page</a> and follow the process outlined there. <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=741305" title="https://bugzilla.mozilla.org/show_bug.cgi?id=741305">Here is an example bug</a> that illustrates the process well. Use <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Repository%20Account%20Requests&amp;rep_platform=All&amp;op_sys=All&amp;cc=l10n%40mozilla.com&amp;short_desc=l10n%20hg%20account%20for%20John%20Doe%20(ab-CD)" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Repository%20Account%20Requests&amp;rep_platform=All&amp;op_sys=All&amp;cc=l10n%40mozilla.com&amp;short_desc=l10n%20hg%20account%20for%20John%20Doe%20(ab-CD)">this bug template</a> when filing your hg account registration bug. <span>Add a request about creating your locale's repository to the <a class="external" href="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics" title="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics">new locales newsgroup</a>.</span></dd>
- <dt style="margin-left: 40px;">SVN</dt>
- <dd style="margin-left: 40px;">SVN is a revision control environment that Mozilla uses to house Mozilla source websites and their localizations for each official Mozilla localization. See <a class="link-https" href="https://wiki.mozilla.org/SVN#SVN_account_for_localizers" title="https://wiki.mozilla.org/SVN#SVN_account_for_localizers">this wiki page</a> about how to gain access to SVN. The <a href="https://developer.mozilla.org/en-US/docs/SVN_guide_for_localizers" title="https://developer.mozilla.org/en-US/docs/SVN_guide_for_localizers">SVN for Localizers guide</a> will help you learn the most important SVN commands for l10n. <span>Add a request about creating your locale's repository to the <a class="external" href="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics" title="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics">new locales newsgroup</a>.</span></dd>
-</dl>
-
-<dl>
- <dt style="margin-left: 40px;">Ferramentas de L10n baseadas na Web</dt>
- <dd style="margin-left: 40px;">We'll talk about these in a little bit. For now, just be aware that should you choose to use them, you may need to create a personal account.</dd>
- <dt style="margin-left: 40px;">Mozilla LDAP</dt>
- <dd style="margin-left: 40px;">You will need a Mozilla LDAP account once you're ready to have your localization registered on the main Mozilla repositories. Add a request about creating your LDAP account to the<a class="external" href="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics" title="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics"> new locales newsgroup</a>.</dd>
- <dt style="margin-left: 40px;">Componente de Bugzilla específico do local</dt>
- <dd style="margin-left: 40px;"><span>Having a Bugzilla component specific to your locale will help us to track your localization's progress from first steps to official release. It will also notify us when you're having problems unique to your localization team's work. Add a request about creating your locale's Bugzilla component to the </span><a class="external" href="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics" title="http://groups.google.com/group/mozilla.dev.l10n.new-locales/topics"><span>new locales newsgroup</span></a><span>.</span></dd>
-</dl>
-
-<h3 id="Ferramentas_de_ambiente_locais">Ferramentas de ambiente locais</h3>
-
-<p>Similar to accounts, there is a number of environment tools that you should install on your personal computer. These tools will help you to store your contributions, build Mozilla applications and language packs, and test your work.</p>
-
-<dl>
- <dt style="margin-left: 40px;">Hg (Mercurial)</dt>
- <dd style="margin-left: 40px;">As noted above, we use Mercurial for maintaining Mozilla source code and localized code. Not only will you need a localization repository to store your localizations, but you need to have it installed and configured on your personal computer as well. You can find everything you need to know about installing and configuring Mercurial for your localization work <a href="/en/Localizing_with_Mercurial#Install_Mercurial" title="https://developer.mozilla.org/en/L10n_on_Mercurial#Install_Mercurial">here</a>.</dd>
-</dl>
-
-<dl>
- <dt style="margin-left: 40px;">comparar-idiomas</dt>
- <dd style="margin-left: 40px;">compare-locales is a Python script that helps you check your work without needing to run Firefox or another application. Install intructions are located <a href="/en/Compare-locales" title="https://developer.mozilla.org/en/Compare-locales">here</a>.</dd>
- <dt style="margin-left: 40px;">Verificações de L10n</dt>
- <dd style="margin-left: 40px;">L10n checks is another Python script that helps you check your work without running an application. Install instructions are located <a href="/en/L10n_Checks" title="https://developer.mozilla.org/en/L10n_Checks">here</a>.</dd>
- <dt style="margin-left: 40px;">autoconf 2.13</dt>
- <dd style="margin-left: 40px;">autoconf is a utility that is vital to manually creating Mozilla application builds and language packs. We use version 2.13 and higher for these builds. You can find the source files and install instructions <a class="external" href="http://www.gnu.org/software/autoconf/" title="http://www.gnu.org/software/autoconf/">here</a>.</dd>
- <dt style="margin-left: 40px;">wget</dt>
- <dd style="margin-left: 40px;">wget is a command-line utility that allows you to retrieve files using internet protocols. We use it for retrieving files from repositories. You can find the source files and install instructions <a class="external" href="http://www.gnu.org/s/wget/" title="http://www.gnu.org/s/wget/">here</a>.</dd>
- <dt style="margin-left: 40px;">Perl</dt>
- <dd style="margin-left: 40px;">Perl is a programming language that will help you create Mozilla application builds and language packs. You can find the source files and install instructions <a class="external" href="http://www.perl.org/" title="http://www.perl.org/">here</a>.</dd>
- <dt style="margin-left: 40px;">Python</dt>
- <dd style="margin-left: 40px;">Python is a programming language in which many of our L10n testing scripts are written. You can find the source files and install instructions <a class="external" href="http://python.org/" title="http://python.org/">here</a>.</dd>
- <dt style="margin-left: 40px;">Locale Switcher ou Quick Locale Switcher</dt>
- <dd style="margin-left: 40px;">Ambos o Locale Switcher e o Quick Locale Switcher são extras para as aplicações da Mozilla. Either one is necessary to enable you to see your work within a Mozilla application. You can install either by searching for them in Firefox's add-ons manager or following <a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/locale-switcher/" title="https://addons.mozilla.org/en-US/firefox/addon/locale-switcher/">these</a> <a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/quick-locale-switcher/" title="https://addons.mozilla.org/en-US/firefox/addon/quick-locale-switcher/">links</a>.</dd>
- <dt style="margin-left: 40px;">Um editor de texto sólido, baseado em Unicode</dt>
- <dd style="margin-left: 40px;">Here are some suggestions:
- <ul>
- <li style="margin-left: 40px;">Windows: <a class="external" href="http://notepad-plus.sourceforge.net/uk/site.htm" rel="external nofollow" title="http://notepad-plus.sourceforge.net/uk/site.htm">Notepad++</a> or <a class="external" href="http://www.flos-freeware.ch/notepad2.html" rel="external nofollow" title="http://www.flos-freeware.ch/notepad2.html">Notepad2</a></li>
- <li style="margin-left: 40px;">GNU/Linux: <a class="external" href="http://en.wikipedia.org/wiki/Vim_%28text_editor%29" rel="external nofollow" title="http://en.wikipedia.org/wiki/Vim_(text_editor)">vim</a>, <a class="external" href="http://projects.gnome.org/gedit/" rel="external nofollow" title="http://projects.gnome.org/gedit/">gedit</a> or <a class="external" href="http://www.kate-editor.org/kate" rel="external nofollow" title="http://www.kate-editor.org/kate">Kate</a></li>
- <li style="margin-left: 40px;">Mac OS X: <a class="external" href="http://www.barebones.com/products/TextWrangler/" rel="external nofollow" title="http://www.barebones.com/products/TextWrangler/">TextWrangler</a></li>
- </ul>
- </dd>
- <dt style="margin-left: 40px;">GNU make</dt>
- <dd style="margin-left: 40px;"><span class="external">Make is a tool which controls the generation of executables. You can find version</span> 3.79.1 or higher <a class="external" href="http://www.gnu.org/software/make/" title="http://www.gnu.org/software/make/">here</a>. Unfortunately, other varieties of <code>make</code> won't do.</dd>
-</dl>
-
-<h2 id="Fim_da_configuração_inicial">Fim da configuração inicial</h2>
-
-<p>Agora que concluiu a configuração inicial, é hora da melhor parte: traduzir!</p>
-
-<p>{{ PreviousNext("Localization_Quick_Start_Guide", "Localization_Quick_Start_Guide/Translation_phase") }}</p>
diff --git a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_da_traducao/index.html b/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_da_traducao/index.html
deleted file mode 100644
index cdb31df82a..0000000000
--- a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_da_traducao/index.html
+++ /dev/null
@@ -1,120 +0,0 @@
----
-title: Fase da Tradução
-slug: Mozilla/Localization/Guia_iniciação_rápida/Fase_da_Traducao
-tags:
- - Localização
- - 'Localização: Ferramentas'
- - Tradução
-translation_of: Mozilla/Localization/Quick_start_guide/Translation_phase
----
-<p>Parabéns por completar a configuração inicial! Como recompensa pelos seus esforços, você começa a pensar no motivo pelo qual veio até aqui: localizar projetos da Mozilla.</p>
-
-<p>É onde o aspeto técnico do processo começa a dividir-se. Na Mozilla, nós localizamos muitos projetos diferentes que podem ser categorizados em três grupos diferentes. Cada grupo de projetos emprega um tipo diferente de ferramenta l10n para, você adivinhou, localizar os projetos. As ferramentas do l10n destinam-se a ajudá-lo a manter o seu conteúdo localizado de lançamento a lançamento e aproveitar os materiais já localizados quando localiza novo conteúdo.</p>
-
-<p>Aqui, nos iremo identificar esses grupos de projetos e as ferramentas de l10n associadas com os mesmo. Ao longo do caminho, nós iremos direcioná-lo para os tutoriais técnicos básicos sobre a localização desse grupo específico de projetos. Cabe a si, e à sua comunidade determinar qual a ferramenta de l10n corresponderá melhor às suas necessidades. À medida que ganha mais experiência, talvez queira localizar independentemente das ferramentas de l10n desenvolvidas pela Mozilla, que nós também discutiremos aqui.</p>
-
-<h2 id="Projetos">Projetos</h2>
-
-<p>Os projetos da Mozilla e os ritmos de trabalho de l10n são divididos nestes grupos: aplicações da Mozilla, sites da Web da Mozilla, e Extras. Em baixo, irá encontrar a lista de todos os projetos da Mozilla, as suas ferramentas de l10n associadas, e hiperligações para tutoriais descrevendo os seus ritmos de trabalho.</p>
-
-<h3 id="Aplicações_da_Mozilla">Aplicações da Mozilla</h3>
-
-<p>So you're interested in localizing Mozilla applications. Each l10n tool follows a different workflow for localizing Mozilla application projects. We've linked a brief tutorial to each l10n tool name below. Follow the tutorials to help you decide which l10n tool fits your specific needs.</p>
-
-<p>These are the l10n tools we use to localize Mozilla applications:</p>
-
-<dl>
- <dt style="margin-left: 40px;"><a class="external" href="http://translate.sourceforge.net/wiki/guide/mozilla" title="http://translate.sourceforge.net/wiki/guide/mozilla">Pootle</a></dt>
- <dd style="margin-left: 40px;">A user-friendly web portal built on the Translate Toolkit API. This tool includes workspaces for translating strings, reviewing string submissions, and project dashboards. See the <a class="external" href="http://pootle.locamotion.org/" title="http://pootle.locamotion.org/">instance of Pootle used to localize Mozilla applications</a>.</dd>
-</dl>
-
-<dl>
- <dt style="margin-left: 40px;"><a href="/en/Localizing_with_Koala" title="https://developer.mozilla.org/en/Localizing_with_Koala">Koala</a></dt>
- <dd style="margin-left: 40px;">A l10n add-on for the offline, stand-alone Komodo Edit text editor.</dd>
- <dt style="margin-left: 40px;"><a class="external" href="/en/Localizing_with_Mozilla_Translator" title="https://developer.mozilla.org/en/Localizing_with_Mozilla_Translator">Mozilla Translator</a></dt>
- <dd style="margin-left: 40px;">Am offline, stand-alone, Java-based l10n tool that helps you translate and integrates with your repositories. Visit the <a class="external" href="http://kenai.com/projects/moztrans/downloads" title="http://kenai.com/projects/moztrans/downloads">Mozilla Translator (MT) download page</a> to get your own MT client. Version 5.26 is the latest version.</dd>
- <dt style="margin-left: 40px;">Virtaal</dt>
- <dd style="margin-left: 40px;">An offline, stand-alone version of Pootle that is also built on the Translate Toolkit API.</dd>
-</dl>
-
-<p>These are the Mozilla application projects that are localized using the l10n tools above:</p>
-
-<dl>
- <dt style="margin-left: 40px;">Firefox</dt>
- <dd style="margin-left: 40px;">The award-winning Firefox® Web browser has security, speed and new features that will change the way you use the Web. <span style="color: #daa520;">See the <a class="external" href="http://zaf.svn.sourceforge.net/viewvc/zaf/trunk/po/fftb/firefox.phaselist" title="http://zaf.svn.sourceforge.net/viewvc/zaf/trunk/po/fftb/firefox.phaselist">list of the most critical strings for localizing in Firefox</a></span><span style="color: #daa520;">, as well as <a class="external" href="http://zaf.svn.sourceforge.net/viewvc/zaf/trunk/po/fftb/phases" title="http://zaf.svn.sourceforge.net/viewvc/zaf/trunk/po/fftb/phases">a guide to understanding how they're organized</a></span><span style="color: #daa520;">.</span></dd>
- <dt style="margin-left: 40px;">Thunderbird</dt>
- <dd style="margin-left: 40px;">Enjoy safe, fast and easy email, Mozilla-style. The Thunderbird® email client includes intelligent spam filters, powerful search and customizable views.</dd>
- <dt style="margin-left: 40px;">Seamonkey</dt>
- <dd style="margin-left: 40px;">SeaMonkey® is the all-in-one application formerly known as the "Mozilla Application Suite", containing a web browser, a mail and newsgroups client, an HTML editor, web development tools, and an IRC chat client.</dd>
- <dt style="margin-left: 40px;">Firefox Mobile</dt>
- <dd style="margin-left: 40px;">By adding Firefox® to your mobile phone, you can access rich Web content and enjoy your favorite Firefox features wherever you go.</dd>
- <dt style="margin-left: 40px;">Lightning</dt>
- <dd style="margin-left: 40px;">Lightning is a popular calendaring, scheduling and task management extension.</dd>
-</dl>
-
-<p><span style="color: #0000ff;">If your locale has an hg repository hosted on the Mozilla servers, you can track your localization's current progress by visiting the </span><a class="link-https" href="https://l10n.mozilla.org/teams/" title="https://l10n.mozilla.org/teams/"><span style="color: #0000ff;">l10n dashboards</span></a><span style="color: #0000ff;">.</span></p>
-
-<div class="note">
-<p><strong>Nota:</strong> <span style="color: #ff8c00;">se estiver a iniciar uma nova localização e decidir utilizar uma ferramenta off-line para localizar aplicações da Mozilla, terá que familiarizar-se com a utilização de Mercurial (hg). Visite o tutorial <a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Localization/Localizar_com_Mercurial" title="https://developer.mozilla.org/en-US/docs/Localizing_with_Mercurial"><span style="color: #ff8c00;">sobre como utilizar "hg" nos seus esforços de localização aqui</span></a><span style="color: #ff8c00;">. </span></span></p>
-</div>
-
-<h3 id="Sites_da_Web_da_Mozilla">Sites da Web da Mozilla</h3>
-
-<p>So you're interested in localizing Mozilla websites. Each l10n tool follows a different workflow for localizing Mozilla web projects. We've linked a brief tutorial to each l10n tool name below. Follow the tutorials to help you decide which l10n tool fits your specific needs.</p>
-
-<p>These are the l10n tools we use to localize Mozilla web projects:</p>
-
-<dl>
- <dt style="margin-left: 40px;"><a href="/en-US/docs/Localizing_with_Pontoon" title="/en-US/docs/Localizing_with_Pontoon">Pontoon</a></dt>
- <dd style="margin-left: 40px;">A web-based, What-You-See-Is-What-You-Get (WYSIWYG) l10n tool that allows you to localize Mozilla websites within the site itself. Visit <a class="external" href="https://pontoon.mozilla.org" title="http://horv.at/pontoon/">Pontoon</a> here. Please note the Pontoon is not available for all web projects yet.</dd>
-</dl>
-
-<p>These are the Mozilla web projects that are localized using the l10n tools above:</p>
-
-<dl>
- <dt style="margin-left: 40px;">mozilla.org</dt>
- <dd style="margin-left: 40px;">Every user's first Mozilla experience.</dd>
- <dt style="margin-left: 40px;">addons.mozilla.org (AMO)</dt>
- <dd style="margin-left: 40px;">A portal for all users interested in finding add-ons for their local Mozilla applications. Read the <a class="link-https" href="https://addons.mozilla.org/en-US/localizers/" title="https://addons.mozilla.org/en-US/localizers/">guidelines on localizing AMO</a>, straight from the AMO team.</dd>
- <dt style="margin-left: 40px;">developer.mozilla.org (MDN)</dt>
- <dd style="margin-left: 40px;">Where you are now! Help localize the MDN user interface for everyone in your region.</dd>
- <dt style="margin-left: 40px;">support.mozilla.com (SUMO)</dt>
- <dd style="margin-left: 40px;">A portal for anyone who needs technical support for their Mozilla applications. Help localize the SUMO user interface for everyone in your region.</dd>
- <dt style="margin-left: 40px;">Mozilla Engagement Campaigns</dt>
- <dd style="margin-left: 40px;">Individual campaigns created by Mozilla to attract new contributors.</dd>
- <dt style="margin-left: 40px;">hacks.mozilla.org</dt>
- <dd style="margin-left: 40px;">For everyone interested in the leading-edge stuff that people are doing with Mozilla Firefox and the open web.</dd>
- <dt style="margin-left: 40px;">In-product pages</dt>
- <dd style="margin-left: 40px;">A set of pages used to interact with and give information to the end-user as part of their first experience with their Mozilla applications.</dd>
-</dl>
-
-<p><span style="color: #ff8c00;">Se está a criar a sua própria localização, existem vários sites da Web da Mozilla que precisam de ser localizados antes que os seus esforços se tornem numa localização lançada oficialmente. Consulte a</span><span style="color: #ff8c00;"> <a class="link-https" href="https://wiki.mozilla.org/L10n:Web_parts#Firefox_in-product_pages" title="https://wiki.mozilla.org/L10n:Web_parts#Firefox_in-product_pages">lista de sites da Web localizados da Mozilla</a>. </span></p>
-
-<p>Também deveria ler <a class="link-https" href="https://wiki.mozilla.org/L10n:Web_parts" title="https://wiki.mozilla.org/L10n:Web_parts">mais informação sobre a localização de projetos da web da Mozilla</a>.</p>
-
-<dl>
- <dt> </dt>
-</dl>
-
-<h3 id="Extras_(Add-ons)">Extras (Add-ons)</h3>
-
-<p>l10n for add-ons is handled by at least two other organizations/services called Babelzilla and Adofex. They both have created comprehensive programs and l10n tools for localizing any and all third-party add-ons for Mozilla applications. Visit their websites to learn how to get involved.</p>
-
-<ul>
- <li><a class="external" href="http://babelzilla.org" title="http://babelzilla.org">Babelzilla</a></li>
- <li><a class="external" href="http://adofex.clear.com.ua/" title="http://adofex.clear.com.ua/">Adofex</a></li>
-</ul>
-
-<h2 id="Ferramenta_de_localização_independente">Ferramenta de localização independente</h2>
-
-<p>Are you a command-line master? Do you prefer Unicode text editors to any other applications on Earth? Do you have a pet CAT (computer-assisted translation) tool, like OmegaT? Then you may not be interested in using any of the tools listed above for your localizations. If that is the case, then this section is for you!</p>
-
-<p>For localizers who prefer localizing without a specialized tool the workflows for localizing Mozilla applications and Mozilla websites are essentially the same.<a href="/en/Localizing_without_a_specialized_tool" title="https://developer.mozilla.org/en/Localizing_without_a_specialized_tool"> This tutorial</a> should provide you with all of the technical information you need to secure and maintain your tool independence.</p>
-
-<h2 id="Produtibilidade">Produtibilidade</h2>
-
-<p>Productization is an essential part of localizing Mozilla products. This is where you research and select the search plugins, content and protocol handlers, bookmarks, and links to recommended sites on the in-product pages that your locale's users will find in their Mozilla products.</p>
-
-<p><a href="https://developer.mozilla.org/en-US/docs/Productization_guide" title="https://developer.mozilla.org/en/Productization_patches">This tutorial will walk you through performing these productization tasks</a>, creating productization patches, and submitting them for review.</p>
-
-<p>{{ PreviousNext("Localization_Quick_Start_Guide/Initial_setup", "Localization_Quick_Start_Guide/QA_phase") }}</p>
diff --git a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_de_lancamento/index.html b/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_de_lancamento/index.html
deleted file mode 100644
index 310ec4344e..0000000000
--- a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_de_lancamento/index.html
+++ /dev/null
@@ -1,177 +0,0 @@
----
-title: Fase de Lançamento
-slug: Mozilla/Localization/Guia_iniciação_rápida/Fase_de_lancamento
-translation_of: Mozilla/Localization/Quick_start_guide/Release_phase
----
-<p>Você conseguiu! Configurou os seus ambientes locais e remotos, selecionou as suas ferramentas e projetos de L10n, efetuou algumas traduções e até mesmo alguns testes! Agora está pronto para a fase final: ser parte de um lançamento oficial da L10n. Aqui, nós continuaremos a ser fiéis à intenção original deste guia e apresentaremos apenas a informação técnica necessária para se tornar num lançamento oficial. Nós vamos concentrar-nos principalmente em obter a configuração do seu repositório de lançamento e comandos do Mercurial que precisa de saber para utilizar este repositório.</p>
-
-<p>Para obter mais informação sobre a parte de lançamento do processo L10n, visite o site da <a class="link-https" href="https://wiki.mozilla.org/L10n:Becoming_an_Official_Localization" title="https://wiki.mozilla.org/L10n:Becoming_an_Official_Localization">wiki da Mozilla a</a>qui.</p>
-
-<h2 id="O_seu_repositório_oficial_de_lançamentos">O seu repositório oficial de lançamentos</h2>
-
-<p>Now that your locale has been registered, the localization files will live on Mozilla Mercurial server at <code>hg.mozilla.org</code>. Depending on which branch you work on, the URL of your repository might look like this:</p>
-
-<pre>http://hg.mozilla.org/releases/l10n-central/x-testing
-</pre>
-
-<p>If you followed the <a href="Localizing_with_Koala" rel="internal" title="en/Localizing with Koala">Koala</a> or <a href="Localizing_without_a_specialized_tool" rel="internal" title="en/Localizing without a specialized tool">plain text</a> approach, you probably already have a local clone of the repository. Otherwise, in order to be able to make any changes to the localization files, you will need to clone the repository on your local machine and work in the <em>local clone</em>.</p>
-
-<p>There are two different protocols you can use to connet with your Mercurial repository: HTTP and SSH. Be advised that there's an important distinction between them. You can <code>pull</code> using both, but you can only <code>push</code> through SSH. Consequently, if you already have a local clone that you pulled using HTTP, you'll need to modify a config file to tell Mercurial to push through SSH. Let's go over configuring your connection protocols.</p>
-
-<h3 class="editable" id="Configuração">Configuração</h3>
-
-<p>Before you try pushing, you need to tell SSH which username you wish to use for connecting with hg.mozilla.org. This should be your Mozilla LDAP account name.</p>
-
-<ol>
- <li>Add the following lines to your <code>~/.ssh/config</code> file, replacing <a class="link-mailto" href="mailto:user@host.domain" rel="external" title="mailto:user@host.domain">user@host.domain</a> with your Mozilla LDAP account name:</li>
-</ol>
-
-<pre class="eval">Host hg.mozilla.org
-User <a class="link-mailto" href="mailto:user@host.domain" rel="external" title="mailto:user@host.domain">user@host.domain</a></pre>
-
-<ol start="2" style="list-style-type: decimal;">
- <li>If you have already cloned the remote repository using the HTTP protocol using this command:<code> $ hg clone <strong>http</strong>://hg.mozilla.org/releases/l10n-central/x-testing</code> then you will need to edit the <code>.hg/hgrc</code> file (inside the <code>x-testing</code> local clone) to tell Mercurial to push using SSH. Your <code>.hg/hgrc</code> file shoud look like this (add the emphasized line):</li>
-</ol>
-
-<pre class="eval">[paths]
-default = hg.mozilla.org/releases/l10n-central/x-testing
-<strong>default-push = <a class="external" href="ssh://hg.mozilla.org/releases/l10n-central/x-testing" rel="external" title="ssh://hg.mozilla.org/releases/l10n-central/x-testing">ssh://hg.mozilla.org/releases/l10n-central/x-testing</a></strong>
-</pre>
-
-<ol start="3" style="list-style-type: decimal;">
- <li>If you haven't already cloned the remote repository, enter this command: <code>hg clone <strong>ssh</strong>://hg.mozilla.org/releases/l10n-central/x-testing</code></li>
-</ol>
-
-<p style="margin-left: 40px;">Mercurial will let you know that it's cloning the repository:</p>
-
-<pre style="margin-left: 40px;">destination directory: x-testing
-requesting all changes
-adding changesets
-adding manifests
-adding file changes
-added 4 changesets with 242 changes to 239 files
-updating to branch default
-239 files updated, 0 files merged, 0 files removed, 0 files unresolved
-</pre>
-
-<p>The default <code>push</code> URL is the same as the default <code>pull</code> URL (i.e., <code><a class="external" href="ssh://hg.mozilla.org/releases/l10n-central/x-testing" rel="external" title="ssh://hg.mozilla.org/releases/l10n-central/x-testing">ssh://hg.mozilla.org/releases/l10n-central/x-testing</a></code>).</p>
-
-<p>You should now be able to <code>push</code> to the remote repository!</p>
-
-<h3 class="editable" id="Commit_outgoing_and_push">Commit, outgoing, and push</h3>
-
-<p>You should try to <code>commit</code> your work regularly as you progress through the localization files. Keep in mind that the <code>hg commit</code> command will save your changes locally (in the local clone). With the <code>hg push</code> command you can send the changesets to the remote server. Here's how that's done:</p>
-
-<ol>
- <li>Run this command to see recent commits in your local clone: <code>$ hg log -l 3</code></li>
-</ol>
-
-<p style="margin-left: 40px;">You should a list of the most recent commits, similar to this one:</p>
-
-<pre style="margin-left: 40px;">changeset: 0:7c543e8f3a6a
-tag: tip
-user: Your Name &lt;email@example.com&gt;
-date: Mon Nov 23 18:08:25 2009 +0100
-summary: Added search bar strings
-</pre>
-
-<ol start="2" style="list-style-type: decimal;">
- <li>Now run the <code>hg outgoing</code> command to compare the local repository on your machine with the remote repository on hg.mozilla.org.</li>
-</ol>
-
-<p style="margin-left: 40px;">The <code>hg outgoing</code> command compares the two repositories and lists all changesets that are present locally, but not in the remote repository. These changesets will need to be pushed to the remote repository. The output will look something like this:</p>
-
-<pre style="margin-left: 40px;">comparing with ssh://hg.mozilla.org/releases/l10n-central/x-testing
-searching for changes
-
-changeset: 0:7c543e8f3a6a
-tag: tip
-user: Your Name &lt;email@example.com&gt;
-date: Mon Nov 23 18:08:25 2009 +0100
-summary: Added search bar strings
-</pre>
-
-<ol start="3" style="list-style-type: decimal;">
- <li>Make sure this output is accurate before continuing.</li>
- <li>Once you've made sure the outgoing output is accurate, push this changeset to hg.mozilla.org by running the <code>hg push</code> command.</li>
-</ol>
-
-<p style="margin-left: 40px;">Mercurial will connect to the remote repository, authenticate through SSH and send the changesets. The output should look something like this:</p>
-
-<pre style="margin-left: 40px;">pushing to ssh://hg.mozilla.org/releases/l10n-central/x-testing
-searching for changes
-adding changesets
-adding manifests
-adding file changes
-added 1 changesets with 2 changes to 2 files
-</pre>
-
-<p>Congratulations! Your changeset has been successfully pushed to hg.mozilla.org! You can now visit <span style="font-family: monospace;">http</span><code>://hg.mozilla.org/releases/l10n-central/x-testing</code> in your browser to see the new changeset in the remote repository.</p>
-
-<h3 class="editable" id="Resolução_de_problemas_de_SSH">Resolução de problemas de SSH</h3>
-
-<p>If pushing fails, make sure your <code>~/.ssh/config </code>has the correct <code>User</code> set under the <code>hg.mozilla.org</code> host. This should be your Mozilla LDAP account name. Next, try issuing the following command: <code>$ ssh hg.mozilla.org</code></p>
-
-<p>If SSH is working fine, you should see the following message:</p>
-
-<pre>No interactive shells allowed here!
-Connection to hg.mozilla.org closed.
-</pre>
-
-<p>If you don't see this message, try running the same command in a more verbose mode (with the debugging information): <code>$ ssh -vvv hg.mozilla.org</code></p>
-
-<p>This should tell you why your connection is not succeeding. If you can't figure it out on your own, copy the output of the above command, paste it on <a class="external" href="http://pastebin.mozilla.org/" rel="external" title="http://pastebin.mozilla.org/">http://pastebin.mozilla.org</a> and ask in #l10n on the irc.mozilla.org server.</p>
-
-<h2 id="Revisões_técnicas_e_assinadas">Revisões técnicas e assinadas</h2>
-
-<p>You've done some localization work and your ready for it to be released. The merge date for migrating from one product release channel to the next is rapidly approaching. You need to make sure that your work can effectively be compiled into a build for the next release channel. Do you know whether to ask for technical review of your work or a sign-off review? Do you know what what exactly is reviewed in each process? Technical and sign-off reviews apply to different localizations in different ways. Here's the basic difference between the two.</p>
-
-<table style="width: 100%;">
- <thead>
- <tr>
- <th scope="col" style="text-align: center;"><strong>Revisão Técnica</strong></th>
- <th scope="col" style="text-align: center;"><strong>Revisão Assinada</strong></th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>
- <ul>
- <li>Performed as a QA measure on a revision pushed to a new locale's L10n aurora repo in Mercurial.</li>
- <li>Very comprehensive. Covers the entire product.</li>
- <li>Focus is on technical accuracy and completion of L10n work; not translation quality.</li>
- <li>Only performed on the first revision a new locale wants to have released to the public.</li>
- <li>Must be approved prior to migrating your revision from one release channel to the next (e.g., Aurora to Beta).</li>
- </ul>
- </td>
- <td>
- <ul>
- <li>Performed as a QA measure for maintaining a localization from release-to-release.</li>
- <li>Only new L10n work is evaluated. This is done by generating a diff between the new release revision being considered and the previously approved release revision.</li>
- <li>Focus is still on technical accuracy and completion of L10n work; not translation quality.</li>
- <li>Release revisions are evaluated, not entire L10n repos.</li>
- <li>Sign-offs do not need to be approved before revision merge between release channels, although it is recommended.</li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>There is a specific process to follow in Bugzilla for requesting these reviews:<a href="/@api/deki/files/6034/=technical_review.png" title="technical review.png"><img alt="technical review.png" class="internal rwrap" src="/@api/deki/files/6034/=technical_review.png?size=webview" style="float: right; height: 189px; width: 350px;"></a></p>
-
-<ol>
- <li>File a bug requesting the review.</li>
- <li>Attach your files to the bug. Once attached, open the attachment details.</li>
- <li>In the attachment details, select the <strong>?</strong> from the dropdown menu next to the <span style="color: #daa520;">review flag</span> or the <span style="color: #0000ff;">appropriate approval flags</span> (see image). This will display a text box to assign the review to someone.</li>
- <li>Enter <strong>:Pike</strong> as the <strong>Requestee</strong>.</li>
-</ol>
-
-<p>We will perform a technical review of your work and provide you with feedback. We're happy to work with you to make sure that your work is fully functional.</p>
-
-<p>For more detailed information about reviews for new localizations and sign-offs for maintenance releases, visit the <a href="/en/Localization_technical_reviews" title="https://developer.mozilla.org/en/Localization_technical_reviews">technical review</a> and <a href="/en/Localization_sign-off_reviews" title="https://developer.mozilla.org/en/Localization_sign-off_reviews">sign-off review</a> pages.</p>
-
-<h2 id="Tah_dah!">Tah dah!</h2>
-
-<p>Mais uma vez, parabéns! Chegou ao final! Sinta-se à vontade para voltar a este tutorial sempre que necessário. Nós estamos felizes em o ter como um novo colaborador da Mozilla L10n e nós esperamos trabalhar de perto consigo.</p>
-
-<p>{{ Previous("Localization_Quick_Start_Guide/QA_phase") }}</p>
diff --git a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_pr/index.html b/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_pr/index.html
deleted file mode 100644
index 48e5d343d5..0000000000
--- a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/fase_pr/index.html
+++ /dev/null
@@ -1,212 +0,0 @@
----
-title: Fase de PR
-slug: Mozilla/Localization/Guia_iniciação_rápida/Fase_PR
-tags:
- - Localização
-translation_of: Mozilla/Localization/Quick_start_guide/QA_phase
----
-<p>Depois de todo o trabalho duro de localização, nós temos a certeza de que não quer ver apenas o seu trabalho, mas quer ter a certeza de que está preciso! Se não tem muita experiência com código, pode até preocupar-se que tenha efetuado algo de errado (Ups!). Nós agora vamos orientá-lo na realização de alguns testes de garantia de qualidade no seu trabalho para garantir que esteja no caminho certo.</p>
-
-<p>If you're localizing Mozilla websites, your work will display soon after you've committed it without needing a language pack. Since such is the case, this part of the guide may not be entirely applicable to you. Feel free to skip ahead to the next section by clicking on the <strong>Next</strong> link at the bottom of the page.</p>
-
-<p>In order to see your work on Firefox (or another Mozilla application), you'll need to have a built language pack to install on your local instance.</p>
-
-<h2 id="Criações_automatizadas_e_manual">Criações automatizadas e manual</h2>
-
-<p>With the click of a button, some L10n tools (like Narro and Koala) automatically create language pack builds for you. If you're using one of these tools, feel free to skip ahead to the <a href="/en/Localization_Quick_Start_Guide:_QA#Seeing_your_work" title="https://developer.mozilla.org/en/Localization_Quick_Start_Guide:_Part_3#Seeing_your_work">Seeing your work</a> section. If you're not using one of these tools, let's walk you through building your own language pack manually.</p>
-
-<div class="note"><strong>Nota</strong>: Remember all of those pre-requisite tools we asked you to install in the <a href="/en/Localization_Quick_Start_Guide#Local_environment_tools" title="https://developer.mozilla.org/en/Localization_Quick_Start_Guide#Local_environment_tools">initial setup</a>? Here's where you'll need almost all of them. If you haven't installed them yet, <em>now</em> is the time to do it.</div>
-
-<h3 id="Instruções_preliminares">Instruções preliminares</h3>
-
-<p>We will be using the following file directories for this example:</p>
-
-<pre style="margin-left: 40px;">your working directory <em>(root)/</em>
- mozilla-aurora <em>(en-US source, pulled from <a class="external" href="http://hg.mozilla.org/releases/mozilla-aurora" rel="external" title="http://hg.mozilla.org/releases/mozilla-aurora">http://hg.mozilla.org/releases/mozilla-aurora</a></em> <em>)</em>/
- l10n-central <em>(directory for L10n directories, one per L10n; often referred to as "l10n base")/</em>
- your-locale-code <em>(a directory with your L10n files, in this example we'll use x-testing)</em>
-
-<strong>Example</strong>: <code>root/mozilla-aurora</code> &amp; <code>root/l10n-central/x-testing</code>
-</pre>
-
-<p>Additionally, you will need to copy and translate the <code>toolkit/defines.inc</code> file directly from en-US before you can build. This is due to a bug in the build logic.</p>
-
-<p>Please either follow the above structure closely or adjust the commands below according to your custom setup.</p>
-
-<p>To copy this file to the appropriate directory, do the following:</p>
-
-<ol>
- <li>Navigate to your working directory from your command-line terminal (i.e., where you created the folder structure described above).</li>
- <li>Enter the following commands:</li>
-</ol>
-
-<pre style="margin-left: 40px;">mkdir -p l10n-central/x-testing/toolkit/
-
-cp mozilla-aurora/toolkit/locales/en-US/defines.inc l10n-central/x-testing/toolkit/defines.inc
-</pre>
-
-<p>Tah-dah! Copied!</p>
-
-<p>Finally, you will need a file called <code>.mozconfig</code> to proceed with manual builds. This file contains the necessary build instructions.</p>
-
-<p>To create and configure this file, follow these instructions:</p>
-
-<div class="warning">
-<p>Until the fix for <a href="https://bugzil.la/1063880">bug 1063880</a> lands on mozilla-aurora and mozilla-beta when building language packs against those two trees you should:</p>
-
-<ol>
- <li>
- <p>remove <code>ac_add_options --disable-compile-environment</code> from <code>.mozconfig</code> in step 3</p>
- </li>
- <li>
- <p>use <code>./mach build config</code> after step 4</p>
- </li>
-</ol>
-</div>
-
-<ol>
- <li>Update the Mozilla source code:</li>
-</ol>
-
-<p style="margin-left: 40px;"><code>$ cd mozilla-aurora<br>
- $ hg pull -u</code></p>
-
-<ol start="2" style="list-style-type: decimal;">
- <li>Enter the following command to create the <code>.mozconfig</code> file: <code>$ nano -w .mozconfig</code></li>
- <li>Enter the following lines in your <code>.mozconfig</code> file:</li>
-</ol>
-
-<pre style="margin-left: 40px;">mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../firefox-build
-ac_add_options --disable-compile-environment
-ac_add_options --with-l10n-base=../l10n-central # path relative to MOZ_OBJDIR
-ac_add_options --enable-application=[<em>browser or mail</em>]
-</pre>
-
-<p style="margin-left: 40px;">You will need to specify which application you're localizing in the fourth line (e.g., for Firefox, that's <code>browser</code>, Thunderbird would be <code>mail</code>).</p>
-
-<ol start="4" style="list-style-type: decimal;">
- <li>Enter the following command to perform the configuration: <code>$ ./mach configure</code></li>
- <li>Once your command-line finishes spitting out the config command's output, navigate to the newly created directory:<code> $ cd ../firefox-build/browser/locales</code></li>
-</ol>
-
-<p>Now you're ready to build! At this point you can choose between two build options. You can either:</p>
-
-<ul>
- <li><a href="/en/Creating_a_Language_Pack#Creating_a_langpack" title="https://developer.mozilla.org/en/Creating_a_Language_Pack#Creating_a_langpack">Create a langpack</a>, which is installed <em>on top of</em> your Mozilla application, or</li>
- <li><a href="/en/Creating_a_Language_Pack#L10n_binary_repack" title="https://developer.mozilla.org/en/Creating_a_Language_Pack#L10n_binary_repack">Repack the application's binary</a> (aka, a L10n repack), which allows you to install <em>next</em> to your existing Mozilla application installation and use separately.</li>
-</ul>
-
-<p>Visit the links above to learn how to make these testing builds.</p>
-
-<h2 id="Testar_a_sua_L10n_e_ver_o_seu_trabalho">Testar a sua L10n e ver o seu trabalho</h2>
-
-<p>Now that you have your langpack or L10n repack, let's discuss seeing your work and testing it in the application.</p>
-
-<p>Testing the langpack will put you one step closer to having your localization added to the L10n releases. Follow the steps below to test your localization:</p>
-
-<ol>
- <li>Install Aurora in your preferred language.</li>
- <li>Install the <code>.xpi</code> langpack you just created (or exported).</li>
- <li>Set your language using the Quick Locale Switcher or Locale Switcher add-ons by navigating to Tools-&gt;Language-&gt;Your localization's language code.</li>
- <li>Restart your browser and start testing!</li>
-</ol>
-
-<p>Now you should be able to see all of your work up to this point. Click <a class="link-https" href="https://wiki.mozilla.org/MozillaQualityAssurance:l10n_checklist" title="https://wiki.mozilla.org/MozillaQualityAssurance:l10n_checklist">here</a> for guidelines on how to test your localization.</p>
-
-<h2 id="Não_perca_o_seu_trabalho!">Não perca o seu trabalho!</h2>
-
-<p>Your work is <em>SO</em> important! We would really hate to see you lose any of it. After you test your localization, you should send it to a remote repository, which will serve as a backup for your work and will let others follow your progress. We're going to go through the process below.</p>
-
-<p>The official localization teams use repositories at <a class="external" href="http://hg.mozilla.org/" rel="external" title="http://hg.mozilla.org/">hg.mozilla.org</a>. Before a team becomes official, we like to get the localizers comfortable with the Hg commands that allow for cloning, pulling, committing, and pushing work to an experimental repository.  We use a web service called <a class="external" href="http://www.bitbucket.org/" rel="external" title="http://www.bitbucket.org/">Bit Bucket</a> to start the learning process.</p>
-
-<div class="note"><strong>Nota</strong>: You must have Mercurial configured before you begin. That step is back on the initial setup page. If you haven't done that yet, don't worry, we'll wait for you!</div>
-
-<h3 class="note" id="Envio_(Pushing)_para_o_seu_repositório">Envio (Pushing) para o seu repositório</h3>
-
-<p>There are a couple of things you should take note of before you push to your repository:</p>
-
-<ul>
- <li>Make sure that your files have been encoded in Unicode without BOM (byte order mark).</li>
- <li>Remember that here you are pushing an entire directory, not a <code>.zip</code> archive file or an <code>.xpi</code> lang pack.</li>
-</ul>
-
-<p>The instructions below will help you learn how to use your Hg repository.</p>
-
-<ol>
- <li><span style="color: #daa520;">After your new repository is created by the l10n-drivers</span>, please visit the URL for your repo. We'll use x-testing here for our example. You can do this by entering the following URL into your browser: <code><a class="external" href="http://hg.mozilla.org/l10n-central/x-testing" rel="freelink">http://hg.mozilla.org/l10n-central/x-testing</a></code></li>
- <li>Now, navigate to your locale's directory on your local machine.</li>
-</ol>
-
-<p style="margin-left: 40px;">If you're using Koala, this should be located at <code>/path/to/your/koala.project/locale/3.6/x-testing</code>, otherwise, it should be located at <code>/path/to/your/working_dir/l10n_base/x-testing</code>.</p>
-
-<p style="margin-left: 40px;">In this directory, you should have an hg repository. You might have created it yourself by running <code>hg init</code> or <code>hg clone</code> or you might have had it created by Koala when you were setting up a new localization project. Also at this point, you shouldn't have any uncommitted changes (i.e., running the <code>hg status </code>command should show nothing). Let's see what the last revision in this repository is.</p>
-
-<ol start="3" style="list-style-type: decimal;">
- <li>Enter the following command: <code>$ hg log -l 1</code></li>
-</ol>
-
-<p style="margin-left: 40px;">You should see an output similar to the one below:</p>
-
-<pre style="margin-left: 40px;">changeset: 0:7c543e8f3a6a
-tag: tip
-user: Your Name &lt;email@example.com&gt;
-date: Mon Nov 23 18:08:25 2009 +0100
-summary: Added search bar strings
-</pre>
-
-<ol start="4" style="list-style-type: decimal;">
- <li>Now compare the local repository on your machine with the remote Hg repository by entering this command: <code>$ hg outgoing <a class="external" href="http://hg.mozilla.org/l10n-central/x-testing" rel="freelink">http://hg.mozilla.org/l10n-central/x-testing</a></code></li>
-</ol>
-
-<p style="margin-left: 40px;">The <code>hg outgoing</code> command compares the two repositories and lists all changesets that are present locally, but not in the remote repository. These changesets will need to be "pushed" to the remote repository. You can expect to see output like this:</p>
-
-<pre style="margin-left: 40px;">comparing with http://hg.mozilla.org/l10n-central/x-testing
-searching for changes
-
-changeset: 0:7c543e8f3a6a
-tag: tip
-user: Your Name &lt;email@example.com&gt;
-date: Mon Nov 23 18:08:25 2009 +0100
-summary: Added search bar strings
-</pre>
-
-<ol start="5" style="list-style-type: decimal;">
- <li>Let's now push this changeset. Enter the following command:<code> hg push <a class="external" href="http://hg.mozilla.org/l10n-central/x-testing" rel="freelink">http://hg.mozilla.org/l10n-central/x-testing</a></code></li>
- <li>Mercurial will connect to your repo and ask you to provide your account information (i.e., the username and the password).</li>
-</ol>
-
-<pre style="margin-left: 40px;">real URL is http://hg.mozilla.org/l10n-central/x-testing
-pushing to http://hg.mozilla.org/l10n-central/x-testing
-searching for changes
-http authorization required
-realm: hg.mozilla.org HTTP
-user: your_id
-password:
-</pre>
-
-<p style="margin-left: 40px;">After you enter your account information, the changeset will be pushed.</p>
-
-<pre style="margin-left: 40px;">adding changesets
-adding manifests
-adding file changes
-added 1 changesets with 2 changes to 2 files
-bb/acl: your_id is allowed. accepted payload.
-quota: 979.7 KB in use, 150.0 MB available (0.64% used)
-</pre>
-
-<p>Your changeset has been successfully pushed to your repository!</p>
-
-<p>As you begin to move through your translations, you should <code>commit</code> the changes locally and <code>push</code> your work to this experimental repository. For instance, if you have finished translating all the <code>.dtd</code> and <code>.properties</code> files in your <code>x-testing/browser/chrome/browser/</code> directory, then you should run these commands:</p>
-
-<pre>$ hg status
-$ hg commit -m "Translated browser/chrome/browser/"
-$ hg outgoing
-$ hg push http://hg.mozilla.org/l10n-central/x-testing</pre>
-
-<p>Note that due to the distributed nature of Hg, <code>hg commit</code> saves the changes locally (i.e., in your computer's Hg repository). You can see the history of commits with <code>hg log</code>. After doing <code>hg commit</code>, you still need to send the changes to the remote repository. This is where <code>hg push</code> comes in. This sends your commits to the remote repository.</p>
-
-<p>Now you're ready to proceed to the release phase!</p>
-
-<p> </p>
-
-<p>{{ PreviousNext("Localization_Quick_Start_Guide/Translation_phase", "Localization_Quick_Start_Guide/Release_phase") }}</p>
diff --git a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/index.html b/files/pt-pt/mozilla/localization/guia_iniciação_rápida/index.html
deleted file mode 100644
index 7135cec329..0000000000
--- a/files/pt-pt/mozilla/localization/guia_iniciação_rápida/index.html
+++ /dev/null
@@ -1,41 +0,0 @@
----
-title: Guia de Iniciação Rápida da Localização
-slug: Mozilla/Localization/Guia_iniciação_rápida
-tags:
- - Guía
- - Tradução
-translation_of: Mozilla/Localization/Quick_start_guide
----
-<p>Bem-vindo à localização da Mozilla (abreviado em inglês L10n)!</p>
-
-<p>Se está aqui para iniciar a sua própria localização no projeto Mozilla ou para se juntar aos esforços de uma localização existente, veio ao lugar certo. Este guia é preenchido com todas as informações técnicas básicas que precisa para se envolver no programa Mozilla l10n. Nós iremos guiá-lo através dos passos para começar, desde a configuração inicial do ambiente até ao teste e lançamento da sua própria localização. Ao longo do caminho, irá aprender sobre a variedade de projetos para os quais pode contribuir e as ferramentas utilizadas para localizá-los.</p>
-
-<p>Quando alcamçamos exemplos específicos, nós iremos removê-los do projeto Firefox, já que é o projeto mais amplamente localizado dentro da Mozilla. Ao aproximar-se do final deste guia, poderá fazer uma alteração no Firefox na sua configuração local e, depois ver essa alteração na interface do Firefox. Para encerrar, quando terminar este guia, terá todas as ferramentas necessárias para começar a contribuir!</p>
-
-<p>Lembre-se, este guia irá instruí-lo apenas sobre os aspetos técnicos de L10n da Mozilla. Visite a página do <a class="link-https" href="https://wiki.mozilla.org/L10n:Localization_Process" title="https://wiki.mozilla.org/L10n:Overview">Processo de L10n</a> para saber mais sobre todo o processo.</p>
-
-<div style="width: 25%; background-color: #4AA02C; float: left; display: block; margin: 1.5%; border: 1px solid #C4C295; text-align: center; padding: 2.5%; padding-top: 0px;">
-<h2 id="Configuração_Inicial"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Localization/Guia_inicia%C3%A7%C3%A3o_r%C3%A1pida/Configuracao_inicial" title="en/Localization_Quick_Start_Guide/Initial_setup">Configuração Inicial</a></h2>
-Preparação da tecnologia antes de localizar.</div>
-
-<div style="width: 25%; background-color: #A2BFF4; float: left; display: block; margin: 1.5%; border: 1px solid #C4C295; text-align: center; padding: 2.5%; padding-top: 0px;">
-<h2 id="Fase_da_tradução"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Localization/Guia_inicia%C3%A7%C3%A3o_r%C3%A1pida/Fase_da_Traducao" title="en/Localization_Quick_Start_Guide/Translation_phase">Fase da tradução</a></h2>
-Tutoriais das ferramentas de L10n para tradução.</div>
-
-<div style="width: 25%; background-color: orange; float: left; display: block; margin: 1.5%; border: 1px solid #C4C295; text-align: center; padding: 2.5%; padding-top: 0px;">
-<h2 id="Fase_de_PR"><a href="/pt-PT/docs/Mozilla/Localization/Guia_inicia%C3%A7%C3%A3o_r%C3%A1pida/Fase_PR" title="en/Localization_Quick_Start_Guide/QA_phase">Fase de PR</a></h2>
-Tutoriais de teste de L10n.</div>
-
-<div style="width: 92%; background-color: #C0C0C0; float: left; display: block; margin: 1.5%; border: 1px solid #C4C295; text-align: center; padding: 2.5%; padding-top: 0px;">
-<h2 id="Fase_de_Lançamento"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Localization/Guia_inicia%C3%A7%C3%A3o_r%C3%A1pida/Fase_de_lancamento" title="en/Localization_Quick_Start_Guide/Release_phase">Fase de Lançamento</a></h2>
-Passos para submeter o seu trabalho de tradução.</div>
-
-<div style="background-color: white; border: 3px solid; display: block; padding: 20px; margin-top: 20px;">Esses quatro estágios formam o lado técnico do programa de l10n. Para saber mais sobre qualquer um deles, clique em quaisquer das hiperligações acima. Para obter uma visão geral, nós sugerimos que comece com a bolha verde e mova de um estágio para outro.</div>
-
-<p> </p>
-
-<div class="note"><strong>Nota</strong>: este guia foi escrito para dois tipos de colaboradores: os que iniciam uma nova localização e os que se juntam a uma localização existente. É importante saber que informação se aplica ao tipo de colaborador. Para ajudá-lo a filtrar a informação mais aplicável, note que toda a informação que é única das que iniciam uma nova localização estarão com <span style="color: #daa520;">letra em cor de laranja</span>. Toda a informação que é única para aqueles que se juntam a uma localização existente estará em <span style="color: #0000ff;">letra azul</span>.</div>
-
-<p class="note"> </p>
-
-<p>{{ Next("Localization_Quick_Start_Guide/Initial_setup") }}</p>
diff --git a/files/pt-pt/mozilla/localization/index.html b/files/pt-pt/mozilla/localization/index.html
deleted file mode 100644
index 049ddf8e95..0000000000
--- a/files/pt-pt/mozilla/localization/index.html
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: Localização na Mozilla
-slug: Mozilla/Localization
-tags:
- - Landing
- - Localização
- - Mozilla
- - Tradução
- - l10n
-translation_of: Mozilla/Localization
----
-<p><span class="seoSummary"><strong>Localização</strong> (L10n) é o processo de tradução das interfaces do utilizador do software de um idioma para outro e a adaptação para o ajustar a uma cultura estrangeira. Estes recursos são para qualquer um com interesse nos aspetos técnicos involvidos na localização.</span> Estes são para os responsáveis pelo desenvolvimento e todos os colaboradores.</p>
-
-<h2 id="Consultar_também">Consultar também</h2>
-
-<dl>
- <dt><a href="/pt-PT/docs/MDN/Contribute/Localize" title="/en-US/docs/Project:MDN/Localizing">Localizar MDN</a></dt>
- <dd>Este recurso abrange a localização da documentação aqui na MDN.</dd>
- <dt><a href="/pt-PT/docs/Archive/B2G_OS/Firefox_OS_apps/Localiza%C3%A7%C3%A3o">Localização de aplicação</a></dt>
- <dd>Este conjunto de documentos aplica-se mais especificamente à localização de aplicações, incluindo as aplicações do Firefox OS.</dd>
- <dt><a href="/en-US/docs/Web/API/L10n">L10n</a></dt>
- <dd>Documentos de referência para a API de L10n que a Mozilla utilzia para localizar o sistema operativo Firefox.</dd>
-</dl>
diff --git a/files/pt-pt/mozilla/localization/index/index.html b/files/pt-pt/mozilla/localization/index/index.html
deleted file mode 100644
index 3b35d9f58b..0000000000
--- a/files/pt-pt/mozilla/localization/index/index.html
+++ /dev/null
@@ -1,9 +0,0 @@
----
-title: Índex
-slug: Mozilla/Localization/Index
-tags:
- - Localização
- - Tradução
-translation_of: Mozilla/Localization/Index
----
-<p>{{Index("/pt-PT/docs/Mozilla/Localization")}}</p>
diff --git a/files/pt-pt/mozilla/localization/localizacao_e_plurais/index.html b/files/pt-pt/mozilla/localization/localizacao_e_plurais/index.html
deleted file mode 100644
index 207f94128f..0000000000
--- a/files/pt-pt/mozilla/localization/localizacao_e_plurais/index.html
+++ /dev/null
@@ -1,384 +0,0 @@
----
-title: Tradução e Plurais
-slug: Mozilla/Localization/Localizacao_e_Plurais
-tags:
- - Internacionalização
- - Localização
- - Tradução
-translation_of: Mozilla/Localization/Localization_and_Plurals
----
-<p>Provavelmente está aqui porque está a traduzir um ficheiro .properties e este tinha uma hiperligação para esta página. Esta página é para ajudar a explicar como localizar essas entradas de carateres para que a forma correta do plural seja mostrada ao utilizador. Por exemplo, "1 página" vs. "2 páginas".</p>
-
-<p>Se está aqui para criar o seu código (por exemplo, extensões) localizável para as formas de plural, pode ir diretamente para <a href="#Developing_with_PluralForm">Programar com <em>PluralForm</em></a>. Também poderá ter que localizar as entradas iniciais para o seu código, por isso também seria bom que lê-se pelo menos a secção 'Utilização'.</p>
-
-<h2 id="Utilização">Utilização</h2>
-
-<p>Aqui tem alguns termos utilizados nesta página para o ajudar a manter as coisas simples:</p>
-
-<ul>
- <li><strong>regra de plural</strong>: para um determinado idioma, existe uma regra gramatical sobre como alterar as palavras, dependendo do número que qualifica a palavra. Idiomas diferentes podem ter regras diferentes.</li>
- <li><strong>forma de plural</strong>: para uma regra de plural específica, pode haver várias formas de uma palavra, como "página" e "páginas". Neste caso, existem 2 formulários, mas outros idiomas podem ter 1 ou mais.</li>
-</ul>
-
-<p>If you're here for <code>pluralRule</code> in the <code>chrome/global/intl.properties</code> file, you'll need to figure out what <em>plural rule</em> to choose for your localization. This plural rule is used to determine how many <em>plural forms</em> are needed for each word that needs to be localized, with plurals in mind.</p>
-
-<p>For all other properties files that link to this page, you'll need to provide enough plural forms of the desired word, and separate them with semi-colons (;). If you don't know how many plural forms you need, check the <code>pluralRule</code> number in <code>chrome/global/intl.properties</code>, and look up the corresponding entry in the following list of plural rules.</p>
-
-<h2 id="Lista_das_Regras_de_Plural">Lista das Regras de Plural</h2>
-
-<p>Esta secção contém uma lista de regras plurais ordenadas pelo seu número de regra de plural. Cada entrada indica quantas formas de plural são necessárias ao localizar uma palavra. Para cada entrada, há uma lista de famílias e idiomas nessas famílias, para ajudá-lo a descobrir se é a regra que deve escolher para <code>pluralRule</code>. Além disso, há uma breve descrição de cada forma de plural, seguida por alguns números de amostra que se enquadram nessa forma específica.</p>
-
-<p>For a given plural rule, the order in which the plural forms are listed is the same order you need to localize a word, separated by semi-colons. For example, English uses plural rule 1, and localizing <code>plurals</code> would require a string of "plural;plurals" where the first word is the singular form and the second is the general plural form.</p>
-
-<h3 id="Regra_de_plural_0_1_forma">Regra de plural #<em><strong>0</strong></em> (1 forma)</h3>
-
-<p><strong>Famílias</strong>: Asiáticas (chinês, japonês, coreano), persa, turco/altaico (turco), Thai, Lao<br>
- <strong>tudo</strong>: <small>0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, …</small></p>
-
-<h3 id="Regra_de_plural_1_2_formas">Regra de plural #<em><strong>1</strong></em> (2 formas)</h3>
-
-<p><strong>Famílias</strong>: Germânico (dinarmaquês, holandês, inglês, Faroese, Frisian, alemão, norueguês, sueco ), Finno-Ugric (Estonian, Finnish, Hungarian), Language isolate (Basque), Latin/Greek (Greek), Semitic (Hebrew), Românico (italiano, português, espanhol, catalão), e vietnamita<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>tudo o resto</strong>: <small>0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, …</small></p>
-
-<h3 id="Regra_de_plural_2_2_formas">Regra de plural #<em><strong>2</strong></em> (2 formas)</h3>
-
-<p><strong>Famílias</strong>: Românico (francês, português (Brasil)), Lingala<br>
- <strong>é 0 ou 1</strong>: <small>0, 1</small><br>
- <strong>tudo o resto</strong>: <small>2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, …</small></p>
-
-<h3 id="Regra_de_plural_3_3_formas">Regra de plural #<strong><em>3</em></strong> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Baltic (Latvian, Latgalian)<br>
- <strong>termina em 0</strong>: <small>0</small><br>
- <strong>termina em 1, excluindo 11</strong>: <small>1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>tudo o resto</strong>: <small>2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 48, 49, 52, 53, …</small></p>
-
-<h3 id="Regra_de_plural_4_4_formas">Regra de plural #<em><strong>4</strong></em> (4 formas)</h3>
-
-<p><strong>Famílias</strong>: Celtic (Scottish Gaelic)<br>
- <strong>é 1 ou 11</strong>: <small>1, 11</small><br>
- <strong>é 2 ou 12</strong>: <small>2, 12</small><br>
- <strong>is 3-10 ou 13-19</strong>: <small>3, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19</small><br>
- <strong>tudo o resto</strong>: <small>0, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, …</small></p>
-
-<h3 id="Regra_de_plural_5_3_formas">Regra de plural #<em><strong>5</strong></em> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Romanic (Romanian)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 0 ou termina em 01-19, excluindo 1</strong>: <small>0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, …</small><br>
- <strong>tudo o resto</strong>: <small>20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, …</small></p>
-
-<h3 id="Regra_de_plural_6_3_formas">Regra de plural #<em><strong>6</strong></em> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Baltic (Lithuanian)<br>
- <strong>termina em 1, excluindo 11</strong>: <small>1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>termina em 0 ou termina em 11-19</strong>: <small>0, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, …</small><br>
- <strong>tudo o resto</strong>: <small>2, 3, 4, 5, 6, 7, 8, 9, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37, 38, 39, 42, 43, 44, 45, 46, 47, 48, 49, 52, 53, 54, 55, 56, 57, 58, 59, 62, 63, 64, 65, 66, 67, 68, 69, 72, 73, …</small></p>
-
-<h3 id="Regra_de_plural_7_3_formas">Regra de plural #<em><strong>7</strong></em> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Belarusian, Russian, Ukrainian<br>
- <strong>termina em 1, excluindo 11</strong>: <small>1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>termina em 2-4, excluindo 12-14</strong>: <small>2, 3, 4, 22, 23, 24, 32, 33, 34, 42, 43, 44, 52, 53, 54, 62, 63, 64, 72, 73, 74, 82, 83, 84, 92, 93, 94, 102, 103, 104, 122, 123, 124, 132, 133, 134, 142, 143, 144, 152, 153, 154, 162, 163, 164, 172, 173, 174, 182, 183, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26, 27, 28, 29, 30, 35, 36, 37, 38, 39, 40, 45, 46, 47, 48, 49, 50, 55, 56, 57, 58, 59, 60, 65, 66, 67, 68, 69, 70, 75, 76, 77, …, 112, 113, ..., 212, 213, ...</small></p>
-
-<h3 id="Regra_de_plural_8_3_formas">Regra de plural #<em><strong>8</strong></em> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Eslavo (eslovaco, checo)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 2-4</strong>: <small>2, 3, 4</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, …</small></p>
-
-<h3 id="Regra_de_plural_9_3_formas">Regra de plural #<em><strong>9</strong></em> (3 formas)</h3>
-
-<p><strong>Famílias</strong>: Eslavo (polaco)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>termina em 2-4, excluindo 12-14</strong>: <small>2, 3, 4, 22, 23, 24, 32, 33, 34, 42, 43, 44, 52, 53, 54, 62, 63, 64, 72, 73, 74, 82, 83, 84, 92, 93, 94, 102, 103, 104, 122, 123, 124, 132, 133, 134, 142, 143, 144, 152, 153, 154, 162, 163, 164, 172, 173, 174, 182, 183, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 25, 26, 27, 28, 29, 30, 31, 35, 36, 37, 38, 39, 40, 41, 45, 46, 47, 48, 49, 50, 51, 55, 56, 57, 58, 59, 60, 61, 65, 66, 67, 68, …</small></p>
-
-<h3 id="Plural_rule_10_4_forms">Plural rule #<em><strong>10</strong></em> (4 forms)</h3>
-
-<p><strong>Famílias</strong>: Eslavo (esloveno, sérbio)<br>
- <strong>termina em 01</strong>: <small>1, 101, 201, …</small><br>
- <strong>termina em 02</strong>: <small>2, 102, 202, …</small><br>
- <strong>termina em 03-04</strong>: <small>3, 4, 103, 104, 203, 204, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, …</small></p>
-
-<h3 id="Plural_rule_11_5_forms">Plural rule #<em><strong>11</strong></em> (5 forms)</h3>
-
-<p><strong>Famílias</strong>: Celtic (Irish Gaelic)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 2</strong>: <small>2</small><br>
- <strong>is 3-6</strong>: <small>3, 4, 5, 6</small><br>
- <strong>is 7-10</strong>: <small>7, 8, 9, 10</small><br>
- <strong>tudo o resto</strong>: <small>0, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, …</small></p>
-
-<h3 id="Plural_rule_12_6_forms">Plural rule #<em><strong>12</strong></em> (6 forms)</h3>
-
-<p><strong>Famílias</strong>: Semitic (Arabic)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 2</strong>: <small>2</small><br>
- <strong>termina em 03-10</strong>: <small>3, 4, 5, 6, 7, 8, 9, 10, 103, 104, 105, 106, 107, 108, 109, 110, 2</small><small>03, 204, 205, 206, 207, 208, 209, 210, </small><small>…</small><br>
- <strong>tudo o resto but é 0 and termina em 00-02, excluding 0-2</strong>: <small>11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, … </small><br>
- <strong>termina em 00-02, excluding 0-2</strong>: <small>100, 101, 102, 200, 201, 202, …</small><br>
- <strong>é 0</strong>: <small>0</small></p>
-
-<h3 id="Plural_rule_13_4_forms">Plural rule #<em><strong>13</strong></em> (4 forms)</h3>
-
-<p><strong>Famílias</strong>: Semitic (Maltese)<br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 0 ou termina em 01-10, excluindo 1</strong>: <small>0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, …</small><br>
- <strong>termina em 11-19</strong>: <small>11, 12, 13, 14, 15, 16, 17, 18, 19, 111, 112, 113, 114, 115, 116, 117, 118, 119, 211, 212, 213, 214, 215, 216, 217, 218, 219, …</small><br>
- <strong>tudo o resto</strong>: <small>20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, …</small></p>
-
-<h3 id="Plural_rule_14_3_forms">Plural rule #<em><strong>14</strong></em> (3 forms)</h3>
-
-<p><strong>Famílias</strong>: unused<br>
- <strong>ends in 1</strong>: <small>1, 11, 21, 31, 41, 51, 61, 71, 81, 91, 101, 111, 121, 131, 141, 151, 161, 171, 181, 191, 201, 211, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>ends in 2</strong>: <small>2, 12, 22, 32, 42, 52, 62, 72, 82, 92, 102, 112, 122, 132, 142, 152, 162, 172, 182, 192, 202, 212, 222, 232, 242, 252, 262, 272, 282, 292, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 3, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 20, 23, 24, 25, 26, 27, 28, 29, 30, 33, 34, 35, 36, 37, 38, 39, 40, 43, 44, 45, 46, 47, 48, 49, 50, 53, 54, 55, 56, 57, 58, 59, 60, 63, …</small></p>
-
-<h3 id="Plural_rule_15_2_forms">Plural rule #<em><strong>15</strong></em> (2 forms)</h3>
-
-<p><strong>Famílias</strong>: Icelandic, Macedonian<br>
- <strong>termina em 1, excluindo 11</strong>: <small>1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, …</small></p>
-
-<h3 id="Plural_rule_16_5_forms">Plural rule #<em><strong>16</strong></em> (5 forms)</h3>
-
-<p><strong>Famílias</strong>: Celtic (Breton)<br>
- <strong>termina em 1, excluindo 11, 71, 91</strong>: <small>21, 31, 41, 51, 61, 81, 101, 121, 131, 141, 151, 161, 181, 201, 221, 231, 241, 251, 261, 281, ...</small><br>
- <strong>ends in 2, excluindo 12, 72, 92</strong>: <small>2, 22, 32, 42, 52, 62, 82, 102, 122, 132, 142, 152, 162, 182, 202, 222, 232, 242, 252, 262, 282, ...</small><br>
- <strong>ends in 3, 4 or 9 excluindo 13, 14, 19, 73, 74, 79, 93, 94, 99</strong>: <small>3, 4, 9, 23, 24, 29, 33, 34, 39, 43, 44, 49, 53, 54, 59, ...</small><br>
- <strong>termina em 1000000</strong>: <small>1000000: 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000, ...</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26, 27, 28, 30, 35, 36, 37, 38, 40, ...</small></p>
-
-<h3 id="Plural_rule_17_2_forms">Plural rule #17 (2 forms)</h3>
-
-<p><strong>Famílias</strong>: Ecuador indigenous languages (Shuar)<br>
- <strong>é 0</strong>: <small>0</small><br>
- <strong>tudo o resto</strong>: <small>1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, …</small></p>
-
-<h3 id="Plural_rule_18_6_forms">Plural rule #18 (6 forms)</h3>
-
-<p><strong>Famílias</strong>: Welsh<br>
- <strong>é 0</strong>: <small>0</small><br>
- <strong>é 1</strong>: <small>1</small><br>
- <strong>é 2</strong>: <small>2</small><br>
- <strong>is 3</strong>: <small>3</small><br>
- <strong>é 6</strong>: <small>6</small><br>
- <strong>tudo o resto</strong>: <small>4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, …</small></p>
-
-<h3 id="Plural_rule_19_3_forms">Plural rule #<em><strong>19</strong></em> (3 forms)</h3>
-
-<p><strong>Famílias</strong>: Slavic (bósnio, croata, sérvio)<br>
- <strong>termina em 1, excluindo 11</strong>: <small>1, 21, 31, 41, 51, 61, 71, 81, 91, 101, 121, 131, 141, 151, 161, 171, 181, 191, 201, 221, 231, 241, 251, 261, 271, 281, 291, …</small><br>
- <strong>termina em 2-4, excluindo 12-14</strong>: <small>2, 3, 4, 22, 23, 24, 32, 33, 34, 42, 43, 44, 52, 53, 54, 62, 63, 64, 72, 73, 74, 82, 83, 84, 92, 93, 94, 102, 103, 104, 122, 123, 124, 132, 133, 134, 142, 143, 144, 152, 153, 154, 162, 163, 164, 172, 173, 174, 182, 183, …</small><br>
- <strong>tudo o resto</strong>: <small>0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 25, 26, 27, 28, 29, 30, 35, 36, 37, 38, 39, 40, 45, 46, 47, 48, 49, 50, 55, 56, 57, 58, 59, 60, 65, 66, 67, 68, 69, 70, 75, 76, 77, …, 112, 113, ..., 212, 213, ...</small></p>
-
-<h2 id="Exemplos">Exemplos</h2>
-
-<p>A seguir tem alguns exemplos para vários idiomas e um breve processo de reflexão.</p>
-
-<h3 id="Francês">Francês</h3>
-
-<p>Some French speaking places treat 0 as plural while others treat it as singular. The only other singular é 1 while tudo o resto is plural. So pick either plural rule #1 or #2.</p>
-
-<p><code>pluralRule=2<br>
- seconds=seconde;secondes<br>
- minutes=minute;minutes<br>
- hours=heure;heures<br>
- days=jour;jours </code></p>
-
-<p>Like many other times when localizing words, gender agreement might force you to rearrange words in a way that the gender is always the same. (seconde vs jour)</p>
-
-<h3 id="Chinês">Chinês</h3>
-
-<p>A word doesn't change if there is a different number in front of it, so all numbers use the same plural form. With just one plural form, it has to be plural rule #0. For each word to localize, it's just like localizing a single word with no semi-colons needed.</p>
-
-<p><code>pluralRule=0<br>
- seconds=秒<br>
- minutes=分<br>
- hours=時<br>
- days=日 </code></p>
-
-<h3 id="Polaco">Polaco</h3>
-
-<p>There's a singular form fou 1, a plural form for 2-4, and another for 5-21 at which point 22 is the same as 2. Plural rule #7 has a "termina em 2-4, not 12-14" but the singular form includes everything ending in 1 except 11. Plural rule #9 has the correct singular form for only 1.</p>
-
-<p><code>pluralRule=9<br>
- seconds=sekunda;sekundy;sekund<br>
- minutes=minuta;minuty;minut<br>
- hours=godzina;godziny;godzin<br>
- days=dzień;dni;dni </code></p>
-
-<p>Even though the last 2 plural forms of "day" are the same, both are still needed, because there needs to be 3 plural forms for each word.</p>
-
-<h3 id="Sérbio">Sérbio</h3>
-
-<p>There are 4 plural forms: nominative singular, nominative dual, nominative plural, genitive plural. These match up with plural rule #10.</p>
-
-<p><code>pluralRule=10<br>
- seconds=sekunda;sekundźe;sekundy;sekundow<br>
- minutes=mjeńšina;mjeńšinje;mjeńšiny;mjeńšin<br>
- hours=hodźina;hodźinje;hodźiny;hodźin<br>
- days=dźeń;dnjej;dny;dnjow </code></p>
-
-<h2 id="Extensão_de_Teste">Extensão de Teste</h2>
-
-<p>Para ajudar a ter a certeza de que escolhe a regra de plural correta e fornecer formas de plural suficientes para as sequências de carateres, deveria utilizar a extensão "pluralForm Checker". Depois de instalar a extensão, esta deverá estar disponível no menu de "Ferramentas".</p>
-
-<p>To use it, list off the property files and properties that you want to check and click the button. The extension will load each property and display the plural forms in a table. Selecting a table entry will populate the bottom box with sample uses of the word for some numbers.</p>
-
-<p><img alt="Image:pluralForm-checker.0.3.png" class="internal" src="/@api/deki/files/804/=PluralForm-checker.0.3.png"></p>
-
-<p><a class="external" href="https://ed.agadak.net/firefox/pluralForm-checker.xpi">Instalar a extensão Checker v0.3 de <em>pluralForm</em></a></p>
-
-<h3 id="Entrada_de_extensão">Entrada de extensão</h3>
-
-<p>Seria bom manter esta lista atualizada com todas as palavras que precisam de formas plurais. As pessoas que utilizam a extensão podem copiar/colar esta entrada.</p>
-
-<p><code><small><a class="external" rel="freelink">chrome://mozapps/locale/downloads/do...tes,hours,days</a><br>
- <a class="external" rel="freelink">chrome://mozapps/locale/downloads/do...dsTitlePercent</a><br>
- <a class="external" rel="freelink">chrome://browser/locale/browser.prop...ausedDownloads</a> </small></code></p>
-
-<h3 id="Histórico_de_versão">Histórico de versão</h3>
-
-<p>0.1: Initial version with pluralRule check, properties input loading, table generation, sample output display<br>
- 0.2: Use PluralForm.numForms() to get the number of forms instead of figuring out locally to better support future rules - <strong>Requires build from 2007/01/27 or later</strong><br>
- 0.3: Generate a list of what numbers fall into which plural form to minimize the sample output to at most 3 of each form</p>
-
-<h2 id="Programar_com_PluralForm">Programar com <em>PluralForm</em></h2>
-
-<p>The functionality for getting the correct plural forms is provided by a JavaScript Module, <code>PluralForm.jsm</code>. This module provides a couple methods for localizing to the browser's current locale as well as getting methods to localize to a desired plural rule. The latter ability of specifying a plural rule is useful for extensions because the extension doesn't necessarily have to be localized to the browser's locale.</p>
-
-<h3 id="Carregar_PluralForm.jsm">Carregar <code>PluralForm.jsm</code></h3>
-
-<p>Loading the PluralForm module from JavaScript is simple with <a href="/en-US/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.import" title="Components.utils.import">Components.utils.import</a>. Just put the following line somewhere that will be evaluated before you want to use PluralForm. At the top of your JavaScript file is fine.</p>
-
-<pre>Components.utils.import("resource://gre/modules/PluralForm.jsm");</pre>
-
-<h3 id="Métodos_get">Métodos: <em><code>get</code></em></h3>
-
-<p>Estes métodos utilizam o idioma atual do navegador especificado pelo valor <code><a class="external" rel="freelink">chrome://global/locale/intl.properties</a></code>'s <code>pluralRule</code>.</p>
-
-<pre>/**
- * Get the correct plural form of a word based on the number
- *
- * @param aNum
- * The number to decide which plural form to use
- * @param aWords
- * A semi-colon (;) separated string of words to pick the plural form
- * @return The appropriate plural form of the word
- */
-string pluralForm
-get(int aNum, string aWords)</pre>
-
-<p>Aqui tem um exemplo de utilização deste método:</p>
-
-<pre>// Load PluralForm and for this example, assume English
-Components.utils.import("resource://gre/modules/PluralForm.jsm");
-
-// PluralForm.get expects a semi-colon separated list of words
-let downloads = "download;downloads";
-// Pretend this number came from somewhere else
-let num = 10;
-
-// Display the correct plural form fou 10 downloads: "You have 10 downloads.")
-print("You have " + num + " " + PluralForm.get(num, downloads) + ".");
-
-// Try again with a different value: "You have 1 download."
-num = 1;
-print("You have " + num + " " + PluralForm.get(num, downloads) + ".")</pre>
-
-<p>The above example works, but is still difficult to localize, because we're concatenating strings assuming a particular grammatical structure. The following would be better:</p>
-
-<pre>Components.utils.import("resource://gre/modules/PluralForm.jsm");
-
-let downloads = "You have one download.;You have #1 downloads.";
-let num = 10;
-
-// For English, this would display "You have 10 downloads."
-print(PluralForm.get(num, downloads).replace("#1", num);</pre>
-
-<p>Notice in the above example that the code can be written to support placeholders or not use placeholders in some forms of the string. Additionally, the localizer has control over where the placeholder is, in relation to the rest of the text.</p>
-
-<p>Of course, the strings to be localized will be placed in a separate file, such as yourextension.properties, instead of being hardcoded in the JavaScript code file.</p>
-
-<p>The following 3 file snippets show how to use PluralForm with your <code>.xul</code>, <code>.properties</code>, <code>.js</code> files.</p>
-
-<p><code>downloads.xul</code>:</p>
-
-<pre>&lt;stringbundleset&gt;
- &lt;stringbundle id="strings" src="chrome://downloads.properties"/&gt;
-&lt;/stringbundleset&gt;</pre>
-
-<p><code>downloads.properties</code>:</p>
-
-<pre># LOCALIZATION NOTE (downloadsTitleFiles): Semi-colon list of plural forms.
-# See: https://developer.mozilla.org/en-US/docs/Mozilla/Localization/Localization_and_Plurals
-# #1 number of files
-# example: 111 files - Downloads
-downloadsTitleFiles=#1 file - Downloads;#1 files - Downloads
-
-# LOCALIZATION NOTE (timePair): #1 time number; #2 time unit
-# example: 1 second; 11 seconds
-timePair=#1 #2
-seconds=second;seconds
-minutes=minute;minutes
-hours=hour;hours
-</pre>
-
-<p><code>downloads.js</code>:</p>
-
-<pre>Components.utils.import("resource://gre/modules/PluralForm.jsm");
-let getStr = function(string) document.getElementById("strings").getString(string);
-
-// Get the correct plural form for the title
-let numDownloads = 3;
-let title = PluralForm.get(numDownloads, getStr("downloadsTitleFiles"));
-// Put in the correct number of downloads
-print(title.replace("#1", numDownloads));
-
-// Get the correct plural form of seconds
-let timeLeft = 55;
-let seconds = PluralForm.get(timeLeft, getStr("seconds"));
-// Print the localized string for "55 seconds"
-print(getStr("timePair").replace("#1", timeLeft).replace("#2", seconds));</pre>
-
-<h3 id="Método_makeGetter">Método: <code>makeGetter</code></h3>
-
-<p>If you're writing an extension, you'll want to use <code>makeGetter</code> instead of <code>PluralForm.get()</code> or <code>PluralForm.numForms()</code>. This is because someone installing the extension on a different locale will be using the strings provided by your default extension locale. For example, your extension localized for English with plural rule #1, which expects 2 plural forms, is installed on a localized version of Firefox with plural rule #4, which expects 3 forms:</p>
-
-<pre>/**
- * Create a pair of plural form functions for the given plural rule number.
- *
- * @param aRuleNum
- * The plural rule number to create functions
- * @return A pair: [function that gets the right plural form,
- * function that returns the number of plural forms]
- */
-[string pluralForm get(int aNum, string aWords), int numForms numForms()]
-makeGetter(int aRuleNum)</pre>
-
-<p>Aqui tem um exemplo de utilização de <code>makeGetter</code>:</p>
-
-<pre>Components.utils.import("resource://gre/modules/PluralForm.jsm");
-
-// Let's get Irish (plural rule #11)
-let [get, numForms] = PluralForm.makeGetter(11);
-
-// Make up some values to use with "get"
-let dummyText = "form 1;form 2;form 3;form 4;form 5";
-let dummyNum = 10;
-
-// In the case of Irish, the value 10 uses plural form #4, so "form 4" is printed
-print(get(dummyNum, dummyText));</pre>
-
-<p>In this example, the Irish plural rule was hardcoded, but this could be a value specified in the .properties file. So for your extension, specify a pluralRule value in the .properties, and call <code>PluralForm.makeGetter(pluralRuleFromProperties),</code> making sure to save the 2 returned functions. (You can use <a href="/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment" title="Destructuring assignment">destructured assignment</a> in JavaScript 1.7 to keep things clean.) The returned functions act just like <code>PluralForm.get()</code> and <code>PluralForm.numForms()</code>, except for the specified plural rule instead of the default plural rule.</p>
-
-<h2 id="Créditos">Créditos</h2>
-
-<p>Inicialmente, o código da "Forma de Plural" foi implementado por {{ Bug(394516) }} - <em>Figure out a remaining-time rounding scheme for minutes -&gt; hours/days</em><br>
- As regras de plural e as familias derivadas da <a class="external" href="https://www.gnu.org/software/gettext/manual/html_node/gettext_150.html#Plural-forms">documentação <code>gettext</code> da GNU</a>.</p>
diff --git a/files/pt-pt/mozilla/localization/localizar_com_mercurial/index.html b/files/pt-pt/mozilla/localization/localizar_com_mercurial/index.html
deleted file mode 100644
index de4a09643f..0000000000
--- a/files/pt-pt/mozilla/localization/localizar_com_mercurial/index.html
+++ /dev/null
@@ -1,256 +0,0 @@
----
-title: Localizar com Mercurial
-slug: Mozilla/Localization/Localizar_com_Mercurial
-tags:
- - Documentação de criação
- - Internacionalização
- - Localização
- - Tradução
-translation_of: Mozilla/Localization/Localizing_with_Mercurial
----
-<p>In Mozilla, we use the the <a href="../../../../en/Mercurial_basics" rel="internal">Mercurial</a> version control system (Hg) to manage our source code and localizations. Mercurial allows localizers to work locally (on their machines) and then <code style="font-size: 14px;">push</code> (an Hg term) changes to a remote repository, which usually is hosted on the Mozilla servers (<a class="external" href="http://hg.mozilla.org/" title="http://hg.mozilla.org/">hg.mozilla.org</a>). Localizing current versions of Firefox, Thunderbird and SeaMonkey includes working with Mercurial. If the documentation is incomplete or you have questions, please drop by the <a href="irc://irc.mozilla.org/l10n" title="irc://irc.mozilla.org/l10n">#l10n</a> or <a href="irc://irc.mozilla.org/hg" title="irc://irc.mozilla.org/hg">#hg</a> channels on irc.mozilla.org. The <a class="internal" href="/en/Mercurial_FAQ" title="En/Mercurial FAQ">Mercurial FAQ</a> are also worth a read, should you run into trouble.</p>
-
-<p>For the eager and quick, below you'll find instructions on installing and configuring Mercurial, instructions on receiving an Hg account commit priviledges, as well as a few tasks you can complete without account priviledges.</p>
-
-<h2 id="Instalar_Mercurial">Instalar Mercurial</h2>
-
-<p>Follow the instructions below to install Mercurial on your system. Once you've installed Mercurial, we'll walk through the steps to <a href="/en/Mercurial_FAQ#Configuration" title="en/Mercurial FAQ#Configuration">configure</a> it.</p>
-
-<h3 id="Mercurial_no_Linux">Mercurial no Linux</h3>
-
-<p>You can easily install Mercurial from the command line by issuing one of the following commands. Choose the appropriate command for your distribution and make sure to run <em>as root</em>.</p>
-
-<pre># Debian/ubuntu
-$ apt-get install mercurial
-
-# Fedora
-$ yum install mercurial
-
-# Gentoo
-$ emerge mercurial
-
-# Arch Linux
-$ pacman -S mercurial
-
-# OpenSolaris
-$ pkg install SUNWmercurial
-</pre>
-
-<p>Se preferir uma interface gráfica, pode <a href="http://javaforge.com/project/HGE" title="http://javaforge.com/project/HGE">transferir e instalar o MercurialEclips e aqui</a>.</p>
-
-<h4 id="Este_funcionou">Este funcionou?</h4>
-
-<p>Open a Terminal window and enter <code>hg --version</code>. If you see a message about the version of Mercurial (e.g. <code>Mercurial Distributed SCM (version 1.3.1)</code>), you have installed Mercurial successfully!</p>
-
-<h4 id="Mais_detalhes">Mais detalhes</h4>
-
-<p>For more details on installing Hg on Linux systems, refer to the <a class="external" href="http://mercurial.selenic.com/downloads/" title="http://mercurial.selenic.com/downloads/">instructions on Mercurial's Download page</a>.</p>
-
-<h3 id="Mercurial_no_Windows">Mercurial no Windows</h3>
-
-<p>With Windows, you have a couple of install options:</p>
-
-<ul>
- <li>For a <strong>command line interface</strong>, download and install {{ interwiki("wikimo", "MozillaBuild") }} package. This will not only install Hg, but also all the tools required to build Mozilla products on Windows. Trust us, you'll want this eventually.</li>
- <li><a href="/@api/deki/files/3863/=TortoiseHg.png" title="TortoiseHg.png"><img alt="TortoiseHg.png" class="internal rwrap" src="/@api/deki/files/3863/=TortoiseHg.png?size=thumb" style="float: right; height: 115px; width: 160px;"></a>For a <strong>graphical interface</strong>, you may want to <a class="external" href="http://tortoisehg.bitbucket.org/" title="http://tortoisehg.bitbucket.org/">install TortoiseHg</a>, which integrates with your Windows Explorer shell. It also installs the command line utility.</li>
-</ul>
-
-<p><a href="/@api/deki/files/3861/=Mercurial_Installer.png" title="Mercurial Installer.png"><img alt="Mercurial Installer.png" class="internal rwrap" src="/@api/deki/files/3861/=Mercurial_Installer.png?size=thumb" style="float: right; height: 125px; width: 160px;"></a>Part of the command line Hg install for Windows involves making sure the <code>hg </code>executable is in the system's <code>%PATH%</code> variable (TortoiseHg doesn't need this step). Use the <code>add_path.exe</code> utility found in <code>C:\mozilla-build\hg</code> to do this.</p>
-
-<pre>PS C:\Users\your_id&gt; cd C:\mozilla-build\hg
-PS C:\mozilla-build\hg&gt; .\add_path.exe /result .
-</pre>
-
-<p>Note the dot ("<code>.</code>") at the end of the second command, which means <em>the current directory</em>. If the utility modified your <code>%PATH%</code> successfully, a dialog will open saying, "<code><em>%PATH%</em></code><em> has been updated correctly</em>."</p>
-
-<p>Alternatively, you can edit the <code>%PATH%</code> variable manually. In order to do so, right-click on your computer icon, choose <code>Properties &gt; Advanced &gt; Environmental Variables</code>, select <code>PATH </code>and click <code>Edit</code>. If you don't see <code>PATH</code> among the options, you'll have to click <code>Add</code> and edit it within the <strong>Add</strong> dialog. See the screenshot for an example.<a href="/@api/deki/files/3862/=PATH.jpg" title="PATH.jpg"><img alt="PATH.jpg" class="internal rwrap" src="/@api/deki/files/3862/=PATH.jpg?size=thumb" style="float: right; height: 71px; width: 160px;"></a></p>
-
-<h4 id="Este_funcionou_2">Este funcionou?</h4>
-
-<ol>
- <li>Go to <code>Start &gt; Run...</code></li>
- <li>Type <code>cmd.exe </code>and click <code>OK</code>. A new shell window should appear. </li>
- <li>Type <code>hg --version</code> in the new shell window. If you see a message about the version of Mercurial (e.g. <code>Mercurial Distributed SCM (version 1.3.1)</code>), you have installed Mercurial successfully!</li>
-</ol>
-
-<h4 id="Mais_detalhes_2" style="font-size: 14px;">Mais detalhes</h4>
-
-<p>For more details on installing Hg on Windows, refer to the <a class="external" href="http://mercurial.selenic.com/downloads/" title="http://mercurial.selenic.com/downloads/">instructions on Mercurial's Download page</a>.</p>
-
-<h3 id="Mercurial_no_Mac_OSX">Mercurial no Mac OSX</h3>
-
-<p>Installing Hg on Mac OSX is super easy. You can install Mercurial via <a class="external" href="http://www.macports.org/" title="http://www.macports.org/">MacPorts</a> through the Terminal, like so:</p>
-
-<p><code>$ sudo port install mercurial</code></p>
-
-<p>You can also install it by downloading the dmg package from the <a href="http://mercurial.selenic.com/wiki/Download#Mac_OS_X" title="http://mercurial.selenic.com/wiki/Download#Mac_OS_X">Hg download page</a>. It has an install dialog that will walk you through the process.</p>
-
-<p>If you prefer a graphical interface, you can <a href="http://javaforge.com/project/HGE" title="http://javaforge.com/project/HGE">download and install MercurialEclipse here</a>.</p>
-
-<h4 id="Este_funcionou_3">Este funcionou?</h4>
-
-<p>Open a Terminal window and type <code>hg --version</code>. If you see a message about the version of Mercurial (e.g. <code>Mercurial Distributed SCM (version 1.3.1)</code>), you have installed Mercurial successfully!</p>
-
-<h4 id="Mais_detalhes_3" style="font-size: 14px;">Mais detalhes</h4>
-
-<p>For more details on installing Hg on Mac OSX, refer to the <a class="external" href="http://mercurial.selenic.com/downloads/" title="http://mercurial.selenic.com/downloads/">instructions on Mercurial's Download page</a>.</p>
-
-<h2 id="Configurar_o_Mercurial">Configurar o Mercurial</h2>
-
-<p>Once you've installed Mercurial, you'll need to configure it before you can use it successfully.</p>
-
-<p>Your Mercurial configuration is contained within a config file which you must create yourself. Your config file is called either <code style="font-size: 14px; color: rgb(51, 51, 51);">~/.hgrc</code> (UNIX systems) or <code style="font-size: 14px; color: rgb(51, 51, 51);">Mercurial.ini</code> (Windows), depending on your operating system.</p>
-
-<p>Your config file should have the following settings:</p>
-
-<pre class="eval">[ui]
-username = Your Real Name &lt;<a class="link-mailto" href="mailto:user@example.com" rel="external" title="mailto:user@example.com">user@example.com</a>&gt;
-merge = internal:merge
-
-[defaults]
-commit = -v
-
-[diff]
-git = 1
-showfunc = 1
-unified = 8</pre>
-
-<p>To configure Hg, follow these steps:</p>
-
-<ol>
- <li>Create a new file in your favorite text editor.</li>
- <li>Copy the settings above and paste them into your new file.</li>
- <li>Save the file as either <code>.hgrc</code> (UNIX systems) or <code>Mercurial.ini</code> (Windows) and save it in either <code>$HOME/</code> or <code>C:\mozilla-build\hg\</code> or <code>C:\Program Files\Mercurial\</code>.</li>
-</ol>
-
-<p>Now that you've installed and configured Mercurial, here are a few tasks you can do without Hg commit access priviledges.</p>
-
-<h2 id="Clonar_e_atualizar_os_repositórios">Clonar e atualizar os repositórios</h2>
-
-<p>There are a couple of repostiories that contain en-US source files that most locales will want to deal with.</p>
-
-<ul>
- <li><a class="external" href="https://hg.mozilla.org/mozilla-central/" title="https://hg.mozilla.org/mozilla-central/">mozilla-central</a> contains the files for Firefox Nightly.</li>
- <li><a class="external" href="https://hg.mozilla.org/comm-central/" title="https://hg.mozilla.org/comm-central">comm-central</a> contains the files for SeaMonkey and Thunderbird which are not already part of Firefox.</li>
- <li><a href="https://hg.mozilla.org/l10n-central/" title="https://hg.mozilla.org/l10n-central/">l10n-central</a> contains all of the L10n repos for Firefox Nightly.</li>
-</ul>
-
-<div class="note">
-<p>When you get the comm-central repository, this will include the mozilla-central repository as well. You can therefore use the one set up for developing Firefox, SeaMonkey and Thunderbird without having to pull mozilla-central a second time.</p>
-</div>
-
-<p>Here's how to get (or clone) your en-US source files for the first time:</p>
-
-<ul>
- <li>Run the following command in the command line to get the source en-US files for Firefox:</li>
-</ul>
-
-<pre class="eval">hg clone https://hg.mozilla.org/mozilla-central/
-</pre>
-
-<p>This will create a clone of the mozilla-central repository in the directory mozilla-central.</p>
-
-<ul>
- <li>Run the following commands in the command line to get the source en-US files for any combination of Firefox, SeaMonkey, Thunderbird:</li>
-</ul>
-
-<pre>hg clone https://hg.mozilla.org/comm-central/
-cd comm-central
-python client.py checkout
-</pre>
-
-<p>The first command will create a clone of the comm-central repository. The second command will move you into that directory. The third command will do a clone of mozilla-central, and pull some other hg repositories. The other directories are required for SeaMonkey and Thunderbird.</p>
-
-<ul>
- <li>Cloning your localization repository for the first time is just as easy. For example, to clone your Firefox Nightly L10n repo, run the following command, replacing ab-CD with your locale code:</li>
-</ul>
-
-<pre class="eval" style="font-size: 14px;">hg clone https://hg.mozilla.org/l10n-central/ab-CD/</pre>
-
-<h3 id="Atualizar_os_seus_repositórios_locais">Atualizar os seus repositórios locais</h3>
-
-<ul>
- <li>To update your working copy of mozilla-central, go to your local mozilla-central directory and run:</li>
-</ul>
-
-<pre class="eval">hg pull -u
-</pre>
-
-<p>This will both get new changesets from mozilla-central and apply those changes in your working copy.</p>
-
-<ul>
- <li>To update your working copy of comm-central, go to your comm-central directory and run:</li>
-</ul>
-
-<pre>python client.py checkout</pre>
-
-<p>This will both get new changesets from comm-central, mozilla-central and the other appropriate locations and apply those changes in your working copy.</p>
-
-<ul>
- <li>To update your local L10n repo after your first clone, run this command from your local L10n directory:</li>
-</ul>
-
-<pre style="font-size: 14px;">hg pull -u</pre>
-
-<h2 id="Criar_correções_(patches)_de_L10n">Criar correções (patches) de L10n</h2>
-
-<p>Another thing you can do with Hg without needing account priviledges is creating L10n patches of your work for someone else to commit to your remote L10n repo on the Mozilla servers. Doing this ensures that your dashboards are always accurate, as they look at your remote repo.</p>
-
-<p>Here's how to create a L10n patch with Hg and the <a href="http://mercurial.selenic.com/wiki/MqExtension" title="http://mercurial.selenic.com/wiki/MqExtension">Mq extension</a>:</p>
-
-<ol>
- <li>Enable Mq by adding <code>hg.ext = </code> to your Mercurial config file (<code>~/.hgrc</code> on Unix-like systems or <code>Mercurial.ini</code> on Windows) under the <code>[extensions]</code> section.</li>
- <li>Open your command line tool and navigate to your L10n directory.</li>
- <li>Inside your L10n directory, init your repo with Mq by running <code>hg init --mq</code>.</li>
- <li>To create a new patch, run <code>hg qnew -m "Your commit message" patch-name.patch</code>. The commit message should take the form of "Bug 123456 - Change this thing to work better by doing something; r=reviewers" if you are to fix a bug.</li>
- <li>Make your change.</li>
- <li>Once you finish making your change, run <code>hg qrefresh</code> to commit your changes to the patch.</li>
- <li>Navigate to your <code>&lt;repository&gt;/.hg/patches</code> to find your <code>.patch</code>.</li>
- <li>You may repeat from step 4 to create another patch. Your patches will be incremental, i.e. new patches are created based on old patches. If you want to commit all the patches to the repository and cleanup the patch queue, run <code>hg qfinish</code>.</li>
-</ol>
-
-<p>Please refer to <a href="http://mercurial.selenic.com/wiki/MqTutorial" title="http://mercurial.selenic.com/wiki/MqTutorial">MqTutorial</a> and <a href="http://mercurial.selenic.com/wiki/MqExtension" title="http://mercurial.selenic.com/wiki/MqExtension">Mq documentation</a> for further uses of Mq extension to manage patches.</p>
-
-<h2 id="Privilégios_da_Conta_Mercurial">Privilégios da Conta Mercurial</h2>
-
-<p>Eventually, you or your team leader will need Hg account priviledges. Let's face it, it's just more convenient to commit and push your work to the remote repo yourself, rather than creating patches and asking someone else to push them for you.</p>
-
-<p>To get write access to the l10n hg repositories on the Mozilla server,<a class="external" href="http://www.mozilla.org/hacking/commit-access-policy/" title="http://www.mozilla.org/hacking/commit-access-policy/"> there's a bit of paper work to be done</a>. The localization team owner needs to <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Repository%20Account%20Requests&amp;rep_platform=All&amp;op_sys=All&amp;cc=l10n%40mozilla.com&amp;short_desc=l10n%20hg%20account%20for%20John%20Doe%20(ab-CD)" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=mozilla.org&amp;component=Repository%20Account%20Requests&amp;rep_platform=All&amp;op_sys=All&amp;cc=l10n%40mozilla.com&amp;short_desc=l10n%20hg%20account%20for%20John%20Doe%20(ab-CD)">file a bug requesting an hg account</a>. This bug will request level 1 L10n priviledges. You need to follow the instructions regarding the <a class="external" href="http://www.mozilla.org/hacking/committer/" title="http://www.mozilla.org/hacking/committer/">contributor form</a>. Write access to the hg repositories requires a ''voucher'', which, for the owner, will be done based on the review by Mozilla. For peers of a localization, the owner can vouch (once she or he is registered).</p>
-
-<h2 id="Pull_your_locale" name="Pull_your_locale">Enviar alterações para a Mozilla</h2>
-
-<p>Now that you have Hg account privileges, you can send your work to Mozilla all by yourself. Here are the steps to send your L10n work using Mercurial:</p>
-
-<ol>
- <li>Since your L10n work takes place in your own local repository, you should ensure that there are no changes made to the remote repository before committing your work. To do this, <a href="https://developer.mozilla.org/en-US/docs/Localizing_with_Mercurial#Updating_your_local_repos" title="https://developer.mozilla.org/en-US/docs/Localizing_with_Mercurial#Updating_your_local_repos">update your locale, as per the section above</a>.</li>
- <li>After finishing a change or set of changes and checking you have updated to the latest, you should commit by entering this command:</li>
-</ol>
-
-<pre class="eval">hg commit -m "your message identifying the change (bug 555)"</pre>
-
-<p>Committing won’t send your changes to Mozilla’s repository, but prepares them for it. The next step will send your changes to your remote repo via <code>push</code>.</p>
-
-<ol start="3">
- <li>To push to mozilla-hosted repositories, you have to have committer access, and you must edit the file <code><em>(your-local-hg-root AKA the directory you pulled your locale into)</em>/.hg/hgrc</code> (note, this is <strong>NOT</strong> your <code>~/.hgrc</code>) to add these lines (replacing ab-CD with your locale code):</li>
-</ol>
-
-<pre class="eval">[paths]
-default = https://hg.mozilla.org/l10n-central/ab-CD/
-default-push = ssh://hg.mozilla.org/l10n-central/ab-CD/
-</pre>
-
-<ol start="4">
- <li>You’ll also need to tell ssh which account to use for your pushes, too, by editing <code>~/.ssh/config</code> and adding these lines, where <code style="font-size: 14px; color: rgb(51, 51, 51);">user@host.domain</code> is your account:</li>
-</ol>
-
-<pre>Host hg.mozilla.org
-User user@host.domain
-</pre>
-
-<ol start="5">
- <li>Now you can push your work to the repository (and check the result on the dashboard) by entering this command from your local directory:</li>
-</ol>
-
-<pre class="eval">hg push</pre>
-
-<p id="A_.mozconfig">And tah dah! You're done! Congratulations on finishing the tutorial. Take a break and grab a snack, you deserve it</p>
diff --git a/files/pt-pt/mozilla/localization/localização_com_pontoon/index.html b/files/pt-pt/mozilla/localization/localização_com_pontoon/index.html
deleted file mode 100644
index 05fa58b1d6..0000000000
--- a/files/pt-pt/mozilla/localization/localização_com_pontoon/index.html
+++ /dev/null
@@ -1,138 +0,0 @@
----
-title: Traduzir com Pontoon
-slug: Mozilla/Localization/Localização_com_Pontoon
-tags:
- - Localização
- - Tradução
-translation_of: Mozilla/Localization/Localizing_with_Pontoon
----
-<p><a href="https://pontoon.mozilla.org/pt-PT/" title="https://pontoon.mozilla.org">Pontoon</a> é uma ferramenta de localização (l10n), O-Que-Vê-É-O-Que-Obtém (WYSIWYG) baseada na Web. Na Mozilla, nós utilizamos o Pontoon para localizar todos os produtos e sites da Web da Mozilla, desde o Firefox até Mozilla.org. Pontoon é uma ferramenta muito simples e intuitiva que requer poucos conhecimentos técnicos para utilizar no ritmo de trabalho de l10n. Aqui, nós iremos discutir como utilizar o Pontoon para localizar projetos, desde o primeiro início de sessão até concluir as suas contribuições. Ao longo do caminho, nós iremos sugerir algumas funcionalidades que irão tornar mais eficiente e facilitar as suas contribuições no seu l10n.</p>
-
-<div class="note">
-<p><strong>É um programador?</strong> Leia sobre a <a href="/pt-PT/docs/Mozilla/Implementacao_do_Pontoon_num_projeto_da_Mozilla">implementação do Pontoon no seu projet</a>o ou saiba como participar no <a href="https://github.com/mozilla/pontoon">GitHub</a>.</p>
-</div>
-
-<h2 id="Primeiros_passos">Primeiros passos</h2>
-
-<p><a href="https://pontoon.mozilla.org" title="https://pontoon.mozilla.org">Pontoon's home page</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="Barra_de_ferramentas_principal">Barra de ferramentas principal</h3>
-
-<p>As you can see, 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="Lista_de_textos">Lista de textos</h4>
-
-<p>Opens a sidebar with a list of all strings to localize.</p>
-
-<h4 id="Seletor_de_projeto_(Afiliados)"><span id="cke_bm_939S" style="display: none;"> </span>Seletor de projeto (Afiliados)</h4>
-
-<p>Switches between projects to localize.</p>
-
-<h4 id="Seletor_de_recursos_(Página_Inicial)"><span id="cke_bm_940S" style="display: none;"> </span>Seletor de recursos (Página Inicial)</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="Seletor_de_idioma_(Esloveno)">Seletor de idioma (Esloveno)</h4>
-
-<p>Switches between languages to localize.</p>
-
-<h4 id="Ir">Ir</h4>
-
-<p>Opens project-resource-locale selection.</p>
-
-<h4 id="Indicado_do_progresso">Indicado do progresso</h4>
-
-<p>Displays your progress on the resource being localized. More details are available in the popup.</p>
-
-<dl>
-</dl>
-
-<h4 id="Menu_do_utilizador"><span id="cke_bm_943S" style="display: none;"> </span>Menu do utilizador</h4>
-
-<p>Allows for user-specific tasks, like commiting to repository, downloading files and signing out.</p>
-
-<h4 id="Menu_da_informação">Menu da informação</h4>
-
-<p>Gives important information, like the anticipated project timeline and a list of keyboard shortcuts.</p>
-
-<dl>
-</dl>
-
-<p>Alright, how about we do some translating now?<span id="cke_bm_608E" style="display: none;"> </span></p>
-
-<dl>
-</dl>
-
-<h2 id="Traduzir_texto">Traduzir texto</h2>
-
-<p>When using Pontoon for localization, you have a couple of options to translate your strings. You can translate in-context, out-of-context, or a combination of the two. We'll start with looking at in-context translation.</p>
-
-<h3 id="In-context">In-context</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="Out-of-context">Out-of-context</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>Click on the string you'd like to translate.</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>Click the save button to save your translation.</li>
-</ol>
-
-<p>As you translate strings out-of-context, translations will also appear in website, if they could also be translated in-context.</p>
-
-<h3 id="Ajudas_de_tradução">Ajudas de tradução</h3>
-</div>
-
-<p>As you can see, 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="Histórico">Histórico</h4>
-
-<p>Displays previously suggested translations, including from other users.</p>
-
-<h4 id="Máquina">Máquina</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="Outros_idiomas">Outros idiomas</h4>
-
-<p>Displays matching translations from other locales.</p>
-
-<h4 id="Pesquisar">Pesquisar</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="Publicar_a_sua_localização">Publicar a sua localização</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/pt-pt/mozilla/mercurial/basicos/index.html b/files/pt-pt/mozilla/mercurial/basicos/index.html
deleted file mode 100644
index a57f7a3778..0000000000
--- a/files/pt-pt/mozilla/mercurial/basicos/index.html
+++ /dev/null
@@ -1,61 +0,0 @@
----
-title: Básicos sobre Mercurial
-slug: Mozilla/Mercurial/Basicos
-tags:
- - Desenvolvendo o Mozilla
- - Mercurial
-translation_of: Mozilla/Mercurial/Basics
----
-<p>I am about to tell you some stuff about <a href="/en/Mercurial" title="en/Mercurial">Mercurial</a> that will save you a lot of frustration. This page is cynical and survival-oriented. But I still claim Mercurial is a lot better than CVS. —<a href="/User:Jorend" title="User:Jorend">jorendorff</a> 16:06, 12 May 2008 (PDT)</p>
-
-<h3 id="Expectations" name="Expectations">Expetativas</h3>
-
-<p><strong>Mercurial não é CVS.</strong> Os comandos não são os mesmos. Os conceitos não são os mesmos. <a href="/en/Mozilla/Mercurial/How_Is_Mercurial_different_from_CVS" title="en/Mozilla/Mercurial/How_Is_Mercurial_different_from_CVS">Como é Mercurial diferente de CVS?</a></p>
-
-<p><strong>This gun is loaded.</strong> You can shoot yourself in the foot. You can lose work. The tool tries to protect you, but it can happen anyway. The two common failure modes are: (a) you run a command without knowing what it's going to do; (b) you <code>hg commit</code> or <code>hg qrefresh</code> with a mistaken understanding of the state of your working directory. So you accidentally commit changes that you didn't want to commit; or you accidentally commit a broken merge; etc. Often it's not immediately obvious that anything is wrong.</p>
-
-<p>Forewarned is forearmed. Don't do these things. Don't run commands without knowing what they're going to do—<code>hg help</code> is your friend. Don't commit without diffing and thinking. And don't let yourself get into "play mode" and stop paying attention to the fact that what you're playing with is your own uncommitted work.</p>
-
-<p><strong>Mercurial is not magic dust.</strong> Mercurial is flexible, powerful, and fun. It lets you attempt stuff you never would have tried in CVS. But of course not everything turns out to have been a good idea. (For example, we tried sharing patch queues. It sort of sucked.)</p>
-
-<h3 id="Avoiding_trouble" name="Avoiding_trouble">Evite problemas</h3>
-
-<p><strong>Utilize o último lançamento estável do Mercurial.</strong></p>
-
-<p><strong>Learn how to get your bearings.</strong> Use read-only commands (like <code>hg status</code>, <code>hg head</code>, <code>hg parents</code>, <code>hg log</code>, <code>hg diff</code>, <code>hg outgoing</code>) to check the status of your repository. This is a key skill.</p>
-
-<p><strong>Configure a <a class="external" href="http://mercurial.selenic.com/wiki/MergeToolConfiguration">merge program</a> and make sure you know how to use it. DO IT NOW.</strong> Otherwise you will likely screw up your repository at some point.</p>
-
-<p>Mercurial doesn't leaves conflict markers in your files; instead, it wants you to fix the conflicts <em>immediately</em>, using a merge program (like <code>kdiff3</code>) which it can launch for you.</p>
-
-<p>This can be error-prone. By default, Mercurial uses the first merge program it finds on your system, and merge programs can have a learning curve. Mercurial does not do a good job of detecting busted merges and refusing to proceed, so just by closing a window you can unwittingly put yourself in a bad state. Bad merges may lead to seemingly inexplicable Mercurial behavior in the future.</p>
-
-<p><strong>If a merge fails, make sure Mercurial knows that it has failed.</strong> When you're first learning the ropes, merges often go wrong. You might see this message:</p>
-
-<pre class="eval">0 files updated, 0 files merged, 0 files removed, 1 files unresolved
-There are unresolved merges, you can redo the full merge using:
- hg update -C 2
- hg merge 1
-</pre>
-
-<p>This means some conflicts weren't resolved during the merge. If you don't know exactly what they are and how to fix them, use that <code>hg update -C</code> command to tell Mercurial that you've given up on that merge.</p>
-
-<p>If you don't, Mercurial won't know, and the next time you commit, it'll make a merge changeset. This is bad. The result can look a lot like accidentally destroying a bunch of work, actually, but the damage can be undone.</p>
-
-<p>If <code>hg parents</code> shows two parents, you're merging.</p>
-
-<p><strong>If you use <a href="/en/Mercurial_Queues" title="Mercurial_Queues">Mercurial Queues</a>, back up your work.</strong> <code>hg qrefresh</code> destructively replaces the old patch with the new one! Use <code>hg qinit -c</code> to create a separate backup repository for your patches and <code>hg commit --mq -m backup</code> regularly.</p>
-
-<p><strong>Don't use Mercurial Queues in a repository that someone might pull from since applied (non-public) patches would also be pulled.</strong></p>
-
-<h3 id="Recovering" name="Recovering">Recuperação</h3>
-
-<p>Ups! Mercurial cortou o seu braço!</p>
-
-<p><strong>Don't randomly try stuff to see if it'll magically fix it.</strong> Remember what you stand to lose, and <em>set down the chainsaw</em> while you still have one good arm.</p>
-
-<p><strong>Obtenha ajuda no IRC.</strong> Tente <a class="link-irc" href="irc://irc.mozilla.org/hg">#hg</a> ou <a class="link-irc" href="irc://irc.mozilla.org/developers">#developers</a> no Mozilla IRC ou <a class="link-irc" href="irc://irc.freenode.net/mercurial">#mercurial no freenode</a>.</p>
-
-<p> </p>
-
-<p>{{ languages( { "es": "es/Lo_b\u00e1sico_de_Mercurial", "fr": "fr/Les_bases_de_Mercurial", "ja": "ja/Mercurial_basics" } ) }}</p>
diff --git a/files/pt-pt/mozilla/mercurial/index.html b/files/pt-pt/mozilla/mercurial/index.html
deleted file mode 100644
index 4f54ee5312..0000000000
--- a/files/pt-pt/mozilla/mercurial/index.html
+++ /dev/null
@@ -1,41 +0,0 @@
----
-title: Mercurial
-slug: Mozilla/Mercurial
-tags:
- - Desenvolvendo a Mozilla
- - Mercurial
-translation_of: Mozilla/Mercurial
----
-<div class="note">
-<p><a href="https://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/index.html">Por favor, consulte Mercurial para Mozillians em ReadTheDocs</a> para as melhores práticas atuais à volta do Mercurial, including many helpful extra tools and guidelines that make using Mercurial fast and easy.</p>
-</div>
-
-<p><a class="external" href="https://www.mercurial-scm.org/"><strong>Mercurial</strong></a> (também conhecido como "hg"), é um <a class="external" href="https://en.wikipedia.org/wiki/Distributed_revision_control">controlo de versões distribuido </a>de software, utilizado para o desenvolvimento do Firefox, Thunderbird, e o núcleo de Gecko partilhado. Este substituiu <a href="/en-US/docs/Developer_Guide/Source_Code/CVS" title="en-US/docs/Developer_Guide/Source_Code/CVS">CVS</a> depois da ramificação 1.9 da Mozilla.</p>
-
-<p><strong><code>hg</code></strong> is the Mercurial command-line tool, Hg being the chemical symbol for the element mercury.</p>
-
-<h2 id="Learning_to_use_Mercurial" name="Learning_to_use_Mercurial">Instalação, configuração e obtenção da fonte</h2>
-
-<p>See <a href="/en-US/docs/Installing_Mercurial" title="/en-US/docs/Installing_Mercurial">Installing Mercurial</a> for installation and configuration tips.</p>
-
-<p>See <a href="/en-US/docs/Developer_Guide/Source_Code/Mercurial" title="en-US/docs/Developer_Guide/Source_Code/Mercurial">Getting Mozilla Source Code Using Mercurial</a> for getting a tree to build.</p>
-
-<h2 id="Learning_to_use_Mercurial" name="Learning_to_use_Mercurial">Aprender a utilizar o Mercurial</h2>
-
-<p>If you are new to Mercurial, you should start with the <a href="https://www.mercurial-scm.org/guide">official guide</a>.</p>
-
-<p>Then, move on to <a href="/en-US/docs/Mercurial_basics" title="en-US/docs/Mercurial_basics">Mercurial basics</a> and <a href="/en-US/docs/Mercurial_FAQ" title="en-US/docs/Mercurial_FAQ">Mercurial FAQ</a> and the <a href="https://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/">version control tool docs</a> for Mozilla-centric Mercurial information.</p>
-
-<h2 id="Further_reading" name="Further_reading">Leitura adicional</h2>
-
-<p>The <a href="https://developer.mozilla.org/en-US/docs/tag/Mercurial" title="https://developer.mozilla.org/en-US/docs/tag/Mercurial">Mercurial tag</a> lists the Mercurial-related articles on MDN.</p>
-
-<p>And on wiki.mozilla.org, these helpful pages:</p>
-
-<ul>
- <li>{{ interwiki('wikimo', 'Using_Mercurial_locally_with_CVS', 'Using Mercurial locally with CVS') }}, a how-to. (Note that this is only useful for code that's still exclusively in CVS.)</li>
- <li>{{ interwiki('wikimo', 'Mercurial_on_Windows', 'Mercurial on Windows') }}</li>
- <li><a href="/en-US/docs/Creating_Mercurial_User_Repositories" title="en-US/docs/Creating_Mercurial_User_Repositories">Creating Mercurial User Repositories</a> - If you have a LDAP account that allows you to push to hg.mozilla.org you can also create your own user repositories on the server to share work.</li>
-</ul>
-
-<p>{{ languages( { "es": "es/Mercurial", "fr": "fr/Mercurial", "ja": "ja/Mercurial" } ) }}</p>
diff --git a/files/pt-pt/mozilla/mercurial/instaacao_mercurial/index.html b/files/pt-pt/mozilla/mercurial/instaacao_mercurial/index.html
deleted file mode 100644
index b5bf466bca..0000000000
--- a/files/pt-pt/mozilla/mercurial/instaacao_mercurial/index.html
+++ /dev/null
@@ -1,151 +0,0 @@
----
-title: Instalação de Mercurial
-slug: Mozilla/Mercurial/Instaacao_Mercurial
-tags:
- - Desenvolvendo a Mozilla
- - Mercurial
- - Precisa de Atualização
-translation_of: Mozilla/Mercurial/Installing_Mercurial
----
-<p>{{Note('Se ainda não leu os <a href="/pt-PT/docs/Mozilla/Mercurial/Basicos">básicos sobre Mercurial</a>, faça-o agora ou consulte <a href="/pt-PT/docs/Mozilla/Mercurial">Mercurial</a> para outros recursos.')}}</p>
-
-<div class="note">
-<p>Please refer to <a href="https://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/index.html"> Mercurial para Mozillians em ReadTheDocs</a> for current best-practices around Mercurial, including many helpful extra tools and guidelines that make using Mercurial fast and easy.</p>
-</div>
-
-<h2 id="Installing" name="Installing">Instalação</h2>
-
-<p>See <a href="http://mozilla-version-control-tools.readthedocs.org/en/latest/hgmozilla/installing.html">Installing Mercurial</a> from the Mozilla Version Control Guide.</p>
-
-<h2 id="Configuração_básica">Configuração básica</h2>
-
-<p>You should configure Mercurial before submitting patches to Mozilla.</p>
-
-<p>If you will be pulling the Firefox source code or one of the derived repositories, the easiest way to configure Mercurial is to run the <em>mercurial-setup</em> mach command:</p>
-
-<pre>./mach mercurial-setup</pre>
-
-<p>This command starts an interactive wizard that will help ensure your Mercurial is configured with the latest recommended settings. This command will not change any files on your machine without your consent.</p>
-
-<p>If you don't have the Firefox source code available, you should edit your Mercurial configuration file to look like the following:</p>
-
-<pre class="eval">[ui]
-username = Your Real Name &lt;<a class="link-mailto" href="mailto:user@example.com" rel="freelink">user@example.com</a>&gt;
-merge = <em>your-merge-program</em> (or internal:merge)
-
-[diff]
-git = 1
-showfunc = 1
-unified = 8
-
-[defaults]
-commit = -v
-</pre>
-
-<p>On Windows, these settings can be added to <code>$HOME\.hgrc</code> or <code>$HOME\Mercurial.ini</code>, or, if you'd like global settings, <code>C:\mozilla-build\hg\Mercurial.ini</code> or <code>C:\Program Files\Mercurial\Mercurial.ini</code>. On UNIX-like systems, they should be in your <code>$HOME/.hgrc</code> file.</p>
-
-<p>You can configure the editor to use for commit messages using the <code>editor</code> option in the <code>[ui]</code> section or by setting the <code>EDITOR</code> environment variable.</p>
-
-<p>If you are trying to access the repository through a proxy server, see <a class="external" href="http://www.selenic.com/mercurial/hgrc.5.html#http-proxy" title="http://www.selenic.com/mercurial/hgrc.5.html#http-proxy">these instructions</a>.</p>
-
-<h2 id="Outras_dicas_de_configuração">Outras dicas de configuração</h2>
-
-<h3 id="Merge_program" name="Merge_program">Unir programa</h3>
-
-<p>After installing, <strong>choose a <a class="external" href="http://mercurial.selenic.com/wiki/MergeToolConfiguration">merge program</a></strong>. Seriously. Do it now. If you don't, Mercurial will choose one for you and spring it on you when you least expect it.</p>
-
-<p>A reasonable thing to do is to set <code>ui.merge=internal:merge</code> in the Mercurial configuration file (see below), which makes Mercurial try to merge changes and add the conflict markers (a la CVS) to the files that couldn't be merged.</p>
-
-<p>Under Ubuntu, you can install meld package, then in in the Mercurial configuration file (see below) set <code>ui.merge=meld</code></p>
-
-<p>You can see the list of merge conflicts by looking for "merging ... failed!" in the update output.</p>
-
-<h4 id="Configuring_kdiff3_as_a_merge_tool">Configuring kdiff3 as a merge tool</h4>
-
-<p>If you're on Linux and you have kdiff3 installed, you probably want to configure kdiff3 as a merge tool.  (It's better than meld because it will actually resolve a bunch of the conflicts without prompting you, generally quite accurately.)  You can do this by adding the following lines (which come from <code>contrib/mergetools.hgrc</code> in the Mercurial distribution):</p>
-
-<pre>[merge-tools]
-kdiff3.args=--auto -L1 base --L2 local --L3 other $base $local $other -o $output
-kdiff3.regkey=Software\KDiff3
-kdiff3.regappend=\kdiff3.exe
-kdiff3.fixeol=True
-kdiff3.gui=True
-
-</pre>
-
-<h3 id="Extensões">Extensões</h3>
-
-<p>There's a number of extensions you can enable. See <a href="http://mercurial.selenic.com/wiki/UsingExtensions" title="http://mercurial.selenic.com/wiki/UsingExtensions">http://mercurial.selenic.com/wiki/UsingExtensions</a>. Almost everyone should probably enable the following:</p>
-
-<ul>
- <li>color - Colorize terminal output</li>
- <li>histedit - Provides <em>git rebase --interactive</em> behavior.</li>
- <li>pager - Feed command output into a pager (like <em>less</em>)</li>
- <li>progress - Draw progress bars on long-running operations.</li>
- <li>rebase - Ability to easily rebase patches on top of other heads.</li>
- <li>transplant - Easily move patches between repositories, branches, etc.</li>
-</ul>
-
-<p>These can all be turned on by just adding this to your .hgrc file:</p>
-
-<pre>[extensions]
-color =
-rebase =
-histedit =
-progress =
-transplant =
-pager =
-</pre>
-
-<p>In addition, there are some 3rd party extensions that are incredibly useful for basic development:</p>
-
-<dl>
- <dt><a href="https://hg.mozilla.org/hgcustom/version-control-tools/file/default/hgext/mozext" title="https://hg.mozilla.org/users/gszorc_mozilla.com/hgext-gecko-dev">mozext</a></dt>
- <dd>Mozilla-specific functionality to aid in developing Firefox/Gecko.</dd>
- <dt><a href="https://github.com/pbiggar/trychooser">trychooser</a></dt>
- <dd>Automatically creates a try commit message and then pushes changes to Mozilla's Try infrastructure. Just run:
- <pre>hg trychooser</pre>
- </dd>
- <dt><a href="https://hg.mozilla.org/users/robarnold_cmu.edu/qimportbz">qimportbz</a></dt>
- <dd>Import patches from Bugzilla. Creates a filename and commit message for you based on the bug's metadata.
- <pre>hg qimport bz://1234567
- </pre>
- </dd>
- <dt><a href="https://hg.mozilla.org/users/tmielczarek_mozilla.com/bzexport">bzexport</a></dt>
- <dd>Export patches to Bugzilla. There are quite a few optional arguments here to create new or update existing bugs with the attment, as well as auto matically request reviews. Type hg help bzexport for a full list but the basic syntax is:
- <pre>hg bzexport -i 1234567</pre>
- </dd>
-</dl>
-
-<p>Installing these is fairly easy. You'll just need to find a place on your system to store the extensions, and clone the extension repos into it:</p>
-
-<pre>hg clone https://bitbucket.org/edgimar/crecord
-hg clone https://bitbucket.org/sfink/mqext
-hg clone https://hg.mozilla.org/users/robarnold_cmu.edu/qimportbz
-git clone https://github.com/pbiggar/trychooser
-</pre>
-
-<p>And then add then to your .hgrc file</p>
-
-<pre>[extensions]
-qcrecord = /path/to/crecord/crecord
-mqext = path/to/mqext
-qimportbz = path/to/qimportbz
-trychooser = path/to/trychooser/trychooser
-</pre>
-
-<h3 id="Configuração_do_repositório_de_testes">Configuração do repositório de testes</h3>
-
-<p>If you have access to the <a class="link-https" href="https://wiki.mozilla.org/Build:TryServer" title="https://wiki.mozilla.org/Build:TryServer">try server</a> you may want to configure Mercurial so you can refer to it simply as "try", since it can be useful from all your trees.  This can be done by adding this to your ~/.hgrc (or Mercurial.ini):</p>
-
-<p> </p>
-
-<pre>[paths]
-try = ssh://hg.mozilla.org/try/
-</pre>
-
-<p>You can also configure short names like this that are specific to a particular repository by adding a [paths] section to the .hg/hgrc file within a repository.  There are two magic names, "default" and "default-push", which are used as the default push/pull targets.  (If "default" is specified and "default-push" is not, "default" is used for both.)</p>
-
-<p>Alternativamente, pode instalar a <a class="link-https" href="https://bitbucket.org/sfink/trychooser" title="https://bitbucket.org/sfink/trychooser">extensão trychooser</a> (<a class="link-https" href="https://github.com/pbiggar/trychooser" title="https://github.com/pbiggar/trychooser">versão antiga</a>).</p>
-
-<p>{{ languages( { "fr": "fr/Installation_de_Mercurial" } ) }}</p>
diff --git a/files/pt-pt/mozilla/o0coes_linha_comandos/index.html b/files/pt-pt/mozilla/o0coes_linha_comandos/index.html
deleted file mode 100644
index 57a1511c23..0000000000
--- a/files/pt-pt/mozilla/o0coes_linha_comandos/index.html
+++ /dev/null
@@ -1,486 +0,0 @@
----
-title: Opções da Linha de Comandos
-slug: Mozilla/O0coes_Linha_Comandos
-tags:
- - Administração
- - Desenvolvimento da Mozilla
- - Documentação do Utilizador
- - Extensões
- - Extras
- - Firefox
- - Linha de Comandos
- - Mozilla
- - Perguntas e Respostas
- - Precisa de Atualização
-translation_of: Mozilla/Command_Line_Options
----
-<p>{{FirefoxSidebar}}</p>
-
-<p><span class="seoSummary">As opções da linha de comandos são utilizadas para especificar várias opções de arranque para as aplicações da Mozilla. Por exemplo, pode utilizar as opções de configuração da linha de comandos para ignorar o 'Gestor de Perfis' e abrir um perfil específico (se tiver vários perfis). Também pode controlar como as aplicações da Mozilla são abertas, quais os componentes que são abertos inicialmente, e o que os componentes fazem quando são abertos. Esta página descreve as opções mais utilizadas e como utilizá-las. Pode abrir a interface da linha de comandos pressionando "Shift + F2".</span></p>
-
-<h2 id="Syntax_Rules" name="Syntax_Rules">Regras de Sintaxe</h2>
-
-<p>But first, let's describe the syntax rules that apply for all options.</p>
-
-<ul>
- <li>Command parameters containing spaces must be enclosed in quotes; for example, "Joel User".</li>
- <li>Command actions are not case sensitive.</li>
- <li>Command parameters except profile names are not case sensitive.</li>
- <li>Blank spaces ( ) separate commands and parameters.</li>
- <li>Each message option follows the syntax <code><var>field</var>=<var>value</var></code>, for example:
- <ul>
- <li><code>to=</code><span class="nowiki"><code>foo@nowhere.net</code></span></li>
- <li><code>subject=cool page</code></li>
- <li><code>attachment=www.mozilla.org</code></li>
- <li><code>attachment='<span class="nowiki">file:///c:/test.txt</span>'</code></li>
- <li><code>body=check this page or also in Thunderbird 52 and newer: body=c:\path\to\file.txt</code></li>
- </ul>
- </li>
- <li>Multiple message options are separated by comma (,), for example: <code>"<span class="nowiki">to=foo@nowhere.net,subject=cool page</span>"</code> . Comma separators must not follow or precede spaces ( ). To assign multiple values to a field, enclose the values in single quotes ('), for example: <code>"<span class="nowiki">to='foo@nowhere.net,foo@foo.de',subject=cool page</span>"</code> .</li>
-</ul>
-
-<h2 id="How_to_use_command_options" name="How_to_use_command_options">Utilizar as opções da linha de comandos</h2>
-
-<p>Command line options are entered after the command to start the application. Some options have arguments. These are entered after the command line option. Some options have abbreviations. For example, the command line option "-editor" can be abbreviated as "-edit". (Where abbreviations are available, they are described in the text below.) In some cases option arguments must be enclosed in quotation marks. (This is noted in the option descriptions below.) Multiple command line options can be specified. In general, the syntax is as follows:</p>
-
-<pre class="brush: bash;">application -option -option "argument" -option argument
-</pre>
-
-<h3 id="Exemplos">Exemplos</h3>
-
-<p>The following examples show the use of the "-ProfileManager" command, which will open the Profile Manager prior to starting Firefox or Thunderbird:</p>
-
-<h4 id="Windows">Windows</h4>
-
-<p>Select Run from Windows Start menu. Type:</p>
-
-<pre class="brush: bash;">firefox -ProfileManager
-</pre>
-
-<h4 id="Mac_OS_X">Mac OS X</h4>
-
-<p>Go to Applications &gt; Utilities. Open Terminal and type:</p>
-
-<pre class="brush: bash;">cd /Applications/Firefox.app/Contents/MacOS
-./firefox -ProfileManager
-</pre>
-
-<p>If you use Firefox Nightly, you can type:</p>
-
-<pre class="brush: bash;">cd /Applications/FirefoxNightly.app/Contents/MacOS
-./firefox -ProfileManager
-</pre>
-
-<h4 id="Linux">Linux</h4>
-
-<p>Open Terminal and type:</p>
-
-<pre class="brush: bash;">cd <em>Thunderbird</em><var> installation directory</var>
-./thunderbird -ProfileManager
-</pre>
-
-<p>The example above invokes the "-ProfileManager" command line option with Mozilla's Thunderbird mail client.</p>
-
-<h2 id="User_Profile" name="User_Profile">Perfil do Utilizador</h2>
-
-<h3 id="-CreateProfile_profile_name" name="-CreateProfile_profile_name"><code>-CreateProfile <var>profile_name</var></code></h3>
-
-<p>Create a new profile in the default directory, but do not start application. The profile will be named <code><var>profile_name</var></code> in the profile manager. <var>profile_name</var> must not contain spaces ( ). To use this successfully no instance of the application must be running, or the <code>-no-remote</code> options must be used.</p>
-
-<pre class="brush: bash;">firefox -CreateProfile JoelUser
-</pre>
-
-<h3 id="-CreateProfile_.22profile_name_profile_dir.22" name="-CreateProfile_.22profile_name_profile_dir.22"><code>-CreateProfile "<var>profile_name</var> <var>profile_dir</var>"</code></h3>
-
-<p>Creates a new profile in the <code><var>profile_dir</var></code> directory, but do not start application. The profile will be named <code>profile_name</code> in the profile manager. Note <code><var>profile_name</var></code> and <code><var>profile_dir</var></code> are quoted together, and are separated by exactly 1 space (as with the previous syntax, <code>profile_name</code> must not contain spaces).</p>
-
-<p>To use this successfully no instance of the application must be running, or the <code>-no-remote</code> options must be used.</p>
-
-<p>NOTE: <code><var>profile_dir</var></code> must not exist and you must not already have a profile called <code><var>profile_name</var></code>.</p>
-
-<pre class="brush: bash;">firefox -CreateProfile "JoelUser c:\internet\joelusers-moz-profile"
-</pre>
-
-<h3 id="-migration" name="-migration"><code>-migration</code></h3>
-
-<p>Start with Import Wizard.</p>
-
-<h3 id="-new-instance" name="-new-instance"><code>-new-instance</code></h3>
-
-<p>Open new instance, not a new window in running instance, which allows multiple copies of application to be open at a time.</p>
-
-<pre class="brush: bash;">firefox -new-instance -P "Another Profile"
-</pre>
-
-<div class="blockIndicator note">
-<p><strong>Nota: </strong>Not available for Windows, see {{bug(855899)}}.</p>
-</div>
-
-<h3 id="-no-remote" name="-no-remote"><code>-no-remote</code></h3>
-
-<p></p>
-
-<p>Do not accept or send remote commands; implies -new-instance.</p>
-
-<pre class="brush: bash;">firefox -no-remote -P "Another Profile"
-</pre>
-
-<div class="blockIndicator note">
-<p><strong>Nota: </strong>Since Firefox 9, this does really mean what its name implies on all platforms, i.e. instances created with this parameter do not accept or send remote commands, see {{bug(650078)}}. That means that such instances won't be re-used. Also when using this argument a new instance is created in any case.</p>
-</div>
-
-<h3 id="-override_.2Fpath.2Fto.2Foverride.ini" name="-override_.2Fpath.2Fto.2Foverride.ini"><code>-override <em>/path/to/</em>override.ini</code></h3>
-
-<p>Load the specified <code>override.ini</code> file to override <code>application.ini</code> ({{Source("browser/app/application.ini")}}). This can be used to suppress the Migration Wizard at startup by loading the following <code>override.ini</code>. <strong>Firefox</strong> only.</p>
-
-<pre class="brush: ini;">[XRE]
-EnableProfileMigrator=0</pre>
-
-<h3 id="-ProfileManager_or_-P" name="-ProfileManager_or_-P"><code>-ProfileManager</code></h3>
-
-<p>Start with Profile Manager. Short form: <strong>-P</strong> without a profile name.</p>
-
-<h3 id="-P_.22profile_name.22" name="-P_.22profile_name.22"><code>-P "<var>profile_name</var>"</code></h3>
-
-<p>Bypass Profile Manager and launch application with the profile named <var>profile_name</var>. Useful for dealing with multiple profiles. Note <var>profile_name</var> is case sensitive. If you don't specify a profile name then the profile manager is opened instead. You must use an upper case P on Linux with versions older than 7.x, as there lower case invokes Purify mode (memory and leak detection). Other platforms accept both upper and lower case.</p>
-
-<pre class="brush: bash;">firefox -P "Joel User"
-</pre>
-
-<h3 id="-profile_.22.2Fpath.2Fto.2Fprofile.22" name="-profile_.22.2Fpath.2Fto.2Fprofile.22"><code>-profile "<var>profile_path</var>"</code></h3>
-
-<p>Start with the profile with the given path. <strong>Firefox</strong>, <strong>Thunderbird</strong> and <strong>SeaMonkey2.x</strong> only.</p>
-
-<p><code>"profile_path"</code> can either be an absolute path (<code>"<var>/path/to/profile</var>"</code>) or a relative path <code>("<var>path/to/profile</var>"</code>).</p>
-
-<div class="blockIndicator note">
-<p><strong>Nota: </strong>On Mac OS X specifying a relative path is not supported anymore from Firefox 4.0 and up due to a regression, see {{bug(673955)}}.</p>
-</div>
-
-
-<h2 id="Browser" name="Browser">Navegador</h2>
-
-<h3 id="-browser" name="-browser"><code>-browser</code></h3>
-
-<p>Start with the browser component. <strong>Firefox</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<h3 id="-foreground" name="-foreground"><code>-foreground</code></h3>
-
-<p>Make this instance the active application.</p>
-
-<h3 id="-headless"><code>-headless</code></h3>
-
-<p>Runs Firefox in <a href="/en-US/docs/Mozilla/Firefox/Headless_mode">headless mode</a>, which is very useful for purposes such as debugging and automated testing. Available in Firefox 55+ on Linux, and Firefox 56+ on Windows/Mac OS X.</p>
-
-<h3 id="-new-tab_URL" name="-new-tab_URL"><code>-new-tab <var>URL</var></code></h3>
-
-<p>Open <var>URL</var> in a new tab. <strong>Firefox</strong> and <strong>SeaMonkey2.x</strong> only.</p>
-
-<h3 id="-new-window_URL" name="-new-window_URL"><code>-new-window <var>URL</var></code></h3>
-
-<p>Open <var>URL</var> in a new window. <strong>Firefox</strong> and <strong>SeaMonkey2.x</strong> only.</p>
-
-<h3 id="-preferences" name="-preferences"><code>-preferences</code></h3>
-
-<p>Open Options/Preferences window. <strong>Firefox</strong> and <strong>SeaMonkey2.x</strong> only.</p>
-
-<h3 id="-private" name="-private"><code>-private</code></h3>
-
-<p>Opens Firefox in permanent private browsing mode. <strong>Firefox 3.6</strong> and later only.</p>
-
-<p>May not be applicable in older Ubuntu for <strong>Firefox 20 </strong>and later, confirmed to work in 14.04</p>
-
-<h3 id="-private-toggle" name="-private-toggle"><code>-private-window</code></h3>
-
-<p>Opens a new private browsing window in an existing instance of Firefox. <strong>Firefox 20</strong> and later only.</p>
-
-<h3 id="-private-toggle_URL" name="-private-toggle_URL"><code>-private-window URL</code></h3>
-
-<p>Open URL in a new private browsing window. If a private browsing window is already open, a new tab is opened in the existing window.<strong> Firefox 29 </strong>and later only. Does not work in <strong>Firefox 31</strong> on linux mint 17 nor on <strong>Firefox 48</strong> on Windows 7. URL opens in a non-private window.</p>
-
-<h3 id="-search_term" name="-search_term"><code>-search <var>term</var></code></h3>
-
-<p>Search <var>term</var> with your default search engine. <strong>Firefox</strong> and <strong>SeaMonkey 2.1</strong> and later only.</p>
-
-<h3 id="-setDefaultBrowser" name="-setDefaultBrowser"><code>-setDefaultBrowser</code></h3>
-
-<p>Set the application as the default browser. <strong>Firefox</strong> only.</p>
-
-<h3 id="-url_URL" name="-url_URL"><code>-url <var>URL</var></code></h3>
-
-<p>Open <var>URL</var> in a new tab or window, depend on the browser option. <code>-url</code> can be omitted. You may list multiple URLs, separated by spaces. <strong>Firefox</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<div class="blockIndicator note">
-<p><strong>Note: </strong>When opening multiple URLs, Firefox always opens them as tabs in a new window.</p>
-</div>
-
-<pre class="brush: bash;">firefox www.mozilla.com
-firefox www.mozilla.com developer.mozilla.org</pre>
-
-<h2 id="Mail.2FNews" name="Mail.2FNews">Correio/Notícias</h2>
-
-<h3 id="-addressbook" name="-addressbook"><code>-addressbook</code></h3>
-
-<p>Start with address book. <strong>Thunderbird</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<h3 id="-compose_message_options" name="-compose_message_options"><code>-compose <var>message_options</var></code></h3>
-
-<p>Start with mail composer. See <a href="#Syntax_Rules">syntax rules</a>. <strong>Thunderbird</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<pre class="brush: bash;">thunderbird -compose "<span class="nowiki">to=foo@nowhere.net</span>"</pre>
-
-<h3 id="-mail" name="-mail"><code>-mail</code></h3>
-
-<p>Start with the mail client. <strong>Thunderbird</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<h3 id="-news_news_URL" name="-news_news_URL"><code>-news</code> <var>news_URL</var></h3>
-
-<p>Start with the news client. If <var>news_URL</var> (optional) is given, open the specified newsgroup. <strong>Thunderbird</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<pre class="brush: bash;">thunderbird -news <span class="nowiki">news://server/group</span>
-</pre>
-
-<h3 id="-options" name="-options"><code>-options</code></h3>
-
-<p>Open Options/Preferences window. <strong>Thunderbird</strong> only.</p>
-
-<h3 id="-offline" name="-offline"><code>-offline</code></h3>
-
-<p>Start with the offline mode. <strong>Thunderbird</strong> and <strong>SeaMonkey</strong> only.</p>
-
-<h3 id="-setDefaultMail" name="-setDefaultMail"><code>-setDefaultMail</code></h3>
-
-<p>Set the application as the default email client. <strong>Thunderbird</strong> only.</p>
-
-<h2 id="Calendar" name="Calendar">Calendário</h2>
-
-<h3 id="-calendar" name="-calendar"><code>-calendar</code></h3>
-
-<p>Start with the calendar client. <strong>Sunbird</strong> only.</p>
-
-<h3 id="-showdate_date" name="-showdate_date"><code>-showdate <var>date</var></code></h3>
-
-<p>Show your schedule of the given <var>date</var>. <strong>Sunbird</strong> only.</p>
-
-<pre class="brush: bash;">sunbird -showdate 08/04/2008
-</pre>
-
-<h3 id="-subscribe_URL_or_-url_URL" name="-subscribe_URL_or_-url_URL"><code>-subscribe <var>URL</var></code> or <code>-url <var>URL</var></code></h3>
-
-<p>Subscribe to the given <var>URL</var>. <strong>Sunbird</strong> only.</p>
-
-<h2 id="Other_Components" name="Other_Components">Outros Componentes</h2>
-
-<h3 id="-chat"><code>-chat</code></h3>
-
-<p>Start with the IRC client, <a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/16">ChatZilla</a>, if installed.</p>
-
-<h3 id="-devtools" name="-devtools"><code>-devtools</code></h3>
-
-<p>Start with native <a href="/en-US/docs/Tools">Developer Tools</a> opened.</p>
-
-<h3 id="-editor_URL_or_-edit_URL" name="-editor_URL_or_-edit_URL"><code>-editor <var>URL</var></code> or <code>-edit <var>URL</var></code></h3>
-
-<p>Start with editor (Composer) for the given <var>URL</var> (where <var>URL</var> is optional). <strong>SeaMonkey</strong> only.</p>
-
-<pre class="brush: bash;">seamonkey -edit www.mozilla.org
-</pre>
-
-<h3 id="-inspector_URL" name="-inspector_URL"><code>-inspector <var>URL</var></code></h3>
-
-<p>Start with the <a href="/en-US/docs/DOM_Inspector" title="DOM_Inspector">DOM Inspector</a>, if installed, and inspect the given <var>URL</var> (where <var>URL</var> is optional).</p>
-
-<h3 id="-jsconsole" name="-jsconsole"><code>-jsdebugger</code></h3>
-
-<p>Start application with <a href="/en-US/docs/Tools/Browser_Toolbox">Browser Toolbox</a> (formerly Browser Debugger). That is different to Venkman debugger (see option -venkman).</p>
-
-<h3 id="-jsconsole" name="-jsconsole"><code>-jsconsole</code></h3>
-
-<p>Start application with the <a href="/en-US/docs/Error_Console" title="Error_Console">Error Console</a>, or, in Firefox, the <a href="/en-US/docs/Tools/Browser_Console">Browser Console</a>.</p>
-
-<h3 id="-purgecaches"><code>-purgecaches</code></h3>
-
-<p>Gecko (layout engine) has a javascript cache, which is not reset on startup. This clears it.</p>
-
-<h3 id="-start-debugger-server_port"><code>-start-debugger-server port</code></h3>
-
-<p>Firefox only. Start the debugger server on <code>port</code>. This will enable another instance of Firefox to connect the Firefox Developer Tools to this Firefox instance. See the article on <a href="/en-US/docs/Tools/Remote_Debugging/Debugging_Firefox_Desktop">remotely debugging Firefox Desktop</a>.</p>
-
-<p>The <code>port</code> argument is optional, and if it is omitted, the server will listen on port 6000.</p>
-
-<h3 id="-venkman" name="-venkman"><code>-venkman</code></h3>
-
-<p>Start with the JavaScript debugger, <a href="/en-US/docs/Venkman" title="Venkman">Venkman</a>, if installed.</p>
-
-<h2 id="XULRunner" name="XULRunner">XULRunner</h2>
-
-<h3 id="-app_.2Fpath.2Fto.2Fapplication.ini" name="-app_.2Fpath.2Fto.2Fapplication.ini"><code>-app <em>/path/to/</em>application.ini</code></h3>
-
-<p>Start a new process running the <a href="/en-US/docs/XULRunner" title="XULRunner">XULRunner</a> application at <em>path/to</em>. Also works with Firefox version 3 and above.</p>
-
-<h3 id="--install-app_pathtomyapplication.(xpixulapp)"><code>--install-app path/to/myapplication.(xpi|xulapp)</code></h3>
-
-<p>Installs the XULRunner application at path/to onto the system. Applications are installed into the default location for your system (program files|Applications|usr/lib) at vendorname/applicationName.  Applications may be uninstalled per usual methods for your system.</p>
-
-<pre class="brush: bash;">"C:\Program Files\Mozilla XULRunner\1.8.0.4\xulrunner\xulrunner.exe" --install-app "C:\Users\Billdo\Desktop\myapplication.xpi"</pre>
-
-<pre class="brush: bash;">/opt/xulrunner/1.8.0.4/xulrunner/xulrunner --install-app ~/Desktop/myapplication.xulapp</pre>
-
-<pre class="brush: bash;">/Library/Frameworks/XUL.framework/xulrunner-bin --install-app ~/Desktop/myapplication.xpi</pre>
-
-<h3 id="--register-global"><code>--register-global</code></h3>
-
-<p>Registers XULRunner on the system for all users. Must be run as admin / root.</p>
-
-<h3 id="--register-user"><code>--register-user</code></h3>
-
-<p>Registers XULRunner for a single user.</p>
-
-<h3 id="--unregister-global"><code>--unregister-global</code></h3>
-
-<p>Unregisters XULRunner for all users.</p>
-
-<h3 id="--unregister-user"><code>--unregister-user</code></h3>
-
-<p>Unregisters XULRunner for a single user.</p>
-
-<h2 id="Chrome" name="Chrome">Chrome</h2>
-
-<h3 id="-chrome_chrome_URL" name="-chrome_chrome_URL"><code>-chrome <var>chrome_URL</var></code></h3>
-
-<p>Load the specified chrome.</p>
-
-<pre class="brush: bash;">firefox -chrome chrome://inspector/content
-</pre>
-
-<h3 id="-register_chrome_URL" name="-register_chrome_URL"><code>-register <var>chrome_URL</var></code></h3>
-
-<p>Register the specified chrome, but do not start application.</p>
-
-<h2 id="Add-ons" name="Add-ons">Extras</h2>
-
-<p>{{Gecko_MinVersion_Note(1.9.2, "-install-global-extension and -install-global-theme have been removed from Gecko 1.9.2 and upwards.")}}</p>
-
-<h3 id="-install-global-extension_.2Fpath.2Fto.2Fextension" name="-install-global-extension_.2Fpath.2Fto.2Fextension"><code>-install-global-extension <var>/path/to/extension</var></code></h3>
-
-<p>Installs the extension into the application directory. The parameter is the path to the extension. You must have administrative privileges.</p>
-
-<h3 id="-install-global-theme_.2Fpath.2Fto.2Ftheme" name="-install-global-theme_.2Fpath.2Fto.2Ftheme"><code>-install-global-theme <var>/path/to/theme</var></code></h3>
-
-<p>Same as above, but for themes. You must have administrative privileges.</p>
-
-<div class="blockIndicator note">
-<p><strong>Note: </strong>Since Firefox 2.0.0.7, use of the <code>-install-global-extension</code> and <code>-install-global-theme</code> command line arguments have been restricted to only allow installing add-ons that are on local disks or mapped drives. Installing from a network share directly will no longer succeed.</p>
-</div>
-
-<h3 id="-safe-mode" name="-safe-mode"><code>-safe-mode</code></h3>
-
-<p>Launches the application with all extensions disabled, for that launch only. (Extensions are not loaded, but are not permanently disabled in the Extension Manager data source).</p>
-
-<h2 id="Remote_Control" name="Remote_Control">Controlo remoto</h2>
-
-<h3 id="-remote_remote_command" name="-remote_remote_command"><code>-remote <var>remote_command</var></code><var> {{Obsolete_Inline}}</var></h3>
-
-<div class="blockIndicator note">
-<p><var>This feature was removed in Firefox 36.0, restored in 36.0.1 and removed again in 39.0. S</var>ee {{bug(1080319)}}.</p>
-</div>
-
-<p>Execute the specified <code><var>remote_command</var></code> in an already running application process.</p>
-
-<pre class="brush: bash;">firefox -remote "openURL(www.mozilla.org, new-tab)"
-</pre>
-
-<div class="blockIndicator note">
-<p>This option is only available on X-Windows Unix platforms.</p>
-</div>
-
-<h2 id="Miscellaneous" name="Miscellaneous">Diversos</h2>
-
-<h3 id="-attach-console"><code>-attach-console</code></h3>
-
-<p>Write messages for the debugging console into the window which launched the application instead of opening a new window for the debugging messages. Only supported on the Windows operating system.</p>
-
-<h3 id="-console" name="-console"><code>-console</code></h3>
-
-<p>Start application with a debugging console. Note: Windows only.</p>
-
-<h3 id="-h_or_-help_or_-.3F" name="-h_or_-help_or_-.3F"><code>-h</code> or <code>-help</code> or <code>-?</code></h3>
-
-<p>Print the list of all available command line options. Note that on Windows this only works with a redirection such as <code><span class="nowiki">|more</span></code> ({{Bug(355889)}}). This option is available only in a command console.</p>
-
-<h3 id="-osint" name="-osint"><code>-osint</code></h3>
-
-<p>Tells the application that it is being launched by the OS shell. This should not be specified unless the caller provides all of the functionality provided by the OS shell when launching the application ({{Bug(384384)}}).</p>
-
-<h3 id="-requestPending" name="-requestPending"><code>-requestPending</code></h3>
-
-<p>Tells the application that there will be a Windows DDE request to open the same url specified on the command line. This should not be specified unless the caller provides all of the functionality provided by the OS shell when launching the application ({{Bug(354005)}}).</p>
-
-<h3 id="-silent" name="-silent"><code>-silent</code></h3>
-
-<p>Don't open default windows. Useful with those command-line arguments that open their own windows but don't already prevent default windows from opening. <strong>Firefox</strong>, <strong>Thunderbird3.x</strong> and <strong>SeaMonkey2.x</strong> only.</p>
-
-<h3 id="-tray" name="-tray"><code><strong>-tray</strong></code></h3>
-
-<p>Start application minimized to system tray. Useful with autorun.</p>
-
-<h3 id="-v_or_-version" name="-v_or_-version"><code>-v</code> or <code>-version</code></h3>
-
-<p>Print application version. Note that on Windows this only works with a redirection such as <code><span class="nowiki">|more</span></code> ({{Bug(355889)}}). This option is available only in a command console.</p>
-
-<h3 id="X11_options">X11 options</h3>
-
-<p>These options are only available for an application build for and running atop the X11/X.org display and window system to be found on Linux and other Unix-based systems.</p>
-
-<h4 id="--classWM_CLASS"><code>--class=WM_CLASS</code></h4>
-
-<p>Set the WM_CLASS resource class of the X11 windows created by the application.</p>
-
-<h4 id="--displayDISPLAY"><code>--display=DISPLAY</code></h4>
-
-<p>Set the X display to use.</p>
-
-<h4 id="--g-fatal-warnings"><code>--g-fatal-warnings</code></h4>
-
-<p>Make all warnings fatal.</p>
-
-<h4 id="--sync"><code>--sync</code></h4>
-
-<p>Make X calls synchronous.</p>
-
-<h2 id="Other_options_need_to_be_documented" name="Other_options_need_to_be_documented">Outras opções que precisam de ser documentadas</h2>
-
-<ul>
- <li><code>-print-xpcom-dir</code></li>
- <li><code>-print-xpcom-dirlist</code></li>
- <li><code>-kill</code></li>
- <li><code>-killAll</code></li>
- <li><code>-f</code></li>
- <li><code>-ftimeout</code></li>
- <li><code>-fwait</code></li>
- <li><code>-unsetDefaultMail</code></li>
- <li>GTK options</li>
-</ul>
-
-<h2 id="References" name="References">Referências</h2>
-
-<ul>
- <li><a href="/en-US/docs/Chrome/Command_Line" title="Chrome/Command_Line">Chrome: Command Line</a></li>
- <li><a class="external" href="http://www-archive.mozilla.org/quality/browser/front-end/testcases/cmd-line/">Test Documentation for Command-line Features</a> (mozilla.org)</li>
- <li>{{Source("toolkit/xre/nsAppRunner.cpp")}}</li>
- <li>{{Source("browser/components/nsBrowserContentHandler.js")}}</li>
- <li>{{Source("suite/browser/nsBrowserContentHandler.js")}}</li>
- <li>{{Source("mail/components/nsMailDefaultHandler.js")}}</li>
- <li><a class="link-https" href="https://wiki.mozilla.org/Installer:Command_Line_Arguments">Installer command line options</a></li>
-</ul>
-
-<div class="originaldocinfo">
-<h2 id="Original_Document_Information" name="Original_Document_Information">Informação do Documento Original</h2>
-
-<ul>
- <li>Author(s): Ben Goodger, Steffen Wilberg, Seth Spitzer, Daniel Wang</li>
- <li>Copyright Information: Portions of this content are © 1998–2007 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/pt-pt/mozilla/performance/about_colon_memory/index.html b/files/pt-pt/mozilla/performance/about_colon_memory/index.html
deleted file mode 100644
index 02878e1d31..0000000000
--- a/files/pt-pt/mozilla/performance/about_colon_memory/index.html
+++ /dev/null
@@ -1,187 +0,0 @@
----
-title: 'about:memory'
-slug: 'Mozilla/Performance/about:memory'
-tags:
- - Desempenho
- - Relatório
- - diagnóstico
- - memoria
-translation_of: 'Mozilla/Performance/about:memory'
----
-<p>about:memory is a special page within Firefox that lets you view, save, load, and diff detailed measurements of Firefox's memory usage. It also lets you do other memory-related operations like trigger GC and CC, dump GC &amp; CC logs, and dump DMD reports. It is present in all builds and does not require any preparation to be used.</p>
-
-<h2 id="Como_gerar_relatórios_de_memória">Como gerar relatórios de memória</h2>
-
-<p>Let's assume that you want to measure Firefox's memory usage. Perhaps you want to investigate it yourself, or perhaps someone has asked you to use about:memory to generate "memory reports" so they can investigate a problem you are having. Follow these steps.</p>
-
-<ul>
- <li>At the moment of interest (e.g. once Firefox's memory usage has gotten high) open a new tab and type "about:memory" into the address bar and hit "Enter".</li>
- <li>If you are using a communication channel where files can be sent, such as Bugzilla or email, click on the "Measure and save..." button. This will open a file dialog that lets you save the memory reports to a file of your choosing. (The filename will have a <code>.json.gz</code> suffix.) You can then attach or upload the file appropriately. The recipients will be able to view the contents of this file within about:memory in their own Firefox instance.</li>
- <li>If you are using a communication channel where only text can be sent, such as a comment thread on a website, click on the "Measure..." button. This will cause a tree-like structure to be generated text within about:memory. This structure is just text, so you can copy and paste some or all of this text into any kind of text buffer. (You don't need to take a screenshot.) This text contains fewer measurements than a memory reports file, but is often good enough to diagnose problems. Don't click "Measure..." repeatedly, because that will cause the memory usage of about:memory itself to rise, due to it discarding and regenerating large numbers of DOM nodes.</li>
-</ul>
-
-<p>Note that in both cases the generated data contains privacy-sensitive details such as the full list of the web pages you have open in other tabs. If you do not wish to share this information, you can select the "anonymize" checkbox before clicking on "Measure and save..." or "Measure...". This will cause the privacy-sensitive data to be stripped out, but it may also make it harder for others to investigate the memory usage.</p>
-
-<h2 id="Carregar_relatórios_de_memória_de_um_ficheiro">Carregar relatórios de memória de um ficheiro</h2>
-
-<p>The easiest way to load memory reports from file is to use the "Load..." button. You can also use the "Load and diff..." button to get the difference between two memory report files.</p>
-
-<p>Single memory report files can also be loaded automatically when about:memory is loaded by appending a <code>file</code> query string, for example:</p>
-
-<pre>about:memory?file=/home/username/reports.json.gz
-</pre>
-
-<p>This is most useful when loading memory reports files obtained from a Firefox OS device.</p>
-
-<p>Memory reports are saved to file as gzipped JSON. These files can be loaded as is, but they can also be loaded after unzipping.</p>
-
-<h2 id="Interpretar_os_relatórios_de_memória">Interpretar os relatórios de memória</h2>
-
-<p>Almost everything you see in about:memory has an explanatory tool-tip. Hover over any button to see a description of what it does. Hover over any measurement to see a description of what it means.</p>
-
-<h3 id="Básico_de_cálculo"><span class="mw-headline" id="Basics">Básico de cálculo</span></h3>
-
-<p>Most measurements use bytes as their unit, but some are counts or percentages.</p>
-
-<p>Most measurements are presented within trees. For example:</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>Leaf nodes represent actual measurements; the value of each internal node is the sum of all its children.</p>
-
-<p>The use of trees allows measurements to be broken down into further categories, sub-categories, sub-sub-categories, etc., to arbitrary depth, as needed. All the measurements within a single tree are non-overlapping.</p>
-
-<p>Tree paths can be written using '/' as a separator. For example, <code>preference/referent/weak/dead</code> represents the path to the final leaf node in the example tree above.</p>
-
-<p>Sub-trees can be collapsed or expanded by clicking on them. If you find any particular tree overwhelming, it can be helpful to collapse all the sub-trees immediately below the root, and then gradually expand the sub-trees of interest.</p>
-
-<h3 id="Secções"><span class="mw-headline" id="Sections">Secções</span></h3>
-
-<p>Memory reports are displayed on a per-process basis, with one process per section. Within each process's measurements, there are the following subsections.</p>
-
-<h4 id="Alocação_Explícitas">Alocação Explícitas</h4>
-
-<p>This section contains a single tree, called "explicit", that measures all the memory allocated via explicit calls to heap allocation functions (such as <code>malloc</code> and <code>new</code>) and to non-heap allocations functions (such as <code>mmap</code> and <code>VirtualAlloc</code>).</p>
-
-<p>Here is an example for a browser session where tabs were open to cnn.com, techcrunch.com, and arstechnica.com. Various sub-trees have been expanded and others collapsed for the sake of presentation.</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>Some expertise is required to understand the full details here, but there are various things worth pointing out.</p>
-
-<ul>
- <li>This "explicit" value at the root of the tree represents all the memory allocated via explicit calls to allocation functions.</li>
- <li>The "window-objects" sub-tree represents all JavaScript <code>window</code> objects, which includes the browser tabs and UI windows. For example, the "top(http://edition.cnn.com/, id=8)" sub-tree represents the tab open to cnn.com, and "top(chrome://browser/content/browser.xul, id=3)" represents the main browser UI window.</li>
- <li>Within each window's measurements are sub-trees for JavaScript ("js-compartment(...)" and "js-zone(...)"), layout, style-sheets, the DOM, and other things.</li>
- <li>It's clear that the cnn.com tab is using more memory than the techcrunch.com tab, which is using more than the arstechnica.com tab.</li>
- <li>Sub-trees with names like "(2 tiny)" are artificial nodes inserted to allow insignificant sub-trees to be collapsed by default. If you select the "verbose" checkbox before measuring, all trees will be shown fully expanded and no artificial nodes will be inserted.</li>
- <li>The "js-non-window" sub-tree represents JavaScript memory usage that doesn't come from windows, but from the browser core.</li>
- <li>The "heap-unclassified" value represents heap-allocated memory that is not measured by any memory reporter. This is typically 10--20% of "explicit". If it gets higher, it indicates that additional memory reporters should be added. <a href="/en-US/docs/Mozilla/Performance/DMD" title="Performance/MemShrink/DMD">DMD</a> can be used to determine where these memory reporters should be added.</li>
- <li>There are measurements for other content such as images and workers, and for browser subsystems such as the startup cache and XPConnect.</li>
-</ul>
-
-<p>Some add-on memory usage is identified, as the following example shows.</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>More things worth pointing out are as follows.</p>
-
-<ul>
- <li>Some add-ons are identified by a name, such as Tree Style Tab. Others are identified only by a hexadecimal identifier. You can look in about:support to see which add-on a particular identifier belongs to. For example, <code>59c81df5-4b7a-477b-912d-4e0fdf64e5f2</code> is Chatzilla.</li>
- <li>All JavaScript memory usage for an add-on is measured separately and shown in this sub-tree.</li>
- <li>For add-ons that use separate windows, such as Chatzilla, the memory usage of those windows will show up in this sub-tree.</li>
- <li>For add-ons that use XUL overlays, such as AdBlock Plus, the memory usage of those overlays will not show up in this sub-tree; it will instead be in the non-add-on sub-trees and won't be identifiable as being caused by the add-on.</li>
-</ul>
-
-<h4 id="Outros_Cálculos">Outros Cálculos</h4>
-
-<p>This section contains multiple trees, includes many that cross-cut the measurements in the "explicit" tree. For example, in the "explicit" tree all DOM and layout measurements are broken down by window by window, but in "Other Measurements" those measurements are aggregated into totals for the whole browser, as the following example shows.</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>Some of the trees in this section measure things that do not cross-cut the measurements in the "explicit" tree, such as those in the "preference-service" example above.</p>
-
-<p>Finally, at the end of this section are individual measurements, as the following example shows.</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>Some measurements of note are as follows.</p>
-
-<ul>
- <li>"resident". Physical memory usage. If you want a single measurement to summarize memory usage, this is probably the best one.</li>
- <li>"vsize". Virtual memory usage. This is often much higher than any other measurement (particularly on Mac). It only really matters on 32-bit platforms such as Win32. There is also "vsize-max-contiguous" (not measured on all platforms, and not shown in this example), which indicates the largest single chunk of available virtual address space. If this number is low, it's likely that memory allocations will fail due to lack of virtual address space quite soon.</li>
- <li>Various graphics-related measurements ("gfx-*"). The measurements taken vary between platforms. Graphics is often a source of high memory usage, and so these measurements can be helpful for detecting such cases.</li>
-</ul>
diff --git a/files/pt-pt/mozilla/performance/comunicacao_de_um_problema_de_desempenho/index.html b/files/pt-pt/mozilla/performance/comunicacao_de_um_problema_de_desempenho/index.html
deleted file mode 100644
index a641730856..0000000000
--- a/files/pt-pt/mozilla/performance/comunicacao_de_um_problema_de_desempenho/index.html
+++ /dev/null
@@ -1,53 +0,0 @@
----
-title: Comunicação de um Problema de Desempenho
-slug: Mozilla/Performance/Comunicacao_de_um_problema_de_desempenho
-tags:
- - Desempenho
- - Perfilar
- - QA
- - Testes
-translation_of: Mozilla/Performance/Reporting_a_Performance_Problem
----
-<p>Este artigo irá guiá-lo na comunicação de um problema de desempenho utilizando a <a href="/pt-PT/docs/Mozilla/Performance/Perfilar_com_o_Profiler_integrado">extensão do Gecko Profiler</a>. Se preferir, também existe um<a href="https://www.youtube.com/watch?v=kGBs0BQsoQg"> tutorial em vídeo</a>, em vez da leitura.</p>
-
-<h2 id="Configurar_a_extensão_Gecko_Profiler">Configurar a extensão Gecko Profiler</h2>
-
-<ol>
- <li>Transferir e instalar a ú<a class="external" href="https://perf-html.io/" title="geckoprofiler.xpi">ltima versão da extensão Gecko Profiler</a></li>
- <li>A exntensção de perfilar irá aparecer no topo à direita da barra do URL como um ícone globo (se não, <a href="https://support.mozilla.org/pt-PT/kb/como-personalizar-barras-ferramentas#Como_é_que_personalizo_ou_reorganizo_os_itens_da_barra_de_ferramentas">arraste-a para lá da janela de Personalizar</a>).<br>
- <br>
- <img alt="The Gecko Profiler Add-on installed and visible within the Nightly toolbar." src="https://mdn.mozillademos.org/files/14859/Gecko%20Profiler%20Toolbar%20Button.PNG" style="height: 139px; width: 254px;"></li>
- <li><strong>Lembre-se de desativar ou desinstalar a extensão se a não estiver a utilizar.</strong></li>
-</ol>
-
-<p><em>Apenas macOS, </em>ou para verificar se um problema foi corrigido numa versão posterior do Firefox (as compilações do macOS atualmente irão produzir informação importante dos perfis em falta)<em>:</em></p>
-
-<ol>
- <li>Transferir e instalar a <a class="external" href="http://nightly.mozilla.org/" title="http://nightly.mozilla.org/">compilação <em>nightly</em></a> para a sua platforma. Terá de fechar todas as instâncias do Firefox antes de executar <em>nightly</em>.</li>
- <li><em>Nightly</em> é uma versão de desenvolvimento, que pode conter erros, por isso, <a href="https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles">teste com um novo perfil ou efetue uma cópia de segurança dos seus dados</a>.</li>
- <li>Verifique se está a funcionar corretamente, indo até 'Sobre Nightly' procurando por 'nightly' como o canal de atualização (3ª. linha). O ícone deverá ser um globo azul .</li>
-</ol>
-
-<h2 id="Using_the_Add-on">Using the Add-on</h2>
-
-<p>Once installed, the profiler becomes active immediately (the icon being blue indicates it is active). The profiler uses a fixed size buffer to store sample data. When it runs out of space in its buffer, it discards old entries so you may want to increase the buffer size if you find you are unable to capture the profile quickly enough after you notice a performance problem. In the Settings part of the UI you can adjust the size of the buffer (presently defaults to 9 MB) and the time interval between data collection (presently defaults to 1 ms). Note that increasing the buffer size uses more memory and can make capturing a profile take longer.</p>
-
-<p><img alt="Profiler UI" src="https://perf-html.io/e9a699daa7c33fcf80c361278055c65d.png" style="height: 376px; width: 546px;"></p>
-
-<p>Using the keyboard shortcuts is often more convenient than using the mouse to interact with the UI:</p>
-
-<ul>
- <li><code>Ctrl+Shift+1</code> - Start/Stop the profiler</li>
- <li><code>Ctrl+Shift+2</code> - Take a profile and launch Cleopatra to view it</li>
-</ul>
-
-<h2 id="Capturing_and_sharing_a_profile">Capturing and sharing a profile</h2>
-
-<ol>
- <li>Reproduce the performance problem. If possible let the problem manifest itself for 5-10 seconds.</li>
- <li>Press <code>Ctrl+Shift+2</code> or click on the 'Globe' icon in the top right and select 'Capture Profile'. Try to do this within a few seconds from reproducing the performance problem as only the last few seconds are recorded. If the timeline has a large red block it's a good sign.<br>
- <img alt="Jank markers appearing in the Perf.html profile analysis tool." src="https://mdn.mozillademos.org/files/14861/Perf%20Dot%20HTML%20Red%20Lines.PNG" style="height: 238px; width: 558px;"></li>
- <li>The data will open in a new tab. Wait until the "Waiting for symbol tables for library libxul.pdb..." notification disappears before sharing the profile.</li>
- <li>There will be a button in the top right labeled 'Share' which will upload this profile and once completed will write out a link. Copy this URL to your clipboard by right clicking and add the profile URL to the bug for your performance problem and/or send it to the appropriate person. Try to give some context about what you were doing when the performance problem arose such as the URL you were viewing and what actions were you doing (ex. scrolling on gmail.com).<br>
- <img alt="The button for sharing a profile." src="https://mdn.mozillademos.org/files/14863/Share.PNG" style="height: 142px; width: 329px;"></li>
-</ol>
diff --git a/files/pt-pt/mozilla/performance/index.html b/files/pt-pt/mozilla/performance/index.html
deleted file mode 100644
index 44fcdebce2..0000000000
--- a/files/pt-pt/mozilla/performance/index.html
+++ /dev/null
@@ -1,145 +0,0 @@
----
-title: Performance
-slug: Mozilla/Performance
-tags:
- - Add-ons
- - Debugging
- - Depuração
- - Desempenho
- - Desenvolvimento
- - Development
- - Extras
- - Mozilla
- - Performance
-translation_of: Mozilla/Performance
----
-<p>The articles linked to from here will help you improve performance, whether you're developing core Mozilla code or an add-on.</p>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h3 id="Documentação">Documentação</h3>
-
- <dl>
- <dt><a href="/en/Performance/Reporting_a_Performance_Problem" title="en/Performance/Reporting_a_Performance_Problem">Reporting a Performance Problem</a></dt>
- <dd>A user friendly guide to reporting a performance problem. A development environment is not required.</dd>
- <dt><a href="Benchmarking" title="Performance/Benchmarking advice">Benchmarking</a></dt>
- <dd>Tips on generating valid performance metrics.</dd>
- <dt><a href="/en/Extensions/Performance_best_practices_in_extensions" title="en/Extensions/Performance best practices in extensions">Performance best practices in extensions</a></dt>
- <dd>A performance "best practices" guide for extension developers.</dd>
- <dt><a href="/en/Performance/Measuring_add-on_startup_performance" title="en/Measuring Add-on Startup Performance">Measuring Add-on Startup Performance</a></dt>
- <dd>A guide for add-on developers on how to set up a performance testing environment.</dd>
- <dt><a href="/en/XUL_School/Appendix_A:_Add-on_Performance" title="en/XUL School/Appendix A: Add-on Performance">XUL School: Add-on Performance</a></dt>
- <dd>Tips for add-on developers to help them avoid impairing application performance.</dd>
- <dt><a href="/en/Performance/GPU_performance" title="en/GPU performance">GPU performance</a></dt>
- <dd>Tips for profiling and improving performance when using a GPU.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/ScrollLinkedEffects">Scroll-Linked Effects</a></dt>
- <dd>Information on scroll-linked effects, their effect on performance, related tools, and possible mitigation techniques.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/Automated_Performance_Testing_and_Sheriffing">Automated Performance Testing and Sheriffing</a></dt>
- <dd>Information on automated performance testing and sheriffing at Mozilla.</dd>
- <dt><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Firefox/Performance_best_practices_for_Firefox_fe_engineers">Best practices for Front-end Engineers</a></dt>
- <dd>Tips for reducing impacts on browser performance in front-end code.</dd>
- </dl>
-
- <p><span class="alllinks"><a class="internal" href="/Special:Tags?tag=Performance" title="Special:Tags?tag=Performance">View all pages tagged with "Performance"...</a></span></p>
-
- <h3 id="Memory_profiling_and_leak_detection_tools">Memory profiling and leak detection tools</h3>
-
- <dl>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Tools/Memory" title="en/Performance/Profiling with the Built-in Profiler">The Developer Tools "Memory" panel</a></dt>
- <dd>The memory panel in the devtools supports taking heap snapshots, diffing them, computing dominator trees to surface "heavy retainers", and recording allocation stacks.</dd>
- </dl>
-
- <dl>
- <dt><a href="/en-US/docs/Mozilla/Performance/about:memory">about:memory</a></dt>
- <dd>about:memory is the easiest-to-use tool for measuring memory usage in Mozilla code, and is the best place to start. It also lets you do other memory-related operations like trigger GC and CC, dump GC &amp; CC logs, and dump DMD reports. about:memory is built on top of Firefox's <a href="/en-US/docs/Mozilla/Performance/Memory_reporting">memory reporting</a> infrastructure.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/DMD">DMD</a></dt>
- <dd>DMD is a tool that identifies shortcomings in about:memory's measurements, and can also do multiple kinds of general heap profiling.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/AWSY">Are We Slim Yet</a></dt>
- <dd>areweslimyet.com (a.k.a. AWSY) is a memory usage and regression tracker.</dd>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/BloatView">BloatView</a></dt>
- <dd>BloatView prints per-class statistics on allocations and refcounts, and provides gross numbers on the amount of memory being leaked broken down by class. It is used as part of Mozilla's continuous integration testing.</dd>
- <dt><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Refcount_tracing_and_balancing">Refcount tracing and balancing</a></dt>
- <dd>Refcount tracing and balancing are ways to track down leaks caused by incorrect uses of reference counting. They are slow and not particular easy to use, and thus most suitable for use by expert developers.</dd>
- <dt><a href="/en-US/docs/Mozilla/Performance/GC_and_CC_logs">GC and CC logs</a></dt>
- <dd>GC and CC logs can be generated and analyzed to in various ways. In particular, they can help you understand why a particular object is being kept alive.</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> is a tool that detects various memory-related problems at runtime, including leaks. Valgrind is used as <a class="external text" href="/en-US/docs/Valgrind_test_job" rel="nofollow">part</a> of Mozilla's continuous integration testing, though the coverage is limited because Valgrind is slow.</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> (a.k.a. LSAN) is similar to Valgrind, but it runs faster because it uses static source code instrumentation. LSAN is part of Mozilla's continuous integration testing, with most tests running through it as part of the AddressSanitizer (a.k.a. ASAN) test jobs.</dd>
- <dt><a href="https://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="https://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</a> {{ gecko_minversion_inline("16.0") }}</dt>
- <dd>The Gecko Profiler is a good tool to start with, particularly for understanding where time is spent within C++ code in Firefox.</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> (obsolete - replaced by Instruments)</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> (obsolete - replaced by Instruments)</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><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="Rópicos_Relacionados">Rópicos Relacionados</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>
diff --git a/files/pt-pt/mozilla/performance/perfilar_com_o_profiler_integrado/index.html b/files/pt-pt/mozilla/performance/perfilar_com_o_profiler_integrado/index.html
deleted file mode 100644
index 0a34c2bc64..0000000000
--- a/files/pt-pt/mozilla/performance/perfilar_com_o_profiler_integrado/index.html
+++ /dev/null
@@ -1,356 +0,0 @@
----
-title: Perfilar com o Gecko Profiler
-slug: Mozilla/Performance/Perfilar_com_o_Profiler_integrado
-tags:
- - Desempenho
- - Desenvolvimento da Mozilla
- - Perfilar
-translation_of: Mozilla/Performance/Profiling_with_the_Built-in_Profiler
----
-<p>{{ gecko_minversion_header("16.0") }}</p>
-
-<div class="summary">
-<p><span class="seoSummary">O Gecko Profiler é um <em>profiler</em> que está integrado no Firefox. </span>Possui uma integração mais apertada com o Firefox do que os <em>profilers</em> externos, e também pode ser utilizado em situações em que os <em>profilers</em> externos não estão disponíveis, tal como numa máquina de não desenvolvimento ou num dispositivo Android bloqueado<span class="seoSummary">.  </span></p>
-</div>
-
-<div class="note">
-<p>The Gecko Profiler has been previously known as "SPS" and "the built-in profiler". We have changed as many references to the old names as possible, but there may still be some around.</p>
-</div>
-
-<h2 id="Obter_o_Extra_Gecko_Profiler">Obter o Extra Gecko Profiler</h2>
-
-<p>First things first, you want to make sure you are using the correct build of Firefox.  An official Nightly or Beta or Release build would work.  If you are using a local build, make sure you have the --enable-profiling option turned on in your mozconfig.</p>
-
-<p>The Gecko Profiler has two interfaces:</p>
-
-<ol>
- <li>for Web developers there is a simplified profiler that can be opened from the menu Tools &gt; Web Developer &gt; Performance.</li>
- <li>a more advanced interface for developers of Mozilla's internals can be accessed by installing the <a href="https://perf-html.io/">Gecko Profiler add-on</a> (more <a href="/en-US/docs/Mozilla/Performance/Reporting_a_Performance_Problem#Setting_up_the_Gecko_Profiler_extension">details on installation are available</a>).</li>
-</ol>
-
-<div class="note">
-<p><a href="/en-US/docs/Performance/Reporting_a_Performance_Problem">Reporting a Performance Problem</a> has a step-by-step guide for obtaining a profile when requested by Firefox developers.</p>
-
-<p><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Reporting_a_Thunderbird_Performance_Problem_with_G">Reporting a Thunderbird Performance Problem</a> has a step-by-step guide for obtaining a profile when requested by Thunderbird developers.</p>
-</div>
-
-<h2 id="Compreender_os_Perfis">Compreender os Perfis</h2>
-
-<p>You can check out some <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Gecko_Profiler_FAQ">frequently asked questions</a> about the Gecko Profilers.</p>
-
-<p>Here's a video of Ehsan examining some profiles:</p>
-
-<p>
- <video controls src="https://vid.ly/e6v7s4?content=video&amp;format=hd_webm">Your browser doesn't appear to support WebM video playback.</video>
-</p>
-
-<div class="note">
-<p>If there are features you would find helpful, please <a href="https://github.com/mstange/Gecko-Profiler-Addon/">file a bug with details</a>.</p>
-</div>
-
-<h3 id="Interface">Interface</h3>
-
-<h4 id="1._Timeline">1. Timeline</h4>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/14877/profiler-timeline.png" style="height: 327px; width: 1751px;"></p>
-
-<p>The timeline has several rows of tracing markers (colored segments) which indicate interesting events. Hover over them to see more information. Below the tracing markers are rows corresponding with activity on a variety of threads.</p>
-
-<div class="note">
-<p><strong>Tip</strong>: Threads that are annotated with "[default]" are in the parent (aka "UI", aka "browser chrome", aka "main") process and those annotated with "[tab]" are in the Web content (aka "child") processes.</p>
-</div>
-
-<div class="note">
-<p><strong>Tip</strong>: Long-running tasks in the parent process will block all input or drawing with the browser UI (aka "UI jank") whereas long-running tasks in the content process will block interactivity with the page but still allowing the user to pan and zoom around thanks to APZ.</p>
-</div>
-
-<h5 id="Tracing_markers">Tracing markers</h5>
-
-<ul>
- <li>Red: These indicate that the event loop is being unresponsive. Note that high priority events such as vsync are not included here. Also note that this indicates what would have happened had there been an event waiting and not necessarily that there was an event pending for that long.</li>
- <li>Black: These indicate synchronous IPC calls.</li>
-</ul>
-
-<h5 id="Ranges">Ranges</h5>
-
-<p><img alt="Timeline showing ranged breadcrumbs and zoom icon" src="https://mdn.mozillademos.org/files/14893/profiler-breadcrumbsandzoom.png" style="height: 490px; width: 2450px;"></p>
-
-<p>Ranges of time can be zoomed in on by clicking and dragging anywhere in the tracing marker or thread areas. Once a range is selected, a magnifying glass appears which zooms into that range. Clicking on a tracing marker will create a selection corresponding with its duration allowing for easy zooming in on interesting time ranges. As you zoom in on ranges, breadcrumbs are created allowing you to easily navigate back to previously-selected ranges or the entire profile (denoted as "Full Range").</p>
-
-<div class="note">
-<p><strong>Tip</strong>: While zooming out to a previously-selected range deletes the narrower range, the browser back button can be used to restore the narrower range.</p>
-</div>
-
-<h5 id="Thread_Timeline(s)">Thread Timeline(s)</h5>
-
-<p><strong>Thread/Process Timelines</strong>: Below the tracing markers we have a list of profiled threads. These threads may come from different processes. In this case, we have the 'GeckoMain [default]' process' main thread, a content process' main thread, and the main thread of the compositor process. Each of these timelines is aligned with wall clock time. So, for example, when a thread is blocked, like 'GeckoMain [tab]', on a thread like 'GeckoMain [default]', we can see what's occurring on the latter thread that is preventing it from responding to the former.</p>
-
-<p><strong>X (Time) axis</strong>: The timelines go from left to right as wall clock time increases along the X axis. Elements in the timeline are spaced at the sampling frequency with an attempt to align them with time. Factors such as sampling or stack-walking variance and system load can lead to sampling delays which manifest as gaps in the timeline.</p>
-
-<div class="note">
-<p><strong>Nota:</strong> because this is a sampling profiler, be cautious when examining running time that is equal to the sampling interval. For very time-sensitive profiling, you may want to consider a non-sampling profiler.</p>
-</div>
-
-<p><strong>Y (Stack) axis: </strong>The Y axis is the stack depth, not the CPU activity. The change in stack height is useful to find patterns like long blocking calls (long flatlines) or very tall spiky blocks (recursive calls and JS). With more experience you can read profiles faster by recognizing patterns. Also note that you can click on timeline elements (the selected element gets darker when selected) and the tree view (see below) reflects the selected element.</p>
-
-<ul>
-</ul>
-
-<h4 id="2._Call_Tree">2. Call Tree</h4>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/14895/profiler-calltree.png" style="height: 726px; width: 1751px;"></p>
-
-<p>The Call Tree shows the samples organized by 'Running Time' which will show the data by wall clock time. There are lighter grey names to the right of tree elements that indicate where the code comes from. Be aware that elements can be from JavaScript, Gecko, or system libraries. Note that if some functions are not yet named properly, symbolication may not yet be finished.</p>
-
-<div class="note">
-<p>Dica: You can right-click on a function name to get an option to copy its name to the clipboard.</p>
-</div>
-
-<p>A significant portion of time can be spent in idle, blocking calls like waiting for events. This is ideal for a responsive application to be ready to service incoming events. There are OS-specific waiting functions like <code>NtWaitForMultipleObjects </code>seen in the example above taken on Windows or <code>mach_msg_trap</code> on macOS.</p>
-
-<div class="note">
-<p>Dica: You can quickly go deeper into the call tree by holding down your right arrow key. Alternatively, expand an entire tree segment by holding Alt and clicking on the arrow to the left of the collapsed tree segment.</p>
-</div>
-
-<p>As we progress into a more specific part of the tree, you'll notice that the 'Running time' decreases. This happens when a function has 2 or more non-trivial calls: the running time will be split between its children.</p>
-
-<div class="note">
-<p>Dica: Focus on one section of the tree by clicking on the "arrow-in-a-circle" icon that appears to the right of the tree element as you hover over it. A "tree breadcrumb" will appear similar to the range breadcrumbs noted above.</p>
-</div>
-
-<p>Clicking the "JavaScript only" option will only show JavaScript code in the Call Tree. You could compare the time with this option checked and the total time to get an idea of how much time was spent running JS. Note that long-running JS function execution may not actually be taking as long as you think because further down the call stack there may be something like painting happening.</p>
-
-<p>Clicking the "Invert call stack" option will sort by the time spent in a function in descending order. Note that the running time here is only the running time of that particular frame and not the total of all called instances of that function. You can see the samples in the Timeline get darker as you select different functions in the Call Tree; these are samples that were taken when the selected function was running.</p>
-
-<p>"Filter stacks" will allow you to search for functions by name. One of the easiest ways to find slowness caused by a page's JS is to type its URL into the "Filter stacks" box. You can then select corresponding Call Tree entries and watch the Timeline for entries in the content process main thread that get darker as you select Call Tree entries.</p>
-
-<div class="note">
-<p>Tip: If things are blank elsewhere in the UI, you may have text entered into the "Filter stacks" box.</p>
-</div>
-
-<h5 id="Custom_Annotations">Custom Annotations</h5>
-
-<p>In <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1334218">bug 1334218</a> an annotation was added to <code>PresShell::Paint</code> to show the URL of the document being painted. These annotations are not too complex to add so if you would like something added, <a href="https://bugzilla.mozilla.org/enter_bug.cgi">file a bug</a>.</p>
-
-<h4 id="3._Partilhar_o_perfil">3. Partilhar o perfil</h4>
-
-<p>Click "Share..." &gt; Share acknowledging that the URLs you had open and your Firefox extensions will be included in the profile data sent to the server. If you select a different time range, the URL revealed by pressing "Permalink" will change so that you can be sure the recipient of the URL will see the same things you are seeing.</p>
-
-<h3 id="Dicas">Dicas</h3>
-
-<p>Understanding profiles can be difficult. If you're unfamiliar with Gecko's internals, you can click the <em>JavaScript only</em> button to see where your JavaScript code is slow. Each entry in the Call Tree shows a call stack and how much time is spent in that call stack. For example:<img alt="" src="https://mdn.mozillademos.org/files/14905/profiler-timespent.png" style="display: block; height: 382px; margin: 0px auto; width: 1180px;">In the results above we can see that we're spending ~287 milliseconds in <code>Startup::XRE_InitChildProcess</code>, 194 ms of which are spent in <code>PVsync::Msg_Notify</code> and <strong>all</strong> child functions that it calls. It is useful to scan down the "Running Time" column and look for when the time changes. While looking for performance problems, you're looking for the processes that are taking the most time; then you can figure out how to optimize them.</p>
-
-<h3 id="Erros_(Bugs)_de_Desempenho_Comuns_no_Firefox">Erros (Bugs) de Desempenho Comuns no Firefox</h3>
-
-<p>Inefficient code that is on the reflow or restyle paths is often to blame for jank. So is code that is run often in the parent process or in parts of the codebase that apply to many users.</p>
-
-<p>Synchronous re-flow can be caused by JS that, for example, makes changes to the page content in a loop and queries about the layout of the page in that same loop.</p>
-
-<p>A PresShell:Flush means that we are either recomputing styles or recomputing layout. These sorts of flushes should be avoided if possible, as they can be quite expensive. Keep your eyes out for flushes like this that are blocking the main thread for a long time. If you notice these things happening in a loop, that's a bug to be fixed, since we're likely "layout thrashing".</p>
-
-<p>Some more tips and answers to common questions are available in a <a href="/en-US/docs/Mozilla/Performance/Gecko_Profiler_FAQ">mid-2017 FAQ document</a>.</p>
-
-<p>It's a good idea to search <a href="https://bugzilla.mozilla.org/">bugzilla</a> before filing a bug about a performance problem in Firefox but sometimes it's hard to find issues that have already been reported. Therefore, it's usually a good idea to <a href="https://bugzilla.mozilla.org/enter_bug.cgi">file a bug</a>.</p>
-
-<h2 id="Perfilar_compilações_(builds)_locais_do_Windows">Perfilar compilações (builds) locais do Windows</h2>
-
-<p>If you built Firefox for Windows <strong>locally</strong> and you would like to use the local symbols with the profiler, you will need to run an additional tool; see <a href="/en-US/docs/Performance/Profiling_with_the_Built-in_Profiler_and_Local_Symbols_on_Windows" title="/en-US/docs/Performance/Profiling_with_the_Built-in_Profiler_and_Local_Symbols_on_Windows">Profiling with the Gecko Profiler and Local Symbols on Windows</a>.</p>
-
-<h2 id="Perfilar_compilações_(builds)_Try">Perfilar compilações (builds) Try</h2>
-
-<p>The profiler currently doesn't really support symbolication for profiles from Try builds. For Linux builds, there seem to be symbols inside the binaries, which the profiler should pick up correctly. But on Windows and macOS, you'll have to do some tricks to make it work:</p>
-
-<ol>
- <li><span>Put your firefox build into a directory with the name <code>dist</code>.</span></li>
- <li><span>Download the crashreporter symbols zip for your build. It should be one of the "artifacts" of the build job of your try build.</span></li>
- <li><span>Unzip the crashreporter symbols into <code>dist/crashreporter-symbols/</code>.</span></li>
- <li><span>Now profile as usual.</span></li>
-</ol>
-
-<p>(This abuses the symbolication logic for local builds. It's at <a href="http://searchfox.org/mozilla-central/rev/51b3d67a5ec1758bd2fe7d7b6e75ad6b6b5da223/browser/components/extensions/ext-geckoProfiler.js#172">ext-geckoProfiler.js</a> and may stop working at any time.)</p>
-
-<h2 id="Perfilar_móvel_Firefox">Perfilar móvel Firefox</h2>
-
-<ol>
- <li>For local builds of Fennec, you should build with optimization and <code>STRIP_FLAGS="--strip-debug"</code> but <strong>NOT</strong> with <code>--enable-profiling</code>. Nightly builds are already built with the appropriate flags.</li>
- <li>You'll need to have <code>adb</code> and <code>arm-eabi-addr2line</code> (which is part of the <a href="http://developer.android.com/tools/sdk/ndk/index.html#Installing" title="http://developer.android.com/tools/sdk/ndk/index.html#Installing">Android NDK</a>) in your bash <code>PATH</code>, so use <code>locate arm-eabi-addr2line</code> (on Linux) or<code> mdfind name:arm-eabi-addr2line</code> (on OS X) and stick an export to its location in <code>~/.bash_profile</code>. The extension will invoke bash to use <code>adb</code> and <code>addr2line</code>.</li>
- <li>Install the <a href="https://github.com/bgirard/Gecko-Profiler-Addon/raw/master/geckoprofiler.xpi" title="https://github.com/bgirard/Gecko-Profiler-Addon/raw/master/geckoprofiler.xpi">latest pre-release build</a> in your host machine's Firefox browser that has your phone reachable via <a href="/en-US/Firefox_OS/Debugging/Installing_ADB">ADB</a>. This will add a icon in the top right of the browser.</li>
- <li>Set <code>devtools.debugger.remote-enabled</code> to <code>true</code> in <code>about:config</code> for Fennec.</li>
- <li>Select target <em>Mobile USB</em> and press <em>Connect</em>. The first run will take an additional 1 minute or so to pull in the required system libraries.</li>
-</ol>
-
-<h2 id="Profiling_Firefox_Startup">Profiling Firefox Startup</h2>
-
-<ol>
- <li>Start your Firefox with the environment variable <code>MOZ_PROFILER_STARTUP=1</code> set. This way the profiler is started as early as possible during startup.</li>
- <li>Then capture the profile using the add-on as usual.</li>
-</ol>
-
-<p>Startup profiling does not use the settings that you configured in the add-on's panel. It uses settings that can be configured with the environment variables <code>MOZ_PROFILER_STARTUP_ENTRIES</code> and <code>MOZ_PROFILER_STARTUP_INTERVAL</code>:</p>
-
-<ul>
- <li>If it looks like the buffer is not large enough, you can tweak the buffer size with the env var <code>MOZ_PROFILER_STARTUP_ENTRIES</code>. This defaults to 1000000, which is 9MB. If you want 90MB use 10000000, and 20000000 for 180MB, which are good values to debug long startups.</li>
- <li>If you'd like a coarser resolution, you can also choose a different interval using <code>MOZ_PROFILER_STARTUP_INTERVAL</code>, which defaults to 1 (unit is millisecond). You can't go below 1 ms but you can use e.g. 10 ms.</li>
-</ul>
-
-<h2 id="Profiling_JS_benchmark_(xpcshell)">Profiling JS benchmark (xpcshell)</h2>
-
-<ol>
- <li>To profile the script <code>run.js</code> with IonMonkey (<code>-I</code>), type inference (<code>-n</code>) and JäegerMonkey (<code>-m</code>). Thgis requires the following command:
-
- <pre><code class="brush: bash">$ xpcshell -m -I -n -e '
- const Ci = Components.interfaces;
- const Cc = Components.classes;
- var profiler = Cc["@mozilla.org/tools/profiler;1"].getService(Ci.nsIProfiler);
- profiler.StartProfiler(
- 10000000 /* = profiler memory */,
- 1 /* = sample rate: 100µs with patch, 1ms without */,
- ["stackwalk", "js"], 2 /* = features, and number of features. */
- );
- ' -f ./run.js -e '
- var profileObj = profiler.getProfileData();
- print(JSON.stringify(profileObj));
- ' | tail -n 1 &gt; run.cleo</code></pre>
- The xpcshell output all benchmark information and on its last line it output the result of the profiling, you can filter it with <code>tail -n 1</code> and redirect it to a file to prevent printing it in your shell.  The expected size of the output is around 100 of MB.</li>
- <li>To add symbols to your build, you need to call <code>./scripts/profile-symbolicate.py</code> available in B2G repository.
- <pre><code>$ GECKO_OBJDIR=&lt;objdir&gt; PRODUCT_OUT=&lt;objdir&gt; TARGET_TOOLS_PREFIX= \
- ./scripts/profile-symbolicate.py -o run.symb.cleo run.cleo</code></pre>
- </li>
- <li><a href="https://github.com/bgirard/cleopatra" title="https://github.com/bgirard/cleopatra">Clone Cleopatra</a> and start the server with <code>./run_webserver.sh</code>.</li>
- <li>Access Cleopatra from your web browser by loading the page <code>localhost:8000</code>, and upload <code>run.symb.cleo</code> to render the profile with most of the symbol information.</li>
-</ol>
-
-<h2 id="Native_stack_vs._Pseudo_stack">Native stack vs. Pseudo stack</h2>
-
-<p>The profiler periodically samples the stack(s) of thread(s) in Firefox, collecting a stack trace, and presents the aggregated results using the Cleopatra UI.  Stack traces can be collected into two different ways: Pseudostack (the default) or Nativestack.</p>
-
-<h3 id="Native_stack">Native stack</h3>
-
-<p>Native stacks are the normal stacks most developers are used. They are the default.</p>
-
-<h3 id="Pseudostack">Pseudostack</h3>
-
-<p>The pseudostack uses function entry/exit tags added by hand to important points in the code base.  The stacks you see in the UI are chains of these tags.  This is good for highlighting particularly interesting parts of the code, but they miss out on un-annotated areas of the code base, and give no visibility into system libraries or drivers.</p>
-
-<p>Tagging is done by adding macros of the form <code>AUTO_PROFILER_LABEL("NAMESPACE", "NAME")</code>. These add RAII helpers, which are used by the profiler to track entries/exits of the annotated functions.  For this to be effective, you need to liberally use <code>AUTO_PROFILER_LABEL</code> throughout the code. See <code>GeckoProfiler.h</code> for more variations like <code>AUTO_PROFILER_LABEL_DYNAMIC</code>.</p>
-
-<p>Because of the non-zero overhead of the instrumentation, the sample label shouldn't be placed inside hot loops.  A profile reporting that a large portion is spent in "Unknown" code indicates that the area being executed doesn't have any sample labels.  As we focus on using this tool and add additional sample labels coverage should improve.</p>
-
-<h2 id="Sharing_saving_and_loading_profiles">Sharing, saving and loading profiles</h2>
-
-<p>After capturing and viewing a profile you will see "Share..." and "Save as file..." buttons in the top-right of the window. Sharing will upload your profile to perf-html.io and make it public. More <a href="/en-US/docs/Mozilla/Performance/Reporting_a_Performance_Problem#Capturing_and_sharing_a_profile">information on sharing profiles</a> is available.</p>
-
-<h2 id="Profiling_a_hung_process">Profiling a hung process</h2>
-
-<p>It is possible to get profiles from hung Firefox processes using lldb<sup><a href="http://mikeconley.ca/blog/2015/04/04/things-ive-learned-this-week-march-30-april-3-2015/#fn1-2699" rel="footnote" title="Unfortunately, this technique will not work for Windows. ">1</a></sup>.</p>
-
-<ol>
- <li>After the process has hung, <a href="https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/gdb_to_lldb_transition_guide/document/lldb-terminal-workflow-tutorial.html#//apple_ref/doc/uid/TP40012917-CH4-SW5">attach lldb</a>.</li>
- <li>Type in<sup><a href="http://mikeconley.ca/blog/2015/04/04/things-ive-learned-this-week-march-30-april-3-2015/#fn2-2699" rel="footnote" title="Assuming you’re running a build after this revision landed.">2</a></sup>, :
- <pre>p (void)<code id="line-232">profiler_save_profile_to_file</code>("somepath/profile.txt")</pre>
- </li>
- <li><a href="https://github.com/mstange/analyze-tryserver-profiles">Clone mstange’s handy profile analysis repository.</a></li>
- <li>Run:
- <pre>python symbolicate_profile.py somepath/profile.txt</pre>
-
- <p>To graft symbols into the profile. mstange’s scripts do some fairly clever things to get those symbols – if your Firefox was built by Mozilla, then it will retrieve the symbols from the Mozilla symbol server. If you built Firefox yourself, it will attempt to use some cleverness<sup><a href="http://mikeconley.ca/blog/2015/04/04/things-ive-learned-this-week-march-30-april-3-2015/#fn3-2699" rel="footnote" title="A binary called dump_syms_mac in mstange’s toolkit, and nm on Linux">3</a></sup> to grab the symbols from your binary.</p>
-
- <p>Your profile will now, hopefully, be updated with symbols. Upload it for further analysis!</p>
-
- <p>I haven’t yet had the opportunity to try this, but I hope to next week. I’d be eager to hear people’s experience giving this a go – it might be a great tool in determining what’s going on in Firefox when it’s hung!</p>
- </li>
-</ol>
-
-<h2 id="Profiling_Threads">Profiling Threads</h2>
-
-<p>The Gecko Profiler has rudimentary support for profiling multiple threads. To enable it, check the 'Multi-Thread' box then enter one or more thread names into the textbox beside it. Thread names are the strings passed to the base::Thread class at initialization. At present there is no central list of these thread names, but you can find them by grepping the source.</p>
-
-<p>Examples: <a href="http://mxr.mozilla.org/mozilla-central/source/ipc/glue/BrowserProcessSubThread.cpp#24">1</a> <a href="http://mxr.mozilla.org/mozilla-central/source/gfx/layers/ipc/CompositorParent.cpp#133">2</a></p>
-
-<p>If the filter you entered is invalid, no threads will be profiled. You can identify this by hitting Analyze (Cleopatra will show you an error message). If the filter is left empty, only the main thread is captured (as if you had not enabled Multi-Thread.)</p>
-
-<h2 id="Profiler_Features">Profiler Features</h2>
-
-<p>The profiler supports several features. These are options to gather additional data in your profiles. Each option will increase the performance overhead of profiling so it's important to activate only options that will provide useful information for your particular problem to reduce the distortion.</p>
-
-<h3 id="Stackwalk">Stackwalk</h3>
-
-<p>When taking a sample the profiler will attempt to unwind the stack using platform specific code appropriate for the ABI. This will provide an accurate callstack for most samples. On ABIs where framepointers are not avaiable this will cause a significant performance impact.</p>
-
-<h3 id="JS_Profiling">JS Profiling</h3>
-
-<p>Javascript callstacks will be generated and interleaved with the c++ callstacks. This will introduce an overhead when running JS.</p>
-
-<h3 id="GC_Stats">GC Stats</h3>
-
-<p>Will embed GC stats from 'javascript.options.mem.notify' in the profile.</p>
-
-<h3 id="Main_Thread_IO">Main Thread IO</h3>
-
-<p>This will interpose file I/O and report them in the profiles.</p>
-
-<h3 id="Multi-Thread">Multi-Thread</h3>
-
-<p>This will sample other threads. This fields accept a comma seperated list of thread names. A thread can only be profiled if it is registered to the profiler.</p>
-
-<h3 id="GPU">GPU</h3>
-
-<p>This will insert a timer query during compositing and show the result in the Frames view. This will appropriate how much GPU time was spent compositing each frame.</p>
-
-<h3 id="Layers_Texture">Layers &amp; Texture</h3>
-
-<p>The profiler can be used to view the layer tree at each composite, optionally with texture data. This can be used to debug correctness problems.</p>
-
-<h4 id="Viewing_the_Layer_Tree">Viewing the Layer Tree</h4>
-
-<p>To view the layer tree, the <code>layers.dump</code> pref must be set to <code>true</code> in the Firefox or B2G program being profiled.</p>
-
-<p>In addition, both the compositor thread and the content thread (in the case of B2G, the content thread of whichever app you're interested in) must be profiled. For example, on B2G, when profiling the Homescreen app, you might start the profiler with:</p>
-
-<pre>./profile.sh start -p b2g -t Compositor &amp;&amp; ./profile.sh start -p Homescreen
-</pre>
-
-<p>Having gotten a profile this way, the layer tree for a composite can be seen by clicking on a composite in the "Frames" section of Cleopatra (you may need to a sub-range of samples to make individual composites large enough to be clicked). This will activate the "LayerTree" tab:</p>
-
-<p><img alt="Screenshot of layer tree view in Cleopatra, with no textures." src="https://mdn.mozillademos.org/files/10327/cleopatra-layer-tree-hilite.png" style="height: 1029px; width: 1923px;"></p>
-
-<p>In this screenshot, Composite #143 has been selected. The layer tree structure can be seen in the left panel. It contains, for each layer, the type of the layer, and various metrics about the layer, such as the visible region and any transforms. In the right panel, a visualization of the layer tree (based entirely on the aforementioned metrics) is shown. Hovering over a layer in the left panel highlights the layer in the right panel. This is useful for identifying what content each layer corresponds to. Here, I'm hovering over the last layer in the layer tree (a PaintedLayerComposite), and a strip at the top of the right panel is highlighted, telling me that this layer is for the system notification bar in B2G.</p>
-
-<h4 id="Viewing_Textures">Viewing Textures</h4>
-
-<p>Sometimes, it's useful to see not only the structure of the layer tree for each composite, but also the rendered textures for each layer. This can be achieved by additionally setting the <code>layers.dump-texture</code> pref to <code>true</code>, or by adding <code>-f layersdump </code>to the profiler command line (the latter implies both the <code>layers.dump</code> and <code>layers.dump-texture</code> prefs).</p>
-
-<div class="warning">
-<p><strong>Warning</strong>: Dumping texture data slows performance considerably, and requires a lot of storage for the profile files. Expect rendering to happen at a significantly reduced frame rate when profiling this way, and keep the duration of the capture short, to ensure the samples of interest aren't overwritten.</p>
-</div>
-
-<p>Here's how the Layer Tree view looks in Cleopatra with texture data:</p>
-
-<p><img alt="Screenshot of layer tree view in Cleopatra, with textures." src="https://mdn.mozillademos.org/files/10329/cleopatra-layer-tree-textures.png" style="height: 1037px; width: 1920px;"></p>
-
-<p>This time, the visualization in right panel shows the actual textures rather than just the outlines of the layers. This can be very useful for debugging correctness problems such as a temporary visual/rendering glitch, because it allows you to find the precise composite that shows the glitch, and look at the layer tree for that composite.</p>
-
-<h4 id="Visualizing_a_layer_tree_without_a_profile">Visualizing a layer tree without a profile</h4>
-
-<p>If you have a layer dump from somewhere (such as from <code>adb logcat</code> on B2G), you can get Cleopatra to visualize it (just the structure of course, not textures) without needing a profile. To do so, paste the layer dump into the "Enter your profile data here" text field on the front page of Cleopatra:</p>
-
-<p><img alt="Screenshot of front page of Cleopatra, with pasted layer dump." src="https://mdn.mozillademos.org/files/10331/cleopatra-layer-tree-noprofile.png" style="height: 596px; width: 1020px;"></p>
-
-<p>The resulting "profile" will have the Layer Tree view enabled (but nothing else). This is useful in cases where you want to gain a quick visual understanding of a layer dump without having to take a profile.</p>
-
-<div class="note">
-<p>On B2G, each line of a layer dump in <code>adb logcat</code> output is prefixed with something like <code>I/Gecko   (30593):</code>. Cleopatra doesn't currently understand this prefix, so it needs to be removed before pasting.</p>
-</div>
-
-<h3 id="Display_List">Display List</h3>
-
-<p>Dump the display list after each refresh with the texture data. This can be used to debug correctness problems.</p>
-
-<h2 id="Contribuir">Contribuir</h2>
-
-<ul>
- <li>Source is located in {{ Source("tools/profiler") }}.</li>
- <li>The Bugzilla component is Core::Gecko Profile.</li>
- <li>The profiler add-on repository can be found here: <a class="link-https" href="https://github.com/bgirard/Gecko-Profiler-Addon" rel="freelink">https://github.com/mstange/Gecko-Profiler-Addon</a>.</li>
- <li>The Cleopatra repository can be found here: <a class="link-https" href="https://github.com/devtools-html/perf.html" rel="freelink">https://github.com/devtools-html/perf.html</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/persona/index.html b/files/pt-pt/mozilla/persona/index.html
deleted file mode 100644
index 12a9d58796..0000000000
--- a/files/pt-pt/mozilla/persona/index.html
+++ /dev/null
@@ -1,153 +0,0 @@
----
-title: Persona
-slug: Mozilla/Persona
-translation_of: Archive/Mozilla/Persona
----
-<div class="callout-box">
- <p><strong>Acompanhe ou peça ajuda!</strong></p>
- <p>Siga <a class="external" href="http://identity.mozilla.com/" title="http://identity.mozilla.com/">nosso blog</a>, join <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-identity" title="https://lists.mozilla.org/listinfo/dev-identity">our mailing list</a>, or find us in <a class="link-irc" href="irc://irc.mozilla.org/identity" title="irc://irc.mozilla.org/identity">#identity</a> on <a class="link-https" href="https://wiki.mozilla.org/IRC" title="https://wiki.mozilla.org/IRC"> IRC</a>.</p>
-</div>
-<p><a class="link-https" href="https://www.mozilla.org/en-US/persona/" title="https://www.mozilla.org/en-US/persona/">Mozilla Persona</a> é um sistema de autenticação completamente descentralizado e seguro para a web baseado no protocolo aberto BrowserId. Para garantir que Persona funcione em todo lugar e para todos, Mozilla atualmente opera uma pequena suíte de <a href="/en-US/docs/Persona/Bootstrapping_Persona" title="/en-US/docs/Persona/Bootstrapping_Persona">serviços opcionais, centralizados</a>.</p>
-<p>Por quê você e seu site deveriam usar Persona?</p>
-<ol>
- <li><strong>Persona elimina completamente senhas para sites específicos</strong>, libertando usuários e sites do fardo de criar, gerir e armazenar seguramente senhas.</li>
- <li><strong>Persona é fácil de usar.</strong> Com apenas dois cliques um usuário Persona pode se cadastrar em um novo site, como <a href="http://voo.st" title="http://voo.st">Voost</a> ou <a href="http://crossword.thetimes.co.uk/" title="http://crossword.thetimes.co.uk/">The Times Crossword</a>, ignorando o desgaste associado à criação de contas.</li>
- <li><strong>Persona é fácil de implementar</strong><strong>. </strong>Desenvolvedores podem adicionar Persona à um site em uma única tarde.</li>
- <li>Melhor de tudo, <strong>não há bloqueio</strong>. Desenvolvedores adquirem um endereço de email para todos seus usuários, e usuários podem usar qualquer endereço de email com Persona.</li>
- <li><strong>Persona é baseado no protocolo BrowserID. </strong>Quando os navegadores populares implementarem BrowserID, <b>eles não irão precisar depender da Mozilla para logar.</b></li>
-</ol>
-<p>Leia e comece!</p>
-<div class="note">
- <strong>Note:</strong> Persona is in active development. Follow <a class="external" href="http://identity.mozilla.com/" title="http://identity.mozilla.com/">our blog</a> to learn about new features, or join <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-identity" title="https://lists.mozilla.org/listinfo/dev-identity">our mailing list</a> and offer your feedback!</div>
-<h2 id="Using_Persona_on_your_site">Using Persona on your site</h2>
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h3 id="Getting_started">Getting started</h3>
- <dl>
- <dt>
- <a href="/en-US/docs/Persona/Why_Persona" title="en/BrowserID/Why_BrowserID">Why Persona?</a></dt>
- <dd>
- Learn about reasons to support Persona on your site, and how it compares to other identity and authentication systems.</dd>
- <dt>
- <a href="/en/Persona/Quick_Setup" title="BrowserID/Quick setup">Quick setup</a></dt>
- <dd>
- A quick walkthrough showing how to add Persona to your website.</dd>
- </dl>
- </td>
- <td>
- <h3 id="Persona_API_reference">Persona API reference</h3>
- <dl>
- <dt>
- <a href="/en/DOM/navigator.id" title="navigator.id">The navigator.id API reference</a></dt>
- <dd>
- Reference for the <code>navigator.id</code> object, which web developers can use to integrate Persona into sites.</dd>
- <dt>
- <a href="/en/Persona/Remote_Verification_API" title="en/BrowserID/Remote_Verification_API">Verification API reference</a></dt>
- <dd>
- Reference for the remote verification API hosted at <code>https://verifier.login.persona.org/verify</code>.</dd>
- </dl>
- </td>
- </tr>
- <tr>
- <td>
- <h3 id="Guides">Guides</h3>
- <dl>
- <dt>
- <a href="/en/Persona/Security_Considerations" title="BrowserID/Security considerations">Security considerations</a></dt>
- <dd>
- Practices and techniques to make sure your Persona deployment is secure.</dd>
- <dt>
- <a href="/en/Persona/Browser_compatibility" title="/Browser_compatibility">Browser compatibility</a></dt>
- <dd>
- Learn exactly which browsers support Persona.</dd>
- <dt>
- <a href="/en/Persona/Internationalization" title="/Internationalization">Internationalization</a></dt>
- <dd>
- Learn how Persona handles different languages.</dd>
- </dl>
- </td>
- <td>
- <h3 id="Resources">Resources</h3>
- <dl>
- <dt>
- <a class="link-https" href="https://github.com/mozilla/browserid/wiki/Persona-Libraries" title="https://github.com/mozilla/browserid/wiki/BrowserID-Libraries">Libraries and plugins</a></dt>
- <dd>
- Find a drop-in library for your favorite programming language, web framework, blog, or content management system.</dd>
- <dt>
- <a class="link-https" href="https://github.com/mozilla/browserid-cookbook" title="https://github.com/mozilla/browserid-cookbook">The Persona cookbook</a></dt>
- <dd>
- Example source code for Persona sites. Includes snippets in PHP, Node.JS, and more.</dd>
- <dt>
- <a href="/en-US/docs/persona/branding" title="/en-US/docs/persona/branding">Branding resources</a></dt>
- <dd>
- Sign in buttons and other graphics to help present Persona to your users.</dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-<p> </p>
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 id="Information_for_Identity_Providers">Information for Identity Providers</h2>
- <p>If you're an email provider or another identity-providing service, check out the links below to learn about becoming a Persona Identity Provider.</p>
- <dl>
- <dt>
- <a href="/en-US/docs/Persona/Identity_Provider_Overview" title="IdP">IdP Overview</a></dt>
- <dd>
- A high level view of Persona Identity Providers.</dd>
- <dt>
- <a href="/en/Persona/Implementing_a_Persona_IdP" title="Guide to Implementing a Persona IdP">Implementing an IdP</a></dt>
- <dd>
- A detailed guide to the technical details of becoming an IdP.</dd>
- <dt>
- <a href="/en-US/Persona/IdP_Development_tips" title="Developer tips">Development tips</a></dt>
- <dd>
- A set of tips and tricks useful while developing a new Identity Provider.</dd>
- <dt>
- <a href="/en-US/docs/Persona/.well-known-browserid" title="https://developer.mozilla.org/en-US/docs/Persona/.well-known-browserid">.well-known/browserid</a></dt>
- <dd>
- An overview of the structure and purpose of the <code>.well-known/browserid</code> file, which IdPs use to advertise their support for the protocol.</dd>
- </dl>
- </td>
- <td>
- <h2 id="The_Persona_Project">The Persona Project</h2>
- <dl>
- <dt>
- <a href="/en/Persona/Glossary" title="navigator.id">Glossary</a></dt>
- <dd>
- BrowserID and Persona terminology defined.</dd>
- <dt>
- <a href="/en/Persona/FAQ" title="en/BrowserID/FAQ">FAQ</a></dt>
- <dd>
- Answers to common questions.</dd>
- <dt>
- <a href="/en/Persona/Protocol_Overview" title="BrowserID/Protocol overview">Protocol overview</a></dt>
- <dd>
- A mid-level technical overview of the underlying BrowserID protocol.</dd>
- <dt>
- <a href="/en/persona/Crypto" title="MDN">Crypto</a></dt>
- <dd>
- A look at the cryptographic concepts behind Persona and BrowserID.</dd>
- <dt>
- <a class="link-https" href="https://github.com/mozilla/id-specs/blob/master/browserid/index.md" title="https://github.com/mozilla/id-specs/blob/master/browserid/index.md">The Spec</a></dt>
- <dd>
- Deep technical details live here.</dd>
- <dt>
- <a href="/Persona/Bootstrapping_Persona" title="en/BrowserID/Bootstrapping_BrowserID">The Persona Website</a></dt>
- <dd>
- To get Persona going, we're hosting three services at <a class="link-https" href="https://login.persona.org" rel="freelink">https://login.persona.org</a>: a fallback Identity Provider, a portable implementation of the {{ domxref("navigator.id") }} APIs, and an identity assertion verification service.</dd>
- <dt>
- <a href="https://github.com/mozilla/browserid">The Persona Source Code</a></dt>
- <dd>
- The code behind the Persona website lives in a repository on GitHub. Patches welcome!</dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-<p> </p>
diff --git a/files/pt-pt/mozilla/phishing/index.html b/files/pt-pt/mozilla/phishing/index.html
deleted file mode 100644
index e553586c69..0000000000
--- a/files/pt-pt/mozilla/phishing/index.html
+++ /dev/null
@@ -1,50 +0,0 @@
----
-title: 'Phishing: uma breve definição'
-slug: Mozilla/Phishing
-tags:
- - Segurança
-translation_of: Mozilla/Phishing
----
-<p>Em 2014, a MSCI <a href="https://news.microsoft.com/en-sg/2014/02/11/microsoft-consumer-safety-index-reveals-impact-of-poor-online-safety-behaviours-in-singapore/">estimatou</a> um impacto global anual do phishing e várias formas de roubo de identidade, chegando a US $5 bilhões. O impacto não melhorou desde então.</p>
-
-<p>Phishing is an attempt to collect sensitive information, such as usernames, passwords, and financial details by disguising as a trustworthy entity online.</p>
-
-<p>A relatively simple, yet effective, phishing scheme is sending an email with a fake invoice of a person’s favorite shopping site. This email will usually contain a link pretending to lead to the original service, but in reality, taking the victim to an attacker-controlled website. The login portal might resemble the trusted website's login page very closely, and convince users to enter their credentials, letting others hijack their account.</p>
-
-<h1 id="Contramedidas_passadas_e_atuais">Contramedidas passadas e atuais</h1>
-
-<p>Various technical, and social approaches, exist to combat phishing attacks. None of these are sufficient by themselves, so we see a mix of these deployed by various services. The following is a non-exhaustive list of the most common approaches.</p>
-
-<h2 id="Deitando_a_culpa_aos_utilizadores">Deitando a culpa aos utilizadores</h2>
-
-<p>Some quick-to-implement, and cost-effective solutions, hold users accountable for their actions instead of restricting what’s technically possible. Earlier responses by affected banks, and payment providers, was to attempt educating users to not click links in emails, along with requesting to verify email legitimacy through checking for relevant personal information.</p>
-
-<p>Another solution is to strengthen logins with pictures, or colored words, often chosen when signing up for a service. Users look for these when logging in, and only enter their credentials when they recognize the user defined pictures or words.</p>
-
-<p>A study on the efficacy of security indicators, presented at the 2007 IEEE Symposium on Security and Privacy, <a href="http://www.usablesecurity.org/emperor/emperor.pdf">suggests</a> that the above countermeasures fail to protect the majority of users. This too, includes missing HTTPS or EV certificate indicators in a browser’s navigation bar.</p>
-
-<h2 id="Serviços_assumindo_responsabilidade">Serviços assumindo responsabilidade</h2>
-
-<p>Technical solutions can be more efficient if implemented to protect millions of users automatically. As most phishing attacks start with unsolicited email messages, a clear starting point is improving spam filters, thus reducing the number of fraudulent messages reaching users.</p>
-
-<p>Web browser vendors too, are interested in protecting their users from phishing. After all, the browser plays an essential role in the scheme: a fake website is loaded in a browser and here is the maker’s last chance to preventing fraud. Since version 2.0, Firefox has used Google’s <a href="https://safebrowsing.google.com/">SafeBrowsing</a> service, to detect known web forgeries, and display an alert instead of the fraudulent website.</p>
-
-<h1 id="Autenticação_de_Dois_Fatores">Autenticação de Dois Fatores</h1>
-
-<p>None of the above anti-phishing measures address the basic problem: username/password combinations are often enough to impersonate users.</p>
-
-<p>Enter the world of second factors. A second factor is something a user possesses to further authenticate with a service. For example, a USB token, Bluetooth device, mobile phone, or simply a key stored on a separate device. The first factor is usually the password and username. If both factors don’t match, the service will reject authentication requests.</p>
-
-<h2 id="Criptografia_de_Chave_Pública">Criptografia de Chave Pública</h2>
-
-<p>Many services will soon support <a href="https://w3c.github.io/webauthn/">W3C Web Authentication</a>, a powerful technology to evade phishing, based on public key cryptography. Web Authentication supports millions of readily avilable FIDO U2F USB security keys, and will support the more advanced FIDO 2.0 keys, once made available.</p>
-
-<h2 id="Verificação_via_Mensagem_de_Texto">Verificação via Mensagem de Texto</h2>
-
-<p>If a service supports verification, via SMS, it sends a text message with a one-time PIN to the user’s phone number. The user then enter this PIN after the Web service verifies the username and password. This was chosen as an  early second factor 'protocol' as text messages are widely supported, however, even NIST <a href="https://techcrunch.com/2016/07/25/nist-declares-the-age-of-sms-based-2-factor-authentication-over/">no longer recommends SMS verification</a>. The SS7 telephony system is vulnerable, making eavesdropping, or rerouting text messages quite trivial.</p>
-
-<h2 id="Algoritmos_de_Palavra-passe_Única">Algoritmos de Palavra-passe Única</h2>
-
-<p>A better way to use phones as second factor, are One-Time Password (OTP) protocols, like <a href="https://tools.ietf.org/html/rfc6238">TOTP</a> and <a href="https://tools.ietf.org/html/rfc4226">HOTP</a>. At service registration, the provider will often generate a QR code to be read by an OTP app. This QR code is nothing more than a random, secret key, that is stored on the user’s phone. After verifying username and password, the user is prompted to open the OTP app and enter the corresponding 6-digit code, representing a hashed version of the secret key and a <a href="https://en.wikipedia.org/wiki/Cryptographic_nonce">nonce</a> - potentially time-based.</p>
-
-<p>OTP is the most widely supported second factor schemes and can be used to secure your most important accounts. Unfortunately, some users still feel it's too tedious unlocking a phone, opening the OTP app, and manually typing a few digits each time a provider requests a new token. This can be phished by an attacker, though with TOTP apps the attacker has limited time to make their unauthorized login.</p>
diff --git a/files/pt-pt/mozilla/projects/emscripten/index.html b/files/pt-pt/mozilla/projects/emscripten/index.html
deleted file mode 100644
index c2c6e1a2dc..0000000000
--- a/files/pt-pt/mozilla/projects/emscripten/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: Emscripten
-slug: Mozilla/Projects/Emscripten
-tags:
- - C++
- - Emscripten
- - JavaScript
- - LLVM
-translation_of: Mozilla/Projects/Emscripten
----
-<p><span class="seoSummary">Emscripten é um compilador LLVM para JavaScript. </span>Este utiliza <em>bytecode</em> do LLVM (por exemplo, gerado a partir de C/C++, utilizando Clang, ou de outra linguagem) e o compila no JavaScript, que pode ser executado na Web<span class="seoSummary">.</span></p>
-
-<div class="warning">
-<p><strong>Importante</strong>: esta página fornece uma breve introdução sobre o que Emscripten é. Para começar com Emscripten, vá para a <a href="http://kripken.github.io/emscripten-site/index.html">Wiki oficial do Emscripten</a>.</p>
-</div>
-
-<p>Ao utilizar o Emscripten, pode</p>
-
-<ul>
- <li>Compilar código C e C++ para JavaScript</li>
- <li>Compilar qualquer tipo de código que consegue ser traduzido para LLVM <em>bytecode</em>para JavaScript.</li>
- <li>Compilar <em>runtimes</em> de C/C++ de outras linguagens para JavaScript e depois correr código nessas outras linguagens de uma maneira indireta (Isto foi feito para Python e Lua)!</li>
-</ul>
-
-<p>Emscripten produz código nativo imediatamente disponível na Web: uma plataforma que é padrão, tem inúmeras implementações independentes e é interpretada em todo o lado desde PC's a iPad's.</p>
-
-<p>Com Emscripten, programadores de C/C++ não têm o alto custo de transcrever o código manualmente para JavaScript — ou ter que aprender JavaScript sequer. Programadores web também beneficiam, dado que podem usar milhares de bibliotecas nativas já existentes nos seus sites.</p>
-
-<p>Praticamente qualquer base de código portátil de C ou C++ pode ser compilada para JavaScript usando Emscripten, variando desde jogos de alto performance que precisam de renderizar gráficos, tocar sons, carregar e processar ficheiros até aplicações de <em>frameworks</em> como Qt.</p>
-
-<p>Emscripten gera código rápido — o formato de saída é <a href="/en-US/docs/Games/Tools/asm.js">asm.js</a>, um <em>subset</em> de JavaScript que consegue executar perto de velocidades nativas em muitos casos.</p>
-
-<div class="note">
-<p><strong>Nota</strong>: Parece interessante? <a href="http://kripken.github.io/emscripten-site/docs/introducing_emscripten/about_emscripten.html">Ler mais sobre Emscripten e experimentar algumas demonstrações</a>, e depois <a href="http://kripken.github.io/emscripten-site/docs/getting_started/index.html">começar a usar</a>.</p>
-</div>
-
-<h2 id="Outros_artigos_de_interesse_na_MDN">Outros artigos de interesse na MDN</h2>
-
-<ul>
- <li>A nossa <a href="/en-US/docs/Games">zona de jogos </a>contém conteúdo útil relacionado com o desenvolvimento de jogos, que é um caso de uso comum para o Emscripten.</li>
- <li>A nossa página com <a href="/en-US/docs/Mozilla/Projects/Emscripten/Techniques">técnicas de Emscripten</a> é um lugar para guardar ideias úteis relacionadas com Emscripten, que conseguiram ser introduzidas na Wiki do Emscripten.</li>
-</ul>
diff --git a/files/pt-pt/mozilla/projects/index.html b/files/pt-pt/mozilla/projects/index.html
deleted file mode 100644
index 7e832a9616..0000000000
--- a/files/pt-pt/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/pt-pt/mozilla/projects/mailnews/index.html b/files/pt-pt/mozilla/projects/mailnews/index.html
deleted file mode 100644
index 79fc847667..0000000000
--- a/files/pt-pt/mozilla/projects/mailnews/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: MailNews
-slug: Mozilla/Projects/MailNews
-translation_of: Mozilla/Projects/MailNews
----
-<p>MailNews significa "Correio e Listas de Notícias". MailNews é o <em>back end</em> de partes de mensagem do <a class="external" href="http://www.seamonkey-project.org/" title="http://www.seamonkey-project.org/">SeaMonkey</a> e <a class="internal" href="/pt-PT/docs/Mozilla/Thunderbird" title="en/Thunderbird">Thunderbird</a>. Este fornece um número de funções e capacidades, incluindo:</p>
-
-<ul>
- <li>Protocolos de comunicação - SMTP, POP3, IMAP, NNTP</li>
- <li>Gestão de Mensagens, incluindo procura e filtragem</li>
- <li>Composição de Mensagem</li>
- <li>Livro de Endereços</li>
-</ul>
-
-<p>O código de MailNews reside na diretoria / mailnews/ de <a class="internal" href="/en/comm-central" title="en/comm-central">comm-central</a>.</p>
-
-<p> </p>
-
-<div class="row topicpage-table">
-<div class="section">
-<dl>
- <dt class="landingPageList"><a href="/en-US/docs/Mozilla/Projects/MailNews/AsyncTestUtils_Extended_Framework">AsyncTestUtils extended framework</a></dt>
- <dd class="landingPageList">The AsyncTestUtils Extended Framework is one mechanism for testing the MailNews component of Thunderbird. See <a href="/en/MailNews/MailNews_Automated_Testing" title="en/MailNews/MailNews Automated Testing">MailNews automated testing</a> for a description of the other testing mechanisms.</dd>
- <dt class="landingPageList"><a href="/en-US/docs/Mozilla/Projects/MailNews/Leak_And_Bloat_Tests">Leak And Bloat Tests</a></dt>
- <dd class="landingPageList">This page describes how to perform tests that measure memory leaks and bloat for MailNews and its sub-components.</dd>
-</dl>
-
-<dl>
-</dl>
-</div>
-
-<div class="section">
-<dl>
- <dt class="landingPageList"><a href="/en-US/docs/Mozilla/Projects/MailNews/MailNews_Automated_Testing">MailNews automated testing</a></dt>
- <dd class="landingPageList">Automated testing is an increasingly significant and important part of <a class="internal" href="/en/MailNews" title="en/MailNews">MailNews</a> development. It allows reviewers to quickly pick up regressions in patches and helps developers to think about different cases.</dd>
-</dl>
-</div>
-</div>
-
-<p> </p>
-
-<p>Consulte as páginas etiquetadas de <a class="internal" href="/Special:Tags?tag=MailNews" title="Special:Tags?tag=MailNews">MailNews</a> para informação additional especifica de MailNews.</p>
diff --git a/files/pt-pt/mozilla/projects/rhino/index.html b/files/pt-pt/mozilla/projects/rhino/index.html
deleted file mode 100644
index b84b26f977..0000000000
--- a/files/pt-pt/mozilla/projects/rhino/index.html
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: Rhino
-slug: Mozilla/Projects/Rhino
-tags:
- - JavaScript
- - Mozilla
- - Rhino
-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> é uma implementação de código fonte aberto da linguagem <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a> inteiramente desenvolvida em Java. Tipicamente, destina-se a ser incluída em aplicações Java como forma de providenciar funcionalidades de <em>scripting </em>ao utilizador final. Foi incluída no pacote J2SE como o <em>scripting engine</em> disponível por defeito.</span></p>
-
-<h4 id="Rhino_downloads" name="Rhino_downloads">Baixar Rhino</h4>
-
-<p>Como <a class="internal" href="/en/RhinoDownload" title="en/RhinoDownload">obter código fonte e ficheiros binários</a>. </p>
-
-<h4 id="Rhino_documentation" name="Rhino_documentation">Documentação Rhino</h4>
-
-<p><a href="/en/Rhino_documentation" title="en/Rhino_documentation">Informação sobre Rhino</a> para desenvolvedores de scripts.</p>
-
-<h4 id="Rhino_help" name="Rhino_help">Ajuda Rhino</h4>
-
-<p><a href="/en/Rhino/Community" title="en/Rhino/Community">Alguns recursos</a> para o caso de entrar em dificuldades.</p>
diff --git a/files/pt-pt/mozilla/projects/thunderbird/localizacao_thunderbird/index.html b/files/pt-pt/mozilla/projects/thunderbird/localizacao_thunderbird/index.html
deleted file mode 100644
index b639359af3..0000000000
--- a/files/pt-pt/mozilla/projects/thunderbird/localizacao_thunderbird/index.html
+++ /dev/null
@@ -1,100 +0,0 @@
----
-title: Localização do Thunderbird
-slug: Mozilla/Projects/Thunderbird/Localizacao_Thunderbird
-tags:
- - Localização
- - Thunderbird 3
- - Tradução
- - thunderbird
-translation_of: Mozilla/Projects/Thunderbird/Thunderbird_Localization
----
-<p>Esta página é destinada aos tradutores atuais e futuros do Thunderbird, o cliente de e-mail e <em>usenet</em> da Mozilla Messaging. Abrange muitos aspetos que um tradutor do Thunderbird deverá conhecer como ferramentas necessárias, como obter informação sobre eventos relevantes à localização e vários outros itens de interesse.</p>
-
-<h2 id="Criar_uma_localização_do_Thunderbird"><span class="mw-headline">Criar uma localização do Thunderbird</span></h2>
-
-<p><a href="/en/Bootstrapping_a_New_Locale" title="En/Creating_a_new_localization_(Mercurial)">Creating a new localization (Mercurial)</a> - This article describes how you can create a new localization for Thunderbird.</p>
-
-<h3 id="Sobre_repositórios_e_ramificações">Sobre repositórios e ramificações</h3>
-
-<p>There are 3 active repositories for Thunderbird development. Thunderbird development work is merged from one branch to the next every six weeks.</p>
-
-<ul>
- <li>comm-central - also known as Trunk or "Daily".
- <ul>
- <li>This is where regular Thunderbird development takes place. Strings change at any time.</li>
- <li>Only a few locales are expected to translate on this branch.</li>
- </ul>
- </li>
- <li>comm-aurora - also known as "Earlybird"
- <ul>
- <li>This is where development for a particular release starts to be stabilised.</li>
- <li>No new features are allowed, and strings are frozen.</li>
- <li>Locales should do as much of their work as possible on this branch and achieve sign-off.</li>
- <li>Work done here will automatically be merged to beta and release every 6 weeks.</li>
- </ul>
- </li>
- <li>comm-beta - "Beta" channel
- <ul>
- <li>This is where we preview Thunderbird development to a large amount of users.</li>
- <li>Final stabilisations are performed.</li>
- <li>Little or no l10n work is done here.</li>
- </ul>
- </li>
-</ul>
-
-<p>Most locales will being working on comm-aurora. This repository/branch is stable with respect to strings for each six week period. Completing work here means it is ready for the first beta, and you won't need to work on beta branch. Your work will also automatically be carried forward.</p>
-
-<h3 id="Requisitos_da_Localização">Requisitos da Localização</h3>
-
-<p>There are not significant restrictions on what locales can change. However, we need to work together on providing search engines for Thunderbird users to use to get the right balance of search engines and the correct options set. For further information <a href="/en/Thunderbird_Localization/Productization" title="en/Thunderbird_Localization/Productization">see this page</a>.</p>
-
-<h3 id="Painel_da_Localização"><span class="mw-headline">Painel da </span>Localização<span class="mw-headline"> </span></h3>
-
-<p>The <a class="external text" href="https://l10n.mozilla.org/teams/" rel="nofollow" title="https://l10n.mozilla.org/teams/">localization dashboard</a> for Thunderbird gives localizers a precise overview of the current status of their localization. Detailed information is available on the <a class="link-https" href="https://wiki.mozilla.org/Thunderbird:Localization:Dashboard" title="https://wiki.mozilla.org/Thunderbird:Localization:Dashboard">l10n dashboard page</a>.</p>
-
-<p>A localization will added to the l10n dashboard on request when it has reached a high-level of completion (&gt; 80%) as shown by the <a href="/en/Compare-locales" title="En/Compare-locales">compare-locales</a> output. To request the addition of your locale to the dashboard, <a class="external text" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Thunderbird&amp;component=Build%20Config" rel="nofollow" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=Thunderbird&amp;component=Build%20Config">file a bug</a> in the Thunderbird product/Build Config component.</p>
-
-<h2 id="Obter_informação_relevante_de_l10n"><span class="mw-headline">Obter informação relevante de l10n</span></h2>
-
-<h3 id="Fóruns_de_Discussão_e_Listas_de_Discussão"><span class="mw-headline">Fóruns de Discussão e Listas de Discussão</span></h3>
-
-<p>Localizers of Thunderbird should read the localization newsgroups (<a class="external" href="http://groups.google.de/group/mozilla.dev.l10n.announce" title="http://groups.google.de/group/mozilla.dev.l10n.announce">mozilla.dev.l10n.announce</a> <a class="external text" href="http://groups.google.de/group/mozilla.dev.l10n" rel="nofollow" title="http://groups.google.de/group/mozilla.dev.l10n">mozilla.dev.l10n</a>) to stay informed of Thunderbird-specific and general l10n-related items of interest to them. They are further encouraged to read the Thunderbird development newsgroup (<a class="external text" href="http://groups.google.de/group/mozilla.dev.apps.thunderbird" rel="nofollow" title="http://groups.google.de/group/mozilla.dev.apps.thunderbird">mozilla.dev.apps.thunderbird</a>) to stay informed of recent Thunderbird-related developments.</p>
-
-<p>These newsgroups can also be accessed via the <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-l10n-announce" title="https://lists.mozilla.org/listinfo/dev-l10n-announce">dev-l10n-announce@lists.mozilla.org</a>, <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-l10n" title="https://lists.mozilla.org/listinfo/dev-l10n">dev-l10n@lists.mozilla.org</a> (localization mailinglist) or <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-apps-thunderbird" title="https://lists.mozilla.org/listinfo/dev-apps-thunderbird">dev-apps-thunderbird@lists.mozilla.org</a> (Thunderbird development mailinglist) mailinglists, which mirror the newsgroups mentioned above. You can subscribe to or unsubscribe from these mailinglists via the web interface at <a class="link-https" href="https://lists.mozilla.org/listinfo" title="https://lists.mozilla.org/listinfo">lists.mozilla.org</a>.</p>
-
-<h3 id="Bugzilla"><span class="mw-headline">Bugzilla </span></h3>
-
-<p>Localizers should watch the <a class="link-mailto" href="mailto:thunderbird@localization.bugs" rel="freelink">thunderbird@localization.bugs</a> mail address (or its alias :tb-l10n) to stay current on bugs that might affect Thunderbird localizers. This can be done by adding this mail address to the "User Watching" section of your <a class="link-https" href="https://bugzilla.mozilla.org/userprefs.cgi?tab=email" title="https://bugzilla.mozilla.org/userprefs.cgi?tab=email">Email preferences in bugzilla</a>.</p>
-
-<h3 id="Algumas_hiperligações_úteis"><span class="mw-headline">Algumas hiperligações úteis</span></h3>
-
-<ul>
- <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?product=MailNews+Core&amp;product=Thunderbird&amp;keywords_type=allwords&amp;keywords=l12y&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?product=MailNews+Core&amp;product=Thunderbird&amp;keywords_type=allwords&amp;keywords=l12y&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED">Open bugs with the l12y (localizability) keyword</a></li>
- <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?product=MailNews+Core&amp;product=Thunderbird&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;emailcc1=1&amp;emailtype1=exact&amp;email1=thunderbird@localization.bugs" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?product=MailNews+Core&amp;product=Thunderbird&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;emailcc1=1&amp;emailtype1=exact&amp;email1=thunderbird%40localization.bugs">Open bugs which need localizer attention (thunderbird@localization.bugs has been CC'ed on that bug)</a></li>
-</ul>
-
-<h2 id="Tiers_de_Idioma"><span class="mw-headline"><em>Tiers</em> de Idioma</span></h2>
-
-<p>Locale tiers reflect locales that we need to have in a good state for release. There are 10 locales in tier 1, which are the most important for Thunderbird, because of their number of Thunderbird users or potential for growth.</p>
-
-<p>These locales are being treated as first-class citizens, as important as en-US, which is to say that any Tier 1 locale that does not meet the requirements may block a final release of Thunderbird.</p>
-
-<h3 id="Tier_1"><span class="mw-headline"><em>Tier </em>1 </span></h3>
-
-<p>The following are P1 (priority 1) locales in order of priority:</p>
-
-<pre>* de - alemão
-* fr - francês
-* ja, ja-JP-mac - japonês
-* en-GB - inglês (UK)
-* es-ES - espanhol (continente Europeu)
-* it - italiano
-* pl - polaco
-* ru - russo
-* nl - holandês
-* pt-BR - português (Brasil)
-</pre>
-
-<h3 id="Tier_2"><span class="mw-headline"><em>Tier</em> 2 </span></h3>
-
-<p>Todas as outras localidades suportadas que estão na categoria do <em>Tier </em>2.</p>
diff --git a/files/pt-pt/mozilla/tech/index.html b/files/pt-pt/mozilla/tech/index.html
deleted file mode 100644
index 36bcd94c3a..0000000000
--- a/files/pt-pt/mozilla/tech/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Tecnologias da Mozilla
-slug: Mozilla/Tech
-tags:
- - Landing
- - Mozilla
- - Referencia
- - TopicStub
- - XUL
-translation_of: Mozilla/Tech
----
-<p>A Mozilla tem várias tecnologias, utilizadas como componentes dos seus projetos. Estas estão documentadas aqui.</p>
-
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/pt-pt/mozilla/tech/places/index.html b/files/pt-pt/mozilla/tech/places/index.html
deleted file mode 100644
index 18e2e0cd95..0000000000
--- a/files/pt-pt/mozilla/tech/places/index.html
+++ /dev/null
@@ -1,75 +0,0 @@
----
-title: Places
-slug: Mozilla/Tech/Places
-tags:
- - Desenvolvimento da Mozilla
- - Extensões
- - Extras
- - Places
-translation_of: Mozilla/Tech/Places
----
-<p>{{ Fx_minversion_header(3) }}</p>
-
-<p><strong>Places</strong> é o sistema de gestão de marcadores e histórico introduzido no Firefox 3. It offers increased flexibility and complex querying to make handling the places the user goes easier and more convenient. It also includes new features including favicon storage and the ability to annotate pages with arbitrary information. It also introduces new user interfaces for managing all this information; see {{ interwiki('wikimo', 'Places', 'Places on the Mozilla wiki') }}.</p>
-
-<p>Places armazena os seus dados numa base de dados <a class="external" href="http://sqlite.org/">SQLite</a>, utilizando as interfaces de <a href="/pt-PT/docs/Mozilla/Tech/XPCOM/Armazenamento" title="Storage">mozStorage</a>.</p>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documentation" name="Documentation">Documentação</h2>
-
- <dl>
- <dt><a href="/en-US/docs/Places_Developer_Guide" title="Places_Developer_Guide">Places migration guide</a></dt>
- <dd>Migrating existing code to use the Places API.</dd>
- <dt><a href="/en-US/docs/Manipulating_bookmarks_using_Places" title="Manipulating_bookmarks_using_Places">Manipulating bookmarks using Places</a></dt>
- <dd>Examples for how to work with bookmarks using the Places API.</dd>
- <dt><a href="/en-US/docs/Using_the_Places_tagging_service" title="Using_the_Places_tagging_service">Using the Places tagging service</a></dt>
- <dd>How to use the tagging service.</dd>
- <dt><a href="/en-US/docs/Using_the_Places_history_service" title="Using_the_Places_history_service">Using the Places history service</a></dt>
- <dd>How to access history information using the Places API.</dd>
- <dt><a href="/en-US/docs/Using_the_Places_favicon_service" title="Using_the_Places_favicon_service">Using the Places favicon service</a></dt>
- <dd>How to manipulate favicons using the Places API.</dd>
- <dt><a href="/en-US/docs/Using_the_Places_livemark_service" title="Using_the_Places_livemark_service">Using the Places livemark service</a></dt>
- <dd>How to create and manage livemarks.</dd>
- <dt><a href="/en-US/docs/Using_the_Places_annotation_service" title="Using_the_Places_annotation_service">Using the Places annotation service</a></dt>
- <dd>How to work with the annotation service.</dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/Places/Using_the_Places_keywords_API">Using the Places keywords API</a></dt>
- <dd>How to manage Places keywords</dd>
- </dl>
-
- <dl>
- <dt><a href="/en-US/docs/Querying_Places" title="Querying_Places">Querying Places</a></dt>
- <dd>How to query the bookmarks and history system with specific parameters.</dd>
- <dt><a href="/en-US/docs/Retrieving_part_of_the_bookmarks_tree" title="Retrieving_part_of_the_bookmarks_tree">Retrieving part of the bookmarks tree</a></dt>
- <dd>How to fetch a section of the bookmarks tree using queries.</dd>
- <dt><a href="/en-US/docs/Displaying_Places_information_using_views" title="Displaying_Places_information_using_views">Displaying Places information using views</a></dt>
- <dd>How to use Places views to display Places data in your own applications or extensions.</dd>
- <dt><a href="/en-US/docs/Places_utilities_for_JavaScript" title="Places_utilities_for_JavaScript">Places utilities for JavaScript</a></dt>
- <dd>A library of convenient routines that make it easier to work with Places.</dd>
- <dt><a href="/en-US/docs/Mozilla/Tech/Places/places.sqlite_Database_Troubleshooting">Places Database troubleshooting</a></dt>
- <dd>How to deal with a corrupt places.sqlite database.</dd>
- </dl>
-
- <p><span class="alllinks"><a href="/en-US/docs/tag/Places" title="tag/Places">View All...</a></span></p>
- </td>
- <td>
- <h2 class="Related_Topics" id="Design_documents" name="Design_documents">Design documents</h2>
-
- <dl>
- <dt><a href="/en-US/docs/The_Places_database" title="The_Places_database">The Places database</a></dt>
- <dd>High-level overview of the Places database design.</dd>
- <dt><a href="/en-US/docs/Places/History_Service_Design" title="Places/History_Service_Design">History Service Design</a></dt>
- <dd>Design of the history service.</dd>
- <dt><a href="/en-US/docs/Places/Bookmarks_Service/Design" title="Places/Bookmarks_Service/Design">Bookmark Service Design</a></dt>
- <dd>Design of the bookmarks service.</dd>
- <dt><a href="/en-US/docs/Places/Annotation_Service/Design" title="Places/Annotation_Service/Design">Annotation Service Design</a></dt>
- <dd>Design of the annotation service.</dd>
- <dt><a href="/en-US/docs/The_Places_frecency_algorithm" title="The_Places_frecency_algorithm">The Places "frecency" algorithm</a></dt>
- <dd>The algorithm behind the Places location bar (sometimes called the "awesomebar").</dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/mozilla/tech/xpcom/armazenamento/index.html b/files/pt-pt/mozilla/tech/xpcom/armazenamento/index.html
deleted file mode 100644
index 2410a763e4..0000000000
--- a/files/pt-pt/mozilla/tech/xpcom/armazenamento/index.html
+++ /dev/null
@@ -1,372 +0,0 @@
----
-title: Armazenamento
-slug: Mozilla/Tech/XPCOM/Armazenamento
-tags:
- - API de Kit de Ferramentas
- - Armazenamento
- - Guia(2)
- - Interfaces
-translation_of: Mozilla/Tech/XPCOM/Storage
----
-<p><strong>Armazenamento</strong> é uma API de base de dados <a class="external" href="http://www.sqlite.org/">SQLite</a>. Está disponível para os <em>callers </em>de confiança, ou seja, apenas extensões e componentes do Firefox.</p>
-
-<p>The API is currently "unfrozen", which means it is subject to change at any time; in fact, it has changed somewhat with each release of Firefox since it was introduced, and will likely continue to do so for a while.</p>
-
-<div class="note"><strong>Nota:</strong> Storage is not the same as the <a href="/en/DOM/Storage" title="en/DOM/Storage">DOM:Storage</a> feature which can be used by web pages to store persistent data or the <a href="/en/Session_store_API" title="en/Session_store_API">Session store API</a> (an <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> storage utility for use by extensions).</div>
-
-<h2 id="Iniciação">Iniciação</h2>
-
-<p>This document covers the Storage API and some peculiarities of SQLite. It does <em>not</em> cover SQL or "regular" SQLite. You can find some very useful links in the <a href="#See_also">See also section</a> however. For Storage API help, you can post to mozilla.dev.apps.platform on the news server news.mozilla.org. To report bugs, use <a class="link-https" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Toolkit&amp;component=Storage">Bugzilla</a>.</p>
-
-<p>The overall procedure for use is:</p>
-
-<ol>
- <li>Get the Storage service - {{ interface("mozIStorageService") }}.</li>
- <li>Open a connection to the database of your choice - {{ interface("mozIStorageConnection") }}.</li>
- <li>Create statements to execute on the connection - {{ interface("mozIStorageStatement") }}.</li>
- <li>Bind parameters to a statement as necessary.</li>
- <li>Execute the statement.</li>
- <li>Check for errors.</li>
- <li>Reset the statement.</li>
-</ol>
-
-<h2 id="Opening_a_connection" name="Opening_a_connection">Abrir uma ligação</h2>
-
-<p>JavaScript example of opening <code>my_db_file_name.sqlite</code> in the profile directory:</p>
-
-<pre class="brush: js">Components.utils.import("resource://gre/modules/Services.jsm");
-Components.utils.import("resource://gre/modules/FileUtils.jsm");
-
-let file = FileUtils.getFile("ProfD", ["my_db_file_name.sqlite"]);
-let dbConn = Services.storage.openDatabase(file); // Will also create the file if it does not exist
-</pre>
-
-<p>Likewise, the C++ would look like this:</p>
-
-<pre class="brush: cpp">nsCOMPtr&lt;nsIFile&gt; dbFile;
-rv = NS_GetSpecialDirectory(NS_APP_USER_PROFILE_50_DIR,
- getter_AddRefs(dbFile));
-NS_ENSURE_SUCCESS(rv, rv);
-rv = dbFile-&gt;Append(NS_LITERAL_STRING("my_db_file_name.sqlite"));
-NS_ENSURE_SUCCESS(rv, rv);
-nsCOMPtr&lt;mozIStorageService&gt; dbService =
- do_GetService(MOZ_STORAGE_SERVICE_CONTRACTID, &amp;rv);
-NS_ENSURE_SUCCESS(rv, rv);
-
-nsCOMPtr&lt;mozIStorageConnection&gt; dbConn;
-rv = dbService-&gt;OpenDatabase(dbFile, getter_AddRefs(dbConn));
-NS_ENSURE_SUCCESS(rv, rv);
-</pre>
-
-<div class="note">Note: <code>MOZ_STORAGE_SERVICE_CONTRACTID</code> is defined in {{ Source("storage/build/mozStorageCID.h") }}.</div>
-
-<p>{{ Warning("It may be tempting to give your database a name ending in '.sdb' for <strong>s</strong>qlite <strong>d</strong>ata<strong>b</strong>ase, but this is <em>not recommended.</em> This extension is treated specially by Windows as a known extension for an 'Application Compatibility Database' and changes are backed up by the system automatically as part of system restore functionality. This can result in significantly higher overhead file operation.") }}</p>
-
-<h2 id="Statements" name="Statements">Fechar uma ligação</h2>
-
-<p>To close a connection on which only synchronous transactions were performed, use the <a href="/en-US/docs/mozIStorageConnection#close()" title="/en-US/docs/mozIStorageConnection#close()"><code>mozIStorageConnection.close()</code></a> method. If you performed any asynchronous transactions, you should instead use the <a href="/en-US/docs/mozIStorageConnection#asyncClose()" title="/en-US/docs/mozIStorageConnection#asyncClose()"><code>mozIStorageConnection.asyncClose()</code></a> method. The latter will allow all ongoing transactions to complete before closing the connection, and will optionally notify you via callback when the connection is closed.</p>
-
-<h2 id="Statements" name="Statements">Statements</h2>
-
-<p>This section demonstrates how you can execute SQL statements on your database. For a complete reference see {{ interface("mozIStorageStatement") }}.</p>
-
-<h3 id="Creating_a_statement" name="Creating_a_statement">Creating a Statement</h3>
-
-<p>There are actually two ways to execute a statement. You should choose the right one based on your needs.</p>
-
-<h4 id="No_Results_to_be_Returned">No Results to be Returned</h4>
-
-<p>If you do not need to get any results back, you can use {{ ifmethod("mozIStorageConnection", "executeSimpleSQL") }} API like this in JavaScript:</p>
-
-<pre class="brush: js">dbConn.executeSimpleSQL("CREATE TEMP TABLE table_name (column_name INTEGER)");
-</pre>
-
-<p>Similarly, the C++ looks like this:</p>
-
-<pre class="brush: cpp">rv = mDBConn-&gt;ExecuteSimpleSQL(NS_LITERAL_CSTRING("CREATE TEMP TABLE table_name (column_name INTEGER)"));
-NS_ENSURE_SUCCESS(rv, rv);</pre>
-
-<h4 id="Results_to_be_Returned">Results to be Returned</h4>
-
-<p>However, if you need to get results back, you should create the statement with the {{ ifmethod("mozIStorageConnection", "createStatement") }} API like this in JavaScript:</p>
-
-<pre class="brush: js">var statement = dbConn.createStatement("SELECT * FROM table_name WHERE column_name = :parameter");
-</pre>
-
-<p>This example uses a named placeholder called "parameter" to be bound later (described in {{ anch("Binding Parameters") }}). Similarly, the C++ looks like this:</p>
-
-<pre class="brush: cpp">nsCOMPtr&lt;mozIStorageStatement&gt; statement;
-rv = dbConn-&gt;CreateStatement(NS_LITERAL_CSTRING("SELECT * FROM table_name WHERE column_name = ?1"),
- getter_AddRefs(statement));
-NS_ENSURE_SUCCESS(rv, rv);
-</pre>
-
-<p>This example uses the numbered placeholder indexed by zero for a parameter to be bound later (described in {{ anch("Binding Parameters") }}).</p>
-
-<p>{{ Note("Numerical indexes for parameters are always one less than the number you write in the SQL. The use of numerical indexes for parameters is strongly discouraged in JavaScript where named parameters are much easier to use.") }}</p>
-
-<p>{{ Note("If you need to execute a statement multiple times, caching the result of createStatement will give you a noticeable performance improvement because the SQL query does not need to be parsed each time.") }}</p>
-
-<h3 id="Binding_parameters" name="Binding_parameters">Binding Parameters</h3>
-
-<p>In order to effectively use the statements that you create, you have to bind values to the parameters you placed in the statement. A given placeholder can appear multiple times in the same statement, and all instances of it will be replaced with the bound value. If you neglect to bind a value to a parameter, it will be interpreted as <code>NULL</code>.</p>
-
-<div class="warning">You should never try to construct SQL statements on the fly with values inserted in them. By binding the parameters, you prevent possible SQL injection attacks since a bound parameter can never be executed as SQL.</div>
-
-<h4 id="Binding_One_Set_of_Parameters">Binding One Set of Parameters</h4>
-
-<p>If you only have one row to insert, or are using the synchronous API you'll need to use this method. In JavaScript, there is a useful helper object ({{ interface("mozIStorageStatementParams") }}) available ({{ gecko_minversion_inline("1.9.1") }}) that makes binding parameters much easier:</p>
-
-<pre class="brush: js">var statement = dbConn.createStatement("SELECT * FROM table_name WHERE id = :row_id");
-statement.params.row_id = 1234;
-</pre>
-
-<p>Use :boundParameterName the same way for numeric and non-numeric columns. Do not put the :boundParameterName within apostrophes, because that the binding mechanism does that for you. You can still use this helper object by manually creating the statement wrapper, {{ interface("mozIStorageStatementWrapper") }}, which is provided in Gecko 1.9.1 and later.</p>
-
-<p>Using named parameters in C++ is a lot more difficult, so it's generally accepted to use numerical placeholders instead. The example below uses {{ ifmethod("mozIStorageStatement", "bindInt32Parameter") }}.<code><span style="font-family: Verdana,Tahoma,sans-serif;"> The full list of </span></code>binding functions can be found with the {{ interface("mozIStorageStatement") }} documentation.</p>
-
-<p>C++ example:</p>
-
-<pre class="brush: cpp">nsCOMPtr&lt;mozIStorageStatement&gt; statement;
-rv = mDBConn-&gt;CreateStatement(NS_LITERAL_CSTRING("SELECT * FROM table_name WHERE id = ?1"),
- getter_AddRefs(statement));
-NS_ENSURE_SUCCESS(rv, rv);
-
-rv = statement-&gt;BindInt32Parameter(0, 1234);
-NS_ENSURE_SUCCESS(rv, rv);
-</pre>
-
-<p>{{ Note("Numerical indexes for parameters are always one less than the number you write in the SQL. The use of numerical indexes for parameters is strongly discouraged in JavaScript where named parameters are much easier to use.") }}</p>
-
-<h4 id="Binding_Multiple_Sets_of_Parameters">Binding Multiple Sets of Parameters</h4>
-
-<p>{{ gecko_minversion_header("1.9.2") }}</p>
-
-<p>Starting in Gecko 1.9.2 (Firefox 3.6), there's a new, more convenient way to bind multiple sets of parameters at once prior to executing your statement asynchronously. This API is only available for asynchronous execution.</p>
-
-<pre class="brush: js">let stmt = dbConn.createStatement("INSERT INTO table_name (value) VALUES(:value)");
-let params = stmt.newBindingParamsArray();
-for (let i = 0; i &lt; 10; i++) {
- let bp = params.newBindingParams();
- bp.bindByName("value", i);
- params.addParams(bp);
-}
-stmt.bindParameters(params);
-</pre>
-
-<p>You can attach multiple sets of bindings to a statement by adding multiple {{ interface("mozIStorageBindingParams") }} objects to the array of parameter lists, adding each one through calls to the {{ ifmethod("mozIStorageBindingParamsArray", "addParams") }}. Once all the parameters are set up, a single call to {{ ifmethod("mozIStorageStatement", "bindParameters") }} will ensure that the parameters are bound before execution. You can then <a href="/en/Storage#Asynchronously" title="en/Storage#Asynchronously">execute the statement asynchronously</a>, and the statement will get each set of bindings bound to it before execution asynchronously.</p>
-
-<h3 id="Executing_a_statement" name="Executing_a_statement">Executing a Statement</h3>
-
-<p>You may execute statements either synchronously (which is supported in Firefox Gecko 1.8 and 1.9) or asynchronously (starting in Gecko 1.9.1). If your code needs to work with applications based on Gecko 1.8 or 1.9, you should the technique covered in the section {{ anch("Synchronously") }} below. Otherwise, it's strongly recommended that you use asynchronous execution, for performance reasons.</p>
-
-<h4 id="Asynchronously">Asynchronously</h4>
-
-<p>{{ gecko_minversion_header("1.9.1") }}</p>
-
-<p>Gecko 1.9.1 introduced support for asynchronous execution of a statement by calling {{ ifmethod("mozIStorageStatement", "executeAsync") }} on the statement. Multiple statements can be executed in a transaction by calling {{ ifmethod("mozIStorageConnection", "executeAsync") }} on the connection and passing in an array of statements. Both of these methods have similar signatures that accept an object as input that receives notifications the execution of the statement(s). A C++ example is omitted here because it would be verbose, but real-world code can be found in the Mozilla source tree ({{ lxrsearch("ident", "i", "mozIStorageStatementCallback") }}).</p>
-
-<p>After you create and bind a statement, your JavaScript should look something like this to execute a statement asynchronously:</p>
-
-<pre class="brush: js">statement.executeAsync({
- handleResult: function(aResultSet) {
- for (let row = aResultSet.getNextRow();
- row;
- row = aResultSet.getNextRow()) {
-
- let value = row.getResultByName("column_name");
- }
- },
-
- handleError: function(aError) {
- print("Error: " + aError.message);
- },
-
- handleCompletion: function(aReason) {
- if (aReason != Components.interfaces.mozIStorageStatementCallback.REASON_FINISHED)
- print("Query canceled or aborted!");
- }
-});
-</pre>
-
-<p>The call to <code>executeAsync</code> takes an object that implements <a href="/en-US/docs/MozIStorageStatementCallback" title="/en-US/docs/MozIStorageStatementCallback">mozIStorageStatementCallback</a>. See its documentation for more details on each method. The callback is optional, however, so if you do not want to receive feedback, you can pass nothing.</p>
-
-<h4 id="Synchronously">Synchronously</h4>
-
-<p>If you are OK with the possibility of locking up your user interface, or if you are running on a background thread, you can use {{ ifmethod("mozIStorageStatement", "executeStep") }}. This function allows you to enumerate all the results produced by the statement.</p>
-
-<p>As you step through each row, you can obtain each parameter by name through a helper object ({{ interface("mozIStorageStatementRow") }}) in JavaScript ( {{ gecko_minversion_inline("1.9.1") }}) like so:</p>
-
-<pre class="brush: js">while (statement.executeStep()) {
- let value = statement.row.column_name;
-}
-</pre>
-
-<p>You can create this helper object yourself if it's not available in your version of Gecko. See {{ interface("mozIStorageStatementWrapper") }} for details.</p>
-
-<p>In C++, the code would look something like this:</p>
-
-<pre class="brush: cpp">bool hasMoreData;
-while (NS_SUCCEEDED(statement-&gt;ExecuteStep(&amp;hasMoreData)) &amp;&amp; hasMoreData) {
- PRInt32 value;
- rv = statement-&gt;GetInt32(0, &amp;value);
- NS_ENSURE_SUCCESS(rv, rv);
-}
-</pre>
-
-<p>You can obtain other types of data by using the various methods available on {{ interface("mozIStorageValueArray") }}.</p>
-
-<p>Alternatively, if you do not expect any results but still need to execute a bound statement, you can simply call {{ ifmethod("mozIStorageStatement", "execute") }}. This is equivalent to calling {{ ifmethod("mozIStorageStatement", "executeStep") }} and then {{ ifmethod("mozIStorageStatement", "reset") }}.</p>
-
-<h3 id="Resetting_a_Statement">Resetting a Statement</h3>
-
-<p>When you execute a statement synchronously, it is important to make sure you reset your statement. You can accomplish this by calling {{ ifmethod("mozIStorageStatement", "reset") }} on the statement. If you end up finalizing the statement (see {{ ifmethod("mozIStorageStatement", "finalize") }}) you do not need to worry about calling {{ ifmethod("mozIStorageStatement", "reset") }}. You should do this before you reuse the statement.</p>
-
-<p>{{ Warning("If you fail to reset a write statement, it will continue to hold a lock on the database preventing future writes or reads. Additionally, if you fail to reset a read statement, it will prevent any future writes to the database.") }}</p>
-
-<p>In JavaScript, the language makes it pretty easy to ensure that you always reset a statement. Be aware that you should always reset even if an exception is thrown, so your code should look something like this:</p>
-
-<pre class="brush: js">var statement = dbConn.createStatement("SELECT * FROM table_name");
-try {
- while (statement.step()) {
- // Use the results...
- }
-}
-finally {
- statement.reset();
-}
-</pre>
-
-<p>In C++, Storage provides a helper object in {{ Source("storage/public/mozStorageHelper.h") }}, <code>mozStorageStatementScoper</code>, which ensures that the statement object is reset when the object falls out of scope. Of course, if your statement is local only to the function, you do not have to worry about calling reset since the object will be destroyed.</p>
-
-<pre class="brush: cpp">nsresult
-myClass::myFunction()
-{
- // mSpecialStatement is a member variable of the class that contains a statement.
- mozStorageStatementScoper scoper(mSpecialStatement);
- // You can use mSpecialStatement without concern now.
-
- nsCOMPtr&lt;mozIStorageStatement&gt; statement;
- // mDBConn is a database connection that is stored a member variable of the class.
- nsresult rv = mDBConn-&gt;CreateStatement(NS_LITERAL_CSTRING("DELETE FROM table_name"),
- getter_AddRefs(statement));
- NS_ENSURE_SUCCESS(rv, rv);
- return statement-&gt;Execute();
- // Once this function returns, mSpecialStatement will be reset, and statement will
- // be destroyed.
-}
-</pre>
-
-<p>{{ Note("Calling reset is not an expensive operation, and nothing bad happens if you call reset more than once.") }}</p>
-
-<h2 id="Transactions" name="Transactions">Transações</h2>
-
-<p>Transactions can be used to either improve performance, or group statements together as an atomic operation. In both cases, you execute more than one statement inside of a transaction.</p>
-
-<p>In JavaScript, managing transactions can be difficult when you are using the same connection on different threads, or are using a combination of asynchronous and synchronous statement execution. The best way to deal with this is to only execute your statements asynchronously using {{ ifmethod("mozIStorageConnection", "executeAsync") }}. This method will manage the transactions for you, so you don't have to worry about them.</p>
-
-<p>{{ Note("The database engine does not support nested transactions, so attempting to start a transaction when one is already active will throw an exception.") }}</p>
-
-<p>Transactions can be started with {{ ifmethod("mozIStorageConnection", "beginTransaction") }} or {{ ifmethod("mozIStorageConnection", "beginTransactionAs") }}. The latter takes one of three constants to describe the type of transaction:</p>
-
-<ul>
- <li><code><a href="https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/mozIStorageConnection#TRANSACTION_DEFERRED">mozIStorageConnection.TRANSACTION_DEFERRED</a></code></li>
- <li><code><a href="https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/mozIStorageConnection#TRANSACTION_IMMEDIATE">mozIStorageConnection.TRANSACTION_IMMEDIATE</a></code></li>
- <li><code><a href="https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/mozIStorageConnection#TRANSACTION_EXCLUSIVE">mozIStorageConnection.TRANSACTION_EXCLUSIVE</a></code></li>
-</ul>
-
-<p>{{ ifmethod("mozIStorageConnection", "beginTransaction") }} is equivalent to calling {{ ifmethod("mozIStorageConnection", "beginTransactionAs") }} and passing <code><a href="https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/mozIStorageConnection#TRANSACTION_DEFERRED">mozIStorageConnection.TRANSACTION_DEFERRED</a></code> In general, this is the method you want to use.</p>
-
-<p>Once you start a transaction, you can either commit the changes by calling {{ ifmethod("mozIStorageConnection", "commitTransaction") }}, or rollback the changes by calling {{ ifmethod("mozIStorageConnection", "rollbackTransaction") }}.</p>
-
-<p>In C++ code, there is a helper class defined in {{ Source("storage/public/mozStorageHelper.h") }}, <code>mozStorageTransaction</code>, that will attempt to get a transaction for you, and handle it appropriately when it falls out of scope. If a transaction is already in progress, no transaction is obtained. If your function returns without calling <code>Commit</code> on the helper object, the transaction will be rolled back.</p>
-
-<pre class="brush: cpp">nsresult
-myClass::myFunction()
-{
- // mDBConn is a member variable of our mozIStorageConnection.
- mozStorageTransaction transaction(mDBConn);
-
- // Execute some statements. If we encounter an error, the transaction will
- // be rolled back.
-
- return transaction.Commit();
-}
-</pre>
-
-<h2 id="Colação_(ordenação)">Colação (ordenação)</h2>
-
-<p>SQLite provides several collation methods (<code>BINARY</code>, <code>NOCASE</code>, and <code>RTRIM</code>), but these are all very simple and have no support for various text encodings or the user's locale.</p>
-
-<p>{{ gecko_minversion_header("1.9.2") }}</p>
-
-<p>{{ Gecko("1.9.2") }} added support for several new collation methods:</p>
-
-<dl>
- <dt><code>locale</code></dt>
- <dd>Case- and accent-insensitive collation.</dd>
- <dt><code>locale_case_sensitive</code></dt>
- <dd>Case-sensitive, accent-insensitive collation.</dd>
- <dt><code>locale_accent_sensitive</code></dt>
- <dd>Case-insensitive, accent-sensitive collation.</dd>
- <dt><code>locale_case_accent_sensitive</code></dt>
- <dd>Case- and accent-sensitive collation.</dd>
-</dl>
-
-<p>You can use them quite simply in your <code>SELECT</code> queries, like this:</p>
-
-<pre>var stmt = aConn.createStatement("SELECT * FROM foo ORDER BY name COLLATE locale ASC");
-var results = [];
-
-while (stmt.executeStep()) {
- results.push(stmt.row.t);
-}
-stmt.finalize();
-</pre>
-
-<h2 id="How_to_corrupt_your_database" name="How_to_corrupt_your_database">How to Corrupt a Database</h2>
-
-<p>SQLite is very good about maintaining database integrity, but there are a few things you can do that can lead to database corruption. You can find out more by reading <a class="external" href="http://www.sqlite.org/lockingv3.html" title="http://www.sqlite.org/lockingv3.html">SQLite's documentation on this</a>. These are a few simple things you can <strong>avoid </strong>to help make sure this doesn't happen:</p>
-
-<ul>
- <li>Open more than one connection to the same file with names that aren't exactly the same as determined by <code>strcmp</code>. This includes "my.db" and "../dir/my.db" or, on Windows (case-insensitive) "my.db" and "My.db". Sqlite tries to handle many of these cases, but you shouldn't count on it.</li>
-</ul>
-
-<ul>
- <li>Access a database from a symbolic or hard link.</li>
-</ul>
-
-<ul>
- <li>Access a statement from more than one thread (discussed in {{ Anch("Thread safety") }}).</li>
-</ul>
-
-<ul>
- <li>Call {{ ifmethod("mozIStorageService", "backupDatabaseFile") }} on a locked database, assuming this will leave your database locked. Due to {{ bug(626193) }}, locked databases get unlocked when you call this.</li>
-</ul>
-
-<h2 id="Thread_safety" name="Thread_safety">Thread Safety</h2>
-
-<p>{{ interface("mozIStorageService") }} and {{ interface("mozIStorageConnection") }} are thread safe. However, no other interface or method is, so do not use them on different threads at the same time!</p>
-
-<p>If you want to use concurrency to work on your database, you should use the asynchronous APIs provided by Storage.</p>
-
-<h2 id="See_also" name="See_also">Consultar também</h2>
-
-<ul>
- <li>{{ interface("mozIStorageConnection") }} Database connection to a specific file or in-memory data storage</li>
- <li>{{ interface("mozIStorageStatement") }} Create and execute SQL statements on a SQLite database.</li>
- <li>{{ interface("mozIStorageValueArray") }} Wraps an array of SQL values, such as a result row.</li>
- <li>{{ interface("mozIStorageFunction") }} Create a new SQLite function.</li>
- <li>{{ interface("mozIStorageAggregateFunction") }} Create a new SQLite aggregate function.</li>
- <li>{{ interface("mozIStorageProgressHandler") }} Monitor progress during the execution of a statement.</li>
- <li>{{ interface("mozIStorageStatementWrapper") }} Storage statement wrapper</li>
- <li>{{ interface("mozIStorageService") }} Storage Service</li>
-</ul>
-
-<ul>
- <li><a href="/en/Storage/Performance" title="en/Storage/Performance">Storage:Performance</a> How to get your database connection performing well.</li>
- <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/3072">Storage Inspector Extension</a> Makes it easy to view any sqlite database files in the current profile.</li>
- <li><a class="external" href="http://www.sqlite.org/lang.html">SQLite Syntax</a> Query language understood by SQLite</li>
- <li><a class="external" href="http://sqlitebrowser.sourceforge.net/">SQLite Database Browser</a> is a capable free tool available for many platforms. It can be handy for examining existing databases and testing SQL statements.</li>
- <li><a class="link-https" href="https://addons.mozilla.org/en-US/firefox/addon/5817">SQLite Manager Extension</a> helps manage sqlite database files on your computer.</li>
-</ul>
diff --git a/files/pt-pt/mozilla/tech/xpcom/guide/alterações_xpcom_gecko_2.0/index.html b/files/pt-pt/mozilla/tech/xpcom/guide/alterações_xpcom_gecko_2.0/index.html
deleted file mode 100644
index ac8d2a2583..0000000000
--- a/files/pt-pt/mozilla/tech/xpcom/guide/alterações_xpcom_gecko_2.0/index.html
+++ /dev/null
@@ -1,222 +0,0 @@
----
-title: Alterações de XPCOM no Gecko 2.0
-slug: Mozilla/Tech/XPCOM/Guide/Alterações_XPCOM_Gecko_2.0
-tags:
- - Gecko 2.0
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Guide/Changes_in_Gecko_2.0
----
-<p>{{ gecko_minversion_header("2") }}</p>
-
-<p>Várias alterações que afetam a compatibilidade do componente XPCOM estão a ser realizadas no Gecko 2. Este artigo detalha essas alterações, e proporciona sugestões sobre como atualizar o seu código.</p>
-
-<h2 id="No_more_frozen_interfaces">No more frozen interfaces</h2>
-
-<p>There are no longer any frozen interfaces; from now on, all interfaces are subject to change. Documentation will be updated as time allows to remove references to interfaces being "frozen" or "unfrozen."</p>
-
-<h2 id="Component_registration">Component registration</h2>
-
-<p>The way XPCOM components are registered changed in Gecko 2. Prior to Gecko 2, during component registration, all binary and JavaScript component files were loaded and called, asking them to register themselves. If you used <a href="/en/JavaScript_code_modules/XPCOMUtils.jsm" title="en/JavaScript code modules/XPCOMUtils.jsm">XPCOMUtils.jsm</a>, some of this was hidden from you, but it was still there.</p>
-
-<p>Starting in Gecko 2, however, components are registered using manifest files, similarly to how chrome is registered. In fact, the same <a href="/en/Chrome_Registration" title="en/chrome.manifest">chrome manifest</a> file will be used to register components.</p>
-
-<p><strong>All existing XPCOM components</strong> will need to be updated to support this. However, it's very easy to do, and you can actually support both types of registration for backward compatibility.</p>
-
-<h3 id="Component_manifests">Component manifests</h3>
-
-<p>All component registration is now handled through manifest files. For extensions, this is the same <code>chrome.manifest</code> currently used to register chrome.</p>
-
-<h3 id="XPT_files">XPT files</h3>
-
-<p>The path of any XPT files must be listed explicitly in a manifest using an <code>interfaces</code> directive:</p>
-
-<pre>interfaces components/mycomponent.xpt</pre>
-
-<h3 id="JavaScript_components">JavaScript components</h3>
-
-<p>The registration information for JavaScript components is no longer located in the component itself; instead, it's located in the manifest. The component is loaded only when the XPCOM component manager needs to create a component.</p>
-
-<p><code>chrome.manifest</code>:</p>
-
-<pre># The {classID} here must match the classID in mycomponent.js
-component {e6b866e3-41b2-4f05-a4d2-3d4bde0f7ef8} components/mycomponent.js
-contract @foobar/mycomponent;1 {e6b866e3-41b2-4f05-a4d2-3d4bde0f7ef8}
-category profile-after-change MyComponent @foobar/mycomponent;1
-</pre>
-
-<p>The JavaScript code no longer exports a <code><a href="/en/NSGetModule" title="en/NSGetModule">NSGetModule()</a></code> function. It now must export a <a href="/en/NSGetFactory" title="en/NSGetFactory"><code>NSGetFactory()</code></a> function, which accepts a class ID (CID) as a parameter.</p>
-
-<p>For example, in your component's JavaScript code :</p>
-
-<pre class="brush: js">Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
-
-function myComponent() {
-}
-myComponent.prototype = {
- // this must match whatever is in chrome.manifest!
- classID: Components.ID("{e6b866e3-41b2-4f05-a4d2-3d4bde0f7ef8}"),
-
- QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIMyComponent]),
-
- /* nsIMyComponent implementation goes here */
- ...
-};
-
-// The following line is what XPCOM uses to create components. Each component prototype
-// must have a .classID which is used to create it.
-const NSGetFactory = XPCOMUtils.generateNSGetFactory([myComponent]);
-</pre>
-
-<p>A component may implement backwards compatibility with Gecko 1.9.2 by dynamically detecting which symbols are exported by XPCOMUtils.jsm and exporting the correct function:</p>
-
-<pre class="brush: js">/**
-* XPCOMUtils.generateNSGetFactory was introduced in Mozilla 2 (Firefox 4, SeaMonkey 2.1).
-* XPCOMUtils.generateNSGetModule was introduced in Mozilla 1.9 (Firefox 3.0).
-*/
-if (XPCOMUtils.generateNSGetFactory)
- var NSGetFactory = XPCOMUtils.generateNSGetFactory([myComponent]);
-else
- var NSGetModule = XPCOMUtils.generateNSGetModule([myComponent]);</pre>
-
-<h3 id="Binary_components">Binary components</h3>
-
-<p>Binary components must be listed explicitly in a manifest using a <code>binary-component</code> directive:</p>
-
-<pre>binary-component components/mycomponent.dll
-</pre>
-
-<p>C++ in the component must be changed: a binary component no longer exports a <code><a href="/en/NSGetModule" title="en/NSGetModule">NSGetModule()</a></code> function. Instead, it exports an <a href="/en/XPCOM/NSModule" title="en/XPCOM/NSModule"><code>NSModule</code></a> data symbol which points to a <code>mozilla::Module</code> structure. For more information about the <code>mozilla::Module</code> structure, see the <a class="external" href="http://mxr.mozilla.org/mozilla-central/source/xpcom/components/Module.h" title="http://mxr.mozilla.org/mozilla-central/source/xpcom/components/Module.h">Module.h</a> header file. For an up-to-date example of implementing a dynamic modules, see <a class="external" href="http://mxr.mozilla.org/mozilla-central/source/xpcom/sample/nsSampleModule.cpp" title="http://mxr.mozilla.org/mozilla-central/source/xpcom/sample/nsSampleModule.cpp">nsSampleModule.cpp</a>.</p>
-
-<p>Note that <code>nsIGenericFactory.h</code> has been removed. References to <code>nsIGenericFactory.h</code> should be replaced with <code>mozilla/ModuleUtils.h</code>.</p>
-
-<p>It is possible for a binary component to be compatible with Mozilla 1.9.2 and Mozilla 2.0 by using the extra macro <code>NS_IMPL_MOZILLA192_NSGETMODULE</code>. See <a class="external" href="http://mxr.mozilla.org/mozilla-central/source/xpcom/sample/nsSampleModule.cpp" title="http://mxr.mozilla.org/mozilla-central/source/xpcom/sample/nsSampleModule.cpp">nsSampleModule.cpp</a> for more details.</p>
-
-<div class="note"><strong>Note:</strong> Binary XPCOM components <em>must</em> be recompiled for every new major release of Firefox starting with Firefox 4. Your life would be much easier over the long term if you switch to using <a href="/en/js-ctypes" title="https://developer.mozilla.org/en/js-ctypes">js-ctypes</a> instead.</div>
-
-<p>Also note that extensions using binary components must now use the <a href="/en/Install_Manifests#unpack" title="https://developer.mozilla.org/en/Install_Manifests#unpack">unpack</a> property in the install manifest.</p>
-
-<h3 id="Platform-specific_directories">Platform-specific directories</h3>
-
-<p>The component/chrome system used to look in platform-specific subdirectories of an extension, such as <code>platform/WINNT_x86-msvc/chrome.manifest</code> on Windows. This is no longer supported. You can use the <a href="/en/Chrome_Registration#os" title="en/chrome registration#os">OS</a> and <a href="/en/Chrome_Registration#abi" title="en/chrome registration#abi">ABI</a> chrome registration directives to achieve the same effect:</p>
-
-<pre>binary-component components/windows/mycomponent.dll ABI=WINNT_x86-msvc
-binary-component components/mac/mycomponent.dylib ABI=Darwin_x86-gcc3
-binary-component components/mac/mycomponent64.dylib ABI=Darwin_x86_64-gcc3
-binary-component components/linux/mycomponent.so ABI=Linux_x86-gcc3
-</pre>
-
-<p>This also means that platform-specific preferences are no longer possible. If you need to adjust default preferences based on platform, you can do so at first run by looking up what platform you're on and changing the preferences at that time.</p>
-
-<h2 id="Category_registration">Category registration</h2>
-
-<p>Prior to Gecko 2, extensions could listen for the <code>xpcom-startup</code> and <code>app-startup</code> <a href="/en/Observer_Notifications" title="en/Observer Notifications">notifications</a> during startup, and perform actions during those. This is no longer the case. The earliest startup notification extensions can receive now is <code>profile-after-change</code>, which has always been the recommended notification to observe. That's because it's among the earliest notifications that occurs after the profile folder (and therefore preferences and other services) is available.</p>
-
-<h3 id="What_you_need_to_change">What you need to change</h3>
-
-<p>If your extension currently observes either <code>xpcom-startup</code> or <code>app-startup</code>, you need to update your code to observe <code>profile-after-change</code> instead.</p>
-
-<p>Typically, extensions observed <code>app-startup</code> because in the past, you needed to load for <code>app-startup</code> in order to be able to register to observe <code>profile-after-change</code> in the first place. As of {{ gecko("1.9.1") }}, this is no longer the case, however; you can now register for <code>profile-after-change</code> using the Category Manager. See <a href="/en/XPCOM/Receiving_startup_notifications" title="en/XPCOM/Receiving startup notifications">Receiving startup notifications</a> for details.</p>
-
-<p>To add a category entry, you must insert the following line to your chrome.manifest:</p>
-
-<pre>category profile-after-change MyComponent @foobar/mycomponent;1
-</pre>
-
-<div class="warning"><strong>Important</strong>: Formerly, the contract id of the category entry was prefixed with "<code>service,"</code> if the component was implemented as a service. This prefix needs to be dropped when migrating to chrome.manifest.</div>
-
-<h3 id="Changed_category_names">Changed category names</h3>
-
-<p>The XPCOM category manager is used to register certain global helper objects. Because chrome.manifest is a space-delimited format, category names with spaces cannot be registered. Therefore the following categories have changed:</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Old name</th>
- <th scope="col">New name</th>
- </tr>
- <tr>
- <td><code>JavaScript global constructor</code></td>
- <td><code>JavaScript-global-constructor</code></td>
- </tr>
- <tr>
- <td><code>JavaScript global constructor prototype alias</code></td>
- <td><code>JavaScript-global-constructor-prototype-alias</code></td>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>JavaScript global property</code></td>
- <td><code>JavaScript-global-property</code></td>
- </tr>
- <tr>
- <td><code>JavaScript global privileged property</code></td>
- <td><code>JavaScript-global-privileged-property</code></td>
- </tr>
- <tr>
- <td><code>JavaScript global static nameset</code></td>
- <td><code>JavaScript-global-static-nameset</code></td>
- </tr>
- <tr>
- <td><code>JavaScript global dynamic nameset</code></td>
- <td><code>JavaScript-global-dynamic-nameset</code></td>
- </tr>
- <tr>
- <td><code>JavaScript DOM class</code></td>
- <td><code>JavaScript-DOM-class</code></td>
- </tr>
- <tr>
- <td><code>JavaScript DOM interface</code></td>
- <td><code>JavaScript-DOM-interface</code></td>
- </tr>
- <tr>
- <td><code>XSLT extension functions</code></td>
- <td><code>XSLT-extension-functions</code></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="But_why">But why?</h3>
-
-<p>Previously, whenever Gecko detected that the application version had changed, or one or more extensions was added, removed, enabled, or disabled, it was necessary to throw away all existing component registrations, then restart the application (what we call the "Extension Manager restart") during its startup process. This was necessary in order to ensure that any components that should no longer be available are disposed of properly, and to re-register everything, loading any new components that may be needed.</p>
-
-<p>In theory, this is invisible to the user, but it's a costly process, since every component needs to be loaded and executed, then unloaded, then reloaded again during the restart.</p>
-
-<p>On top of that, with the ongoing work to make Firefox multithreaded, content processes either need to register components on a per-process basis, or somehow share a component cache with the chrome process.</p>
-
-<p>The changes to the component registration model let this so-called Extension Manager restart become a thing of the past. Instead of relying on a potentially stale component cache on startup, we read the application's component registrations out of its manifest file and load those components. This gets enough of XPCOM loaded and running that we can then load the Extension Manager and perform the necessary installing, uninstalling, and updating of any installed extensions.</p>
-
-<p>Once that's done, the extensions can then be loaded by simply reading their manifests, loading their components, and continuing the startup process, all without having to restart the browser.</p>
-
-<p>Electrolysis content processes can simply read the component registrations during startup.</p>
-
-<h2 id="XPCNativeWrapper_changes">XPCNativeWrapper changes</h2>
-
-<h3 id="You_can't_disable_XPCNativeWrappers_from_your_manifest">You can't disable XPCNativeWrappers from your manifest</h3>
-
-<p>Specifying <code>xpcnativewrappers=no</code> in your manifest (that is, XPCNativeWrapper automation) is no longer supported. This was always intended to be a short-term workaround to allow extensions to continue to work while their authors updated their code to use XPCNativeWrappers.</p>
-
-<p>If your add-on depends upon XBL bindings attached to content objects—for example, the ability to call functions or get and set properties created by the XBL binding—you will need to use the XPCNativeWrapper property <code>wrappedJSObject</code> to access wrapped objects.</p>
-
-<p>If you need to be able to call functions or access properties defined by web content, you'll need to do this as well. This may be the case if, for example, you've written an extension that adds a delete button to a web mail service, and the service defines a <code>window.delete()</code> function that you need to call.</p>
-
-<p>If, on the other hand, all you're doing with content is accessing DOM methods and properties, you've never needed to be using <code>xpcnativewrappers=no</code> in the first place, and should simply remove it from your manifest.</p>
-
-<h3 id="Miscellaneous_XPCNativeWrapper_changes">Miscellaneous XPCNativeWrapper changes</h3>
-
-<ul>
- <li>Using the <a href="../../../../en/JavaScript/Reference/Operators/Special_Operators/delete_Operator" rel="internal"><code>delete</code></a> operator on "expando" properties of an XPCNativeWrapper no longer throws a security exception.</li>
-</ul>
-
-<h2 id="XPCOMUtils.jsm_changes">XPCOMUtils.jsm changes</h2>
-
-<p>The <a href="/en/JavaScript_code_modules/XPCOMUtils.jsm" title="en/JavaScript/Code modules/XPCOMUtils.jsm"><code>XPCOMUtils.jsm</code></a> code module has been updated to let you specify the application IDs of the applications you wish to register your component in.</p>
-
-<h2 id="XPCOM_service_getters">XPCOM service getters</h2>
-
-<p>A number of commonly used XPCOM services now have service getter functions available in the <a href="/en/XPCOM/mozilla::services_namespace" title="en/XPCOM/mozilla::services namespace">mozilla::services namespace</a>; these make it much easier to get access to these services from C++ code.</p>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a class="external" href="http://blog.mozilla.com/addons/2010/06/14/multiple-breaking-changes-are-coming-for-components-in-extensions/" title="http://blog.mozilla.com/addons/2010/06/14/multiple-breaking-changes-are-coming-for-components-in-extensions/">Multiple breaking changes are coming for components in extensions</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/tech/xpcom/guide/index.html b/files/pt-pt/mozilla/tech/xpcom/guide/index.html
deleted file mode 100644
index 63fcce03c0..0000000000
--- a/files/pt-pt/mozilla/tech/xpcom/guide/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: XPCOM guide
-slug: Mozilla/Tech/XPCOM/Guide
-tags:
- - Add-ons
- - Extensions
- - Guide
- - Landing
- - Mozilla
- - NeedsTranslation
- - TopicStub
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Guide
----
-<p><span class="seoSummary">These articles provide tutorials and usage documentation for XPCOM, including how to use it in your own projects and how to build XPCOM components for your Firefox add-ons and the like.</span></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>
-
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/pt-pt/mozilla/tech/xpcom/index.html b/files/pt-pt/mozilla/tech/xpcom/index.html
deleted file mode 100644
index 4aad9d4fe0..0000000000
--- a/files/pt-pt/mozilla/tech/xpcom/index.html
+++ /dev/null
@@ -1,52 +0,0 @@
----
-title: XPCOM
-slug: Mozilla/Tech/XPCOM
-tags:
- - Add-ons
- - Extensions
- - Extensões
- - Extras
- - Landing
- - Mozilla
- - NeedsTranslation
- - Precisa de Tradução
- - TopicStub
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM
----
-<p><span class="seoSummary"><strong>XPCOM</strong> é um modelo de objeto componente de plataforma cruzada, similar a Microsoft COM. Este tem múltiplas <a href="/en-US/docs/XPCOM/Language_Bindings" title="XPCOM/Language_Bindings">ligações de l</a>inguagem, permitindo que os componentes XPCOM sejam utilizados e implementados no Java, JavaScript e Python, além das interfaces em C++.</span> As interfaces no XPCOM são definidas num dialeto de IDL, nomeado de <a href="/en-US/docs/XPIDL" title="XPIDL">XPIDL</a>.</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>
-
-<p>XPCOM itself provides a set of core components and classes, e.g. file and memory management, threads, basic data structures (strings, arrays, variants), etc. The majority of XPCOM components are not part of this core set and are provided by other parts of the platform (e.g. <a href="/en-US/docs/Gecko" title="Gecko">Gecko</a> or <a href="/en-US/docs/Necko" title="Necko">Necko</a>) or by an application or even by an extension.</p>
-
-<div class="row topicpage-table">
- <div class="section"><dl><dl><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Accessing_the_Windows_Registry_Using_XPCOm">Accessing the Windows Registry Using XPCOM</a></dt><dd class="landingPageList">When implementing Windows-specific functionality, it is often useful to access the Windows registry for information about the environment or other installed programs. To this end, there exist <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> interfaces to read and write registry data. This article will show you how to use the available interfaces in several Mozilla products.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Aggregating_the_In-Memory_Datasource">Aggregating the In-Memory Datasource</a></dt><dd class="landingPageList"></dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/already_AddRefed">already_AddRefed</a></dt><dd class="landingPageList"><code>already_AddRefed</code> in association with <code><a href="/en-US/docs/NsCOMPtr">nsCOMPtr</a></code> allows you to assign in a pointer <strong>without</strong> <code>AddRef</code>ing it.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Binary_compatibility">Binary compatibility</a></dt><dd class="landingPageList">If Mozilla decides to upgrade to a compiler that does not have the same ABI as the current version, any built component may fail. It is a possiblity that is introduced when upgrading to a new compiler without recompiling everything. Effectively, it is a different platform.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Bundling_multiple_binary_components">Bundling multiple binary components</a></dt><dd class="landingPageList">Binary XPCOM components are sometimes required to implement low-level features for extensions. Since binary components are linked against a single Gecko SDK, a dependency to a particular version of Gecko is created. If the component uses only "frozen" XPCOM interfaces, there is a good chance the same binary component will work with different versions of Gecko (version 1.8 and 1.9, for example). The more likely case is that the component uses "unfrozen" interfaces and those interfaces can change between Gecko versions. This can create a difficult situation for extension developers trying to support multiple Gecko versions (Firefox 2 and 3, for example).</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Creating_a_Python_XPCOM_component">Creating a Python XPCOM component</a></dt><dd class="landingPageList"><a href="http://books.mozdev.org/html"><em>Creating Applications with Mozilla</em></a> already provides <a href="http://books.mozdev.org/html/mozilla-chp-8-sect-2.html">a tutorial</a> for making a simple JavaScript or C++ component (implementing the <code>nsISimple</code> interface). Here is how to make the same component in Python using <a href="/en-US/docs/PyXPCOM" title="PyXPCOM">PyXPCOM</a>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Fun_with_XBL_and_XPConnect">Fun With XBL and XPConnect</a></dt><dd class="landingPageList"></dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Generating_GUIDs">Generating GUIDs</a></dt><dd class="landingPageList"><strong>GUID</strong>s are used in Mozilla programming for identifying several types of entities, including XPCOM <a href="/en-US/docs/Interfaces">Interfaces</a> (this type of GUIDs is callled IID), components (CID), and legacy add-ons—like <a href="/en-US/docs/Extensions">extensions</a> and <a href="/en-US/docs/Themes">themes</a>—that were created prior to Firefox 1.5. <a href="/en-US/docs/Install_Manifests#id">Add-ons can (and should) be identified with IDs of the form <code><var>extensionname</var>@<var>organization</var>.<var>tld</var></code></a> since <a href="/en-US/docs/Firefox_1.5_for_developers">Firefox 1.5</a>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Generic_factory">Generic factory</a></dt><dd class="landingPageList">Most XPCOM factories can be very simple. Rick Potts wrote a templated-based generic factory (nsFactory&lt;t&gt;) that simplifies the factory creation process that just requires writing a CreateInstance() method. The new nsIGenericFactory interface takes this a step further, by providing a single interface that can be reused anytime a simple implementation of nsIFactory is needed. Here is the interface, and a description of its use.&lt;/t&gt;</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/How_to_build_a_binary_XPCOM_component_using_Visual_Studio">How to build a binary XPCOM component using Visual Studio</a></dt><dd class="landingPageList">This is a simple tutorial for building XPCOM objects in C++ using Visual Studio. XPCOM is Mozilla’s cross platform component object model, similar to Microsoft’s COM technology. XPCOM components can be implemented in C, C++, and JavaScript, and can be used from C, C++, and JavaScript. That means you can call JavaScript methods from C++ and vice versa. For more information on the workings of XPCOM look <a href="en/XPCOM">elsewhere</a>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/How_to_pass_an_XPCOM_object_to_a_new_window">How To Pass an XPCOM Object to a New Window</a></dt><dd class="landingPageList">If you want to be able to call functions within an XPCOM object from a XUL window's code, you can do so if you pass the XPCOM object as one of the arguments to the window creation method.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Interfacing_with_the_XPCOM_cycle_collector">Interfacing with the XPCOM cycle collector</a></dt><dd class="landingPageList">This is a quick overview of the cycle collector introduced into XPCOM for Firefox 3, including a description of the steps involved in modifying an existing C++ class to participate in XPCOM cycle collection. If you have a class that you think is involved in a cyclical-ownership leak, this page is for you.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Introduction_to_XPCOM_for_the_DOM">Introduction to XPCOM for the DOM</a></dt><dd class="landingPageList">Warning: this document has not yet been reviewed by the DOM gurus, it might contain some errors.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Language_Bindings">Language bindings</a></dt><dd class="landingPageList">An <strong>XPCOM Language Binding</strong> is a bridge between a particular language and <a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> to provide access to XPCOM objects from that language, and to let modules written in that language be used as XPCOM objects by all other languages for which there are XPCOM bindings.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Monitoring_HTTP_activity">Monitoring HTTP activity</a></dt><dd class="landingPageList">Gecko includes the <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIHttpActivityObserver" title="">nsIHttpActivityObserver</a></code> interface, which you can implement in your code to monitor <a href="/en/HTTP" title="en/HTTP">HTTP</a> transactions in real time, receiving a callback as the transactions take place.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/nsCOMPtr_versus_RefPtr">nsCOMPtr versus RefPtr</a></dt><dd class="landingPageList">Gecko code uses both <code>nsCOMPtr</code> and <code>RefPtr</code> as smart pointers. This guide provides some explanation and advice on how to choose between them.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Observer_Notifications">Observer Notifications</a></dt><dd class="landingPageList">The following are topics that you can observe during the course of an application. Unless otherwise noted you register for the topics using the <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIObserverService" title="">nsIObserverService</a></code>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Setting_HTTP_request_headers">Setting HTTP request headers</a></dt><dd class="landingPageList"><a href="/en-US/docs/HTTP">HTTP</a> is one of the core technologies behind the Web. In addition to the actual content, <a href="/en-US/docs/HTTP/Headers">some important information</a> is passed with HTTP headers for both HTTP requests and responses.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Storage">Storage</a></dt><dd class="landingPageList"><strong>Storage</strong> is a <a class="external" href="http://www.sqlite.org/">SQLite</a> database API. It is available to trusted callers, meaning extensions and Firefox components only.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/The_Thread_Manager">The Thread Manager</a></dt><dd class="landingPageList">The Thread Manager, introduced in Firefox 3, offers an easy to use mechanism for creating threads and dispatching events to them for processing.</dd></dl></dl></div>
- <div class="section"><dl><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Troubleshooting_XPCOM_components_registration">Troubleshooting XPCOM components registration</a></dt><dd class="landingPageList">Often the first time you create an XPCOM component, it may fail to register correctly.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_nsCOMPtr">Using nsCOMPtr</a></dt><dd class="landingPageList">This document is the sum total of everything written down about <code>nsCOMPtr</code>. If you have a question about <code>nsCOMPtr</code>, and this document doesn't answer it, there probably isn't a document that answers it. You'll have to turn to <a class="external" href="news:mozilla.dev.tech.xpcom">the XPCOM newsgroup</a> or another experienced <code>nsCOMPtr</code> user, or find the answer by experimentation.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_nsIClassInfo">Using nsIClassInfo</a></dt><dd class="landingPageList">If you use a C++ class which implements <code>nsIClassInfo</code> from JavaScript, then you don't have to explicitly call <code>QueryInterface</code> on the JavaScript object to access the object's interfaces.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_nsIDirectoryService">Using nsIDirectoryService</a></dt><dd class="landingPageList">nsDirectoryService implements the <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIProperties" title="">nsIProperties</a></code> interface. This implementation will allow you to <code>Get()</code>, <code>Set()</code>, <code>Define()</code>, and <code>Undefine()</code> <code><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsIFile" title="">nsIFile</a></code>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_nsIPasswordManager">Using nsIPasswordManager</a></dt><dd class="landingPageList">Technical review completed.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_nsISimpleEnumerator">Using nsISimpleEnumerator</a></dt><dd class="landingPageList"></dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_the_clipboard">Using the clipboard</a></dt><dd class="landingPageList">This section provides information about cutting, copying, and pasting to and from the clipboard.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Using_the_Gecko_SDK">Using the Gecko SDK</a></dt><dd class="landingPageList"></dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Weak_reference">Weak reference</a></dt><dd class="landingPageList">In <a href="/en-US/docs/XPCOM">XPCOM</a>, a <strong>weak reference</strong> is a special object that contains a pointer to an XPCOM object, but does<em>not</em> keep that object alive. If the referent object is destroyed before the weak reference, the pointer inside the weak reference is set to <code>nsnull</code>.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Working_with_multiple_versions_of_interfaces">Working with Multiple Versions of Interfaces</a></dt><dd class="landingPageList">In this short note we illustrate how one can update an XPCOM module in
-order for it to work in both Firefox 2 and Firefox 3, even if the interfaces have
-changed in the interim.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Working_with_out_parameters">Working with out parameters</a></dt><dd class="landingPageList"></dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/wrappedJSObject">wrappedJSObject</a></dt><dd class="landingPageList"><code>wrappedJSObject</code> is a property sometimes available on <a href="en/XPConnect">XPConnect</a> wrappers. When available, it lets you access the JavaScript object hidden by the wrapper.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/XPCOM_ABI">XPCOM ABI</a></dt><dd class="landingPageList"><a href="/en/XPCOM" title="en/XPCOM">XPCOM</a> <abbr title="Application Binary Interface">ABI</abbr> is the binary interface of XPCOM components. While XPCOM components written in a scripting language (such as <a href="/en/JavaScript" title="en/JavaScript">JavaScript</a>) can be moved across platforms (such as Windows and OS X) without adaptation, those written in a compiled language (such as C++) require recompilation when moving to a different platform. Often, compiled XPCOM components are called 'binary' or 'native'.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/XPCOM_category_image-sniffing-services">XPCOM category image-sniffing-services</a></dt><dd class="landingPageList">In versions of Firefox prior to Firefox 3, extensions could add decoders for new image types. However, such decoders relied on servers sending correct MIME types; images sent with incorrect MIME types would not be correctly displayed.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Glue">XPCOM glue</a></dt><dd class="landingPageList">The XPCOM Glue is a static library which component developers and embedders can link against. It allows developers to link only against the frozen XPCOM method symbols and maintain compatibility with multiple versions of XPCOM.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Guide">XPCOM guide</a></dt><dd class="landingPageList">These articles provide tutorials and usage documentation for XPCOM, including how to use it in your own projects and how to build XPCOM components for your Firefox add-ons and the like.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/XPCOM_ownership_guidelines">XPCOM ownership guidelines</a></dt><dd class="landingPageList">...naturally. If you create a temporary object, obviously it's up to you to destroy it. That's a sure sign of ownership. If you create an object with a longer lifespan, you will own it until you give ownership away.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Reference">XPCOM reference</a></dt><dd class="landingPageList">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.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/XPCOM_tasks">XPCOM tasks</a></dt><dd class="landingPageList">The XPCOM module roughly parallels the C/C++ standard libraries. It overlaps them significantly, but goes beyond them in capabilities. XPCOM sits above the standard libraries. Its role is to extend them with facilities tailored to XPCOM development in general, and specifically the needs of Mozilla. Like the standard libraries, XPCOM must be a fairly self-contained library, so as not to encumber clients with any unnecessary external dependencies.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/Thread_synchronization">XPCOM Thread Synchronization</a></dt><dd class="landingPageList">XPCOM thread synchronization primitives have the same semantics as those in NSPR, and each method of these synchronization objects (e.g. <code>Mutex::Lock()</code>) has a matching function in NSPR (<code>PR_Lock()</code>). This is no accident, as mozilla:: primitives are merely bare-minimum wrappers around NSPR's.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/xptcall_FAQ">xptcall FAQ</a></dt><dd class="landingPageList"><code>xptcall</code> is a small low level XPCOM method call library. It is implemented using platform specific C/C++ and assembly language code. It is used to facilitate cross language and cross thread method calls. Porting this code is required in order to make Mozilla run on any given platform.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/xptcall_porting_guide">Xptcall Porting Guide</a></dt><dd class="landingPageList">Original Author: John Bandhauer, 31 May 1999.</dd><dt class="landingPageList"><a href="/en-US/docs/Mozilla/Tech/XPCOM/xptcall_porting_status">Xptcall Porting Status</a></dt><dd class="landingPageList">This is a status page for the multiplatform porting of xptcall. xptcall has a <a href="/En/Xptcall_FAQ">FAQ</a> and a <a href="/En/Xptcall_Porting_Guide">Porting Guide</a>.</dd></dl></div>
- </div>
-
-<div class="blockIndicator communitybox" dir="ltr">
-
- <div class="column-container">
- <h2 id="Join_the_XPCOM_community">Join the XPCOM community</h2>
- <div class="column-half">
- <div class="communitysubhead">Choose your preferred method for joining the discussion:</div>
- <ul class="communitymailinglist">
- <li><a href="https://lists.mozilla.org/listinfo/dev-tech-xpcom">Mailing list</a></li>
-
-
- <li><a href="http://groups.google.com/group/mozilla.dev.tech.xpcom">Newsgroup</a></li>
- <li><a href="http://groups.google.com/group/mozilla.dev.tech.xpcom/feeds">RSS feed</a></li>
-</ul>
- </div>
- <div class="column-half">
- <ul class="communitycontact"><li><strong>IRC: </strong><a href="irc://irc.mozilla.org/developers">#developers</a> <span class="smaller">(<a href="https://wiki.mozilla.org/IRC">learn more</a>)</span></li><li><strong>Tools: </strong><a href="http://ted.mielczarek.org/code/mozilla/jscomponentwiz/">JavaScript Component Wizard</a>, <a href="http://www.mytools360.com-a.googlepages.com/home#XPComPro">Visual C++ Component Wizard</a>, <a href="http://www.yutools.com/wp/tools/yuxpcomwizard/?lang=en">Visual C++ Component Wizard for Visual Studio 2010</a>, <a href="https://addons.mozilla.org/en-US/firefox/addon/xpcomviewer/">XPCOMViewer addon: browse XPCOM interfaces easily</a></li></ul>
- </div>
- </div>
-</div>
-
-<section id="Quick_Links"><ol><li><a href="http://www.ibm.com/developerworks/library/os-xpcomfirefox/">Tutorial from IBM DeveloperWorks</a></li><li><a href="https://developer.mozilla.org/en-US/docs/Creating_Custom_Firefox_Extensions_with_the_Mozilla_Build_System">Binary components tutorial</a></li><li><a href="http://www.iosart.com/firefox/xpcom/">Linux and Windows how-to guide</a></li><li><a href="http://starkravingfinkle.org/blog/2006/10/mozilla-platform-xpcom-in-c/">Windows example blog post</a></li><li><a href="http://wanderingstan.com/2007-11-16/geekout_how_to_make_a_c_xpcom_component">Another Windows example</a></li><li><a href="http://rcrowley.org/2007/07/17/cross-platform-xpcom-a-howto.html">Mac OS X example</a></li><li><a href="/en-US/docs/Web/JavaScript" title="JavaScript (JS) is a lightweight interpreted or JIT-compiled programming language with first-class functions. While it is most well-known as the scripting language for Web pages, many non-browser environments also use it, such as Node.js, Apache CouchDB and Adobe Acrobat.">JavaScript</a></li></ol></section>
diff --git a/files/pt-pt/mozilla/tech/xpcom/reference/glue_classes/index.html b/files/pt-pt/mozilla/tech/xpcom/reference/glue_classes/index.html
deleted file mode 100644
index e98aa51571..0000000000
--- a/files/pt-pt/mozilla/tech/xpcom/reference/glue_classes/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: XPCOM glue classes
-slug: Mozilla/Tech/XPCOM/Reference/Glue_classes
-tags:
- - Classes
- - Landing
- - NeedsTranslation
- - TopicStub
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/Glue_classes
----
-<p><span class="seoSummary">These "glue" classes are provided to make it easier to use XPCOM from C++ code.</span> When these classes are used by a component, you may need to link the component against the XPCOM glue library.</p>
-<p>{{LandingPageListSubpages}}</p>
diff --git a/files/pt-pt/mozilla/tech/xpcom/reference/index.html b/files/pt-pt/mozilla/tech/xpcom/reference/index.html
deleted file mode 100644
index 29d07953d6..0000000000
--- a/files/pt-pt/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/pt-pt/mozilla/tech/xul/attribute/textbox.type/index.html b/files/pt-pt/mozilla/tech/xul/attribute/textbox.type/index.html
deleted file mode 100644
index e30799ed4b..0000000000
--- a/files/pt-pt/mozilla/tech/xul/attribute/textbox.type/index.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: textbox.type
-slug: Mozilla/Tech/XUL/Attribute/textbox.type
----
-<p>no redirect</p>
diff --git a/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/como/index.html b/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/como/index.html
deleted file mode 100644
index 06056d13df..0000000000
--- a/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/como/index.html
+++ /dev/null
@@ -1,243 +0,0 @@
----
-title: 'Configuração automática: Como criar um ficheiro de configuração'
-slug: Mozilla/Thunderbird/Autoconfiguration/FileFormat/Como
-tags:
- - Configuração Automática
- - thunderbird
-translation_of: Mozilla/Thunderbird/Autoconfiguration/FileFormat/HowTo
----
-<h2 id="Definição">Definição</h2>
-
-<p><a class="link-https" href="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat" title="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat">Authoritative definition</a></p>
-
-<h2 id="Exemplo">Exemplo</h2>
-
-<p><a class="link-https" href="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de" title="https://live.mozillamessaging.com/autoconfig/v1.1/freenet.de">Exemplo do mundo real</a></p>
-
-<pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
-
-&lt;<span class="start-tag">clientConfig</span><span class="attribute-name"> version</span>=<span class="attribute-value">"1.1"</span>&gt;
- &lt;<span class="start-tag">emailProvider</span><span class="attribute-name"> id</span>=<span class="attribute-value">"freenet.de"</span>&gt;
- &lt;<span class="start-tag">domain</span>&gt;freenet.de&lt;/<span class="end-tag">domain</span>&gt;
- &lt;<span class="start-tag">displayName</span>&gt;Freenet Mail&lt;/<span class="end-tag">displayName</span>&gt;
- &lt;<span class="start-tag">displayShortName</span>&gt;Freenet&lt;/<span class="end-tag">displayShortName</span>&gt;
- &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"imap"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;imap.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;993&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">incomingServer</span>&gt;
- &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"imap"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;imap.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;143&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">incomingServer</span>&gt;
- &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"pop3"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;pop.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;995&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-cleartext&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">incomingServer</span>&gt;
- &lt;<span class="start-tag">incomingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"pop3"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;pop.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;110&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-cleartext&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">incomingServer</span>&gt;
- &lt;<span class="start-tag">outgoingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"smtp"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;smtp.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;587&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;SSL&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">outgoingServer</span>&gt;
- &lt;<span class="start-tag">outgoingServer</span><span class="attribute-name"> type</span>=<span class="attribute-value">"smtp"</span>&gt;
- &lt;<span class="start-tag">hostname</span>&gt;smtp.freenet.de&lt;/<span class="end-tag">hostname</span>&gt;
- &lt;<span class="start-tag">port</span>&gt;587&lt;/<span class="end-tag">port</span>&gt;
- &lt;<span class="start-tag">socketType</span>&gt;STARTTLS&lt;/<span class="end-tag">socketType</span>&gt;
- &lt;<span class="start-tag">authentication</span>&gt;password-encrypted&lt;/<span class="end-tag">authentication</span>&gt;
- &lt;<span class="start-tag">username</span>&gt;%EMAILADDRESS%&lt;/<span class="end-tag">username</span>&gt;
- &lt;/<span class="end-tag">outgoingServer</span>&gt;
- &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;
- &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;
- &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;
- &lt;/<span class="end-tag">documentation</span>&gt;
- &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;
- &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;
- &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;
- &lt;/<span class="end-tag">documentation</span>&gt;
- &lt;/<span class="end-tag">emailProvider</span>&gt;
-&lt;/<span class="end-tag">clientConfig</span>&gt;
-</pre>
-
-<h2 id="Como_examinar_os_servidores_de_correio_eletrónico">Como examinar os servidores de correio eletrónico</h2>
-
-<p>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".</p>
-
-<ul>
- <li>POP3, port 110: when you see <code>+OK WEB.DE POP3-Server</code> or similar, enter <code><strong>CAPA</strong></code>, hit return.</li>
- <li>IMAP, port 143: when you see <code>* OK mwinf2j04 IMAP4 server ready</code> or similar, enter <code><strong>1 CAPABILITY</strong></code>, hit return.</li>
- <li>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.</li>
-</ul>
-
-<p>In all cases, the server should respond with a list of capabilities.</p>
-
-<h2 id="SSL_STARTTLS">SSL / STARTTLS</h2>
-
-<p>There are 2 SSL variants: normal SSL and STARTTLS.</p>
-
-<h3 id="SSL_normal">SSL normal</h3>
-
-<p>The old-style SSL (including TLS, which is just the new name for SSL) has a special port:</p>
-
-<ul>
- <li>POP3 via SSL: port 995</li>
- <li>IMAP via SSL: port 993</li>
- <li>SMTP via SSL: port 465</li>
-</ul>
-
-<p>On Linux, you can contact the server via</p>
-
-<pre><strong>openssl s_client -connect <em>hostname</em>:<em>port</em></strong></pre>
-
-<p>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.</p>
-
-<h3 id="STARTTLS">STARTTLS</h3>
-
-<p>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</p>
-
-<pre>openssl s_client -connect <em>hostname</em>:<em>port</em> -starttls <em>proto</em></pre>
-
-<p>...where "proto" is <code>imap</code>, <code>pop3</code> or <code>smtp</code>. For example:</p>
-
-<pre><strong>openssl s_client -connect <em>imap.example.com</em>:<em>143</em> -starttls <em>imap</em></strong></pre>
-
-<p>You should get the same response as described above for openssl.</p>
-
-<h3 id="Formato_do_ficheiro_de_configuração">Formato do ficheiro de configuração</h3>
-
-<p>Add the appropriate port and socket type for each server, depending on protocol and SSL support. For example,<br>
- for IMAP with SSL:</p>
-
-<pre>&lt;port&gt;993&lt;port&gt;
-
-&lt;socketType&gt;SSL&lt;/socketType&gt;</pre>
-
-<p>for IMAP with STARTTLS:</p>
-
-<pre>&lt;port&gt;143&lt;port&gt;
-&lt;socketType&gt;STARTTLS&lt;/socketType&gt;</pre>
-
-<p>for IMAP without any SSL (deprecated!):</p>
-
-<pre>&lt;port&gt;143&lt;port&gt;
-
-&lt;socketType&gt;plain&lt;/socketType&gt;</pre>
-
-<h3 id="Utilizar_SSL">Utilizar SSL</h3>
-
-<p>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.</p>
-
-<h3 id="Certificado_válido">Certificado válido</h3>
-
-<p>Either way, be sure to use a valid certificate:</p>
-
-<ul>
- <li>issued by a CA recognized by Firefox / Thunderbird</li>
- <li>not expired</li>
- <li>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.)</li>
-</ul>
-
-<h2 id="Autenticação">Autenticação</h2>
-
-<p><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).</p>
-
-<h3 id="Formato_do_ficheiro_de_configuração_2">Formato do ficheiro de configuração</h3>
-
-<p>In the configuration file, for each IMAP, POP and SMTP server, you need to specify the authentication method.<br>
- <br>
- For plaintext passwords:</p>
-
-<pre>&lt;authentication&gt;password-cleartext&lt;/authentication&gt;</pre>
-
-<p>For CRAM-MD5:</p>
-
-<pre>&lt;authentication&gt;password-encrypted&lt;/authentication&gt;</pre>
-
-<p><br>
- Discouraged settings (SMTP only):<br>
- If the SMTP server can only be used after checking incoming mail, please use</p>
-
-<pre>&lt;authentication&gt;smtp-after-pop&lt;/authentication&gt;</pre>
-
-<p>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:</p>
-
-<pre>&lt;authentication&gt;client-IP-address&lt;/authentication&gt;</pre>
-
-<p>or, if it requires authentication in addition to the user being in the ISP network, use e.g.:</p>
-
-<pre>&lt;authentication&gt;password-cleartext&lt;/authentication&gt;
-
-&lt;restriction&gt;client-IP-address&lt;/restriction&gt;
-</pre>
-
-<p>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.</p>
-
-<h3 id="Por_favor_suporte_as_palavras-passe_MD5">Por favor, suporte as palavras-passe MD5</h3>
-
-<p>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></p>
-
-<h2 id="Nome_de_utilizador">Nome de utilizador</h2>
-
-<p>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:</p>
-
-<pre>&lt;username&gt;%EMAILADDRESS%&lt;/username&gt;</pre>
-
-<p><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.</p>
-
-<p><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></p>
-
-<pre>&lt;username&gt;%EMAILLOCALPART%&lt;/username&gt;</pre>
-
-<h3 id="Pseudónimos_ou_nome_de_utilziador_não_são_parte_do_endereço_de_e-mail">Pseudónimos, ou nome de utilziador não são parte do endereço de e-mail</h3>
-
-<p><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></p>
-
-<pre>&lt;username&gt;fred&lt;/username&gt;</pre>
-
-<p>... (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.</p>
-
-<h2 id="Ativar_visiturl">Ativar visiturl</h2>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>If you are an ISP, please by all means avoid this. It's one of those "walls" against which users run the hard way.</p>
-
-<h2 id="URL_da_documentação">URL da documentação</h2>
-
-<p>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.</p>
-
-<div class="syntaxbox">If your URL contains ampersands (<code>&amp;</code>), please remember to replace them with HTML entities (<code>&amp;amp;</code>). For example:</div>
-
-<pre>&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;</pre>
-
-<div class="syntaxbox">Otherwise your XML file will be incorrect and Thunderbird will neither be able to parse it, nor to return any error message.</div>
diff --git a/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/definicao/index.html b/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/definicao/index.html
deleted file mode 100644
index 2df3fcc731..0000000000
--- a/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/definicao/index.html
+++ /dev/null
@@ -1,6 +0,0 @@
----
-title: Definição do formato de ficheiro da configuração automática
-slug: Mozilla/Thunderbird/Autoconfiguration/FileFormat/Definicao
-translation_of: Mozilla/Thunderbird/Autoconfiguration/FileFormat/Definition
----
-<p>Por favor, consulte <a href="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat" class="link-https" title="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat">https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat</a> (inglês).</p>
diff --git a/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/index.html b/files/pt-pt/mozilla/thunderbird/autoconfiguration/fileformat/index.html
deleted file mode 100644
index 76a90f2777..0000000000
--- a/files/pt-pt/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/pt-pt/mozilla/thunderbird/configuracao_automática/index.html b/files/pt-pt/mozilla/thunderbird/configuracao_automática/index.html
deleted file mode 100644
index f0a647cc98..0000000000
--- a/files/pt-pt/mozilla/thunderbird/configuracao_automática/index.html
+++ /dev/null
@@ -1,162 +0,0 @@
----
-title: Configuração Automática no Thunderbird
-slug: Mozilla/Thunderbird/Configuracao_automática
-tags:
- - Administração
- - empresa
-translation_of: Mozilla/Thunderbird/Autoconfiguration
----
-<p>Autor: Ben Bucksch<br>
- Por favor, não altere este documento sem consultar o autor.</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>Consulte também:</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="https://wiki.mozilla.org/Thunderbird:Autoconfiguration:ConfigFileFormat" 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="Mecanismos">Mecanismos</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 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 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 add DNS SRV records as supported mechanism in the future, but we currently do not.</p>
-
-<h1 id="Como_adicionar_suporte_para_o_seu_domínio">Como adicionar suporte para o seu domínio</h1>
-
-<h2 id="Classificação">Classificação</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.  The component is actively watched for new bugs (as of November 2015) so there is no need to request review on the file.</p>
-
-<h2 id="Configuração_do_servidor_no_ISP">Configuração do servidor no 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="Empresa_pequena">Empresa pequena</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="Hospedeiro_do_domínio">Hospedeiro do domínio</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="Servidor_da_Web">Servidor da Web</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 a 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>If you use nginx, you can easily add a subdomain to all your Domains, which does the same as above. Either, you can redirect them to a common hostname:</p>
-
-<pre>server {
- listen 10.2.3.4:80; #use your server's public IP here!
- server_name autoconfig.*;
- return 301 http://autoconfig.hoster.com$request_uri;
-}
-</pre>
-
-<p>Or serve them directly from a common directory:</p>
-
-<pre>server {
- listen 10.2.3.4:80; #again, use your server's public IP here!
- server_name autoconfig.*;
- location / {
- root /var/www/autoconfig;
- }
-}
-</pre>
-
-<p> </p>
-
-<h2 id="Ficheiro_de_configuração">Ficheiro de configuração</h2>
-
-<p>Isto é descrito em <a href="/pt-PT/docs/Mozilla/Thunderbird/Autoconfiguration/FileFormat/Como" title="en/Thunderbird/Autoconfiguration/FileFormat/HowTo">Como criar um ficheiro de configuração</a> e <a href="/pt-PT/docs/Mozilla/Thunderbird/Autoconfiguration/FileFormat/Definicao" title="en/Thunderbird/Autoconfiguration/FileFormat/Definition">definido</a> nas sub páginas.</p>
diff --git a/files/pt-pt/mozilla/thunderbird/index.html b/files/pt-pt/mozilla/thunderbird/index.html
deleted file mode 100644
index 0ca93f176b..0000000000
--- a/files/pt-pt/mozilla/thunderbird/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: Thunderbird
-slug: Mozilla/Thunderbird
-tags:
- - NeedsTranslation
- - TopicStub
- - thunderbird
-translation_of: Mozilla/Thunderbird
----
-<p><span class="seoSummary"><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://www.mozillazine.org/talkback.html?article=22774">Correo</a>, etc.</span></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><a href="/en-US/docs/Thunderbird/Thunderbird_API_documentation" title="Thunderbird API documentation">Thunderbird API documentation</a></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="https://support.mozilla.org/en-US/products/thunderbird">Mozilla Support</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>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
diff --git a/files/pt-pt/mozilla/thunderbird/lancamentos/index.html b/files/pt-pt/mozilla/thunderbird/lancamentos/index.html
deleted file mode 100644
index 354a6d7335..0000000000
--- a/files/pt-pt/mozilla/thunderbird/lancamentos/index.html
+++ /dev/null
@@ -1,19 +0,0 @@
----
-title: Thunderbird - Notas de lançamento de programador
-slug: Mozilla/Thunderbird/Lancamentos
-tags:
- - Landing
- - Lançamento
- - Mozilla
- - thunderbird
-translation_of: Mozilla/Thunderbird/Releases
----
-<p class="summary">Esta página fornece hiperligações para os artigos do "Thunderbird X para programadores" para cada lançamento do Thunderbird. Estas notas deixam-no ver quais as funcionalidades que foram adicionadas e os erros eliminados em cada versão do Thunderbird.</p>
-
-<div class="multiColumnList">{{ListSubpages("/pt-PT/docs/Mozilla/Thunderbird/Releases",1,1,1)}}</div>
-
-<h2 class="multiColumnList" id="Ver_também">Ver também</h2>
-
-<ul>
- <li><a href="/pt-PT/docs/Mozilla/Firefox/Releases">Firefox - Notas de lançamento do programador</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/trabalhar_com_janelas_no_codigo_chrome/index.html b/files/pt-pt/mozilla/trabalhar_com_janelas_no_codigo_chrome/index.html
deleted file mode 100644
index a3f012eb7a..0000000000
--- a/files/pt-pt/mozilla/trabalhar_com_janelas_no_codigo_chrome/index.html
+++ /dev/null
@@ -1,397 +0,0 @@
----
-title: Trabalhar com janelas no código chrome
-slug: Mozilla/trabalhar_com_janelas_no_codigo_chrome
-tags:
- - Add-ons
- - Extensões
- - Extras
- - Guía
-translation_of: Mozilla/Working_with_windows_in_chrome_code
----
-<p>Este artigo descreve o trabalho com várias janelas no código da Mozilla (aplicações <a href="/en-US/docs/XUL" title="XUL">XUL</a> e <a href="/en-US/docs/Extensions" title="Extensions">Extensões</a>). Este contém dicas e código exemplo em como abrir novas janelas, encontrar uma janela já aberta, e passar dados entre diferentes janelas.</p>
-
-<h2 id="Opening_windows" name="Opening_windows">Abertura de janelas</h2>
-
-<h3 id="From_a_&lt;script>_in_a_window_or_an_overlay">From a &lt;script&gt; in a window or an overlay</h3>
-
-<p>To open a new window, we usually use a <code><a href="/en-US/docs/DOM/window.open" title="DOM/window.open">window.open</a></code> or <code><a href="/en-US/docs/DOM/window.openDialog" title="DOM/window.openDialog">window.openDialog</a></code> DOM call, like this:</p>
-
-<div style="overflow: hidden;">
-<pre class="brush:js;auto-links:false;">var win = window.open("chrome://myextension/content/about.xul",
- "aboutMyExtension", "chrome,centerscreen");
-</pre>
-</div>
-
-<p>The first parameter to <code>window.open</code> is the URI of the XUL file that describes the window and its contents.</p>
-
-<p>The second parameter is the window's name; the name can be used in links or forms as the <code>target</code> attribute. This is different from the user-visible window title, which is specified using XUL.</p>
-
-<p>The third, and optional, parameter is a list of special window features the window should have.</p>
-
-<p>The <code>window.openDialog</code> function works similarly, but lets you specify optional arguments that can be referenced from the JavaScript code. It also handles window features a little differently, including always assuming the <code>dialog</code> feature is specified.</p>
-
-<h3 id="From_XPCOM_components_and_modules">From XPCOM components and modules</h3>
-
-<p>If the <code>Window</code> object is unavailable (for example, when opening a window from XPCOM component code), you might want to use <a href="/en-US/docs/XPCOM_Interface_Reference/nsIWindowWatcher" title="nsIWindowWatcher">nsIWindowWatcher</a> interface. Its parameters are similar to <code>window.open</code>; in fact, <code>window.open</code>'s implementation calls <code>nsIWindowWatcher</code>'s methods.</p>
-
-<div style="overflow: hidden;">
-<pre class="brush:js;auto-links:false;">var ww = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
- .getService(Components.interfaces.nsIWindowWatcher);
-var win = ww.openWindow(null, "chrome://myextension/content/about.xul",
- "aboutMyExtension", "chrome,centerscreen", null);</pre>
-</div>
-
-<h2 id="Window_object" name="Window_object">Objeto de janela</h2>
-
-<p>Note the <code>win</code> variable in the above section, which is assigned the return value of <code>window.open</code>. It can be used to access the opened window. The return value of <code>window.open</code> (and similar methods) is a <code>Window</code> object (usually <code>ChromeWindow</code>) – the same type as the <code>window</code> variable.</p>
-
-<p>Technically speaking, it implements a number of interfaces, including {{ interface("nsIDOMJSWindow") }} and {{ interface("nsIDOMWindow") }}, but it also contains the user-defined properties for global variables and functions of the window. So, for example, to access the DOM document corresponding to the window, you can use <code><a href="/en-US/docs/DOM/window.document" title="DOM/window.document">win.document</a></code>.</p>
-
-<p>Note however, that the <code>open()</code> call returns <em>before</em> the window is fully loaded, so some calls, like <code><a href="/en-US/docs/DOM/document.getElementById" title="DOM/document.getElementById">win.document.getElementById()</a></code> will fail. To overcome this difficulty, you can move the initialization code to a <code>load</code> handler of the window being opened or pass a callback function, as described <a href="#callback">below</a>.</p>
-
-<p>You can get a <code>Window</code> object from a document using <code><a href="/en-US/docs/DOM/document.defaultView" title="DOM/document.defaultView">document.defaultView</a></code>.</p>
-
-<h2 id="Content_windows" name="Content_windows">Janelas de conteúdo</h2>
-
-<p>When a XUL window contains a widget capable of displaying a page, such as <code>&lt;browser&gt;</code> or <code>&lt;iframe&gt;</code>, the document in that widget is, naturally, separate from the document of the chrome window itself. There also is a <code>Window</code> object for each sub-document, although there's no window in a common sense for the sub-document.</p>
-
-<p>The same holds for chrome windows opened inside a tab of <code>&lt;tabbrowser&gt;</code>. The elements above the chrome document opened in the tab are separate from your chrome document.</p>
-
-<p>The following two subsections describe how to cross chrome-content boundaries in either way, i.e. accessing elements which are ancestors of your chrome document, or accessing elements which are descendants of your chrome document (but nevertheless in a different context).</p>
-
-<h3 id="Accessing_content_documents" name="Accessing_content_documents">Accessing content documents</h3>
-
-<p>Assume you have a document loaded in a <code>&lt;tabbrowser&gt;</code>, <code>&lt;browser&gt;</code>, or <code>&lt;iframe&gt;</code> element inside your document. You can use <code>browser.contentDocument</code> to access that document and <code>browser.contentWindow</code> to access the <code>Window</code> object of that document.</p>
-
-<p>You should be aware of <a href="/en-US/docs/XPCNativeWrapper" title="XPCNativeWrapper">XPCNativeWrappers</a> when working with <a href="/en-US/docs/XPCNativeWrapper#What_is_a_trusted_window.3F" title="XPCNativeWrapper#What_is_a_trusted_window.3F">untrusted content</a>. With XPCNativeWrappers turned on (which is the default in Firefox 1.5+), your extension can safely access the DOM of the content document, but not the content JavaScript. Bypassing XPCNativeWrapper to work with content JavaScript directly can lead to security problems.</p>
-
-<p>See <a href="/en-US/docs/Code_snippets/Interaction_between_privileged_and_non-privileged_pages" title="Code_snippets/Interaction_between_privileged_and_non-privileged_pages">Interaction between privileged and non-privileged pages</a> if you need to interact with the content page.</p>
-
-<h4 id="The_content_shortcut" name="The_content_shortcut">The <code>content</code> shortcut</h4>
-
-<p>In case of <code>&lt;browser type="content-primary" /&gt;</code>, you can use the <a href="/en-US/docs/DOM/window.content" title="DOM/window.content">content</a> shortcut property to accesss the <code>Window</code> object of the content document. For example:</p>
-
-<pre class="brush:js">// alerts the title of the document displayed in the content-primary widget
-
-alert(content.document.title);</pre>
-
-<p>For example, you can use <code>content.document</code> in a <code>browser.xul</code> overlay to access the web page in the selected tab in a Firefox window.</p>
-
-<div class="note">Some examples use <code>_content</code> instead of <code>content</code>. The former has been deprecated for a while, and you should use <code>content</code> in the new code.</div>
-
-<h3 id="Accessing_a_document_in_the_sidebar" name="Accessing_a_document_in_the_sidebar">Accessing a document in the sidebar</h3>
-
-<p>Firefox has a sidebar, which is implemented as a <code>&lt;browser&gt;</code> element with id="sidebar". To access the elements and variables inside the sidebar, you need to use <code>document.getElementById("sidebar").contentDocument</code> or <code>.contentWindow</code>, like when {{ Anch("Accessing content documents") }}.</p>
-
-<p>For more sidebar tips, see <a href="/en-US/docs/Code_snippets/Sidebar" title="Code_snippets/Sidebar">Code snippets:Sidebar</a>.</p>
-
-<h3 id="Accessing_the_elements_of_the_top-level_document_from_a_child_window" name="Accessing_the_elements_of_the_top-level_document_from_a_child_window">Accessing the elements of the top-level document from a child window</h3>
-
-<p>The opposite case is when you want to access the chrome document from a privileged script loaded in a <code>&lt;browser&gt;</code> or an <code>&lt;iframe&gt;</code>.</p>
-
-<p>A typical case when this can be useful is when your code runs in the sidebar in the main Firefox window and you want to access the elements in the main browser window.</p>
-
-<p>The DOM tree, as shown by the <a href="/en-US/docs/DOM_Inspector" title="DOM_Inspector">DOM Inspector</a>, can look like this:</p>
-
-<pre>#document
- window main-window
- ...
- browser
- #document
- window myExtensionWindow
-</pre>
-
-<p>where the child window is where your code runs in.</p>
-
-<p>Your task is to access elements above your chrome document, i.e. to break out of your chrome window and access the ancestors. This can be done using the following statement:</p>
-
-<pre class="brush:js">var mainWindow = window.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
- .getInterface(Components.interfaces.nsIWebNavigation)
- .QueryInterface(Components.interfaces.nsIDocShellTreeItem)
- .rootTreeItem
- .QueryInterface(Components.interfaces.nsIInterfaceRequestor)
- .getInterface(Components.interfaces.nsIDOMWindow);</pre>
-
-<p>This allows you to cross the chrome-content boundaries, and returns the main window object.</p>
-
-<h2 id="Finding_already_opened_windows" name="Finding_already_opened_windows">Encontrar janelas já abertas</h2>
-
-<p>The window mediator XPCOM component (<a href="/en-US/docs/XPCOM_Interface_Reference/nsIWindowMediator" title="nsIWindowMediator">nsIWindowMediator</a> interface) provides information about existing windows. Two of its methods are often used to obtain information about currently open windows: <code>getMostRecentWindow</code> and <code>getEnumerator</code>. Please refer to the <a href="/en-US/docs/XPCOM_Interface_Reference/nsIWindowMediator" title="nsIWindowMediator">nsIWindowMediator</a> page for more information and examples of using <code>nsIWindowMediator</code>. <span class="comment">=== Example: Opening a window only if it's not opened already === XXX TBD</span></p>
-
-<h2 id="Passing_data_between_windows" name="Passing_data_between_windows">Passar dados entre janelas</h2>
-
-<p>When working with multiple windows, you often need to pass information from one window to another. Since different windows have separate DOM documents and global objects for scripts, you can't just use one global JavaScript variable in scripts from different windows.</p>
-
-<p>There are several techniques of varying power and simplicity that can be used to share data. We'll demonstrate them from the simplest to the most complex in the next few sections.</p>
-
-<p>Note: if you want to pass data between privileged (chrome) and non-privileged (web page) windows, or vice-versa, <a href="/en-US/docs/Code_snippets/Interaction_between_privileged_and_non-privileged_pages" title="Code snippets/Interaction between privileged and non-privileged pages">read this instead.</a></p>
-
-<h3 id="Example_1:_Passing_data_to_window_when_opening_it_with_openDialog" name="Example_1:_Passing_data_to_window_when_opening_it_with_openDialog">Example 1: Passing data to window when opening it with <code>openDialog</code></h3>
-
-<p>When you open a window using <code><a href="/en-US/docs/DOM/window.openDialog" title="DOM/window.openDialog">window.openDialog</a></code> or <code>nsIWindowWatcher.openWindow</code>, you can pass an arbitrary number of <em>arguments</em> to that window. Arguments are simple JavaScript objects, accessible through <code><a href="/en-US/docs/DOM/window.arguments" title="DOM/window.arguments">window.arguments</a></code> property in the opened window.</p>
-
-<p>In this example, we're using <code>window.openDialog</code> to open a progress dialog. We pass in the current status text as well as the maximum and current progress values. Note that using <code>nsIWindowWatcher.openWindow</code> is a bit less trivial . <span class="comment">TODO: link to <a href="/en-US/docs/How_To_Pass_an_XPCOM_Object_to_a_New_Window" title="How_To_Pass_an_XPCOM_Object_to_a_New_Window">How To Pass an XPCOM Object to a New Window</a> when it has a more useful example</span></p>
-
-<p>Opener code:</p>
-
-<pre class="brush:js">window.openDialog("chrome://test/content/progress.xul",
- "myProgress", "chrome,centerscreen",
- {status: "Reading remote data", maxProgress: 50, progress: 10} );</pre>
-
-<p><code>progress.xul</code>:</p>
-
-<pre class="brush:xml">&lt;?xml version="1.0"?&gt;
-&lt;?xml-stylesheet href="chrome://global/skin/" type="text/css"?&gt;
-
-&lt;window onload="onLoad();" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;
-&lt;script&gt;&lt;![CDATA[
-
-var gStatus, gProgressMeter;
-var maxProgress = 100;
-
-function onLoad() {
- gStatus = document.getElementById("status");
- gProgressMeter = document.getElementById("progressmeter");
-
- if("arguments" in window &amp;&amp; window.arguments.length &gt; 0) {
- maxProgress = window.arguments[0].maxProgress;
- setProgress(window.arguments[0].progress);
- setStatus(window.arguments[0].status);
- }
-}
-
-function setProgress(value) {
- gProgressMeter.value = 100 * value / maxProgress;
-}
-
-function setStatus(text) {
- gStatus.value = "Status: " + text + "...";
-}
-
-]]&gt;&lt;/script&gt;
-
-&lt;label id="status" value="(No status)" /&gt;
-&lt;hbox&gt;
- &lt;progressmeter id="progressmeter" mode="determined" /&gt;
- &lt;button label="Cancel" oncommand="close();" /&gt;
-&lt;/hbox&gt;
-
-&lt;/window&gt;</pre>
-
-<h3 id="Example_2:_Interacting_with_the_opener" name="Example_2:_Interacting_with_the_opener">Example 2: Interacting with the opener</h3>
-
-<p>Sometimes an opened window needs to interact with its opener; for example, it might do so in order to give notice that the user has made changes in the window. You can find the window's opener using its <a href="/en-US/docs/DOM/window.opener" title="DOM/window.opener">window.opener</a> property or via a callback function passed to the window in a way described in the previous section.</p>
-
-<p>Let's add code to the previous example to notify the opener when the user presses Cancel on the progress dialog.</p>
-
-<ul>
- <li><strong>Using <code>window.opener</code>.</strong> The <code>opener</code> property returns its window's opener; that is, the {{ Anch("Window object") }} that opened it.</li>
-</ul>
-
-<p>If we're sure the window that opened the progress dialog declares the <code>cancelOperation</code> function, we can use <code>window.opener.cancelOperation()</code> to notify it, like this:</p>
-
-<pre class="brush:xml;">&lt;button label="Cancel" oncommand="opener.cancelOperation(); close();" /&gt;
-</pre>
-
-<ul>
- <li><strong>Using a callback function.</strong> Alternatively, the opener window can pass a callback function to the progress dialog in the same way we passed the status string in the previous example:</li>
-</ul>
-
-<pre class="brush:js">function onCancel() {
- alert("Operation canceled!");
-}
-
-...
-
-window.openDialog(
- "chrome://test/content/progress.xul",
- "myProgress", "chrome,centerscreen",
- {status: "Reading remote data", maxProgress: 50, progress: 10},
- onCancel
-);
-</pre>
-
-<p>The progress dialog can then run the callback like this:</p>
-
-<pre class="brush:xml;">&lt;button label="Cancel" oncommand="window.arguments[1](); close();" /&gt;
-</pre>
-
-<h3 id="Example_3:_Using_nsIWindowMediator_when_opener_is_not_enough" name="Example_3:_Using_nsIWindowMediator_when_opener_is_not_enough">Example 3: Using <code>nsIWindowMediator</code> when <code>opener</code> is not enough</h3>
-
-<p>The <code>window.opener</code> property is very easy to use, but it's only useful when you're sure that your window was opened from one of a few well-known places. In more complicated cases you need to use the <code><a href="/en-US/docs/XPCOM_Interface_Reference/nsIWindowMediator" title="nsIWindowMediator">nsIWindowMediator</a></code> interface, introduced above.</p>
-
-<p>One case in which you might want to use <code>nsIWindowMediator</code> is in an extension's Options window. Suppose you're developing a browser extension that consists of a browser.xul overlay and an Options window. Suppose the overlay contains a button to open the extension's Options window which needs to read some data from the browser window. As you may remember, Firefox's Extension Manager can also be used to open your Options dialog.</p>
-
-<p>This means the value of <code>window.opener</code> in your Options dialog is not necessarily the browser window -- instead, it might be the Extension Manager window. You could check the <code>location</code> property of the <code>opener</code> and use <code>opener.opener</code> in case it's the Extension Manager window, but a better way is to use <code>nsIWindowMediator</code>:</p>
-
-<pre class="brush:js;">var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
- .getService(Components.interfaces.nsIWindowMediator);
-var browserWindow = wm.getMostRecentWindow("navigator:browser");
-// read values from |browserWindow|</pre>
-
-<p>You might be tempted to use a similar technique to apply the changes the user made in the Options dialog, but a better way to do that is to use <a href="/en-US/docs/Code_snippets/Preferences#Using_preference_observers" title="Code snippets/Preferences#Using preference observers">preferences observers</a>.</p>
-
-<h3 id="Example_4_Using_nsIWindowWatcher_when_you_don't_have_a_window_(primitives_only)">Example 4: Using nsIWindowWatcher when you don't have a window (primitives only)</h3>
-
-<p>For those times when you don't have access to a <code>window</code> object (such as a JavaScript XPCOM object), you can use <a href="/en-US/docs/XPCOM_Interface_Reference/nsIWindowWatcher#openWindow()" title="nsIWindowWatcher#openWindow()"><code>nsIWindowWatcher.openWindow</code></a> to open a XUL window. The problem is passing the data. It's a bit harder than using <code>window.openDialog</code>. Here is helper function that will package the data correctly and pass it to the newly opened window:</p>
-
-<pre class="brush:js">function openDialog(parentWindow, url, windowName, features) {
- var array = Components.classes["@mozilla.org/array;1"]
- .createInstance(Components.interfaces.nsIMutableArray);
- for (var i = 4; i &lt; arguments.length; i++) {
- var variant = Components.classes["@mozilla.org/variant;1"]
- .createInstance(Components.interfaces.nsIWritableVariant);
- variant.setFromVariant(arguments[i]);
- array.appendElement(variant, false);
- }
-
- var watcher = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
- .getService(Components.interfaces.nsIWindowWatcher);
- return watcher.openWindow(parentWindow, url, windowName, features, array);
-}
-</pre>
-
-<p>The function almost works the same as <code>window.openDialog</code> but accepts an optional parent window as first parameter. The parent window can be null. The only data types that can be passed to the new window are primitives and arrays. JavaScript objects cannot be passed. All of the arguments are passed by value, that is to say that any changes made to the values in the new window will not affect the calling code.</p>
-
-<h3 id="Example_5_Using_nsIWindowWatcher_for_passing_an_arbritrary_JavaScript_object">Example 5: Using nsIWindowWatcher for passing an arbritrary JavaScript object</h3>
-
-<p>It is still possible to pass any JavaScript object using nsIWindowWatcher, it just takes a little more effort. In this example a single object is passed, though it is possible to pass multiple objects and primitives using a combination of this and the example above.</p>
-
-<pre class="brush:js">// In the calling code
-var args = {
- param1: true,
- param2: 42
-};
-
-args.wrappedJSObject = args;
-
-var watcher = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
- .getService(Components.interfaces.nsIWindowWatcher);
-
-watcher.openWindow(null, url, windowName, features, args);</pre>
-
-<pre class="brush:js">// In the window code
-var args = window.arguments[0].wrappedJSObject;
-</pre>
-
-<p>This uses the <a href="/en-US/docs/wrappedJSObject" title="WrappedJSObject">wrappedJSObject</a> trick. By passing args to openWindow xpconnect will automatically wrap it as a generic nsISupports. The opened window can then just get at the underlying JavaScript object using wrappedJSObject.</p>
-
-<h2 id="Advanced_data_sharing" name="Advanced_data_sharing">Partilha de dados avançada</h2>
-
-<p>The above code is useful when you need to pass data from one window to another or to a set of windows, but sometimes you just want to share a JavaScript variable in common between different windows. You could declare a local variable in each window along with corresponding setter functions to keep the "instances" of the variable in sync across windows, but fortunately, there's a better way.</p>
-
-<p>To declare a shared variable, we need to find a place that exists while the application is running and is easily accessible from the code in different chrome windows. There are actually a few such places.</p>
-
-<h3 id="Using_JavaScript_code_modules" name="Using_JavaScript_code_modules">Using JavaScript code modules</h3>
-
-<p><a href="/en-US/docs/JavaScript_code_modules/Using" title="Using_JavaScript_code_modules">JavaScript code modules</a> {{ Fx_minversion_inline(3) }} is a simple method for creating shared global singleton objects that can be imported into any other JavaScript scope. The importing scope will have access to the objects and data in the code module. Since the code module is cached, all scopes get the same instance of the code module and can share the data in the module. See <a href="/en-US/docs/Components.utils.import" title="Components.utils.import">Components.utils.import</a> for more information.</p>
-
-<ul>
- <li>Pros:
- <ul>
- <li>It's the "right way"</li>
- <li>Very simple to make and import.</li>
- <li>No need to build an XPCOM component.</li>
- </ul>
- </li>
- <li>Cons:
- <ul>
- <li>Only works in Firefox 3 or newer.</li>
- <li>The scope is shared between modules and the importing scope, so you have to worry about name collisions.</li>
- <li>You can't use the <code><a href="/en-US/docs/DOM/window" title="DOM/window">window</a></code> object, its members, like <code>alert</code> and <code>open</code>, and many other objects available from inside a window. The functionality isn't lost, however -- you just have to use the XPCOM components directly instead of using convenient shortcuts. Of course, this doesn't matter if you just store data in the component.</li>
- </ul>
- </li>
-</ul>
-
-<h3 id="Using_an_XPCOM_singleton_component" name="Using_an_XPCOM_singleton_component">Using an XPCOM singleton component</h3>
-
-<p>The cleanest and most powerful way to share data is to define your own XPCOM component (you can <a href="/en-US/docs/How_to_Build_an_XPCOM_Component_in_Javascript" title="How_to_Build_an_XPCOM_Component_in_Javascript">write one in JavaScript</a>) and access it from anywhere using a <code>getService</code> call:</p>
-
-<pre class="brush:js">Components.classes["@domain.org/mycomponent;1"].getService();
-</pre>
-
-<ul>
- <li>Pros:
- <ul>
- <li>It's the "right way".</li>
- <li>You can store arbitrary JavaScript objects in the component.</li>
- <li>The scope is not shared between components, so you don't have to worry about name collisions.</li>
- <li>Works in older versions of Firefox.</li>
- </ul>
- </li>
- <li>Cons:
- <ul>
- <li>You can't use the <code><a href="/en-US/docs/DOM/window" title="DOM/window">window</a></code> object, its members, like <code>alert</code> and <code>open</code>, and many other objects available from inside a window. The functionality isn't lost, however -- you just have to use the XPCOM components directly instead of using convenient shortcuts. Of course, this doesn't matter if you just store data in the component.</li>
- <li>Learning to create XPCOM components takes time.</li>
- </ul>
- </li>
-</ul>
-
-<p>There are several articles and books about creating XPCOM components online.</p>
-
-<h3 id="Using_FUEL_Application_object" name="Using_FUEL_Application_object">Using FUEL Application object</h3>
-
-<div class="warning">
-<p>The FUEL library has been deprecated as of Firefox 41</p>
-</div>
-
-<p>The <a href="/en-US/docs/Toolkit_API/FUEL">FUEL</a> JavaScript library {{ Fx_minversion_inline(3) }} has a simple method for sharing data between windows. The <code>Application</code> object supports a <a href="/en-US/docs/Toolkit_API/extISessionStorage"><code>storage</code></a> property which can be used to store data globally. This method is a simplified form of the XPCOM singleton method.</p>
-
-<pre class="brush:js">Application.storage.set(keyname, data);
-
-var data = Application.storage.get(keyname, default);
-
-where: keyname is a string used to identify the data
- data is the data
- default is the data value to return if keyname does not exists
-</pre>
-
-<ul>
- <li>Pros:
- <ul>
- <li>Its the "right way".</li>
- <li>You can store arbitrary JavaScript objects in the component.</li>
- <li>The scope is not shared between components, so you don't have to worry about name collisions.</li>
- <li>No need to build an XPCOM component.</li>
- </ul>
- </li>
- <li>Cons:
- <ul>
- <li>Only works in Firefox 3 or newer.</li>
- <li>You can't use the <code><a href="/en-US/docs/DOM/window" title="DOM/window">window</a></code> object, its members, like <code>alert</code> and <code>open</code>, and many other objects available from inside a window. The functionality isn't lost, however -- you just have to use the XPCOM components directly instead of using convenient shortcuts. Of course, this doesn't matter if you just store data in the component.</li>
- </ul>
- </li>
-</ul>
-
-<h3 id="Storing_shared_data_in_preferences" name="Storing_shared_data_in_preferences">Storing shared data in preferences</h3>
-
-<p>If you just need to store a string or a number, writing a whole XPCOM component may be an unnecessary complication. You can use the <a class="external" href="http://www.xulplanet.com/references/xpcomref/ifaces/nsIPrefService.html">preferences service</a> in such cases.</p>
-
-<ul>
- <li>Pros:
- <ul>
- <li>Quite easy to use for storing simple data.</li>
- </ul>
- </li>
- <li>Cons:
- <ul>
- <li>Can't easily be used to store complex data.</li>
- <li>Abusing the preferences service and not cleaning up after yourself can cause <code>prefs.js</code> to grow large and slow down application startup.</li>
- </ul>
- </li>
-</ul>
-
-<p>See <a href="/en-US/docs/Code_snippets/Preferences" title="Code_snippets/Preferences">Code snippets:Preferences</a> for detailed description of the preferences system and example code.</p>
-
-<p>Example:</p>
-
-<pre class="brush:js">var prefs = Components.classes["@mozilla.org/preferences-service;1"]
- .getService(Components.interfaces.nsIPrefService);
-var branch = prefs.getBranch("extensions.myext.");
-var var1 = branch.getBoolPref("var1"); // get a pref</pre>
-
-<h2 id="See_also" name="See_also">Consulte também</h2>
-
-<ul>
- <li><a href="/en-US/docs/Code_snippets/Dialogs_and_Prompts" title="Code_snippets/Dialogs_and_Prompts">Code snippets:Dialogs</a></li>
-</ul>
diff --git a/files/pt-pt/mozilla/utilização_cxx_no_código_da_mozilla/index.html b/files/pt-pt/mozilla/utilização_cxx_no_código_da_mozilla/index.html
deleted file mode 100644
index 02ec29e2a2..0000000000
--- a/files/pt-pt/mozilla/utilização_cxx_no_código_da_mozilla/index.html
+++ /dev/null
@@ -1,552 +0,0 @@
----
-title: Utilização de C++ no código da Mozilla
-slug: Mozilla/Utilização_CXX_no_código_da_Mozilla
-translation_of: Mozilla/Using_CXX_in_Mozilla_code
----
-<h2 id="Caraterísticas_da_linguagem_C">Caraterísticas da linguagem C++</h2>
-
-<p>Mozilla code only uses a subset of C++. Runtime type information (RTTI) is disabled, as it tends to cause a very large increase in codesize. This means that <code>dynamic_cast</code>, <code>typeid()</code> and <code>&lt;typeinfo&gt;</code> cannot be used in Mozilla code. Also disabled are exceptions; do not use <code>try</code>/<code>catch</code> or throw any exceptions. Libraries that throw exceptions may be used if you are willing to have the throw instead be treated as an abort.</p>
-
-<p>As of Mozilla 25, C++11 mode is required to build Mozilla. As of Mozilla 37, MSVC 2013 Update 3 is required on Windows; as of Mozilla 38, gcc 4.7 is required on all platforms. As of Mozilla 48, gcc 4.8 is required on all platforms. This means that C++11 can be used where supported on all platforms. The list of acceptable features is given below:</p>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col"> </th>
- <th scope="col">MSVC</th>
- <th scope="col">GCC</th>
- <th scope="col">Clang</th>
- <th scope="col"> </th>
- </tr>
- <tr>
- <td>Requisito mínimo atual</td>
- <td>2013</td>
- <td>4.8</td>
- <td>3.4</td>
- <td> </td>
- </tr>
- <tr>
- <th scope="col">Funcionalidade</th>
- <th scope="col">MSVC</th>
- <th scope="col">GCC</th>
- <th scope="col">Clang</th>
- <th scope="col">Pode ser utilizada no código</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>type_t &amp;&amp;</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim (consultar notas)</td>
- </tr>
- <tr>
- <td>ref qualifiers on methods</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.8.1</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>member initializers</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>variadic templates</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>Initializer lists</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>static_assert</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>auto</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>lambdas</td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.5</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>decltype</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>Foo&lt;Bar&lt;T&gt;&gt;</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>auto func() -&gt; int</code></td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>Templated aliasing</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td style="vertical-align: middle;"><code>nullptr</code></td>
- <td style="vertical-align: middle; background-color: rgb(204, 255, 153);">2010</td>
- <td style="vertical-align: middle; background-color: rgb(204, 255, 153);">4.6</td>
- <td style="vertical-align: middle; background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Yes, but use <code>decltype(nullptr)</code> instead of <code>std::nullptr_t</code>.</td>
- </tr>
- <tr>
- <td><code>enum foo : int16_t</code> {};</td>
- <td style="background-color: rgb(204, 255, 153);">2008</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>enum class foo {}</code>;</td>
- <td style="background-color: rgb(204, 255, 153);">2012</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>enum foo;</code></td>
- <td style="background-color: rgb(204, 255, 153);">2012</td>
- <td style="background-color: rgb(204, 255, 153);">4.6</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>[[attributes]]</code></td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.8</td>
- <td style="background-color: rgb(204, 255, 153);">3.3</td>
- <td style="background-color: rgb(255, 204, 204);">Não (consultar notas)</td>
- </tr>
- <tr>
- <td><code>constexpr</code></td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.6</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(255, 255, 153);">Use <code>MOZ_CONSTEXPR </code>from <a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/Attributes.h" title="http://dxr.mozilla.org/mozilla-central/source/mfbt/Attributes.h">mozilla/Attributes.h</a></td>
- </tr>
- <tr>
- <td><code>alignof</code>/<code>alignas</code></td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.8</td>
- <td style="background-color: rgb(255, 204, 204);">3.3</td>
- <td style="background-color: rgb(255, 204, 204);">No (see notes) ; only clang 3.6 claims __has_feature(cxx_alignof)</td>
- </tr>
- <tr>
- <td>Delegated constructors</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>Inherited constructors</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.8</td>
- <td style="background-color: rgb(204, 255, 153);">3.3</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td><code>explicit operator bool()</code></td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.5</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td style="vertical-align: middle;"><code>char16_t/u"string"</code></td>
- <td style="background-color: rgb(255, 204, 204); vertical-align: middle;">2015</td>
- <td style="background-color: rgb(204, 255, 153); vertical-align: middle;">4.4</td>
- <td style="background-color: rgb(204, 255, 153); vertical-align: middle;">3.0</td>
- <td style="background-color: rgb(255, 255, 153);">Use <code>MOZ_UTF16("string")</code> instead of u"string".</td>
- </tr>
- <tr>
- <td><code>R"(string)"</code></td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.5</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>operator""()</code></td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td><code>=delete</code></td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>=default</code></td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.4</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>unrestricted unions</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.6</td>
- <td style="background-color: rgb(204, 255, 153);">3.1</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td><code>for (auto x : vec)</code></td>
- <td style="background-color: rgb(204, 255, 153);">2012</td>
- <td style="background-color: rgb(204, 255, 153);">4.6</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Yes (<a href="http://stackoverflow.com/questions/15176104/c11-range-based-loop-get-item-by-value-or-reference-to-const">be careful about the type of the iterator</a>)</td>
- </tr>
- <tr>
- <td><code>override</code>/<code>final</code></td>
- <td style="background-color: rgb(204, 255, 153);">2012</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">3.0</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>thread_local</code></td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(204, 255, 153);">4.8</td>
- <td style="background-color: rgb(204, 255, 153);">3.3</td>
- <td style="background-color: rgb(255, 204, 204);">Não (consultar notas)</td>
- </tr>
- <tr>
- <td>function template default arguments</td>
- <td style="background-color: rgb(204, 255, 153);">2013</td>
- <td style="background-color: rgb(204, 255, 153);">4.3</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>local structs as template parameters</td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.5</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td>extended friend declarations</td>
- <td style="background-color: rgb(204, 255, 153);">2010</td>
- <td style="background-color: rgb(204, 255, 153);">4.7</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(204, 255, 153);">Sim</td>
- </tr>
- <tr>
- <td><code>0b100</code> (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(255, 204, 204);">4.9</td>
- <td style="background-color: rgb(204, 255, 153);">2.9</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Return type deduction (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(255, 204, 204);">4.9</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Generic lambdas (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(255, 204, 204);">4.9</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Initialized lambda captures (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(255, 204, 204);">4.9</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Digit separator (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">2015</td>
- <td style="background-color: rgb(255, 204, 204);">4.9</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Variable templates (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">5.0</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Relaxed constexpr (C++14)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">5.0</td>
- <td style="background-color: rgb(204, 255, 153);">3.4</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Concepts (Concepts TS)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">6.0</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>Inline variables (C++17)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>constexpr_if (C++17)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- <tr>
- <td>constexpr lambdas (C++17)</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">—</td>
- <td style="background-color: rgb(255, 204, 204);">Não</td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="Notas">Notas</h3>
-
-<p>rvalue references: Implicit move method generation cannot be used.</p>
-
-<p>Attributes: Several common attributes are defined in <a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/Attributes.h">mozilla/Attributes.h</a> or nscore.h.</p>
-
-<p>Alignment: Some alignment utilities are defined in <a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/Alignment.h">mozilla/Alignment.h</a>.</p>
-
-<p>Thread locals: There is a thread-local variable helper in <a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/ThreadLocal.h">mozilla/ThreadLocal.h</a>. In addition, the native thread_local of MSVC2015 may break Windows XP support. See <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1204752#c7">bug 1204752</a>. The native thread_local of clang may break OSX 10.6, too, but support for OSX 10.6 has been retired.</p>
-
-<p>C++14: C++14 is not enabled on compilers that support it.</p>
-
-<h2 id="Blibliotecas_padrão_de_C_e_Mozilla">Blibliotecas padrão de C++ e Mozilla</h2>
-
-<p>The Mozilla codebase contains within it several subprojects which follow different rules for which libraries can and can't be used it. The rules listed here apply to normal platform code, and assume unrestricted usability of MFBT or XPCOM APIs.</p>
-
-<div class="warning">
-<p>The rest of this section is a draft for expository and exploratory purposes. Do not trust the information listed here.</p>
-</div>
-
-<p>What follows is a list of standard library components provided by Mozilla or the C++ standard. If an API is not listed here, then it is not permissible to use it in Mozilla code. Deprecated APIs are not listed here. In general, prefer Mozilla variants of data structures to standard C++ ones, even when permitted to use the latter, since Mozilla variants tend to have features not found in the standard library (e.g., memory size tracking) or have more controllable performance characteristics.</p>
-
-<h3 id="Estruturas_de_dados">Estruturas de dados</h3>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Nome</th>
- <th scope="col">Cabeçalho</th>
- <th scope="col">STL equivalente</th>
- <th scope="col">Notes</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>nsAutoTArray</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTArray.h">nsTArray.h</a></code></td>
- <td> </td>
- <td>Like <code>nsTArray</code>, but will store a small amount as stack storage</td>
- </tr>
- <tr>
- <td><code>nsAutoTObserverArray</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTObserverArray.h">nsTObserverArray.h</a></code></td>
- <td> </td>
- <td>Like <code>nsTObserverArray</code>, but will store a small amount as stack storage</td>
- </tr>
- <tr>
- <td><code>mozilla::BloomFilter</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/BloomFilter.h">mozilla/BloomFilter.h</a></code></td>
- <td> </td>
- <td>Probabilistic set membership (see <a href="http://en.wikipedia.org/wiki/Bloom_filter#Counting_filters">Wikipedia</a>)</td>
- </tr>
- <tr>
- <td><code>nsClassHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsClassHashtable.h">nsClassHashtable.h</a></code></td>
- <td> </td>
- <td>Adaptation of nsTHashtable, see <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a></td>
- </tr>
- <tr>
- <td><code>nsCOMArray</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsCOMArray.h">nsCOMArray.h</a></code></td>
- <td> </td>
- <td>Like <code>nsTArray&lt;nsCOMPtr&lt;T&gt;&gt;</code></td>
- </tr>
- <tr>
- <td><code>nsDataHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsDataHashtable.h">nsClassHashtable.h</a></code></td>
- <td><code>std::unordered_map</code></td>
- <td>Adaptation of <code>nsTHashtable</code>, see <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a></td>
- </tr>
- <tr>
- <td><code>nsDeque</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsDeque.h">nsDeque.h</a></code></td>
- <td><code>std::deque</code></td>
- <td> </td>
- </tr>
- <tr>
- <td><code>mozilla::EnumSet</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/EnumSet.h">mozilla/EnumSet.h</a></code></td>
- <td> </td>
- <td>Like <code>std::set</code>, but for enum classes.</td>
- </tr>
- <tr>
- <td><code>nsInterfaceHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsInterfaceHashtable.h">nsInterfaceHashtable.h</a></code></td>
- <td><code>std::unordered_map</code></td>
- <td>Adaptation of <code>nsTHashtable</code>, see <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a></td>
- </tr>
- <tr>
- <td><code>nsJSThingHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsJSThingHashtable.h">nsJSThingHashtable.h</a></code></td>
- <td> </td>
- <td>Adaptation of <code>nsTHashtable</code>, see <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a></td>
- </tr>
- <tr>
- <td><code>mozilla::LinkedList</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/LinkedList.h">mozilla/LinkedList.h</a></code></td>
- <td><code>std::list</code></td>
- <td>Doubly-linked list</td>
- </tr>
- <tr>
- <td><code>nsRefPtrHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsRefPtrHashtable.h">nsRefPtrHashtable.h</a></code></td>
- <td><code>std::unordered_map</code></td>
- <td>Adaptation of <code>nsTHashtable</code>, see <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a></td>
- </tr>
- <tr>
- <td><code>mozilla::SegmentedVector</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/SegmentedVector.h">mozilla/SegmentedVector.h</a></code></td>
- <td><code>std::deque</code></td>
- <td>Doubly-linked list of vector elements</td>
- </tr>
- <tr>
- <td><code>mozilla::SplayTree</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/SplayTree.h">mozilla/SplayTree.h</a></code></td>
- <td> </td>
- <td>Quick access to recently-accessed elements (see <a href="http://en.wikipedia.org/wiki/Splay_tree">Wikipedia</a>)</td>
- </tr>
- <tr>
- <td><code>nsTArray</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTArray.h">nsTArray.h</a></code></td>
- <td><code>std::vector</code></td>
- <td> </td>
- </tr>
- <tr>
- <td><code>nsTHashtable</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTHashtable.h">nsTHashtable.h</a></code></td>
- <td><code>std::unordered_map</code></td>
- <td>See <a href="/en-US/docs/XPCOM_hashtable_guide">XPCOM hashtable guide</a>, you probably want a subclass</td>
- </tr>
- <tr>
- <td><code>nsTObserverArray</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTObserverArray.h">nsTObserverArray.h</a></code></td>
- <td> </td>
- <td>Like <code>nsTArray</code>, but iteration is stable even through mutation</td>
- </tr>
- <tr>
- <td><code>nsTPriorityQueue</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/xpcom/glue/nsTPriorityQueue.h">nsTPriorityQueue.h</a></code></td>
- <td><code>std::priority_queue</code></td>
- <td>Unlike the STL class, not a container adapter</td>
- </tr>
- <tr>
- <td><code>mozilla::Vector</code></td>
- <td><code><a href="http://dxr.mozilla.org/mozilla-central/source/mfbt/Vector.h">mozilla/Vector.h</a></code></td>
- <td><code>std::vector</code></td>
- <td> </td>
- </tr>
- </tbody>
-</table>
-
-<p>Untranslated notes:</p>
-
-<p>ns*String - too complicated to explain</p>
-
-<p>Safety utilities:<br>
- mozilla::Array mfbt/Array.h (safe array index)<br>
- mozilla::AssertedCast mfbt/Casting.h (casts)<br>
- mozilla::CheckedInt mfbt/CheckedInt.h (avoids overflow)<br>
- nsCOMPtr xpcom/glue/nsCOMPtr.h (~= std::shared_ptr)<br>
- mozilla::EnumeratedArray mfbt/EnumeratedArray.h (mozilla::Array, for enum types)<br>
- mozilla::RangedPtr mfbt/RangedPtr.h (prevents out-of-bounds)<br>
- mozilla::RefPtr mfbt/RefPtr.h (~= std::shared_ptr)<br>
- nsRefPtr xpcom/base/nsRefPtr.h (~= std::shared_ptr)<br>
- StaticRefPtr xpcom/base/StaticPtr.h (nsRefPtr w/o static constructor)<br>
- mozilla::UniquePtr mfbt/UniquePtr.h (~= std::unique_ptr)<br>
- mozilla::WeakPtr mfbt/WeakPtr.h (~= std::weak_ptr)<br>
- nsWeakPtr xpcom/base/nsWeakPtr.h (~= std::weak_ptr)</p>
-
-<p>Algos:<br>
- mozilla::BinarySearch mfbt/BinarySearch.h<br>
- mozilla::BitwiseCast mfbt/Casting.h (strict aliasing-safe cast)<br>
- mozilla/MathAlgorithms.h (rotate, ctlz, popcount, gcd, abs, lcm)<br>
- mozilla::RollingMean mfbt/RollingMean.h ()</p>
-
-<p>Misc:<br>
- mozilla::AlignedStorage mfbt/Alignment.h (replacement for std::aligned_storage)<br>
- mozilla::Atomic mfbt/Atomic.h (replacement for std::atomic)<br>
- mozilla::CondVar xpcom/glue/CondVar.h<br>
- mozilla::Maybe mfbt/Maybe.h (std::optional)<br>
- mozilla::MaybeOneOf mfbt/MaybeOneOf.h (~mozilla::Maybe&lt;union {T1, T2}&gt;)<br>
- mozilla::Monitor xpcom/glue/Monitor.h<br>
- mozilla::Mutex xpcom/glue/Mutex.h<br>
- mozilla::Pair mfbt/Pair.h (~= std::tuple&lt;T1, T2&gt; -- minimal space!)<br>
- mozilla::ReentrantMonitor xpcom/glue/ReentrantMonitor.h<br>
- mozilla::StaticMutex xpcom/base/StaticMutex.h<br>
- mozilla::TimeStamp xpcom/ds/TimeStamp.h (~= std::chrono::time_point)</p>
-
-<p>mozilla/ArrayUtils.h<br>
- mozilla/Compression.h<br>
- mozilla/Endian.h<br>
- mozilla/FloatingPoint.h<br>
- mozilla/HashFunctions.h (~= std::hash)<br>
- mozilla/Move.h (std::move, std::swp, std::Forward)<br>
- mozilla/PodOperations.h (C++ versions of memset, memcpy, etc.)<br>
- mozilla/TypeTraits.h (replacement for &lt;type_traits&gt;)</p>
-
-<p>(TODO: make list of STL usability here)</p>
diff --git a/files/pt-pt/new_compatibility_tables_beta/index.html b/files/pt-pt/new_compatibility_tables_beta/index.html
deleted file mode 100644
index ac4add57e3..0000000000
--- a/files/pt-pt/new_compatibility_tables_beta/index.html
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: Novas Tabelas de Compatibilidade Beta
-slug: New_Compatibility_Tables_Beta
-translation_of: Archive/MDN/New_Compatibility_Tables_Beta
----
-<p>Está aqui provavelmente porque seguiu o link das novas tabelas de compatibilidade, não foi? (Não? Quer ver as novas tabelas? <a href="https://developer.mozilla.org/en-US/docs/MDN/Contribute/Howto/Be_a_beta_tester">Torne-se um testador da beta</a>.)</p>
-
-<p>Obrigado por nos ajudar a testar estas tabelas. São parte de um projeto muito grande. Estamos a mover todos os nossos <a href="https://github.com/mdn/browser-compat-data">dados de compatibilidade de <em>browsers </em>para JSON</a>.</p>
-
-<p>As novas tabelas vão aparecer em páginas assim que os dados forem convertidos.</p>
-
-<h2 id="Edição">Edição</h2>
-
-<p>Os nossos dados foram movidos para o <a href="https://github.com/mdn/browser-compat-data">repositório de dados de compatibilidade no GitHub</a>.</p>
-
-<p>Para contribuir pode submeter um <em>pull request</em> ou indentificar um problema no repositório.</p>
-
-<h2 id="Como_ajudar">Como ajudar</h2>
-
-<p>Se encontrar algum problema com os dados, por favor <a href="https://github.com/mdn/browser-compat-data/issues">identifique um problema no repositório</a>.</p>
-
-<p>Se alguma coisa estiver errada na aparência ou functionalidade da tabela, por favor clique no botão <strong>"report an error"</strong> no menu em cima da tabela.</p>
-
-<p>Se tiver tempo, agradeceríamos que <a class="external external-icon" href="http://www.surveygizmo.com/s3/2342437/0b5ff6b6b8f6">preenchesse este inquérito</a>.</p>
diff --git a/files/pt-pt/ns_addref/index.html b/files/pt-pt/ns_addref/index.html
deleted file mode 100644
index e37377bbe3..0000000000
--- a/files/pt-pt/ns_addref/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: NS_ADDREF
-slug: NS_ADDREF
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_ADDREF
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Addrefs the argument. Não se deve usar quando o apontador poderá ser null; Nesses casos deve-se usar o <a href="pt/NS_IF_ADDREF">NS_IF_ADDREF</a>.</p>
-<p><code>NS_ADDREF(foo)</code> é equivalente a</p>
-<pre class="eval">foo-&gt;AddRef();
-</pre>
-<p>Esta macro existe principalmente por motivos históricos mas por consistência e por simetria com <a href="pt/NS_RELEASE">NS_RELEASE</a> ela também deve ser usada.</p>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_ADDREF(foo);
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<p><a href="pt/NS_IF_ADDREF">NS_IF_ADDREF</a> <a href="pt/NS_RELEASE">NS_RELEASE</a></p>
diff --git a/files/pt-pt/ns_error/index.html b/files/pt-pt/ns_error/index.html
deleted file mode 100644
index 16eb74b35c..0000000000
--- a/files/pt-pt/ns_error/index.html
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: NS_ERROR
-slug: NS_ERROR
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_ERROR
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Atira uma asserção (<a href="pt/NS_ASSERTION">NS_ASSERTION</a>) com o texto "Error: (texto de erro)", o que faz com que escreva o texto na consola (stderr) e nos registos de depuração (registos NSPR). Esta macro é destinada a erros críticos — como as asserções, os NS_ERRORs não devem ser atingíveis.</p>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_ERROR("texto de erro");
-</pre>
diff --git a/files/pt-pt/ns_if_addref/index.html b/files/pt-pt/ns_if_addref/index.html
deleted file mode 100644
index c10a7b2b2a..0000000000
--- a/files/pt-pt/ns_if_addref/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: NS_IF_ADDREF
-slug: NS_IF_ADDREF
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_IF_ADDREF
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Faz addref ao argumento se ele for não-null. Não faz nada a um apontador null. Usar apenas caso o apontador possa ser NULL; Use <a href="pt/NS_ADDREF">NS_ADDREF</a> caso não possa.</p>
-<p><code>NS_IF_ADDREF(foo)</code> equivale a</p>
-<pre class="eval">if (foo)
- foo-&gt;AddRef();
-</pre>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_IF_ADDREF(foo);
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<p><a href="pt/NS_ADDREF">NS_ADDREF</a></p>
diff --git a/files/pt-pt/ns_if_release/index.html b/files/pt-pt/ns_if_release/index.html
deleted file mode 100644
index 79004cc21c..0000000000
--- a/files/pt-pt/ns_if_release/index.html
+++ /dev/null
@@ -1,27 +0,0 @@
----
-title: NS_IF_RELEASE
-slug: NS_IF_RELEASE
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_IF_RELEASE
----
-<p> </p>
-<p>
- <i>
- This page still needs some work, help to improve it!</i>
-</p>
-<h3 id="Sum.C3.A1rop" name="Sum.C3.A1rop">Sumárop</h3>
-<p><b>Macro</b></p>
-<p>Decrementa o contador de referência de um apontador por um. Esta macro também define o apontador como NULL. <code>NS_IF_RELEASE</code> não tem qualquer efeito quando o apontador é NULL. Esta macro deve ser usada quando o apontador possa ser NULL; noutros casos use-se <a href="pt/NS_RELEASE">NS_RELEASE</a>.</p>
-<p><code>NS_IF_RELEASE(foo)</code> equivale a</p>
-<pre class="eval">if (foo) {
- foo-&gt;Release();
- foo = 0;
-}
-</pre>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_IF_RELEASE(foo);
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<p><a href="pt/NS_ADDREF">NS_ADDREF</a>, <a href="pt/NS_RELEASE">NS_RELEASE</a></p>
diff --git a/files/pt-pt/ns_postcondition/index.html b/files/pt-pt/ns_postcondition/index.html
deleted file mode 100644
index 0351be6cac..0000000000
--- a/files/pt-pt/ns_postcondition/index.html
+++ /dev/null
@@ -1,20 +0,0 @@
----
-title: NS_POSTCONDITION
-slug: NS_POSTCONDITION
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/Glue_classes/NS_POSTCONDITION
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Tem o mesmo efeito que <a href="pt/NS_ASSERTION">NS_ASSERTION</a>. Deve sre usada para testar condições que deverão ser produzidas por um método.</p>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_POSTCONDITION(expressão a testar, "texto de erro");
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<ul>
- <li><a href="pt/NS_PRECONDITION">NS_PRECONDITION</a></li>
- <li><a href="pt/NS_ASSERTION">NS_ASSERTION</a></li>
-</ul>
diff --git a/files/pt-pt/ns_precondition/index.html b/files/pt-pt/ns_precondition/index.html
deleted file mode 100644
index 6e151ef3b1..0000000000
--- a/files/pt-pt/ns_precondition/index.html
+++ /dev/null
@@ -1,20 +0,0 @@
----
-title: NS_PRECONDITION
-slug: NS_PRECONDITION
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/Glue_classes/NS_PRECONDITION
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Tem o mesmo efeito que <a href="pt/NS_ASSERTION">NS_ASSERTION</a>. Deve ser usada para testar condições que o invocador dum método deve obedecer.</p>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_PRECONDITION(expressão a testar, "texto de erro");
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<ul>
- <li><a href="pt/NS_ASSERTION">NS_ASSERTION</a></li>
- <li><a href="pt/NS_POSTCONDITION">NS_POSTCONDITION</a></li>
-</ul>
diff --git a/files/pt-pt/ns_release/index.html b/files/pt-pt/ns_release/index.html
deleted file mode 100644
index 81b72e6b71..0000000000
--- a/files/pt-pt/ns_release/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: NS_RELEASE
-slug: NS_RELEASE
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_RELEASE
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Decrementa o contador de referência de um apontador por um. Esta macro também define o apontador para NULL. Não usar quando o apontador possa ser NULL; use <a href="pt/NS_IF_RELEASE">NS_IF_RELEASE</a> nos outros casos.</p>
-<p><code>NS_RELEASE(foo)</code> equivale a</p>
-<pre class="eval">foo-&gt;Release();
-foo = 0;
-</pre>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_RELEASE(foo);
-</pre>
-<h3 id="Ver_Tamb.C3.A9m" name="Ver_Tamb.C3.A9m">Ver Também</h3>
-<p><a href="pt/NS_ADDREF">NS_ADDREF</a>, <a href="pt/NS_IF_RELEASE">NS_IF_RELEASE</a></p>
diff --git a/files/pt-pt/ns_warning/index.html b/files/pt-pt/ns_warning/index.html
deleted file mode 100644
index 4ffe526e5d..0000000000
--- a/files/pt-pt/ns_warning/index.html
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: NS_WARNING
-slug: NS_WARNING
-tags:
- - Macros_XPCOM
- - XPCOM
-translation_of: Mozilla/Tech/XPCOM/Reference/NS_WARNING
----
-<p> </p>
-<h3 id="Sum.C3.A1rio" name="Sum.C3.A1rio">Sumário</h3>
-<p><b>Macro</b></p>
-<p>Mostra um aviso na consola (stderr) e nos registos de depuração (registos NSPR). Ao contrário do <a href="pt/NS_ERROR">NS_ERROR</a>, esta macro destina-se a erros não-críticos.</p>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">NS_WARNING("texto de aviso");
-</pre>
diff --git a/files/pt-pt/nsiidleservice/index.html b/files/pt-pt/nsiidleservice/index.html
deleted file mode 100644
index 9635c15129..0000000000
--- a/files/pt-pt/nsiidleservice/index.html
+++ /dev/null
@@ -1,68 +0,0 @@
----
-title: nsIIdleService
-slug: nsIIdleService
-tags:
- - Interfaces
- - PrecisaDeConteúdo
-translation_of: Mozilla/Tech/XPCOM/Reference/Interface/nsIIdleService
----
-<p></p><div style="border: solid #ddd 2px; margin-bottom: 12px;">
-<div style="background: #eee; padding: 2px;"><code><a href="https://dxr.mozilla.org/mozilla-central/source/widget/nsIIdleService.idl" rel="custom">widget/nsIIdleService.idl</a></code><span style="text-align: right; float: right;"><a href="/en-US/docs/Interfaces/About_Scriptable_Interfaces" style="color: #00cc00; font-weight: 700;">Scriptable</a></span></div>
-<span style="padding: 4px 2px;">
-
-The idle service lets you monitor how long the user has been 'idle', that is they have not used their mouse or keyboard.
-</span>
-
- <div style="height: 42px; position: relative; padding: 2px; width: auto;">
-
- <div style="top: 22px; font-size: 11px; position: absolute;">1.0</div>
-
- <div style="top: 22px; font-size: 11px; position: absolute; left: 0px; text-align: right; float: right; width: 100%;">66</div>
-
- <div style="height: 8px; top: 16px; background: #dd0000; left: 0px; position: absolute; width: 9.523809428571429%;"></div>
-
-<div style="height: 8px; top: 16px; left: 9.523809428571429%; background: #00dd00; position: absolute; width: 90.47619057142857%;" title="Introduced in Gecko 1.9.1 (Firefox 3.5 / Thunderbird 3.0 / SeaMonkey 2.0)"></div>
-
-<div style="top: 0px; font-size: 11px; position: absolute; left: 9.523809428571429%;">Introduced</div>
-<div style="top: 22px; font-size: 11px; position: absolute; left: 9.523809428571429%;">Gecko 1.9.1</div>
-
- <div style="height: 8px; top: 16px; left: 28.07142857142857%; background: #eeee00; position: absolute; width: 1%; border-radius: 4px; -webkit-border-radius: 4px;" title="Last changed in Gecko 16 (Firefox 16 / Thunderbird 16 / SeaMonkey 2.13)"></div>
-
-</div>
-
-<div style="background: #eee; padding: 2px;">
-Inherits from: <code><a href="/pt-PT/docs/Mozilla/Tech/XPCOM/Reference/Interface/nsISupports" title="">nsISupports</a></code>
-<span style="text-align: right; float: right;">Last changed in Gecko 16 (Firefox 16 / Thunderbird 16 / SeaMonkey 2.13)</span></div>
-</div><p></p>
-<p> O serviço de inatividade deixa-o monitorar por quanto tempo o usuário esteve 'ausente', i.e. não usado o seu mouse ou teclado. Você pode pegar o tempo de inatividade diretamente, mas na maioria dos casos você vai querer registrar um observador para um intervalo predefinido. <span class="comment">Documentação e predefinições de interfaces a serem escritas... </span></p>
-<p>Atualmente as implementações no <code>nsIIdleService</code> existem para Windows, Mac OS X e Linux (via XScreenSaver).</p>
-<p>Exemplo 1:</p>
-<pre class="eval">var idleService = Components.classes["@mozilla.org/widget/idleservice;1"]
- .getService(Components.interfaces.nsIIdleService)
-setTimeout(function() { alert(idleService.idleTime) }, 1000)
-// se você não usar o mouse ou o teclado depois de rodar este fragmento,
-// você verá um número próximo de 1000 na caixa de alerta.
-</pre>
-<p>Exemplo 2:</p>
-<pre class="eval">var idleService = Components.classes["@mozilla.org/widget/idleservice;1"]
- .getService(Components.interfaces.nsIIdleService)
-var idleObserver = {
- observe: function(subject, topic, data) {
- alert("topic: " + topic + "\ndata: " + data);
- }
-};
-idleService.addIdleObserver(idleObserver, 60); // one minute
-// ...
-// Não se esqueça de remover o observador usando removeIdleObserver!
-idleService.removeIdleObserver(idleObserver, 60);
-</pre>
-<h3 id="M.C3.A9todos" name="M.C3.A9todos">Métodos</h3>
-<pre class="eval">void addIdleObserver(in nsIObserver observer, in unsigned long time);
-void removeIdleObserver(in nsIObserver observer, in unsigned long time);
-</pre>
-<h3 id="Atributos" name="Atributos">Atributos</h3>
-<pre class="eval">readonly attribute unsigned long idleTime;
-</pre>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
-<p></p>
diff --git a/files/pt-pt/plugins/index.html b/files/pt-pt/plugins/index.html
deleted file mode 100644
index 361926e555..0000000000
--- a/files/pt-pt/plugins/index.html
+++ /dev/null
@@ -1,63 +0,0 @@
----
-title: Plugins
-slug: Plugins
-tags:
- - Plugins
- - Todas_as_Categorias
-translation_of: Archive/Plugins
----
-<div>
-<p><strong>Plugins</strong> (ou plug-ins) no contexto de aplicações baseadas no Mozilla são componentes binários que, quando registrados com uma aplicação, podem mostrar conteúdo que a aplicação por si mesma não pode exibir nativamente. Por exemplo, o plugin Adobe Reader permite ao usuário abrir arquivos PDF diretamente dentro do navegador, e os plugins Quicktime e Real Player são usados para exibir formatos especiais de vídeo em uma página web.</p>
-
-<p>Plugins podem ser úteis quando se está construindo uma aplicação usando a estrutura Mozilla. Por exemplo {{ interwiki('wikipedia', 'ActiveState_Komodo', 'ActiveState Komodo') }} usa plugins para encaixar o {{ interwiki('wikipedia', 'Scintilla_(editing_component)', 'editor Scintilla') }} em sua interface de usuário XUL.</p>
-
-<p>Plugins são escritos usando <strong>NPAPI</strong>, a API multi-navegadores para plugins. O código principal da documentação para NPAPI é a <a href="/pt-PT/docs/Gecko_Plugin_API_Reference" title="Gecko_Plugin_API_Reference">Gecko Plugin API Reference</a>. Para fazer seu plugin <em>scriptable</em> para páginas web, use <a href="/pt-PT/docs/Gecko_Plugin_API_Reference/Scripting_plugins" title="Gecko_Plugin_API_Reference/Scripting_plugins">npruntime</a>. O antigo <a href="/pt-PT/docs/XPCOM" title="XPCOM">XPCOM</a>- e <a href="/pt-PT/docs/LiveConnect" title="LiveConnect">LiveConnect</a>- APIs baseadas para plugins não devem ser usadas. As tecnologias continuam a ser utilizadas, só não para plugins.</p>
-
-<p>Você pode usar <a href="/pt-PT/docs/SVG" title="SVG">SVG</a> ou <a href="/pt-PT/docs/HTML/Canvas" title="HTML/Canvas">canvas</a> para simples tarefas de direção de <em>scripts</em> gráficos e animação.</p>
-
-<p>Plugins são diferentes de <a href="/pt-PT/docs/Extensões" title="Extensões">extensões</a>, que modificam ou melhoram a funcionalidade do próprio navegador. Plugins também são diferentes de <a href="/pt-PT/docs/Creating_OpenSearch_plugins_for_Firefox" title="Creating_OpenSearch_plugins_for_Firefox">plugins de busca</a>, que plugam adicionais motores de busca na barra de pesquisa.</p>
-</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h2 class="Documentation" id="Documenta.C3.A7.C3.A3o" name="Documenta.C3.A7.C3.A3o">Documentação</h2>
-
- <dl>
- <dt><a href="/pt-PT/docs/Using_the_Right_Markup_to_Invoke_Plugins" title="Using_the_Right_Markup_to_Invoke_Plugins">Using the Right Markup to Invoke Plugins</a></dt>
- <dd>Este artigo descreve como chamar um plugin com o uso correto do HTML. Ele discute o elemento objeto e o elemento embutido também com detalhes de como usar o mais apto HTML para chamar Java numa página web .</dd>
- <dt><a href="/pt-PT/docs/Using_XPInstall_to_Install_Plugins" title="Using_XPInstall_to_Install_Plugins">Usando o XPInstall para instalar Plugins</a></dt>
- <dd><a href="/pt-PT/docs/XPInstall" title="XPInstall">XPInstall</a> é um instalador baseado em tecnologia JavaScript que funciona em todas as plataformas que <a class="external" href="http://mozilla.org">Mozilla</a> e navegadores Netscape baseados no Mozilla (como o Netscape 7) usam. Pode ser um caminho para garantir uma bela experiência de obter plugins sem forçar o usuário a sair do navegador para usar um instalador binário (o clássico setup.exe do Windows) ou obrigando-o a reiniciar o navegador.</dd>
- <dt><a class="external" href="http://developer.apple.com/internet/webcontent/detectplugins.html">Detectando Plugins</a></dt>
- <dd>"Desde que tenha horas certas, quando faz sentido usar um plugin, surge a questão de como tratar os que não tenham o plugin necessário instalado.."</dd>
- </dl>
-
- <p><span class="alllinks"><a href="/pt-PT/docs/tag/Plugins" title="tag/Plugins">Veja todos...</a></span></p>
- </td>
- <td>
- <h2 class="Community" id="Comunidade" name="Comunidade">Comunidade</h2>
-
- <ul>
- <li><a href="/pt-PT/docs/Plugins/Comunidade" title="Plugins/Comunidade">Outros links para comunidades...</a></li>
- </ul>
-
- <h2 class="Tools" id="Ferramentas" name="Ferramentas">Ferramentas</h2>
-
- <ul>
- <li><a href="/pt-PT/docs/Referência_da_API_do_Plugin_Gecko" title="Referência_da_API_do_Plugin_Gecko">Referência da API do Plugin Gecko</a></li>
- <li><a href="/pt-PT/docs/Usar_o_XPInstall_para_instalar_Plugins" title="Usar_o_XPInstall_para_instalar_Plugins">Usar o XPInstall para instalar Plugins</a></li>
- <li><a href="/pt-PT/docs/Scripting_Plugins/Macromedia_Flash" title="Scripting_Plugins/Macromedia_Flash">Scripting Plugins: Macromedia Flash</a></li>
- </ul>
-
- <p><span class="alllinks"><a href="/pt-PT/docs/tag/Plugins:Ferramentas" title="tag/Plugins:Ferramentas">Veja todas...</a></span></p>
-
- <h2 class="Related_Topics" id="T.C3.B3picos_relacionados" name="T.C3.B3picos_relacionados">Tópicos relacionados</h2>
-
- <ul>
- <li><a href="/pt-PT/docs/Extensões" title="Extensões">Extensões</a>, <a href="/pt-PT/docs/SVG" title="SVG">SVG</a>, <span class="comment"><a href="/pt-PT/docs/HTML/Canvas" title="HTML/Canvas">Canvas</a></span></li>
- </ul>
- </td>
- </tr>
- </tbody>
-</table>
diff --git a/files/pt-pt/rdf/index.html b/files/pt-pt/rdf/index.html
deleted file mode 100644
index ba92a80ef9..0000000000
--- a/files/pt-pt/rdf/index.html
+++ /dev/null
@@ -1,63 +0,0 @@
----
-title: RDF
-slug: RDF
-tags:
- - RDF
- - Todas_as_Categorias
-translation_of: Archive/Web/RDF
----
-<div><strong>Resource Description Framework (RDF)</strong> (moldura de descrição de recursos) é a família de especificações de um modelo de meta-dados que é frequentemente implementada como uma aplicação de <a href="/pt/XML" title="pt/XML">XML</a>. A família de especificações RDF é mantida pelo <a class="external" href="http://www.w3.org/">World Wide Web Consortium</a>.
-<p>O modelo de meta-dados RDF é baseado na ideia de fazer declarações sobre recursos sob a forma de expressões sujeito-predicado-objecto, denominado de "triplo" na terminologia RDF. O sujeito é o recurso, ou seja, a "coisa" a ser descrita. O predicado é uma característica descritiva ou aspecto do recurso, e por vezes expressa uma relação entre o sujeito e o objecto. O objecto é o objecto da relação ou o valor da característica descritiva.</p>
-</div>
-
-<table class="topicpage-table">
- <tbody>
- <tr>
- <td>
- <h4 id="Documenta.C3.A7.C3.A3o" name="Documenta.C3.A7.C3.A3o"><a href="/Special:Tags?tag=RDF&amp;language=pt" title="Special:Tags?tag=RDF&amp;language=pt">Documentação</a></h4>
-
- <dl>
- <dt><a class="external" href="http://www.xml.com/pub/a/2001/01/24/rdf.html">What is RDF</a></dt>
- <dd><small>A introdução de Tim Bray à Resource Description Framework, em <a class="external" href="http://www.xml.com">XML.com</a>.</small></dd>
- </dl>
-
- <dl>
- <dt><a href="/pt/RDF_in_Mozilla_FAQ" title="pt/RDF_in_Mozilla_FAQ">RDF in Mozilla FAQ</a></dt>
- <dd><small>Frequently asked questions about the Resource Description Framework in Mozilla.</small></dd>
- </dl>
-
- <p><span class="comment">; <a href="/pt/RDF_em_Cinquenta_Palavras_ou_Menos" title="pt/RDF_em_Cinquenta_Palavras_ou_Menos">RDF em Cinquenta Palavras ou Menos</a> : &lt;small&gt;Uma pequena introdução à RDF.&lt;/small&gt;  ; <a href="/pt/RDF_Datasource_How-To" title="pt/RDF_Datasource_How-To">RDF Datasource How-To</a>: &lt;small&gt;A cookbook-style document describing how to create a native, client-side datasource that works with Mozilla's RDF implementation.&lt;/small&gt;  ; <a href="/pt/Aggregating_the_In-Memory_Datasource" title="pt/Aggregating_the_In-Memory_Datasource">Aggregating the In-Memory Datasource</a>: &lt;small&gt;Using the aggregation with the in-memory datasource.&lt;/small&gt;</span></p>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=RDF&amp;language=pt" title="Special:Tags?tag=RDF&amp;language=pt">Veja todos...</a></span></p>
- </td>
- <td>
- <h4 id="Comunidade" name="Comunidade">Comunidade</h4>
-
- <p>{{ DiscussionList("dev-tech-rdf", "mozilla.dev.tech.rdf") }}</p>
-
- <ul>
- <li><a href="/pt/RDF/Comunidade" title="pt/RDF/Comunidade">Outros links para comunidades...</a></li>
- </ul>
-
- <h4 id="Ferramentas" name="Ferramentas">Ferramentas</h4>
-
- <ul>
- <li><a class="external" href="http://planetrdf.com/guide/#sec-tools">Ferramentas e Editores RDF</a></li>
- <li><a class="external" href="http://www.w3.org/RDF/Validator/">Validadores RDF Validator</a></li>
- </ul>
-
- <p><span class="alllinks"><a href="/Special:Tags?tag=Ferramentas:RDF&amp;language=pt" title="Special:Tags?tag=Ferramentas:RDF&amp;language=pt">Veja todas...</a></span></p>
-
- <h4 id="T.C3.B3picos_relacionados" name="T.C3.B3picos_relacionados">Tópicos relacionados</h4>
-
- <dl>
- <dd><a href="/pt/XML" title="pt/XML">XML</a></dd>
- </dl>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p><span class="comment">Categorias</span></p>
-
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/social_api/index.html b/files/pt-pt/social_api/index.html
deleted file mode 100644
index ac0f0f72e7..0000000000
--- a/files/pt-pt/social_api/index.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: API Social
-slug: Social_API
-tags:
- - API
- - Landing
- - Mozilla
- - Social
-translation_of: Archive/Social_API
----
-<p>API Social é uma arquitetura que facilita a integração dos navegadores da Web com os serviços das redes sociais, utilziando as tecnologias da Web padrão, tal como a API. Assim que um provedor de serviços sociais é implementado para o Firefox, torna-se possível para o navegador integrar-se nos recursos da Web de um serviço, controles de utilizador no Chrome e informação relacionada com esse serviço. Os artigos seguintes explicam como implementar um provedor de serviços sociais.<br>
- <br>
- A 'API Social' suporta casos de utilização verticais específicos centrados nas interações sociais, mas não restringe rigidamente esses casos de utilização, permitindo flexibilidade e criatividade para terceiros. As funcionalidades específicas suportadas são notificações, partilha, marcadores (ou guardar para mais tarde), barras laterais e comunicações (por exemplo, conversação e vídeo).<br>
-  </p>
-
-<div class="row topic-page">
-<div class="section">
-<h2 class="Documentation" id="Documentação_da_API_Social">Documentação da API Social</h2>
-
-<dl>
- <dt><a href="/pt-PT/docs/Social_API/Glossario" title="/en-US/docs/Social_API/Glossary">Glossário da API Social</a></dt>
- <dd>Provides definitions of key terms you'll need to understand when using the Social API.</dd>
- <dt><a href="/en-US/docs/Social_API/Manifest" title="/en-US/docs/Social_API/Manifest">Social service manifest</a></dt>
- <dd>A description of—(TBD: and guide to building)—the manifest required.</dd>
- <dt><a href="/en-US/docs/Social_API/Service_worker_API_reference" title="/en-US/docs/Social_API/Service_worker_reference">Social service worker API reference</a> {{obsolete_inline(48)}}</dt>
- <dd>A reference to the social service worker API.</dd>
- <dt><a href="/en-US/docs/Archive/mozSocial" title="/en-US/docs/DOM/navigator.mozSocial">Social service content API: MozSocial</a> {{obsolete_inline(51)}}</dt>
- <dd>A reference to the social service content API, which is provided by the <code>mozSocial</code> object.</dd>
- <dt><a href="/en-US/docs/Social_API/Share" title="/en-US/docs/Social_API/Share">Social share API</a></dt>
- <dd>A reference to the Share API.</dd>
- <dt><a href="/en-US/docs/Social_API/Bookmarks" title="/en-US/docs/Social_API/Share">Social bookmarks API</a> {{obsolete_inline(51)}}</dt>
- <dd>A reference to the Social Bookmarks API.</dd>
- <dt><a href="/en-US/docs/Social_API/Status" title="/en-US/docs/Social_API/Share">Social status API</a> {{obsolete_inline(51)}}</dt>
- <dd>A reference to the Status API.</dd>
- <dt><a href="/en-US/docs/Social_API/Widgets" title="/en-US/docs/Social_API/Widgets">Social service widgets</a></dt>
- <dd>A guide to the widgets provided by the social service.</dd>
- <dt>Using the Firefox Devtools with the Social API</dt>
- <dd>Firefox has a number of <a href="/en-US/docs/Tools">development tools</a> that can be used to help with the development of <a href="/en-US/docs/Social_API">Social API</a> providers. However, until <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=839959" title="https://bugzilla.mozilla.org/show_bug.cgi?id=839959">bug 839959</a> lands the process isn't as simple as it should be. In the meantime, this page describes some workarounds.</dd>
-</dl>
-
-<h2 id="Como_criar_um_Provedor_de_API_Social">Como criar um Provedor de API Social</h2>
-
-<p>A step-by-step guide to create a simple Social API provider.</p>
-
-<dl>
- <dt><a href="/en-US/docs/Social_API/Guide/FirstSteps" title="/en-US/docs/Social_API/FirstSteps">Primeiros Passos</a></dt>
- <dd>The basics of getting an installable social provider running.</dd>
- <dt><a href="/en-US/docs/Social_API/Guide/AmbientNotifications" title="/en-US/docs/Social_API/Implementing_chat_functionality">Adicionar notificações de ambiente</a> {{obsolete_inline(51)}}</dt>
- <dd>A short guide to implementing ambient notifications using the Social API.</dd>
- <dt><a href="/en-US/docs/Social_API/Guide/Status" title="/en-US/docs/Social_API/Implementing_chat_functionality">Implementar estado e notificações</a> {{obsolete_inline(51)}}</dt>
- <dd>A guide to implementing a status panel with notifications using the Social API.</dd>
- <dt><a href="/en-US/docs/Social_API/Guide/Bookmarks" title="/en-US/docs/Social_API/Implementing_chat_functionality">Adicioanr suporte de marcadores</a> {{obsolete_inline(51)}}</dt>
- <dd>A short guide to implementing social bookmarks using the Social API.</dd>
- <dt><a href="/en-US/docs/Social_API/Guide/Share" title="/en-US/docs/Social_API/Implementing_chat_functionality">Implementar partilha</a></dt>
- <dd>A guide to implementing a share panel using the Social API.</dd>
- <dt><a href="/en-US/docs/Social_API/Guide/Chat" title="/en-US/docs/Social_API/Implementing_chat_functionality">Suporte para conversação </a>{{obsolete_inline(51)}}</dt>
- <dd>A guide to implementing chat features using the Social API.</dd>
-</dl>
-
-<p><span class="alllinks"><a href="/en-US/docs/tag/Social" title="/en-US/docs/tag/CSS">Ver Tudo...</a></span></p>
-</div>
-
-<div class="section">
-<h2 class="Community" id="Community" name="Community">Obter ajuda da comunidade</h2>
-
-<p>Precisa de ajuda com um problema relacionado com a API Social e não consegue encontrar a solução na documentação?</p>
-
-<ul>
- <li>Coloque a sua pergunta no canal de IRC da Mozilla: <a href="irc://irc.mozilla.org/socialdev" title="irc://irc.mozilla.org/socialdev">#socialdev</a></li>
-</ul>
-
-<p><span class="alllinks"><a class="external" href="http://www.catb.org/~esr/faqs/smart-questions.html" title="http://www.catb.org/~esr/faqs/smart-questions.html">Não se esqueça <em>sobre 'etiqueta da net'</em>...</a></span></p>
-
-<h2 class="Tools" id="Tools" name="Tools">Ferramentas e demonstrações</h2>
-
-<ul>
- <li><a href="https://github.com/mixedpuppy/socialapi-demo" title="https://github.com/mixedpuppy/socialapi-demo">A complete sample social service provider on github</a>.</li>
- <li><a href="https://github.com/mixedpuppy/socialapi-toolbarbutton">A sample using only a toolbarbutton</a>.</li>
- <li><a href="https://github.com/mixedpuppy/socialapi-sidebar">A sample sidebar project</a>. {{obsolete_inline(51)}}</li>
- <li><a href="/pt-PT/docs/Archive/Devtools_API_Social" title="/en-US/docs/Social_API_Devtools">Como utilziar as Ferramentas de Desenvolvimento do Firefox com a API Social</a>.</li>
-</ul>
-
-<p><span class="alllinks"><a href="/en-US/docs/tag/Social" title="/en-US/docs/tag/CSS:Tools">Ver Tudo...</a></span></p>
-
-<h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Provedores Sociais Disponíveis</h2>
-
-<p>Experimente qualquer dos vários provedores no site <a href="https://activations.cdn.mozilla.net/">Diretoria de APIs Sociais</a> (necessário Firefox 29 ou superior).</p>
-
-<h2 class="Related_Topics" id="Related_Topics" name="Related_Topics">Ttópicos Relacionados</h2>
-
-<ul>
- <li><a href="/pt-PT/docs/Apps" title="/en-US/docs/Apps">Abrir aplicações da Web</a></li>
-</ul>
-</div>
-</div>
-
-<p> </p>
diff --git a/files/pt-pt/tools/debugger/configurações/index.html b/files/pt-pt/tools/debugger/configurações/index.html
deleted file mode 100644
index bd111e5058..0000000000
--- a/files/pt-pt/tools/debugger/configurações/index.html
+++ /dev/null
@@ -1,59 +0,0 @@
----
-title: Configurações
-slug: Tools/Debugger/Configurações
-translation_of: Archive/Tools/Debugger_settings
----
-<div>{{ToolsSidebar}}</div><p>O Depurador tem o seu próprio menu de configurações, que pode aceder a partir de um ícone na <a href="/en-US/docs/Tools/Debugger/UI_Tour#toolbar">barra de ferramentas</a>:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/12930/debugger-options.png" style="display: block; height: 413px; margin-left: auto; margin-right: auto; width: 845px;"></p>
-
-<p>Cada definição é um comutador simples de lig./desl.:</p>
-
-<table class="standard-table">
- <tbody>
- <tr>
- <td style="width: 40%;"><strong>Auto Prettify Minified Sources</strong></td>
- <td>With this option enabled, the debugger will automatically detect minified JS files and <a href="/en-US/docs/Tools/Debugger/How_to/Pretty-print_a_minified_file">pretty-print</a> them.</td>
- </tr>
- <tr>
- <td><strong>Pause on Exceptions</strong></td>
- <td>When this option is enabled, execution of the script will automatically pause whenever a JavaScript exception is thrown.</td>
- </tr>
- <tr>
- <td><strong>Ignore Caught Exceptions</strong></td>
- <td>
- <p>If this option is set (it is set by default) and "Pause on exceptions" is set, then execution will pause on an exception only if that exception is not caught.</p>
-
- <p>This is usually the behavior you want. You don't generally want to pause execution when an exception that is thrown is caught, since that generally indicates that your program is handling it properly.</p>
- </td>
- </tr>
- <tr>
- <td><strong>Show Panes on Startup</strong></td>
- <td>When this option is enabled, the debugger's <a href="https://developer.mozilla.org/en-US/docs/Tools/Debugger/UI_Tour#Variables_pane" title="#variables-pane">variables pane</a> is visible when you first start the debugger.</td>
- </tr>
- <tr>
- <td><strong>Show Only Enumerable Properties</strong></td>
- <td>Do not display non-enumerable JavaScript properties.</td>
- </tr>
- <tr>
- <td><strong>Show Variables Filter Box</strong></td>
- <td>Enabling this option adds a "Filter variables" search box to the <a href="https://developer.mozilla.org/en-US/docs/Tools/Debugger/UI_Tour#Variables_pane" title="#variables-pane">variables pane</a>, so that you can filter the displayed list of variables.</td>
- </tr>
- <tr>
- <td><strong>Show Original Sources</strong></td>
- <td>Enabling this option will make the debugger use <a class="external external-icon" href="http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/" title="http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/">source maps</a>, if they are available, to display the original source for code which has been combined, minified, or even compiled to JavaScript from a language like CoffeeScript. Defaults to true.</td>
- </tr>
- <tr>
- <td><strong>Automatically Black Box Minified Sources</strong></td>
- <td>
- <div class="geckoVersionNote">
- <p>New in Firefox 33.</p>
- </div>
-
- <p><span id="summary_alias_container"><span id="short_desc_nonedit_display">Automatically <a href="/en-US/docs/Tools/Debugger/How_to/Black_box_a_source">black box</a> sources whose URL ends with ".min.js". Defaults to true.</span></span></p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p> </p>
diff --git a/files/pt-pt/tools/scratchpad/index.html b/files/pt-pt/tools/scratchpad/index.html
deleted file mode 100644
index c232451a3f..0000000000
--- a/files/pt-pt/tools/scratchpad/index.html
+++ /dev/null
@@ -1,126 +0,0 @@
----
-title: Scratchpad
-slug: Tools/Scratchpad
-tags:
- - Desenvolvimento da Web
- - 'Desenvolvimento da Web: Ferramentas'
- - Ferramentas
- - Scratchpad
- - 'l10n:priority'
-translation_of: Archive/Tools/Scratchpad
----
-<div>{{ToolsSidebar}}</div>
-
-<div class="blockIndicator warning">
-<p>Scratchpad is deprecated as of Firefox 70 (<a class="external" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1565380" rel="noopener" title="FIXED: Add deprecation warning to Scratchpad">bug 1565380</a>), and will be removed as of Firefox 72 (<a class="external" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1519103" rel="noopener" title="FIXED: Remove Scratchpad panel">bug 1519103</a>). As an alternative, starting in Firefox 71, you can use the multi-line mode of the <a href="https://developer.mozilla.org/en-US/docs/Tools/Web_Console/The_command_line_interpreter#Multi-line_mode">JavaScript console input</a>.</p>
-</div>
-
-<p>Scratchpad proporciona um ambiente para testar com o código JavaScript. Pode escrever, exeutar, e examinar tos resultados do código que interage com a página da Web.</p>
-
-<p>Ao contrário da <a href="/pt-PT/docs/Tools/Consola_da_Web" title="en/Using the Web Console">Consola da Web</a>, que foi desenhada para interpretar uma única linha de código, Scratchpad deixa-o editar grandes partes do código JavaScript, depois execute-o em vários modos, dependendo do modo em que pretende utilizar a saída.</p>
-
-<p>{{EmbedYouTube("Pt7DZACyClM")}}</p>
-
-<div class="blockIndicator note">
-<p>The featured video tutorial shows a case of using Scratchpad with a page run by a local web server. It is also possible to use Scratchpad over pages opened from a local file system, if permission policies allow that. But even with possible limitations present, the HTML code can be either manually entered or copied from the source and pasted into the "about:blank" page (a new empty tab) with the use <a href="/en-US/docs/Tools/Page_Inspector">Page Inspector</a>'s <em>Edit as HTML</em> context menu command.</p>
-</div>
-
-<h2 id="Utilização">Utilização</h2>
-
-<h3 id="Opening_Scratchpad_in_its_own_window">Opening Scratchpad in its own window</h3>
-
-<p>There are several different ways to open Scratchpad in its own window:</p>
-
-<ul>
- <li>press <kbd>Shift</kbd> + <kbd>F4</kbd>, or go to the Web Developer menu (which is a submenu in the Tools menu on OS X and Linux), then select Scratchpad</li>
- <li>click the wrench icon (<img alt="" src="https://mdn.mozillademos.org/files/12710/wrench-icon.png" style="height: 21px; width: 21px;">), which is in the main toolbar or under the Hamburger menu (<img alt="" src="https://mdn.mozillademos.org/files/12712/hamburger.png" style="height: 20px; width: 22px;">), then select "Scratchpad".</li>
-</ul>
-
-<p>This will open up Scratchpad in its own window.</p>
-
-<h3 id="Abrir_o_Scratchpad_na_Caixa_de_Ferramentas">Abrir o Scratchpad na Caixa de Ferramentas</h3>
-
-<div class="geckoVersionNote">New in Firefox 47.</div>
-
-<p>From Firefox 47, you can open Scratchpad inside the <a href="/en-US/docs/Tools/Tools_Toolbox">Toolbox</a>. First you need to check "Scratchpad" in the "Default Firefox Developer Tools" section of the <a href="/en-US/docs/Tools/Tools_Toolbox#Settings_2">Settings</a> page.</p>
-
-<p>Now Scratchpad will be available in the Toolbox, alongside other tools like the Page Inspector and the Web Console. This is especially useful in <a href="/en-US/docs/Tools/Web_Console/Split_console">split Console mode</a>: you can use Scratchpad for a persistent, multiline editor, and the Console to interact with the page.</p>
-
-<h3 id="Edição">Edição</h3>
-
-<p>The Scratchpad window looks something like this (on OS X the menu bar is at the top of the screen):</p>
-
-<p><img alt="A screenshot of the Scratchpad" src="https://mdn.mozillademos.org/files/5983/scratchpad.png"></p>
-
-<p>The File menu offers options to save and load JavaScript code snippets, so you can reuse code later if you like.</p>
-
-<h4 id="Conclusão_do_código">Conclusão do código</h4>
-
-<p>Scratchpad integrates the <a href="http://ternjs.net/">tern code analysis engine</a>, and uses that to provide autocomplete suggestions and popups containing information on the current symbol. To list autocomplete suggestions, press <kbd>Ctrl</kbd> + <kbd>Space</kbd>.</p>
-
-<p>For example, try typing <kbd>d</kbd>, then pressing <kbd>Ctrl</kbd> + <kbd>Space</kbd>. You'll see the autocomplete box, as shown below:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/7933/scratchpad-autocomplete.png" style="display: block; margin-left: auto; margin-right: auto;">The icon next to each suggestion indicates the type, and the currently highlighted suggestion gets a popup with more information. <kbd>↑</kbd> and <kbd>↓</kbd> cycle through the suggestions and <kbd>Enter</kbd> or <kbd>Tab</kbd> select the highlighted choice.</p>
-
-<h4 id="Inline_documentation">Inline documentation</h4>
-
-<p>To show the inline documentation popup, press <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>Space</kbd> when the cursor is on an identifier. For example, if you type <code>document</code>.<code>addEventListener</code>, then press <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>Space</kbd>, you'll see a popup that shows a summary of the function's syntax and a short description:</p>
-
-<p><img alt="" src="https://mdn.mozillademos.org/files/7935/scratchpad-symbolinfo.png" style="display: block; margin-left: auto; margin-right: auto;">The "[docs]" link takes you to the MDN documentation for the symbol.</p>
-
-<h3 id="Execução">Execução</h3>
-
-<p class="note">Once you've written your code, select the code you want to run. If you don't select anything, all the code in the window will be run. Then choose the way you want the code to run using the buttons along the top, using the Execute menu, or using the context menu. The code is executed in the scope of the currently selected tab. Any variables you declare outside of a function will be added to the global object for that tab.</p>
-
-<p>There are four execution options available.<strong> </strong></p>
-
-<h4 id="Executar">Executar</h4>
-
-<p>When you choose the Run option, the selected code is executed. This is what you'd use to execute a function or other code that manipulates the content of your page without needing to see the result.</p>
-
-<h4 id="Inspecionar">Inspecionar</h4>
-
-<p>The Inspect option executes the code just like the Run option; however, after the code returns, an object inspector is opened to let you examine the returned value.</p>
-
-<p>Por exemplo, se inserir o código:</p>
-
-<pre class="brush:css">window
-</pre>
-
-<p>Then choose Inspect, the object inspector is shown that looks something like this:</p>
-
-<p><img alt="Inspecting an object in the Scratchpad" src="https://mdn.mozillademos.org/files/5985/scratchpad-inspect.png"></p>
-
-<h4 id="Display">Display</h4>
-
-<p>The Display option executes the selected code, then inserts the result directly into your Scratchpad editor window as a comment, so you can use it as a <a href="http://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop">REPL</a>.</p>
-
-<h4 id="Reload_And_Run">Reload And Run</h4>
-
-<p>The Reload And Run option is only available in the Execute menu. It first reloads the page, then executes the code when the page's "load" event fires. This is useful for running the code in a pristine environment.</p>
-
-<h2 id="Executar_o_Scratchpad_no_contexto_do_navegador">Executar o Scratchpad no contexto do navegador</h2>
-
-<p>You can run Scratchpad in the context of the browser as a whole rather than a specific web page. This is useful if you are working on Firefox itself or developing add-ons. To do this check "Enable chrome and add-on debugging" in the <a href="/en-US/docs/Tools/Tools_Toolbox#Settings_2">Developer Tool Settings</a>. Once you've done this, the Environment menu has a Browser option; once that's selected, your scope is the entire browser rather than just the page content, as you will see from examining some globals:</p>
-
-<pre class="brush: js">window
-/*
-[object ChromeWindow]
-*/
-
-gBrowser
-/*
-[object XULElement]
-*/</pre>
-
-<p>The Scratchpad execution context is set to browser when a snippet file has<br>
- <code>// -sp-context: browser</code><br>
- on the first line.</p>
-
-<h2 id="Atalhos_de_teclado">Atalhos de teclado</h2>
-
-<p>{{ Page ("en-US/docs/tools/Keyboard_shortcuts", "scratchpad") }}</p>
-
-<h3 id="Atalhos_do_editor_fonte">Atalhos do editor fonte</h3>
-
-<p>{{ Page ("pt-PT/docs/tools/Keyboard_shortcuts", "source-editor") }}</p>
diff --git a/files/pt-pt/tools/webide/index.html b/files/pt-pt/tools/webide/index.html
deleted file mode 100644
index ade5815623..0000000000
--- a/files/pt-pt/tools/webide/index.html
+++ /dev/null
@@ -1,41 +0,0 @@
----
-title: WebIDE
-slug: Tools/WebIDE
-tags:
- - Aplicações
- - Apps
- - Depuração
- - Fiirefox OS
- - WebIDE
- - ferramenta
-translation_of: Archive/WebIDE
----
-<div>{{ToolsSidebar}}</div><div class="summary">
-<p>WebIDE permite-lhe criar, editar, executar, e depurar as aplicações da Web, utilizando o <a href="https://developer.mozilla.org/en-US/docs/Tools/Firefox_OS_Simulator">FSimulador de Firefox OS </a>ou um dispositivo real com o Firefox OS.</p>
-
-<p>It also enables you to connect the <a href="https://developer.mozilla.org/en-US/docs/Tools">Firefox Developer Tools</a> to a number of other browsers, including Firefox for Android, Chrome on Android, and Safari on iOS. See the <a href="https://developer.mozilla.org/en-US/docs/Tools/Remote_Debugging">Remote Debugging</a> page for instructions on how to connect to a specific browser.</p>
-</div>
-
-<p>With WebIDE, you first <a href="/en-US/docs/Tools/WebIDE/Setting_up_runtimes">set up one or more runtimes</a>. A runtime is an environment in which you'll run and debug the app. A runtime could be a Firefox OS device connected to the desktop over USB (or over Wi-Fi since <a href="/en-US/Firefox/Releases/39">Firefox 39</a>), or it could be a Firefox OS Simulator installed on the desktop itself.</p>
-
-<p>Next, you <a href="/en-US/docs/Tools/WebIDE/Creating_and_editing_apps">create an app, or open an existing app</a>. If you're creating a new app you can start with a template that includes the directory structure and the minimum boilerplate you need to get started, or a more complete template that shows how to use a privileged API. WebIDE shows your app's files in a tree, and you can edit and save them using a built-in source editor. Of course, you don't have to use the built-in editor: you can develop your app entirely outside WebIDE, and only use it for debugging.</p>
-
-<p>Finally, you can <a href="/en-US/docs/Tools/WebIDE/Running_and_debugging_apps">install the app in one of the runtimes and run it</a>. You can then open the usual suite of developer tools - the <a href="https://developer.mozilla.org/en-US/docs/Tools/Page_Inspector">Inspector</a>, <a href="https://developer.mozilla.org/en-US/docs/Tools/Web_Console">Console</a>, <a href="https://developer.mozilla.org/en-US/docs/Tools/Debugger">JavaScript Debugger</a> and so on - to examine and modify the running app.</p>
-
-<hr>
-<dl>
- <dt><a href="/en-US/docs/Tools/WebIDE/Opening_WebIDE">Abrir WebIDE</a></dt>
- <dd>How to open WebIDE from within Firefox.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/Setting_up_runtimes">Setting up runtimes</a></dt>
- <dd>How to connect to a runtime in which you can install apps, including Firefox OS devices, the the Firefox OS Simulator, and Firefox for Android.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/Creating_and_editing_apps">Criação e edição de aplicações</a></dt>
- <dd>How to create, open, and develop apps using WebIDE.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/The_runtime_menu">The runtime menu</a></dt>
- <dd>Once you've selected a runtime, use the runtime menu to get information about the runtime and its apps, modify settings, and take a screenshot.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/Running_and_debugging_apps">Running and debugging apps</a></dt>
- <dd>How to install apps to a runtime and debug them using the Firefox Developer Tools.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/Working_with_Cordova_apps_in_WebIDE">Working with Cordova apps in WebIDE</a></dt>
- <dd>From Firefox 39, you can edit and debug Cordova apps using WebIDE.</dd>
- <dt><a href="/en-US/docs/Tools/WebIDE/Troubleshooting">Resolução de Problemas</a></dt>
- <dd>Help for problems with WebIDE, especially problems connecting to a runtime.</dd>
-</dl>
diff --git a/files/pt-pt/web/css/azimuth/index.html b/files/pt-pt/web/css/azimuth/index.html
deleted file mode 100644
index 24e469dc63..0000000000
--- a/files/pt-pt/web/css/azimuth/index.html
+++ /dev/null
@@ -1,72 +0,0 @@
----
-title: azimuth
-slug: Web/CSS/azimuth
-tags:
- - Referencia_CSS
-translation_of: Archive/Web/CSS/azimuth
----
-<p>{{ CSSRef() }}</p>
-<h3 id="Resumo" name="Resumo">Resumo</h3>
-<p>Em combinação com <code><a href="/pt/CSS/elevation" title="pt/CSS/elevation">elevation</a></code>, <code>azimuth</code> habilita diferentes fontes de áudio para serem posicionadas espacialmente para apresentações aurais. Isto é importante porque proporciona uma maneira natural de contar várias vozes a parte, como cada uma pode ser posicionada para originar em uma localização diferente no estágio de som. Saída estéreo produz um estágio de som lateral, enquanto instalações de fones de ouvido e microfones permitem um estágio tridimencional completo.</p>
-<ul>
- <li>Valor inicial: center</li>
- <li>Aplica-se a: todos os elementos</li>
- <li>Herdado: sim</li>
- <li>Porcentagens: N/A</li>
- <li>Mídia: <a href="/pt/CSS/Media/Aural" title="pt/CSS/Media/Aural">aural</a></li>
- <li>Valor computado: ângulo normalizado</li>
-</ul>
-<h3 id="Sintaxe" name="Sintaxe">Sintaxe</h3>
-<pre class="eval">azimuth: <em>angle</em> | [[ left-side | far-left | left |
- center-left | center | center-right | right |
- far-right | right-side ] || behind ] | leftwards |
- rightwards | inherit
-</pre>
-<h3 id="Valores" name="Valores">Valores</h3>
-<dl>
- <dt>
- angle </dt>
- <dd>
- Posição de fonte audível é descrita como um ângulo dentro da faixa de <code>-360deg</code> até <code>360deg</code>. O valor <code>0deg</code> significa diretamente adiante do centro do estágio de som (este é o valor padrão). <code>90deg</code> é para a direita, <code>180deg</code> é atrás e <code>270deg</code> ou <code>-90deg</code> é para a esquerda.</dd>
-</dl>
-<p><img alt="Image:Azimuth.png"></p>
-<h4 id="Palavras-chave_relativas_a_posi.C3.A7.C3.A3o" name="Palavras-chave_relativas_a_posi.C3.A7.C3.A3o">Palavras-chave relativas a posição</h4>
-<ul>
- <li><strong>left-side</strong>: O mesmo que <code>270deg</code>.</li>
- <li><strong>left-side behind</strong>: O mesmo que <code>270deg</code>.</li>
- <li><strong>far-left</strong>: O mesmo que <code>300deg</code>.</li>
- <li><strong>far-left behind</strong>: O mesmo que <code>240deg</code>.</li>
- <li><strong>left</strong>: O mesmo que <code>320deg</code>.</li>
- <li><strong>left behind</strong>: O mesmo que <code>220deg</code>.</li>
- <li><strong>center-left</strong>: O mesmo que <code>340deg</code>.</li>
- <li><strong>center-left behind</strong>: O mesmo que <code>200deg</code>.</li>
- <li><strong>center</strong>: O mesmo que <code>0deg</code>.</li>
- <li><strong>center behind</strong>: O mesmo que <code>180deg</code>.</li>
- <li><strong>center-right</strong>: O mesmo que <code>20deg</code>.</li>
- <li><strong>center-right behind</strong>: O mesmo que <code>160deg</code>.</li>
- <li><strong>right</strong>: O mesmo que <code>40deg</code>.</li>
- <li><strong>right behind</strong>: O mesmo que <code>140deg</code>.</li>
- <li><strong>far-right</strong>: O mesmo que <code>60deg</code>.</li>
- <li><strong>far-right behind</strong>: O mesmo que <code>120deg</code>.</li>
- <li><strong>right-side</strong>: O mesmo que <code>90deg</code>.</li>
- <li><strong>right-side behind</strong>: O mesmo que <code>90deg</code>.</li>
- <li><strong>behind</strong>: O mesmo que <code>180deg</code>. Também é usado como um modificador para outros valores de palavras-chave posicionais, como acima.</li>
- <li><strong>leftwards</strong>: Move o som no sentido anti-horário em 20 graus, relativo ao ângulo corrente.</li>
- <li><strong>rightwards</strong>: Move o som no sentido horário em 20 graus, relatico ao ângulo corrente.</li>
-</ul>
-<h3 id="Exemplos" name="Exemplos">Exemplos</h3>
-<pre>h1 { azimuth: 30deg }
-td.a { azimuth: far-right } /* 60deg */
-#12 { azimuth: behind far-right } /* 120deg */
-p.comment { azimuth: behind } /* 180deg */
-</pre>
-<h3 id="Especifica.C3.A7.C3.B5es" name="Especifica.C3.A7.C3.B5es">Especificações</h3>
-<ul>
- <li><a class="external" href="http://www.w3.org/TR/CSS21/aural.html#spatial-props">CSS 2.1</a></li>
-</ul>
-<p><span class="comment">== Compatibilidade com navegadores == TBD (this might be abandoned in favour of a centralized compatibility chart)</span></p>
-<h3 id="Veja_tamb.C3.A9m" name="Veja_tamb.C3.A9m">Veja também</h3>
-<p>{{ Cssxref("elevation") }}</p>
-<p><span class="comment">Categorias</span></p>
-<p><span class="comment">Interwiki Language Links</span></p>
-<p>{{ languages( { "en": "en/CSS/azimuth", "fr": "fr/CSS/azimuth", "pl": "pl/CSS/azimuth" } ) }}</p>
diff --git a/files/pt-pt/web/css/como_começar/dados_xml/index.html b/files/pt-pt/web/css/como_começar/dados_xml/index.html
deleted file mode 100644
index d0245353fa..0000000000
--- a/files/pt-pt/web/css/como_começar/dados_xml/index.html
+++ /dev/null
@@ -1,239 +0,0 @@
----
-title: Dados XML
-slug: Web/CSS/Como_começar/Dados_XML
-tags:
- - 'CSS:Como_começar'
-translation_of: Archive/Beginner_tutorials/XML_data
----
-<p>{{ Previous("Web/CSS/Como_começar/Gráficos_SVG") }}</p>
-
-<p> </p>
-
-<p>Esta página contém um exemplo de como você pode usar o CSS com dados XML.</p>
-
-<p>Você cria um documento XML de amostra e uma folha de estilo que você pode usar para exibí-lo em seu navegador.</p>
-
-<h3 id="Informa.C3.A7.C3.A3o:_Dados_XML" name="Informa.C3.A7.C3.A3o:_Dados_XML">Informação: Dados XML</h3>
-
-<p><em><a href="/pt/XML" title="pt/XML">XML</a></em> (eXtensible Markup Language) é uma linguagem de propósito geral para qualquer tipo de dados estruturados.</p>
-
-<p>Por padrão, seu navegador Mozilla mostra o XML em um formato muito similar aos dados originais no arquivo XML. Você vê as tags reais que definem a estrutura dos dados.</p>
-
-<p>Ligando a folha de estilo CSS com o documento XML, você pode definir outras maneiras para mostrá-lo. Para fazer isto, sua folha de estilo usa regras que mapeiam os tags no documento XML para mostrar tipos usados pelo HTML.</p>
-
-<table style="border: 1px solid #36b; padding: 1em; background-color: #fffff4; margin-bottom: 1em;">
- <caption>Exemplo</caption>
- <tbody>
- <tr>
- <td>Dados em um documento XML usando tags <code>&lt;INFO&gt;</code>. Você quer que os elementos <small>INFO</small> do documento sejam mostrados como parágrafos no HTML.
- <p>Na folha de estilo do documento, você especifica como os elementos <small>INFO</small> serão exibidos:</p>
-
- <div style="width: 30em;">
- <pre class="eval">
-INFO {
- display: block;
- margin: 1em 0;
- }
-</pre>
- </div>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>Os valores mais comuns para a propriedade <code>display</code> são:</p>
-
-<table style="margin-left: 2em;">
- <tbody>
- <tr>
- <td style="padding-right: 2em;"><code>block</code></td>
- <td>Monstrado como <small>DIV</small> do HTML (para cabeçalhos, parágrafos)</td>
- </tr>
- <tr>
- <td><code>inline</code></td>
- <td>Mostrado como <small>SPAN</small> do HTML (para ênfases no texto)</td>
- </tr>
- </tbody>
-</table>
-
-<p>Adicione seu próprio estilo de regras para especificar a fonte, espaçamento e outros detalhes da mesma maneira que no HTML.</p>
-
-<table style="border: 1px solid #36b; padding: 1em; background-color: #f4f4f4; margin-bottom: 1em;">
- <caption>Mais detalhes</caption>
- <tbody>
- <tr>
- <td>Outros valores de <code>display</code> mostram o elemento como o item de uma lista, ou como o componente de uma tabela.
- <p>Para a lista completa de tipos de exibição, veja <a class="external" href="http://www.w3.org/TR/CSS21/visuren.html#propdef-display">The display property</a> em CSS Specification.</p>
-
- <p>Usando CSS sozinho, a estrutura de exibição precisa ser a mesma da estrutura do documento. Outras tecnologias pode modificar a estrutura da exibição — por exemplo, o XBL pode adicionar conteúdo, e o JavaScript pode modificar o DOM.</p>
-
- <p>Para mais informações sobre o XML no Mozilla, veja a página <a href="/pt/XML" title="pt/XML">XML</a> neste wiki.</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="A.C3.A7.C3.A3o:_Uma_demonstra.C3.A7.C3.A3o_XML" name="A.C3.A7.C3.A3o:_Uma_demonstra.C3.A7.C3.A3o_XML">Ação: Uma demonstração XML</h3>
-
-<p>Crie um novo arquivo XML, <code>doc9.xml</code>. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela e pego tudo isto:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>&lt;?xml version="1.0"?&gt;
-&lt;!-- XML demonstration --&gt;
-
-&lt;?xml-stylesheet type="text/css" href="style9.css"?&gt;
-
-&lt;!DOCTYPE planet&gt;
-&lt;planet&gt;
-
-&lt;ocean&gt;
-&lt;name&gt;Arctic&lt;/name&gt;
-&lt;area&gt;13,000&lt;/area&gt;
-&lt;depth&gt;1,200&lt;/depth&gt;
-&lt;/ocean&gt;
-
-&lt;ocean&gt;
-&lt;name&gt;Atlantic&lt;/name&gt;
-&lt;area&gt;87,000&lt;/area&gt;
-&lt;depth&gt;3,900&lt;/depth&gt;
-&lt;/ocean&gt;
-
-&lt;ocean&gt;
-&lt;name&gt;Pacific&lt;/name&gt;
-&lt;area&gt;180,000&lt;/area&gt;
-&lt;depth&gt;4,000&lt;/depth&gt;
-&lt;/ocean&gt;
-
-&lt;ocean&gt;
-&lt;name&gt;Indian&lt;/name&gt;
-&lt;area&gt;75,000&lt;/area&gt;
-&lt;depth&gt;3,900&lt;/depth&gt;
-&lt;/ocean&gt;
-
-&lt;ocean&gt;
-&lt;name&gt;Southern&lt;/name&gt;
-&lt;area&gt;20,000&lt;/area&gt;
-&lt;depth&gt;4,500&lt;/depth&gt;
-&lt;/ocean&gt;
-
-&lt;/planet&gt;
-</pre>
-</div>
-
-<p>Crie um novo arquivo CSS, <code>style9.css</code>. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela e pego tudo isto:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>/*** XML demonstration ***/
-
-planet:before {
- display: block;
- width: 8em;
- font-weight: bold;
- font-size: 200%;
- content: "Oceans";
- margin: -.75em 0px .25em -.25em;
- padding: .1em .25em;
- background-color: #cdf;
- }
-
-planet {
- display: block;
- margin: 2em 1em;
- border: 4px solid #cdf;
- padding: 0px 1em;
- background-color: white;
- }
-
-ocean {
- display: block;
- margin-bottom: 1em;
- }
-
-name {
- display: block;
- font-weight: bold;
- font-size: 150%;
- }
-
-area {
- display: block;
- }
-
-area:before {
- content: "Area: ";
- }
-
-area:after {
- content: " million km\B2";
- }
-
-depth {
- display: block;
- }
-
-depth:before {
- content: "Mean depth: ";
- }
-
-depth:after {
- content: " m";
- }
-</pre>
-</div>
-
-<p>Abra o documento em seu navegador:</p>
-
-<table style="border: 2px outset #36b; padding: 1em;">
- <tbody>
- <tr>
- <td>
- <div style="border: 2px solid #cdf; border-bottom: none; padding: .5em 8em 1em .5em;">
- <p style="font-size: 150%; font-weight: bold; margin: -1em 0px 0px 0px; padding: .1em .25em; background-color: #cdf; width: 8em;">Oceans</p>
-
- <p style="font-size: 75%; margin: .25em 0px 0px 0px; line-height: 110%;"><strong>Arctic</strong><br>
- Area: 13,000 million km²<br>
- Mean depth: 1,200 m</p>
-
- <p style="font-size: 75%; margin: .5em 0px 0px 0px; line-height: 110%;"><strong>Atlantic</strong><br>
- Area: 87,000 million km²<br>
- Mean depth: 3,900 m</p>
-
- <p style="font-size: 75%; margin: .5em 0px 0px 0px; line-height: 110%;"><strong>. . .</strong></p>
- </div>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p><br>
- Notas sobre esta demonstração:</p>
-
-<ul>
- <li>O 2 sobre-escrito (em "million km²") um caractér Unicode, é codificado com <code>\B2</code> no arquivo CSS.</li>
- <li>O cabeçalho, "Oceans", tem uma margem negativa no topo, movendo-o para cima quando exibido no topo da borda.</li>
-</ul>
-
-<p> </p>
-
-<table style="border: 1px solid #36b; padding: 1em; background-color: #fffff4; margin-bottom: 1em;">
- <caption>Desafio</caption>
- <tbody>
- <tr>
- <td>Mude a folha de estilo de modo que ela mostre o documento como uma tabela.
- <p>(Veja o capítulo <a class="external" href="http://www.w3.org/TR/CSS21/tables.html">Tables</a> em CSS Specification para exemplos que você pode adaptar.)</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h4 id="O_que_vem_depois.3F" name="O_que_vem_depois.3F">O que vem depois?</h4>
-
-<p>Se você teve dificuldade para entender esta página, ou se você tem algum comentário sobre ela, por favor contribua nesta página de <a href="/Talk:pt/CSS/Como_come%C3%A7ar/Dados_XML" title="Talk:pt/CSS/Como_começar/Dados_XML">Discussão</a>.</p>
-
-<p>Esta é a última página do tutorial. Para mais informações sobre CSS no Mozilla, veja a página principal <a href="/pt/CSS" title="pt/CSS">CSS</a> neste wiki.</p>
-
-<p>{{ Previous("Web/CSS/Como_começar/Gráficos_SVG") }}</p>
-
-<p><span class="comment">Categorias</span></p>
-
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/web/css/como_começar/interfaces_de_usuário_xul/index.html b/files/pt-pt/web/css/como_começar/interfaces_de_usuário_xul/index.html
deleted file mode 100644
index 46408abaa8..0000000000
--- a/files/pt-pt/web/css/como_começar/interfaces_de_usuário_xul/index.html
+++ /dev/null
@@ -1,336 +0,0 @@
----
-title: Interfaces de usuário XUL
-slug: Web/CSS/Como_começar/Interfaces_de_usuário_XUL
-tags:
- - 'CSS:Como_começar'
-translation_of: Archive/Beginner_tutorials/XUL_user_interfaces
----
-<p>{{ PreviousNext("CSS:Como começar:XBL bindings", "CSS:Como começar:Gráficos SVG") }}</p>
-
-<p>Esta página ilustra a linguagem especializada do Mozilla para criação de interfaces de usuário.</p>
-
-<p>Você cria uma simples demonstração que roda no seu navegador Mozilla.</p>
-
-<h2 id="Informa.C3.A7.C3.A3o_Intefaces_de_usu.C3.A1rio" name="Informa.C3.A7.C3.A3o:_Intefaces_de_usu.C3.A1rio">Informação: Interfaces de usuário</h2>
-
-<p>Embora o HTML tenha algum suporte à interfaces de usuário, ele não suporta todas as características que você precisa para fazer uma aplicação autônoma.</p>
-
-<p>O Mozilla supera esta limitação providenciando uma linguagem especializada para criar interfaces de usuário: <em>XUL</em> (XML User-interface Language, usualmente pronunciada como "<em>zool</em>").</p>
-
-<p>Em XUL, muitas características comuns de interfaces de usuário podem ser construídas. Por exemplo, XUL proporciona janelas especializadas como diálogos, assim como barras de estado, menus, barras de ferramenta, e mesmo navegadores.</p>
-
-<p>Mais características especializadas podem ser construídas em partes usando XUL juntamente com outras tecnologias que você viu neste tutorial: estilo CSS, código JavaScript e XBL bindings.</p>
-
-<p>Como outras linguagens baseadas em XML, XUL usa folhas de estilo CSS.</p>
-
-<table style="background-color: #f4f4f4; border: 1px solid #3366bb; margin-bottom: 1em; padding: 1em; width: 100%;">
- <caption>Mais detalhes</caption>
- <tbody>
- <tr>
- <td>Para maiores informações sobre interfaces de usuário XUL, veja a página <a href="/pt/XUL" title="pt/XUL">XUL</a> neste wiki.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="A.C3.A7.C3.A3o_Uma_demonstra.C3.A7.C3.A3o_XUL" name="A.C3.A7.C3.A3o:_Uma_demonstra.C3.A7.C3.A3o_XUL">Ação: Uma demonstração XUL</h2>
-
-<p>Crie um novo documento XUL de um simples arquivo de texto, <code>doc7.xul</code>. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela para pegar tudo isto:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>&lt;?xml version="1.0"?&gt;
-&lt;?xml-stylesheet href="chrome://global/skin/" type="text/css"?&gt;
-&lt;?xml-stylesheet type="text/css" href="style7.css"?&gt;
-
-&lt;window
- xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
- title="CSS Getting Started - XUL demonstration"
- onload="init();"&gt;
-
-&lt;script type="application/x-javascript" src="script7.js"/&gt;
-
-&lt;label class="head-1" value="XUL demonstration"/&gt;
-
-&lt;vbox&gt;
-
- &lt;groupbox class="demo-group"&gt;
- &lt;caption label="Day of week calculator"/&gt;
- &lt;grid&gt;
- &lt;columns&gt;
- &lt;column/&gt;
- &lt;column/&gt;
- &lt;/columns&gt;
- &lt;rows&gt;
- &lt;row&gt;
- &lt;label class="text-prompt" value="Date:"
- accesskey="D" control="date-text"/&gt;
- &lt;textbox id="date-text" type="timed"
- timeout="750" oncommand="refresh();"/&gt;
- &lt;/row&gt;
- &lt;row&gt;
- &lt;label value="Day:"/&gt;
- &lt;hbox id="day-box"&gt;
- &lt;label class="day" value="Sunday" disabled="true"/&gt;
- &lt;label class="day" value="Monday" disabled="true"/&gt;
- &lt;label class="day" value="Tuesday" disabled="true"/&gt;
- &lt;label class="day" value="Wednesday" disabled="true"/&gt;
- &lt;label class="day" value="Thursday" disabled="true"/&gt;
- &lt;label class="day" value="Friday" disabled="true"/&gt;
- &lt;label class="day" value="Saturday" disabled="true"/&gt;
- &lt;/hbox&gt;
- &lt;/row&gt;
- &lt;/rows&gt;
- &lt;/grid&gt;
- &lt;hbox class="buttons"&gt;
- &lt;button id="clear" label="Clear" accesskey="C"
- oncommand="clearDate();"/&gt;
- &lt;button id="today" label="Today" accesskey="T"
- oncommand="setToday();"/&gt;
- &lt;/hbox&gt;
- &lt;/groupbox&gt;
-
- &lt;statusbar&gt;
- &lt;statusbarpanel id="status"/&gt;
- &lt;/statusbar&gt;
-
-&lt;/vbox&gt;
-
-&lt;/window&gt;
-</pre>
-</div>
-
-<p>Crie um novo arquivo CSS, <code>style7.css</code>. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela para pegar tudo isto:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>/*** XUL demonstration ***/
-window {
- -moz-box-align: start;
- background-color: -moz-dialog;
- font: -moz-dialog;
- padding: 2em;
- }
-
-.head-1 {
- font-weight: bold;
- font-size: 200%;
- padding-left: 5px;
- }
-
-
-/* the group box */
-.demo-group {
- padding: 1em;
- }
-
-.demo-group grid {
- margin-bottom: 1em;
- }
-
-.demo-group column {
- margin-right: .5em;
- }
-
-.demo-group row {
- margin-bottom: .5em;
- }
-
-.demo-group .buttons {
- -moz-box-pack: end;
- }
-
-
-/* the day-of-week labels */
-.day {
- margin-left: 1em;
- }
-
-.day[disabled] {
- color: #777;
- }
-
-.day:first-child {
- margin-left: 4px;
- }
-
-
-/* the left column labels */
-.text-prompt {
- padding-top: .25em;
- }
-
-
-/* the date input box */
-#date-text {
- max-width: 8em;
- }
-
-
-/* the status bar */
-statusbar {
- width: 100%;
- border: 1px inset -moz-dialog;
- margin: 4px;
- padding: 0px 4px;
- }
-
-#status {
- padding: 4px;
- }
-
-#status[warning] {
- color: red;
- }
-</pre>
-</div>
-
-<p>Crie um novo arquivo de texto, <code>script7.js</code>. Copie e cole o conteúdo daqui, tendo certeza de ter rolado a tela e pego todo o conteúdo daqui:</p>
-
-<div style="width: 48em; height: 12em; overflow: auto;">
-<pre>// XUL demonstration
-
-var dateBox, dayBox, currentDay, status; // elements
-
-// called by window onLoad
-function init() {
- dateBox = document.getElementById("date-text")
- dayBox = document.getElementById("day-box")
- status = document.getElementById("status")
- setToday();
- }
-
-// called by Clear button
-function clearDate() {
- dateBox.value = ""
- refresh()
- }
-
-// called by Today button
-function setToday() {
- var d = new Date()
- dateBox.value = (d.getMonth() + 1)
- + "/" + d.getDate()
- + "/" + d.getFullYear()
- refresh()
- }
-
-// called by Date textbox
-function refresh() {
- var d = dateBox.value
- var theDate = null
-
- showStatus(null)
- if (d != "") {
- try {
- var a = d.split("/")
- var theDate = new Date(a[2], a[0] - 1, a[1])
- showStatus(theDate)
- }
- catch (ex) {}
- }
- setDay(theDate)
- }
-
-// internal
-function setDay(aDate) {
- if (currentDay) currentDay.setAttribute("disabled", "true")
- if (aDate == null) currentDay = null
- else {
- var d = aDate.getDay()
- currentDay = dayBox.firstChild
- while (d-- &gt; 0) currentDay = currentDay.nextSibling
- currentDay.removeAttribute("disabled")
- }
- dateBox.focus();
- }
-
-function showStatus(aDate) {
- if (aDate == null) {
- status.removeAttribute("warning")
- status.setAttribute("label", "")
- }
- else if (aDate === false || isNaN(aDate.getTime())) {
- status.setAttribute("warning", "true")
- status.setAttribute("label", "Date is not valid")
- }
- else {
- status.removeAttribute("warning")
- status.setAttribute("label", aDate.toLocaleDateString())
- }
- }
-</pre>
-</div>
-
-<p>Para ver o resultado exatamente como pretendido use o tema padrão do seu navegador. Se você usa um tema diferente, isto mode mudar alguns estilos da interface do usuário e a demonstração pode parecer estranha.</p>
-
-<p>Abra o documento no seu navegador Mozilla e use a interface.</p>
-
-<p>Este wiki não suporta XUL e JavaScript nas páginas, então não é possível fazer a demonstração aqui. Deve se parecer com isto:</p>
-
-<table style="background-color: threedface; border: 2px outset #3366bb; cursor: default; margin: .5em 0; padding: 1em; white-space: nowrap;">
- <tbody>
- <tr>
- <td>
- <p style="font-size: 150%; font-weight: bold; margin: 0; padding: 0;">XUL demonstration</p>
-
- <div style="position: relative; border: 2px groove threedhighlight; margin-top: 1em;">
- <p style="float: left; margin: -1em 0 0 .5em; padding: 0; background-color: threedface;">Day of week calculator</p>
-
- <table style="background-color: threedface; margin: .5em; padding-right: .5em;">
- <tbody>
- <tr>
- <td style="padding-right: .5em;"><u>D</u>ate:</td>
- <td style="background-color: white; border: 1px solid #000; width: 8em; float: left; cursor: text; padding: .15em .25em;">6/27/2005</td>
- </tr>
- <tr>
- <td>Day:</td>
- <td style="color: graytext;">Sunday <span style="color: #000000;">Monday</span> Tuesday Wednesday Thurdsay Friday Saturday</td>
- </tr>
- <tr>
- <td></td>
- <td>
- <div style="float: right; margin-top: .5em;">
- <p><span style="border: 2px outset threedface; padding: .25em 1em;"><u>C</u>lear</span> <span style="border: 2px outset threedface; padding: .25em 1em;"><u>T</u>oday</span></p>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
-
- <div style="border: 1px inset threedface; margin-top: 1em;">
- <p style="margin: 0; padding: .25em .5em;">June 27, 2005</p>
- </div>
- </td>
- </tr>
- </tbody>
-</table>
-
-<p>Notas sobre esta demonstração:</p>
-
-<ul>
- <li>O documento XUL é ligado à folha de estilo normalmente, e também ligado ao script.</li>
- <li>O script não é importante nesta demonstração.</li>
- <li>Muito do estilo que você vê é determinado pelo tema do seu navegador.</li>
-</ul>
-
-<p>Examine a folha de estilo do documento para ver se você entende todas as regras dele. Se houver alguma regra que você não entende, comente-a e atualize o seu navegador para ver o efeito no documento.</p>
-
-<table style="background-color: #fffff4; border: 1px solid #3366bb; margin-bottom: 1em; padding: 1em;">
- <caption>Desafio</caption>
- <tbody>
- <tr>
- <td>Use a ferramenta DOM Inspector para examinar a caixa de texto Date. Ela é feita de outros elementos que são gerados por seu XBL binding.
- <p>Descubra a <em>classe</em> do elemento <code>html:input</code>. Este é o elemento que atualmente recebe a entrada do usuário.</p>
-
- <p>Usando este conhecimento, adicione uma regra à sua folha de estilo que faça o fundo da caixa Date de um azul pálido quando ele tiver o foco do teclado (mas branco quando o foco do teclado estiver em outro lugar).</p>
- </td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="O_que_vem_depois.3F" name="O_que_vem_depois.3F">O que vem depois?</h3>
-
-<p>Se você teve dificuldade para entender esta página, ou se você tem algum comentário sobre ela, por favor contribua nesta página de <a href="/Talk:pt/CSS/Como_come%C3%A7ar/Intefaces_de_usu%C3%A1rio" title="Talk:pt/CSS/Como_começar/Intefaces_de_usuário">Discussão</a>.</p>
-
-<p>Nesta demonstração, você viu que as formas retangulares padrão são comuns na maioria das interfaces de usuário. Mozilla também suporta uma linguagem especializada de gráficos para criar padrões, usando folhas de estilo CSS para especificar o estilo. A próxima página demonstra isto: <strong><a href="/pt/CSS/Como_come%C3%A7ar/Gr%C3%A1ficos_SVG" title="pt/CSS/Como_começar/Gráficos_SVG">Gráficos SVG</a></strong></p>
-
-<p>{{ PreviousNext("CSS:Como começar:XBL bindings", "CSS:Como começar:Gráficos SVG") }}</p>
diff --git a/files/pt-pt/web/javascript/novidades_no_javascript/index.html b/files/pt-pt/web/javascript/novidades_no_javascript/index.html
deleted file mode 100644
index 42d40e9929..0000000000
--- a/files/pt-pt/web/javascript/novidades_no_javascript/index.html
+++ /dev/null
@@ -1,80 +0,0 @@
----
-title: Novidades no JavaScript
-slug: Web/JavaScript/Novidades_no_JavaScript
-tags:
- - NeedsTranslation
- - TopicStub
-translation_of: Archive/Web/JavaScript/New_in_JavaScript
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>This chapter contains information about JavaScript's version history and implementation status for Mozilla/SpiderMonkey-based JavaScript applications, such as Firefox.</p>
-
-<h2 id="ECMAScript_versions">ECMAScript versions</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Web/JavaScript/Language_Resources">Language resources</a></dt>
- <dd>Learn more about the ECMAScript standards on which the JavaScript language is based on.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_5_support_in_Mozilla">ECMAScript 5 support</a></dt>
- <dd>Implementation status for the current standard ECMA-262 Edition 5.1 in Mozilla-based engines and products.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla">ECMAScript 6 support</a></dt>
- <dd>Implementation status for the draft ECMA-262 Edition 6 in Mozilla-based engines and products.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_7_support_in_Mozilla">ECMAScript 7 support</a></dt>
- <dd>Implementation status for the upcoming ECMA-262 Edition 7 in Mozilla-based engines and products.</dd>
-</dl>
-
-<h2 id="JavaScript_release_notes">JavaScript release notes</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/Firefox_JavaScript_changelog">Firefox JavaScript changelog</a></dt>
- <dd>See this changelog for JavaScript features implemented in Firefox 5 and later.</dd>
- <dt>Chrome JavaScript changelog</dt>
- <dd>(TODO). See this changelog for JavaScript features implemented in Chrome releases.</dd>
-</dl>
-
-<h2 id="JavaScript_versions">JavaScript versions</h2>
-
-<p><strong>Deprecated</strong> ({{deprecated_inline()}}). The explicit versioning and opt-in of language features was Mozilla-specific and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=867609">is in process of being removed</a>. Firefox 4 was the last version which referred to an JavaScript version (1.8.5). With new ECMA standards, JavaScript language features are now often mentioned with their initial definition in ECMA-262 Editions such as Edition 6 (ES6).</p>
-
-<p>JavaScript was released as version 1.0 in March 1996 in Netscape Navigator 2.0 and Internet Explorer 2.0.</p>
-
-<dl>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.1">JavaScript 1.1</a></dt>
- <dd>Version shipped in Netscape Navigator 3.0. Released on August 19, 1996.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.2">JavaScript 1.2</a></dt>
- <dd>Version shipped in Netscape Navigator 4.0-4.05. Released on June 11, 1997.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.3">JavaScript 1.3</a></dt>
- <dd>Version shipped in Netscape Navigator 4.06-4.7x. Released on October 19, 1998.<br>
- Standardization work to be compliant with ECMA-262 1st and 2nd Edition.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.4">JavaScript 1.4</a></dt>
- <dd>Version shipped in Netscape's server side JavaScript. Released in 1999.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.5">JavaScript 1.5</a></dt>
- <dd>Version shipped in Netscape Navigator 6.0 and Firefox 1.0. Release on November 14, 2000.<br>
- Standardization work to be compliant with ECMA-262 3rd Edition.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.6">JavaScript 1.6</a></dt>
- <dd>Version shipped in Firefox 1.5. Released in November 2005.<br>
- Includes ECMAScript for XML (E4X), new <code>Array</code> methods plus <code>String</code> and <code>Array</code> generics.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7">JavaScript 1.7</a></dt>
- <dd>Version shipped in Firefox 2. Released in October 2006.<br>
- Includes generators, iterators, array comprehensions, <code>let</code> expressions, and destructuring assignment.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.8">JavaScript 1.8</a></dt>
- <dd>Version shipped in Firefox 3. Released in June 2008.<br>
- Includes expression closures, generator expressions and <code>Array.reduce()</code></dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.8.1">JavaScript 1.8.1</a></dt>
- <dd>Version shipped in Firefox 3.5. Released on <span class="st">June 30, 2009.<br>
- Includes the TraceMonkey JIT and supports native JSON.</span></dd>
- <dt>JavaScript 1.8.2</dt>
- <dd>Version shipped in Firefox 3.6. Released June 22, 2009.<br>
- Includes only minor changes.</dd>
- <dt><a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.8.5">JavaScript 1.8.5</a></dt>
- <dd>Version shipped in Firefox 4. Released July 27, 2010.<br>
- Includes many new features for ECMA-262 Edition 5 compliance.<br>
- This is the last JavaScript version.</dd>
-</dl>
-
-<h2 id="Features_still_requiring_version_opt-in">Features still requiring version opt-in</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Web/JavaScript/Reference/Statements/let"><code>let</code> statement</a></dt>
- <dd>The <code>let</code> statement requires the JavaScript version 1.7 (or higher) opt-in. See {{bug(932517)}} and {{bug(932513)}}.</dd>
-</dl>
diff --git a/files/pt-pt/web/javascript/novidades_no_javascript/novidades_no_javascript_1.8/index.html b/files/pt-pt/web/javascript/novidades_no_javascript/novidades_no_javascript_1.8/index.html
deleted file mode 100644
index 4791e4d0e9..0000000000
--- a/files/pt-pt/web/javascript/novidades_no_javascript/novidades_no_javascript_1.8/index.html
+++ /dev/null
@@ -1,136 +0,0 @@
----
-title: Novidades no Javascript 1.8
-slug: Web/JavaScript/Novidades_no_JavaScript/Novidades_no_Javascript_1.8
-tags:
- - JavaScript
- - Todas_as_Categorias
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.8
----
-<p>{{jsSidebar("New_in_JS")}}</p>
-
-<p>O JavaScript 1.8 está programado para ser lançado como parte do Gecko 1.9 (que será incorporado ao <a href="/pt/Firefox_3_para_desenvolvedores" title="pt/Firefox_3_para_desenvolvedores">Firefox 3</a>). Esta é uma atualização menos substancial que o <a href="/en/New_in_JavaScript_1.7">JavaScript 1.7</a>, mas tem algumas atualizações para acompanhar o progresso rumo ao ECMAScript 4/JavaScript 2. Esta liberação incluirá todas as novas características especificadas no <a href="/en/New_in_JavaScript_1.6">JavaScript 1.6</a> e <a href="/en/New_in_JavaScript_1.7">JavaScript 1.7</a>.</p>
-
-<p>Veja o {{ Bug(380236) }} para acompanhar o progresso do desenvolvimento do JavaScript 1.8.</p>
-
-<h2 id="Usando_JavaScript_1.8" name="Usando_JavaScript_1.8">Usando JavaScript 1.8</h2>
-
-<p>A fim de usar algumas das novas características do JavaScript 1.8 no HTML, use:</p>
-
-<pre class="eval"> &lt;script type="application/javascript;version=1.8"&gt; ... seu código ... &lt;/script&gt;
-</pre>
-
-<p>Quando usando o <a href="/en/Introduction_to_the_JavaScript_shell">JavaScript shell</a>, componentes XPCOM ou elementos XUL <code>&lt;script&gt;</code>, a versão mais recente do Javascript (1.8 no Mozilla 1.9) é usada automaticamente ({{ Bug(381031) }}, {{ Bug(385159) }}).</p>
-
-<p>Os recursos que requerem o uso das novas palavras-chave "yield" e "let" requerem que você especifique a versão 1.7 ou mais recente, porque o código existente pode usar estas palavras-chave como variáveis ou nomes de função. Os recursos que não introduzem novas palavras-chave (como o gerador de expressões) podem ser usados sem que seja necessário especificar a versão do JavaScript.</p>
-
-<h2 id="Fechamentos_de_express.C3.B5es" name="Fechamentos_de_express.C3.B5es">Fechamentos de expressões</h2>
-
-<p>Esta adição nada mais é que uma abreviação para escrever funções simples, dando à linguagem algo similar a uma típica <a class="external" href="http://en.wikipedia.org/wiki/Lambda_calculus#Lambda_calculus_and_programming_languages">notação lambda</a>.</p>
-
-<p>JavaScript 1.7 e mais antigos:</p>
-
-<pre class="eval"> function(x) { return x * x; }
-</pre>
-
-<p>JavaScript 1.8:</p>
-
-<pre class="eval"> function(x) x * x
-</pre>
-
-<p>Esta sintaxe permite que você deixe de fora as chaves e a declaração 'return' — fazendo-as implícitas. Não há benefício adicionado ao se escrever código desta maneira, à exceção de ser sintaticamente mais curto.</p>
-
-<p><strong>Exemplos:</strong></p>
-
-<p>Uma abreviação para ligar ouvintes de evento:</p>
-
-<pre class="eval"> document.addEventListener("click", function() false, true);
-</pre>
-
-<p>Usando esta notação com alguma das funções de array do JavaScript 1.6:</p>
-
-<pre class="eval"> elems.some(function(elem) elem.type == "text");
-</pre>
-
-<h2 id="Gerador_de_express.C3.B5es" name="Gerador_de_express.C3.B5es">Gerador de expressões</h2>
-
-<p>Esta adição permite que você crie geradores de maneira simples (que foram introduzidos no JavaScript 1.7). Tipicamente você teria que criar uma função personalizada contendo a palavra-chave yield, mas esta adição permite que você use uma sintaxe semelhante à compreensão de arrays para criar uma instrução geradora idêntica.</p>
-
-<p>No JavaScript 1.7, você poderia escrever algo como o seguinte, a fim de criar um gerador personalizado para um objeto:</p>
-
-<pre class="eval"> function add3(obj) {
- for ( let i in obj )
- yield i + 3;
- }
-
- let it = add3(someObj);
- try {
- while (true) {
- document.write(it.next() + "&lt;br&gt;\n");
- }
- } catch (err if err instanceof StopIteration) {
- document.write("End of record.&lt;br&gt;\n");
- }
-</pre>
-
-<p>No JavaScript 1.8, você pode contornar a criação de uma função de gerador personalizada usando um gerador de expressões em vez disso:</p>
-
-<pre class="eval"> let it = (i + 3 for (i in someObj));
- try {
- while (true) {
- document.write(it.next() + "&lt;br&gt;\n");
- }
- } catch (err if err instanceof StopIteration) {
- document.write("End of record.&lt;br&gt;\n");
- }
-</pre>
-
-<p>Geradores de expressões também podem ser passados como valores a uma função. Isto é particularmente notável de modo que geradores não serão executados antes que seja absolutamente necessário (diferente de típicas situações de compreensão de array, onde os arrays são construídos antes do tempo). Um exemplo da diferença pode ser visto aqui:</p>
-
-<p>Usando a compreensão de array do JavaScript 1.7</p>
-
-<pre class="eval"> handleResults([ i for ( i in obj ) if ( i &gt; 3 ) ]);
-
- function handleResults( results ) {
- for ( let i in results )
- // ...
- }
-</pre>
-
-<p>Usando o gerador de expressões do JavaScript 1.8</p>
-
-<pre class="eval"> handleResults( i for ( i in obj ) if ( i &gt; 3 ) );
-
- function handleResults( results ) {
- for ( let i in results )
- // ...
- }
-</pre>
-
-<p>A diferença significativa entre os dois exemplos, começando pelo que usa o gerador de expressões, é que você poderia usar somente o <em>loop</em> uma vez sobre a estrutura 'obj', ao invés de uma vez compreender o array e novamente iterar com ele.</p>
-
-<h2 id="Mais_extras_do_Array" name="Mais_extras_do_Array">Mais extras do Array</h2>
-
-<p>Existem dois novos métodos iterativos de <code><a href="/en/Core_JavaScript_1.5_Reference/Global_Objects/Array">Array</a></code> incluídos no JavaScript 1.8, especificamente:</p>
-
-<ul>
- <li><code><a href="/en/Core_JavaScript_1.5_Reference/Objects/Array/reduce">reduce()</a></code> - executa uma função em cada item no <em>array</em> e coleta os resultados de chamadas anteriores.</li>
- <li><code><a href="/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight">reduceRight()</a></code> - executa uma função em cada item no <em>array</em> e coleta os resultados de chamadas anteriores, mas em reverso.</li>
-</ul>
-
-<h2 id="Mudan.C3.A7as_na_desestrutura.C3.A7.C3.A3o_for..in" name="Mudan.C3.A7as_na_desestrutura.C3.A7.C3.A3o_for..in">Mudanças na desestruturação for..in</h2>
-
-<p>Menção em <a href="/en/New_in_JavaScript_1.7#Looping_across_objects">en:New_in_JavaScript_1.7#Looping_across_objects</a> ({{ Bug(366941) }}).</p>
-
-<h2 id="Mudan.C3.A7as_iminentes" name="Mudan.C3.A7as_iminentes">Mudanças iminentes</h2>
-
-<p>As mudanças esperadas para a chegada no JavaScript 1.8 incluem:</p>
-
-<ul>
- <li>Codificação e decodificação JSON.</li>
- <li>Sintaxe <em>slice</em>.</li>
- <li>Desestruturação generalizada <code>for...in</code> (isso significa algo diferente de <a href="#Chances_in_destrugturing_for..in">#Chances in destrugturing for..in</a>? --<a href="/User:Nickolay">Nickolay</a> 10:52, 9 de setembro de 2007 (PDT)).</li>
-</ul>
-
-<p><span class="comment">Categorias</span></p>
-
-<p><span class="comment">Interwiki Language Links</span></p>
diff --git a/files/pt-pt/xpcom_interface_reference/index.html b/files/pt-pt/xpcom_interface_reference/index.html
deleted file mode 100644
index db45c7237c..0000000000
--- a/files/pt-pt/xpcom_interface_reference/index.html
+++ /dev/null
@@ -1,17 +0,0 @@
----
-title: XPCOM Interface Reference
-slug: XPCOM_Interface_Reference
-tags:
- - NeedsTranslation
- - TopicStub
- - XPCOM
- - XPCOM Interface Reference
-translation_of: Mozilla/Tech/XPCOM/Reference/Interface
----
-<p>This is a reference to the XPCOM interfaces provided by the Mozilla platform.</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/pt-pt/xul/attribute/index.html b/files/pt-pt/xul/attribute/index.html
deleted file mode 100644
index 48a1cf4f0c..0000000000
--- a/files/pt-pt/xul/attribute/index.html
+++ /dev/null
@@ -1,5 +0,0 @@
----
-title: Attribute
-slug: XUL/Attribute
----
-{{wiki.localize('System.API.page-generated-for-subpage')}}
diff --git a/files/pt-pt/xul/attribute/textbox.type/index.html b/files/pt-pt/xul/attribute/textbox.type/index.html
deleted file mode 100644
index 54bf9f518a..0000000000
--- a/files/pt-pt/xul/attribute/textbox.type/index.html
+++ /dev/null
@@ -1,21 +0,0 @@
----
-title: textbox.type
-slug: XUL/Attribute/textbox.type
----
-<p><span class="breadcrumbs xulRefAttr_breadcrumbs">« <a href="/pt-PT/docs/XUL/XUL_Reference">XUL Reference home</a></span>
-</p>
-<dl><dt> <a href="pt/XUL/Attribute/textbox.type">type</a>
-</dt><dd> Type: <i>um dos valores abaixo</i>
-</dd><dd> Você pode configurar o atributo <code>type</code> para um dos valores abaixo para uma tipo mais específico de caixa de texto. Não configure o tipo se você deseja usar uma caixa de texto regular.
-</dd></dl>
-<ul><li> <code>autocomplete</code>: Uma caixa de texto que suporta auto completar. Para mais informações sobre caixas de texto com auto completar, veja a cocumentação do <code>autocomplete</code> (<a href="pt/XUL/textbox_(Mozilla_autocomplete)">Mozilla</a>) (<a href="pt/XUL/textbox_(Firefox_autocomplete)">Firefox</a>).
-</li><li> <code>number</code>: Uma caixa de texto que somente permite ao usuário a digitação de números. Em adição, botões de flecha aparecem próximos à caixa de texto para deixar o usuário colocar os valores. Há vários atributos que permitem que o número da caixa de texto seja configurado, incluindo <code id="a-min"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/min">min</a></code>, <code id="a-max"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/max">max</a></code>, <code id="a-increment"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/increment">increment</a></code>, <code id="a-wraparound"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/wraparound">wraparound</a></code> e <code id="a-hidespinbuttons"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/hidespinbuttons">hidespinbuttons</a></code>.
-</li><li> <code>password</code>: Uma caixa de texto que esconde o que é digitado, usado para digitar senhas.
-</li><li> <code>timed</code>: Esta caixa de texto irá aplicar um comando de evento depois do usuário digitar caracteres e um tempo certo tenha se passado. A demora é configurada com o atributo <code id="a-timeout"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/timeout">timeout</a></code>. Você pode usar este tipo, por exemplo, para atualizar informações em outra parte da janela como o usuário digita, sem precisar de atualizações contínuas desde que o contador não seja aplicado se o usuário digitar mais teclas no interior. O evento de comando também será aplicado se o usuário precionar a tecla Enter.
-</li></ul>
-<h3 id="Veja_tamb.C3.A9m" name="Veja_tamb.C3.A9m"> Veja também </h3>
-<ul><li> <code id="a-type"><a href="https://developer.mozilla.org/pt-PT/docs/Mozilla/Tech/XUL/Attribute/type">type</a></code>
-</li></ul>
-<p><span class="comment">Categorias</span>
-</p><p><span class="comment">Interwiki Language Links</span>
-</p>
diff --git a/files/pt-pt/zonas/index.html b/files/pt-pt/zonas/index.html
deleted file mode 100644
index 37c44c4cbe..0000000000
--- a/files/pt-pt/zonas/index.html
+++ /dev/null
@@ -1,53 +0,0 @@
----
-title: Zonas
-slug: Zonas
-translation_of: Zones
----
-<p>MDN zones provide you with one-stop access to information about specific topic areas or products. Here's a list of all the zones available to you.</p>
-
-<div class="row topicpage-table">
-<div class="section">
-<h2 id="Desenvolvimento_de_aplicações_e_da_Web">Desenvolvimento de aplicações e da Web</h2>
-
-<dl>
- <dt><a href="/pt-PT/Apps">Centro de Aplicações</a></dt>
- <dd>Learn how to create open Web apps—rich experiences that run across multiple devices and form factors—using the same Web standards and open technologies you already know.</dd>
- <dt><a href="/pt-PT/docs/Learn">Área de Apredizagem</a></dt>
- <dd>This zone is all about articles to help newcomers to Web development get started in this exciting new world.</dd>
- <dt><a href="/pt-PT/docs/Tools">Ferramentas de programador</a></dt>
- <dd>Learn how to use the Firefox developer tools to debug, test, and optimize your Web apps and sites.</dd>
- <dt><a href="/pt-PT/docs/Mozilla/Mercado">Mercado do Firefox</a></dt>
- <dd>An open, non-proprietary online marketplace for Web applications built using HTML, CSS, and JavaScript. Submit apps to the Firefox Marketplace or use the code to build your own marketplace.</dd>
- <dt><a href="/pt-PT/docs/Jogos">Desenvolvimento de jogos</a></dt>
- <dd>Learn how to develop games for the Web, how to port existing games to Web technologies, and how to turn your games into Web apps.</dd>
-</dl>
-</div>
-
-<div class="section">
-<h2 id="Products" name="Products">Produtos e projetos</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Emscripten">Emscripten</a></dt>
- <dd>An LLVM to JavaScript compiler; this lets you compile, for example, C++ code into JavaScript code which can be run in any Web browser.</dd>
- <dt><a href="/en-US/docs/L20n">L20n</a></dt>
- <dd>A JavaScript localization framework for unleashing your natural language's power with simple code.</dd>
- <dt><a href="/pt-PT/docs/MDN">O projeto MDN</a></dt>
- <dd>The Mozilla Developer Network (this site) relies on its community of readers and contributors to grow and improve. You can learn here how to help use, contribute to, and build the code behind MDN!</dd>
- <dt><a href="/en-US/Persona">Persona</a></dt>
- <dd>A new simple, privacy-sensitive single-sign in system developed by Mozilla which lets users log into your Web site using their email address, freeing you from password management.</dd>
-</dl>
-
-<h2 id="Tecnologias_Mozilla">Tecnologias Mozilla</h2>
-
-<dl>
- <dt><a href="/pt-PT/Add-ons">Extras</a></dt>
- <dd>Learn how to build and install extensions, themes, and plug-ins for Mozilla-based software, including the popular Firefox Web browser.</dd>
- <dt><a href="/pt-PT/Firefox">Firefox</a></dt>
- <dd>Learn all about Firefox, from how to build and revise it to how to build add-ons specifically for it.</dd>
- <dt><a href="/pt-PT/docs/Mozilla/Boot_to_Gecko">Firefox OS</a></dt>
- <dd>A new mobile operating system developed by Mozilla which lets users install and run open Web applications created using HTML, CSS, and JavaScript.</dd>
-</dl>
-</div>
-</div>
-
-<p> </p>