diff --git a/po/pt_BR.po b/po/pt_BR.po
index 6ed92d16e67a62c244e2d6396f003cbf1e8a066b..8df750ce711310947fdb73c6cf627f6f3d2ed19f 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -7,13 +7,17 @@ msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2013-08-14 23:21-0400\n"
-"PO-Revision-Date: 2014-10-16 23:47-0400\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2020-10-09 10:26+0000\n"
+"Last-Translator: Vanessa Regina Andrade dos Santos <vanaregi.santos@gmail."
+"com>\n"
+"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
+"monkeysphere/monkeysign/pt_BR/>\n"
 "Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.3-dev\n"
 
 #: ../monkeysign/cli.py:26
 msgid ""
@@ -27,23 +31,32 @@ msgid ""
 "This program assumes you have gpg-agent configured to prompt for\n"
 "passwords."
 msgstr ""
+"Assine uma chave em um modo seguro.\n"
+"\n"
+"Esse comando assina uma chave baseada na digital ou identidade do usuário\n"
+"especificada na linha de comando; criptografa o resultado e o envio para \n"
+"o usuário. Isso deixa que a escolha de publicar a certificação para aquela \n"
+"pessoa e garanti que é o proprietário da identidade assinada .\n"
+"\n"
+"Esse programa permite que você tenha gpg-agent configurado com prontidão \n"
+"para senhas."
 
 #: ../monkeysign/cli.py:37
 msgid "%prog [options] <keyid>"
-msgstr ""
+msgstr "%prog [opções] <keyid>"
 
 #: ../monkeysign/cli.py:38
 msgid "<keyid>: a GPG fingerprint or key id"
-msgstr ""
+msgstr "<keyid>: uma digital GPG ou chave de id"
 
 #: ../monkeysign/cli.py:45
 msgid "wrong number of arguments, use -h for full help"
-msgstr ""
+msgstr "número errado de argumentos, use -h para ajuda"
 
 #: ../monkeysign/cli.py:57
 #, python-format
 msgid "reset GPG_TTY to %s"
-msgstr ""
+msgstr "restaurar GPG_TTY para %s"
 
 #: ../monkeysign/cli.py:65
 #, python-format
@@ -52,76 +65,81 @@ msgid ""
 "\n"
 "%s"
 msgstr ""
+"Preparar para assinar com essa chave\n"
+"\n"
+"%s"
 
 #: ../monkeysign/cli.py:100
 #, python-format
 msgid " (1-%d or full UID, control-c to abort): "
-msgstr ""
+msgstr " (1-%d ou UID completo, controle-c para abortar): "
 
 #: ../monkeysign/cli.py:104
 msgid "invalid uid"
-msgstr ""
+msgstr "uid inválido"
 
 #: ../monkeysign/gpg.py:209
 #, python-format
 msgid "could not find pattern '%s' in input, last skipped '%s'"
 msgstr ""
+"não conseguiu um encontrar padrão '%s' na transferência, último salto'%s'"
 
 #: ../monkeysign/gpg.py:329
 #, python-format
 msgid "verifying file %s failed: %s."
-msgstr ""
+msgstr "Verificar arquivo %s falhou: %s."
 
 #: ../monkeysign/gpg.py:366 ../monkeysign/gpg.py:386
 #, python-format
 msgid "unexpected GPG exit code in list-keys: %d"
-msgstr ""
+msgstr "Código de saída de GPG inesperado em um arquivo de chaves: %d"
 
 #: ../monkeysign/gpg.py:398
 #, python-format
 msgid "encryption to %s failed: %s."
-msgstr ""
+msgstr "codificação para %s falhou: %s."
 
 #: ../monkeysign/gpg.py:409
 #, python-format
 msgid "decryption failed: %s"
-msgstr ""
+msgstr "decodificação falhou: %s"
 
 #: ../monkeysign/gpg.py:471 ../monkeysign/gpg.py:473
 #, python-format
 msgid "cannot sign: %s"
-msgstr ""
+msgstr "não pode assinar: %s"
 
 #: ../monkeysign/gpg.py:483
 msgid "you already signed that key"
