Bug réel : la bannière 'Surlignez le texte à clipper' n'apparaissait jamais en pratique parce que le side panel envoyait SET_PICK_MODE avant que le content script ne soit prêt (race condition MV3 entre chrome.scripting.executeScript et la mise en place du listener chrome.runtime.onMessage). Le retry PING dans ensureContentScript ne suffisait pas : le listener sidepanel peut aussi être en retard. Fix radical : content.js affiche la bannière IMMÉDIATEMENT à l'initialisation, sans attendre SET_PICK_MODE. L'utilisateur voit immédiatement que l'extension est active. Un bouton ✕ permet de la fermer (state local au tab). Pas de dépendance sur le side panel pour le feedback visuel. + manifest : retrait de optional_host_permissions (redondant avec host_permissions http://*/* et https://*/*, peut perturber Chrome en dev). + bannière rediseignée : max-width 640px responsive, animation slideIn, bouton ✕ accessible. + nouvelles clés i18n bannerDismiss dans les 15 locales. + build : exclusion de store-assets/ du zip et du xpi (sinon le package Store faisait 327 Ko au lieu de 47 Ko).
194 lines
4.6 KiB
JSON
194 lines
4.6 KiB
JSON
{
|
||
"extName": {
|
||
"message": "Memento · Web Clipper"
|
||
},
|
||
"extDescription": {
|
||
"message": "Capture páginas da web e texto destacado em seus blocos de anotações Memento – conecte-se ao seu próprio servidor Memento."
|
||
},
|
||
"extActionTitle": {
|
||
"message": "Clipar para o Memento"
|
||
},
|
||
"webClipper": {
|
||
"message": "Web Clipper"
|
||
},
|
||
"connected": {
|
||
"message": "Conectado"
|
||
},
|
||
"disconnected": {
|
||
"message": "Não conectado"
|
||
},
|
||
"instanceSettings": {
|
||
"message": "URL do momento"
|
||
},
|
||
"instanceUrlLabel": {
|
||
"message": "URL da sua instância do Memento"
|
||
},
|
||
"presetProduction": {
|
||
"message": "Predefinição de produção · memento-note.com"
|
||
},
|
||
"applyReconnect": {
|
||
"message": "Aplicar e reconectar"
|
||
},
|
||
"openMomento": {
|
||
"message": "Memento aberto"
|
||
},
|
||
"settingsHint": {
|
||
"message": "Cole o URL HTTPS (ou LAN) do seu servidor Memento. Os cookies neste navegador controlam o login."
|
||
},
|
||
"footerVersion": {
|
||
"message": "Memento Web Clipper <<<VERSÃO>>>"
|
||
},
|
||
"errPermissionDenied": {
|
||
"message": "Memento não pode acessar esta guia. Verifique as permissões de extensão de teclado/site – ou abra o painel lateral."
|
||
},
|
||
"notebookUnnamed": {
|
||
"message": "Caderno sem título"
|
||
},
|
||
"noNotebooks": {
|
||
"message": "Ainda não há cadernos"
|
||
},
|
||
"readingTimeOne": {
|
||
"message": "~1 minuto de leitura"
|
||
},
|
||
"readingTimeOther": {
|
||
"message": "Aprox. $COUNT$ minutos de leitura",
|
||
"placeholders": {
|
||
"COUNT": {
|
||
"content": "$1",
|
||
"example": "5"
|
||
}
|
||
}
|
||
},
|
||
"selectionDetected": {
|
||
"message": "Seleção detectada"
|
||
},
|
||
"ignore": {
|
||
"message": "ignorar"
|
||
},
|
||
"selectionHint": {
|
||
"message": "Dica: destaque o texto na página para recortar uma seleção precisa como uma nota."
|
||
},
|
||
"clipSelection": {
|
||
"message": "Clipar seleção"
|
||
},
|
||
"clipPage": {
|
||
"message": "Clipar esta página"
|
||
},
|
||
"saveLinkOnly": {
|
||
"message": "Salvar apenas link"
|
||
},
|
||
"pageNotAccessible": {
|
||
"message": "Não é possível recortar aqui – esta página bloqueia o acesso à extensão."
|
||
},
|
||
"errLoginRequired": {
|
||
"message": "Faça login no Memento neste navegador primeiro."
|
||
},
|
||
"errLoadNotebooks": {
|
||
"message": "Não foi possível carregar os notebooks. Tente reconectar."
|
||
},
|
||
"notebooksLoaded": {
|
||
"message": "Cadernos carregados"
|
||
},
|
||
"connecting": {
|
||
"message": "Conectando…"
|
||
},
|
||
"connectedToUrl": {
|
||
"message": "Conectado a $URL$",
|
||
"placeholders": {
|
||
"URL": {
|
||
"content": "$1",
|
||
"example": "https://memento-note.com"
|
||
}
|
||
}
|
||
},
|
||
"restrictedPage": {
|
||
"message": "Página restrita – recorte por meio da barra de ferramentas do Memento ou do painel lateral."
|
||
},
|
||
"destinationNotebook": {
|
||
"message": "Caderno de destino"
|
||
},
|
||
"activePage": {
|
||
"message": "Página ativa"
|
||
},
|
||
"previewBeforeSave": {
|
||
"message": "Revise antes de salvar"
|
||
},
|
||
"noteTitleLabel": {
|
||
"message": "Título"
|
||
},
|
||
"excerptLabel": {
|
||
"message": "Trecho"
|
||
},
|
||
"saveToMomento": {
|
||
"message": "Salvar no Memento"
|
||
},
|
||
"back": {
|
||
"message": "Voltar"
|
||
},
|
||
"analyzingSource": {
|
||
"message": "Analisando fonte"
|
||
},
|
||
"statusAnalyzing": {
|
||
"message": "Analisando…"
|
||
},
|
||
"statusSaving": {
|
||
"message": "Salvando…"
|
||
},
|
||
"processingDetail": {
|
||
"message": "Geração de tags, resumo semântico e incorporações."
|
||
},
|
||
"noteSaved": {
|
||
"message": "Nota salva"
|
||
},
|
||
"sentToNotebook": {
|
||
"message": "Salvo em $NOTEBOOK$",
|
||
"placeholders": {
|
||
"NOTEBOOK": {
|
||
"content": "$1",
|
||
"example": "Read later"
|
||
}
|
||
}
|
||
},
|
||
"viewInMomento": {
|
||
"message": "Ver em Memento"
|
||
},
|
||
"clipAnother": {
|
||
"message": "Clipar outra página"
|
||
},
|
||
"failure": {
|
||
"message": "Não foi possível concluir"
|
||
},
|
||
"genericError": {
|
||
"message": "Algo deu errado ao chegar à sua instância do Memento."
|
||
},
|
||
"retry": {
|
||
"message": "Tentar novamente"
|
||
},
|
||
"errNoSelection": {
|
||
"message": "Selecione o texto primeiro ou recorte a página inteira."
|
||
},
|
||
"errAnalyzeFailed": {
|
||
"message": "Não foi possível analisar esta página."
|
||
},
|
||
"errSaveFailed": {
|
||
"message": "Não foi possível salvar sua nota."
|
||
},
|
||
"errNetwork": {
|
||
"message": "Problema de rede – verifique sua conexão e URL do Memento."
|
||
},
|
||
"bannerPickText": {
|
||
"message": "Destaque o texto na página ou recorte a página inteira."
|
||
},
|
||
"errLoginHintUrl": {
|
||
"message": "Conectado a: $URL$",
|
||
"placeholders": {
|
||
"URL": {
|
||
"content": "$1"
|
||
}
|
||
}
|
||
},
|
||
"bannerDismiss": {
|
||
"message": "Fechar"
|
||
}
|
||
}
|