-msgstr ""
+msgstr "você está pronto para assinar essa chave"
 
 #: ../monkeysign/gpg.py:486 ../monkeysign/gpg.py:519
 #, python-format
 msgid "unable to open key for editing: %s"
-msgstr ""
+msgstr "impossibilitado de abrir chave para editar: %s"
 
 #: ../monkeysign/gpg.py:494
 msgid "unable to prompt for passphrase, is gpg-agent running?"
 msgstr ""
+"impossibilitado de indicar a frase-chave, o agente gpg está gerenciando?"
 
 #: ../monkeysign/gpg.py:530
 msgid "key is expired, cannot sign"
-msgstr ""
+msgstr "Essa chave está expirada, não pode assinar"
 
 #: ../monkeysign/gpg.py:532
 #, python-format
 msgid "cannot sign, unknown error from gpg: %s"
-msgstr ""
+msgstr "Não pode assinar, erro desconhecido do gpg: %s"
 
 #: ../monkeysign/gpg.py:537
 msgid "password confirmation failed"
-msgstr ""
+msgstr "falha na confirmação da senha"
 
 #: ../monkeysign/gpg.py:708
 #, python-format
 msgid "record type '%s' not implemented"
-msgstr ""
+msgstr "tipo de gravação '%s' não executada"
 
 #: ../monkeysign/gtkui.py:40
 msgid ""
@@ -142,76 +160,96 @@ msgid ""
 "This program assumes you have gpg-agent configure to prompt for\n"
 "passwords.\n"
 msgstr ""
+"Assine uma chave no modo de segurança usando a Webcam para escanear QR-"
+"Codes\n"
+"\n"
+"Esse comando abrirá uma interface gráfica e ligará a webcam\n"
+"(se disponível) no computador. Também mostrará um QR-Code da\n"
+" sua chave principal OpenPGP. \n"
+"\n"
+"A webcam é usada para capturar uma digital OpenPGP no formato\n"
+"QR-Code (ou qualquer biblioteca do código de barras pode analisar) e então\n"
+"verificar um processo de assinatura. \n"
+"\n"
+"A assinatura é então decodificada e enviada para o usuário. Isso deixa a \n"
+"escolha de publicar a certificação para aquela pessoa e garanti que \n"
+"aquela pessoa é o proprietário da identidade assinada.\n"
+"\n"
+"Esse programa permite que você tenha um gpg-agent configurado com prontidão "
+"\n"
+"para senhas.\n"
 
 #: ../monkeysign/gtkui.py:120
 msgid "okay, signing"
-msgstr ""
+msgstr "OK, assinar"
 
 #: ../monkeysign/gtkui.py:123
 msgid "user denied signature"
-msgstr ""
+msgstr "assinatura do usuário negada"
 
 #: ../monkeysign/gtkui.py:152
 msgid "Monkeysign (scan)"
-msgstr ""
+msgstr "Monkeysign (escanear)"
 
 #: ../monkeysign/gtkui.py:184
 msgid "_File"
-msgstr ""
+msgstr "_Arquivo"
 
 #: ../monkeysign/gtkui.py:185
 msgid "Open image..."
-msgstr ""
+msgstr "Abrir imagem..."
 
 #: ../monkeysign/gtkui.py:186
 msgid "_Save QR code as..."
-msgstr ""
+msgstr "_Salvar QR-code como..."
 
 #: ../monkeysign/gtkui.py:187
 msgid "_Print QR code..."
-msgstr ""
+msgstr "_Imprimir QR-code..."
 
 #: ../monkeysign/gtkui.py:189
 msgid "Copy image to clipboard"
-msgstr ""
+msgstr "Copiar imagem para quadro de edição"
 
 #: ../monkeysign/gtkui.py:189
 msgid "_Copy QR code"
-msgstr ""
+msgstr "_Copiar QR-code"
 
 #: ../monkeysign/gtkui.py:190
 msgid "Choose identity"
-msgstr ""
+msgstr "Escolher identidade"
 
 #: ../monkeysign/gtkui.py:190
 msgid "Identity"
-msgstr ""
+msgstr "Identidade"
 
 #: ../monkeysign/gtkui.py:191
 msgid "Select video device to use"
-msgstr ""
+msgstr "Selecionar dispositivo de vídeo para usar"
 
 #: ../monkeysign/gtkui.py:191
 msgid "Video device"
-msgstr ""
+msgstr "Dispositivo de vídeo"
 
 #: ../monkeysign/gtkui.py:192
 msgid "_Quit"
-msgstr ""
+msgstr "_Sair"
 
 #: ../monkeysign/gtkui.py:201
 msgid "Disable video"
-msgstr ""
+msgstr "Desabilitar vídeo"
 
 #: ../monkeysign/gtkui.py:245
 msgid "No video device detected."
-msgstr ""
+msgstr "Dispositivo de vídeo não detectado."
 
 #: ../monkeysign/gtkui.py:251
 msgid ""
 "This is the output of your webcam, align a qrcode in the image to scan a "
 "fingerprint."
 msgstr ""
+"Essa é a saída da sua webcam, alinhe um QR-code na imagem para escanear a "
+"digital."
 
 #~ msgid "create the QR code display"
 #~ msgstr ""
@@ -221,13 +259,15 @@ msgid ""
 "This is a QR-code version of your PGP fingerprint. Scan this with another "
 "monkeysign to transfer your fingerprint."
 msgstr ""
+"Esse é uma versão do QR-Code de sua digital PGP. Escanei com outro "
+"monkeysign para transferir sua digital."
 
 #~ msgid "list the secret keys for selection somewhere"
 #~ msgstr ""
 
 #: ../monkeysign/gtkui.py:291 ../monkeysign/gtkui.py:292
 msgid "Hide QR code"
-msgstr ""
+msgstr "Esconder QR-Code"
 
 #~ msgid "When window is resized, regenerate the QR code"
 #~ msgstr ""
@@ -253,7 +293,7 @@ msgstr ""
 
 #: ../monkeysign/gtkui.py:361
 msgid "cannot find signature for image file"
-msgstr ""
+msgstr "Impossível encontrar assinatura para o arquivo de imagem"
 
 #: ../monkeysign/gtkui.py:363
 #, python-format
@@ -270,18 +310,30 @@ msgid ""
 "\n"
 "    gpg -s --detach %s\n"
 msgstr ""
+"A imagem fornecida não pode ser verificada usando uma assinatura OpenPNG "
+"confiável.\n"
+"\n"
+"Tenha certeza que a imagem vem de uma fonte confiável (Ex.:  sua própria "
+"câmera que você nunca deixou ligada) antes de assinar!\n"
+"\n"
+"NÃO ASSINE DIGITAIS NÃO CONFIÁVEIS!\n"
+"\n"
+"Para não ver mais esse aviso, se você realmente confia nessa imagem, use o "
+"seguinte comando para assinar o arquivo\n"
+"\n"
+"    gpg -s --detach %s\n"
 
 #: ../monkeysign/gtkui.py:365
 msgid "image signature verified successfully"
-msgstr ""
+msgstr "Assinatura de imagem verificada com sucesso"
 
 #: ../monkeysign/gtkui.py:370
 msgid "Scan an image for QR codes"
-msgstr ""
+msgstr "Escanear uma imagem para QR-codes"
 
 #: ../monkeysign/gtkui.py:403
 msgid "data found in image!"
-msgstr ""
+msgstr "dados encontrados na imagem!"
 
 #~ msgid ""
 #~ "Use a file chooser dialog to enable user to save the current QR code as a "
@@ -293,10 +345,12 @@ msgid ""
 "No identity selected. Select one from the identiy menu or generate a OpenPGP "
 "key if none is available."
 msgstr ""
+"Sem identificação selecionada. Selecione uma no menu identidade ou gere uma "
+"chave OpenPGP se nenhuma estiver disponível."
 
 #: ../monkeysign/gtkui.py:414
 msgid "Save QR code"
-msgstr ""
+msgstr "Salvar QR code"
 
 #~ msgid "copy the qrcode to the clipboard"
 #~ msgstr ""
@@ -322,7 +376,7 @@ msgstr ""
 
 #: ../monkeysign/gtkui.py:478
 msgid "fetching finished"
-msgstr ""
+msgstr "recuperação finalizada"
 
 #~ msgid ""
 #~ "callback invoked when a barcode is decoded by the zbar widget.\n"
@@ -336,24 +390,28 @@ msgstr ""
 #: ../monkeysign/gtkui.py:523
 msgid "zbar captured a frame, looking for 40 character hexadecimal fingerprint"
 msgstr ""
+"Código de barras capturou um quadro, procurar 40 caracteres de digital "
+"hexadecimal"
 
 #: ../monkeysign/gtkui.py:534 ../monkeysign/ui.py:229
 #, python-format
 msgid "looking for key %s in your keyring"
-msgstr ""
+msgstr "Procurar por chave %s no sua chave de codificação"
 
 #: ../monkeysign/gtkui.py:547
 msgid "Please wait"
-msgstr ""
+msgstr "Aguarde, por favor"
 
 #: ../monkeysign/gtkui.py:549
 msgid "Retrieving public key from server..."
-msgstr ""
+msgstr "Recuperar chave pública do servidor..."
 
 #: ../monkeysign/gtkui.py:563
 #, python-format
 msgid "data found in barcode does not match a OpenPGP fingerprint pattern: %s"
 msgstr ""
+"dados encontrados no código de barras não combinam com uma digital padrão do "
+"OpenPGP: %s"
 
 #~ msgid "restart capture"
 #~ msgstr ""
@@ -387,72 +445,78 @@ msgstr ""
 
 #: ../monkeysign/ui.py:74
 msgid "show version information and quit"
-msgstr ""
+msgstr "mostrar versão da informação e sair"
 
 #: ../monkeysign/ui.py:76
 msgid "request debugging information from GPG engine (lots of garbage)"
-msgstr ""
+msgstr "pedido de correção de informação de erros do GPC (muito lixo)"
 
 #: ../monkeysign/ui.py:78
 msgid "explain what we do along the way"
-msgstr ""
+msgstr "explica o que fazemos ao longo do processo"
 
 #: ../monkeysign/ui.py:80
 msgid "do not actually do anything"
-msgstr ""
+msgstr "fazer nada"
 
 #: ../monkeysign/ui.py:81
 msgid "user id to sign the key with"
-msgstr ""
+msgstr "ID do usuário para assinar a chave com"
 
 #: ../monkeysign/ui.py:82
 msgid "certification level to sign the key with"
-msgstr ""
+msgstr "nível de certificação para assinar a chave com"
 
 #: ../monkeysign/ui.py:84
 msgid "import in normal keyring a local certification"
-msgstr ""
+msgstr "importar uma chave de codificação de uma certificação local"
 
 #: ../monkeysign/ui.py:86
 msgid "keyserver to fetch keys from"
-msgstr ""
+msgstr "servidor chave para recuperar chaves de"
 
 #: ../monkeysign/ui.py:87
 msgid ""
 "SMTP server to use, use a colon to specify the port number if non-standard"
 msgstr ""
+"SMTP servidor para uso. Use dois pontos para especificar o número da porta "
+"se não tiver padrão"
 
 #: ../monkeysign/ui.py:88
 msgid "username for the SMTP server (default: no user)"
-msgstr ""
+msgstr "nome de usuário para o servidor SMTP(implícito: sem usuário)"
 
 #: ../monkeysign/ui.py:89
 msgid ""
 "password for the SMTP server (default: prompted, if --smtpuser is specified)"
 msgstr ""
+"senha para o servidor SMTP (implícito: prontidão, se --smtpusuário é "
+"especificado)"
 
 #: ../monkeysign/ui.py:91
 msgid "Do not send email at all. (Default is to use sendmail.)"
-msgstr ""
+msgstr "Não enviar e-mail. (Implícito é para uso do envio de e-mail.)"
 
 #: ../monkeysign/ui.py:93
 msgid ""
 "Override destination email for testing (default is to use the first uid on "
 "the key or send email to each uid chosen)"
 msgstr ""
+"anular destino do e-mail para teste (implícito é para uso do primeiro uid na "
+"chave ou enviar e-mail para cada uid escolhido)"
 
 #: ../monkeysign/ui.py:136
 msgid "Initializing UI"
-msgstr ""
+msgstr "Inicialização UI"
 
 #: ../monkeysign/ui.py:147
 #, python-format
 msgid "deleting the temporary keyring %s"
-msgstr ""
+msgstr "deletar chave de codificação temporaria %s"
 
 #: ../monkeysign/ui.py:172
 msgid "copied your gpg.conf in temporary keyring"
-msgstr ""
+msgstr "copiou seu gpg.conf na chave de codificação temporária"
 
 #~ msgid ""
 #~ "\n"
@@ -494,21 +558,25 @@ msgstr ""
 
 #: ../monkeysign/ui.py:231
 msgid "key not in local keyring"
-msgstr ""
+msgstr "chave não está no local da chave de codificação"
 
 #: ../monkeysign/ui.py:234
 #, python-format
 msgid "fetching key %s from keyservers"
-msgstr ""
+msgstr "buscar chave %s de servidores chave"
 
 #: ../monkeysign/ui.py:238
 msgid "please provide a keyid or fingerprint, uids are not supported yet"
 msgstr ""
+"por favor, forneça uma chave de identificação ou digital, uids não são "
+"aceitos ainda"
 
 #: ../monkeysign/ui.py:241
 #, python-format
 msgid "could not find key %s in your keyring or keyservers"
 msgstr ""
+"não conseguiu encontrar a chave %s em sua chave de codificação ou servidores "
+"chaves"
 
 #~ msgid ""
 #~ "import secret keys (but only the public part) from your keyring\n"
@@ -521,25 +589,25 @@ msgstr ""
 #: ../monkeysign/ui.py:250
 #, python-format
 msgid "copying your private key to temporary keyring in %s"
-msgstr ""
+msgstr "copiar sua chave privada para chave de codificação temporária em %s"
 
 #: ../monkeysign/ui.py:258
 #, python-format
 msgid "found secret key: %s"
-msgstr ""
+msgstr "encontrou a chave secreta: %s"
 
 #: ../monkeysign/ui.py:264
 msgid "no default secret key found, abort!"
-msgstr ""
+msgstr "nenhuma chave secreta encontrada, suspender!"
 
 #: ../monkeysign/ui.py:265
 #, python-format
 msgid "signing key chosen: %s"
-msgstr ""
+msgstr "assinar chave escolhida: %s"
 
 #: ../monkeysign/ui.py:269
 msgid "could not find public key material, do you have a GPG key?"
-msgstr ""
+msgstr "não conseguiu encontrar material chave público, você tem uma chave GPG?"
 
 #~ msgid "sign the key uids, as specified"
 #~ msgstr ""
@@ -547,7 +615,7 @@ msgstr ""
 #: ../monkeysign/ui.py:276
 #, python-format
 msgid "found %d keys matching your request"
-msgstr ""
+msgstr "encontrou %d chaves de acordo com sua solicitação"
 
 #: ../monkeysign/ui.py:279
 #, python-format
@@ -558,26 +626,31 @@ msgid ""
 "\n"
 "Sign all identities? [y/N] "
 msgstr ""
+"Assinar a seguinte chave\n"
+"\n"
+"%s\n"
+"\n"
+"Assine todas identidades? [y/N] "
 
 #: ../monkeysign/ui.py:291
 msgid "Choose the identity to sign"
-msgstr ""
+msgstr "Escolha uma identidade para assinar"
 
 #: ../monkeysign/ui.py:293
 msgid "no identity chosen"
-msgstr ""
+msgstr "sem identificação escolhida"
 
 #: ../monkeysign/ui.py:300
 msgid "Really sign key? [y/N] "
-msgstr ""
+msgstr "Assinar mesmo a chave? [y/N] "
 
 #: ../monkeysign/ui.py:303
 msgid "key signing failed"
-msgstr ""
+msgstr "assinatura da chave falhou"
 
 #: ../monkeysign/ui.py:307
 msgid "making a non-exportable signature"
-msgstr ""
+msgstr "fazer uma assinatura não exportável"
 
 #: ../monkeysign/ui.py:312
 msgid ""