git: 3219cd782e - main - Article freebsd-src-lsp translated to pt_BR and synced with doc tree version 98c736dd127a2096dc08252d1082300f2ec28ab5

From: Edson Brandi <ebrandi_at_FreeBSD.org>
Date: Mon, 08 May 2023 19:46:15 UTC
The branch main has been updated by ebrandi:

URL: https://cgit.FreeBSD.org/doc/commit/?id=3219cd782eeeb882a84b75a8b31d5c7833326d57

commit 3219cd782eeeb882a84b75a8b31d5c7833326d57
Author:     Edson Brandi <ebrandi@FreeBSD.org>
AuthorDate: 2023-05-08 19:45:25 +0000
Commit:     Edson Brandi <ebrandi@FreeBSD.org>
CommitDate: 2023-05-08 19:45:25 +0000

    Article freebsd-src-lsp translated to pt_BR and synced with doc tree version 98c736dd127a2096dc08252d1082300f2ec28ab5
---
 .../pt-br/articles/freebsd-src-lsp/_index.adoc     | 268 ++++++++
 .../pt-br/articles/freebsd-src-lsp/_index.po       | 702 +++++++++++++++++++++
 2 files changed, 970 insertions(+)

diff --git a/documentation/content/pt-br/articles/freebsd-src-lsp/_index.adoc b/documentation/content/pt-br/articles/freebsd-src-lsp/_index.adoc
new file mode 100644
index 0000000000..98dd54ff75
--- /dev/null
+++ b/documentation/content/pt-br/articles/freebsd-src-lsp/_index.adoc
@@ -0,0 +1,268 @@
+---
+authors:
+  - 
+    author: 'Ka Ho Ng'
+    email: khng@FreeBSD.org
+copyright: '2021 The FreeBSD Foundation'
+description: 'Utilize servidores de linguagem para o desenvolvimento na árvore src do FreeBSD para obter resultados precisos e completos ao buscar a definição de um termo no código fonte.'
+tags: ["FreeBSD", "Language Server", "LSP"]
+title: 'Utilize Servidores de Linguagem para o Desenvolvimento na Árvore Src do FreeBSD'
+trademarks: ["freebsd"]
+---
+
+= Utilize Servidores de Linguagem para o Desenvolvimento na Árvore Src do FreeBSD
+:doctype: article
+:toc: macro
+:toclevels: 1
+:icons: font
+:sectnums:
+:sectnumlevels: 6
+:source-highlighter: rouge
+:experimental:
+:images-path: articles/freebsd-src-lsp/
+
+ifdef::env-beastie[]
+ifdef::backend-html5[]
+include::shared/authors.adoc[]
+include::shared/mirrors.adoc[]
+include::shared/releases.adoc[]
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+:imagesdir: ../../../images/{images-path}
+endif::[]
+ifdef::backend-pdf,backend-epub3[]
+include::../../../../shared/asciidoctor.adoc[]
+endif::[]
+endif::[]
+
+ifndef::env-beastie[]
+include::../../../../../shared/asciidoctor.adoc[]
+endif::[]
+
+toc::[]
+
+[[intro]]
+== Introdução
+
+Este guia é sobre como configurar uma árvore src do FreeBSD com servidores de linguagem realizando a indexação de código fonte. O guia descreve os passos para o Vim/NeoVim e o VSCode. Se você usar um editor de texto diferente, pode usar este guia como referência e procurar os comandos equivalentes para o seu editor preferido.
+
+[[requirements]]
+== Requisitos
+
+Para seguir este guia, precisamos instalar certos requisitos. Precisamos de um servidor de linguagem, `ccls` ou `clangd`, e opcionalmente um banco de dados de compilação.
+
+A instalação do servidor de linguagem pode ser realizada via `pkg` ou via ports. Se escolhermos `clangd`, precisaremos instalar o `llvm`.
+
+Usando o `pkg` para instalar o `ccls`:
+
+[source, shell]
+....
+# pkg install ccls
+....
+
+Se quisermos usar o `clangd`, precisaremos instalar o `llvm` (O comando de exemplo usa o `llvm15`, mas escolha a versão que desejar):
+
+[source, shell]
+....
+# pkg install llvm15
+....
+
+Para instalar via ports, escolha a sua combinação favorita de ferramentas de cada categoria abaixo:
+
+* Implementações de servidores de linguagem
+** package:devel/ccls[]
+** package:devel/llvm12[] (Outras versões também são aceitáveis, mas as mais novas são melhores. Substitua `clangd12` por `clangdN` no caso de outras versões serem usadas.)
+* Editores
+** package:editors/vim[]
+** package:editors/neovim[]
+** package:editors/vscode[]
+* Gerador de banco de dados de compilação
+** package:devel/python[] (Para a implementação do scan-build-py do llvm)
+** package:devel/py-pip[] (Para a implementação do scan-build do rizsotto)
+** package:devel/bear[]
+
+[[editor-settings]]
+== Configurações do editor
+
+[[settings-vim]]
+=== Vim/Neovim
+
+==== Plugins de cliente LSP
+
+O gerenciador de plugin integrado é usado para ambos os editores neste exemplo. O plugin do cliente LSP usado é o link:https://github.com/prabirshrestha/vim-lsp[prabirshrestha/vim-lsp].
+
+Para configurar o plugin do cliente LSP para o Neovim:
+
+[source, shell]
+....
+# mkdir -p ~/.config/nvim/pack/lsp/start
+# git clone https://github.com/prabirshrestha/vim-lsp ~/.config/nvim/pack/lsp/start/vim-lsp
+....
+
+e para o Vim:
+
+[source, shell]
+....
+# mkdir -p ~/.vim/pack/lsp/start
+# git clone https://github.com/prabirshrestha/vim-lsp ~/.vim/pack/lsp/start/vim-lsp
+....
+
+Para habilitar o plugin do cliente LSP no editor, adicione o seguinte trecho em [.filepath]#~/.config/nvim/init.vim# ao usar o Neovim, ou [.filepath]#~/.vim/vimrc# ao usar o Vim:
+
+.Para o ccls
+[source, vim]
+....
+au User lsp_setup call lsp#register_server({
+    \ 'name': 'ccls',
+    \ 'cmd': {server_info->['ccls']},
+    \ 'allowlist': ['c', 'cpp', 'objc'],
+    \ 'initialization_options': {
+    \     'cache': {
+    \         'hierarchicalPath': v:true
+    \     }
+    \ }})
+....
+
+.Para o clangd
+[source, vim]
+....
+au User lsp_setup call lsp#register_server({
+    \ 'name': 'clangd',
+    \ 'cmd': {server_info->['clangd15', '--background-index', '--header-insertion=never']},
+    \ 'allowlist': ['c', 'cpp', 'objc'],
+    \ 'initialization_options': {},
+    \ })
+....
+
+Dependendo da versão que você instalou para o `clangd`, pode ser necessário atualizar o `server-info` para apontar para o binário correto.
+
+Por favor, consulte link:https://github.com/prabirshrestha/vim-lsp/blob/master/README.md#registering-servers[] para aprender sobre como configurar atalhos e as funções para autocompletar o código. O site oficial do clangd é link:https://clangd.llvm.org[], e o repositório do ccls é link:https://github.com/MaskRay/ccls/[].
+
+Abaixo estão as configurações de referência para atalhos de teclado e o autocomplemento de código. Insira o seguinte trecho em [.filepath]#~/.config/nvim/init.vim# ou [.filepath]#~/.vim/vimrc# para que usuários do Vim possam utilizá-las:
+
+[source, vim]
+....
+function! s:on_lsp_buffer_enabled() abort
+    setlocal omnifunc=lsp#complete
+    setlocal completeopt-=preview
+    setlocal keywordprg=:LspHover
+
+    nmap <buffer> <C-]> <plug>(lsp-definition)
+    nmap <buffer> <C-W>] <plug>(lsp-peek-definition)
+    nmap <buffer> <C-W><C-]> <plug>(lsp-peek-definition)
+    nmap <buffer> gr <plug>(lsp-references)
+    nmap <buffer> <C-n> <plug>(lsp-next-reference)
+    nmap <buffer> <C-p> <plug>(lsp-previous-reference)
+    nmap <buffer> gI <plug>(lsp-implementation)
+    nmap <buffer> go <plug>(lsp-document-symbol)
+    nmap <buffer> gS <plug>(lsp-workspace-symbol)
+    nmap <buffer> ga <plug>(lsp-code-action)
+    nmap <buffer> gR <plug>(lsp-rename)
+    nmap <buffer> gm <plug>(lsp-signature-help)
+endfunction
+
+augroup lsp_install
+    au!
+    autocmd User lsp_buffer_enabled call s:on_lsp_buffer_enabled()
+augroup END
+....
+
+[[settings-vscode]]
+=== VSCode
+
+==== Plugins de cliente LSP
+
+Plugins de cliente LSP são necessários para iniciar o daemon do servidor de linguagem. Pressione `Ctrl+Shift+X` para exibir o painel de pesquisa de extensões online. Digite `llvm-vs-code-extensions.vscode-clangd` quando estiver usando o clangd, ou `ccls-project.ccls` quando estiver usando o ccls.
+
+Em seguida, pressione `Ctrl+Shift+P` para exibir a paleta de comandos do editor. Digite `Preferences: Open Settings (JSON)` na paleta e pressione `Enter` para abrir o [.filepath]#settings.json#. Dependendo das implementações do servidor de linguagem, adicione um dos seguintes pares chave/valor JSON em [.filepath]#settings.json#:
+
+.Para o clangd
+[source, json]
+....
+[
+    /* Begin of your existing configurations */
+    ...
+    /* End of your existing configurations */
+    "clangd.arguments": [
+        "--background-index",
+        "--header-insertion=never"
+    ],
+    "clangd.path": "clangd12"
+]
+....
+
+.Para o ccls
+[source, json]
+....
+[
+    /* Begin of your existing configurations */
+    ...
+    /* End of your existing configurations */
+    "ccls.cache.hierarchicalPath": true
+]
+....
+
+[[cdb]]
+== Banco de dados de compilação
+
+Um banco de dados de compilação contém um array de objetos de comando de compilação. Cada objeto especifica uma maneira de compilar um arquivo de origem. O arquivo de banco de dados de compilação geralmente é chamado de [.filename]#compile_commands.json#. O banco de dados é usado por implementações de servidores de linguagem para fins de indexação.
+
+Por favor, consulte link:https://clang.llvm.org/docs/JSONCompilationDatabase.html#format[] para obter detalhes sobre o formato do arquivo do banco de dados de compilação.
+
+[[cdb-generators]]
+=== Geradores
+
+[[generators-scan-build-py]]
+==== Usando scan-build-py
+
+===== Instalação
+
+A ferramenta `intercept-build` do scan-build-py é usada para gerar o banco de dados de compilação.
+
+Primeiro instale o package:devel/python[] para obter o interpretador Python. Para obter o `intercept-build` do LLVM:
+
+[source, shell]
+....
+# git clone https://github.com/llvm/llvm-project /path/to/llvm-project
+....
+
+onde [.filename]#/path/to/llvm-project/# é o caminho desejado para o repositório. Crie um alias no arquivo de configuração do shell para conveniência:
+
+[source, shell]
+....
+alias intercept-build='/path/to/llvm-project/clang/tools/scan-build-py/bin/intercept-build'
+....
+
+Você também pode usar o link:https://github.com/rizsotto/scan-build[rizsotto/scan-build] em vez do scan-build-py do LLVM. O scan-build-py do LLVM foi incorporado ao repositório do LLVM. Essa implementação pode ser instalada com o comando `pip install --user scan-build`. O script `intercept-build` é instalado por padrão em [.filename]#~/.local/bin#.
+
+===== Uso
+
+No diretório raiz da árvore src do FreeBSD, gere o banco de dados de compilação com o `intercept-build`:
+
+[source, shell]
+....
+# intercept-build --append make buildworld buildkernel -j`sysctl -n hw.ncpu`
+....
+
+A opção `--append` instrui o `intercept-build` a ler um banco de dados de compilação existente (se existir) e adicionar os resultados ao banco de dados. As entradas com chaves de comando duplicadas são mescladas. O banco de dados de compilação gerado por padrão é salvo no diretório de trabalho atual como [.filename]#compile_commands.json#.
+
+[[generators-bear]]
+==== Usando o devel/bear
+
+===== Uso
+
+No diretório raiz da árvore src do FreeBSD, para gerar o banco de dados de compilação com o `bear`:
+
+[source, shell]
+....
+# bear --append -- make buildworld buildkernel -j`sysctl -n hw.ncpu`
+....
+
+A opção `--append` instrui o `bear` a ler um banco de dados de compilação existente, se estiver presente, e adicionar os resultados ao banco de dados. As entradas com chave de comando duplicada são mescladas. O banco de dados de compilação gerado por padrão é salvo no diretório de trabalho atual como [.filename]#compile_commands.json#.
+
+[[final]]
+== Finalizando
+
+Depois que o banco de dados de compilação for gerado, abra qualquer arquivo de código fonte na árvore src do FreeBSD e o daemon do servidor LSP será lançado em segundo plano. Abrir arquivos de código fonte na árvore src pela primeira vez leva significativamente mais tempo antes que o servidor LSP seja capaz de fornecer um resultado completo, devido à indexação de segundo plano inicial pelo servidor LSP compilando todas as entradas listadas no banco de dados de compilação. No entanto, o daemon do servidor de linguagem não indexa os arquivos de origem que não aparecem no banco de dados de compilação, portanto, nenhum resultado completo é mostrado em arquivos de origem que não estão sendo compilados durante o `make`.
diff --git a/documentation/content/pt-br/articles/freebsd-src-lsp/_index.po b/documentation/content/pt-br/articles/freebsd-src-lsp/_index.po
new file mode 100644
index 0000000000..18684ac133
--- /dev/null
+++ b/documentation/content/pt-br/articles/freebsd-src-lsp/_index.po
@@ -0,0 +1,702 @@
+# SOME DESCRIPTIVE TITLE
+# Copyright (C) YEAR The FreeBSD Project
+# This file is distributed under the same license as the FreeBSD Documentation package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: FreeBSD Documentation VERSION\n"
+"POT-Creation-Date: 2023-04-20 20:56-0300\n"
+"PO-Revision-Date: 2023-05-08 19:31+0000\n"
+"Last-Translator: Edson Brandi <ebrandi@freebsd.org>\n"
+"Language-Team: Portuguese (Brazil) <https://translate-dev.freebsd.org/"
+"projects/documentation/articlesfreebsd-src-lsp_index/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.17\n"
+
+#. type: YAML Front Matter: description
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:1
+#, no-wrap
+msgid "Use Language Servers for development in the FreeBSD src tree to get precise go-to-definition and completion results."
+msgstr ""
+"Utilize servidores de linguagem para o desenvolvimento na árvore src do "
+"FreeBSD para obter resultados precisos e completos ao buscar a definição de "
+"um termo no código fonte."
+
+#. type: Title =
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:1
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:13
+#, no-wrap
+msgid "Use Language Servers for Development in the FreeBSD Src Tree"
+msgstr ""
+"Utilize Servidores de Linguagem para o Desenvolvimento na Árvore Src do "
+"FreeBSD"
+
+#. type: Title ==
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:47
+#, no-wrap
+msgid "Introduction"
+msgstr "Introdução"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:50
+msgid ""
+"This guide is about setting up a FreeBSD src tree with language servers "
+"performing source code indexing. The guide describes the steps for Vim/"
+"NeoVim and VSCode. If you use a different text editor you can use this guide "
+"as a reference and search the equivalent commands for your preferred editor."
+msgstr ""
+"Este guia é sobre como configurar uma árvore src do FreeBSD com servidores "
+"de linguagem realizando a indexação de código fonte. O guia descreve os "
+"passos para o Vim/NeoVim e o VSCode. Se você usar um editor de texto "
+"diferente, pode usar este guia como referência e procurar os comandos "
+"equivalentes para o seu editor preferido."
+
+#. type: Title ==
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:52
+#, no-wrap
+msgid "Requirements"
+msgstr "Requisitos"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:55
+msgid ""
+"In order to follow this guide we need to install certain requirements. We "
+"need a Language server, `ccls` or `clangd`, and optionally a compilation "
+"database."
+msgstr ""
+"Para seguir este guia, precisamos instalar certos requisitos. Precisamos de "
+"um servidor de linguagem, `ccls` ou `clangd`, e opcionalmente um banco de "
+"dados de compilação."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:57
+msgid ""
+"The installation of the Language server can be performed via `pkg` or via "
+"ports. If we chose `clangd` we need to install `llvm`."
+msgstr ""
+"A instalação do servidor de linguagem pode ser realizada via `pkg` ou via "
+"ports. Se escolhermos `clangd`, precisaremos instalar o `llvm`."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:59
+msgid "Using `pkg` to install `ccls`:"
+msgstr "Usando o `pkg` para instalar o `ccls`:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:63
+#, no-wrap
+msgid "# pkg install ccls\n"
+msgstr "# pkg install ccls\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:66
+msgid ""
+"If we want to use `clangd` we need to install `llvm` (The example command "
+"uses `llvm15` but choose the version you desire):"
+msgstr ""
+"Se quisermos usar o `clangd`, precisaremos instalar o `llvm` (O comando de "
+"exemplo usa o `llvm15`, mas escolha a versão que desejar):"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:70
+#, no-wrap
+msgid "# pkg install llvm15\n"
+msgstr "# pkg install llvm15\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:73
+msgid ""
+"To install via ports choose a favorite combination of tools from each "
+"category below:"
+msgstr ""
+"Para instalar via ports, escolha a sua combinação favorita de ferramentas de "
+"cada categoria abaixo:"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:75
+msgid "Language server implementations"
+msgstr "Implementações de servidores de linguagem"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:76
+msgid "package:devel/ccls[]"
+msgstr "package:devel/ccls[]"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:77
+msgid ""
+"package:devel/llvm12[] (Other versions are okay, but newer is better. "
+"Replace `clangd12` with clangdN in case other versions are used.)"
+msgstr ""
+"package:devel/llvm12[] (Outras versões também são aceitáveis, mas as mais "
+"novas são melhores. Substitua `clangd12` por `clangdN` no caso de outras "
+"versões serem usadas.)"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:78
+msgid "Editors"
+msgstr "Editores"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:79
+msgid "package:editors/vim[]"
+msgstr "package:editors/vim[]"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:80
+msgid "package:editors/neovim[]"
+msgstr "package:editors/neovim[]"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:81
+msgid "package:editors/vscode[]"
+msgstr "package:editors/vscode[]"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:82
+msgid "Compilation database generator"
+msgstr "Gerador de banco de dados de compilação"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:83
+msgid "package:devel/python[] (For llvm's scan-build-py implementation)"
+msgstr "package:devel/python[] (Para a implementação do scan-build-py do llvm)"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:84
+msgid "package:devel/py-pip[] (For rizsotto's scan-build implementation)"
+msgstr "package:devel/py-pip[] (Para a implementação do scan-build do rizsotto)"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:85
+msgid "package:devel/bear[]"
+msgstr "package:devel/bear[]"
+
+#. type: Title ==
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:87
+#, no-wrap
+msgid "Editor settings"
+msgstr "Configurações do editor"
+
+#. type: Title ===
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:90
+#, no-wrap
+msgid "Vim/Neovim"
+msgstr "Vim/Neovim"
+
+#. type: Title ====
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:92
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:178
+#, no-wrap
+msgid "LSP client plugins"
+msgstr "Plugins de cliente LSP"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:96
+msgid ""
+"The built-in plugin manager is used for both editors in this example.  The "
+"LSP client plugin used is link:https://github.com/prabirshrestha/vim-"
+"lsp[prabirshrestha/vim-lsp]."
+msgstr ""
+"O gerenciador de plugin integrado é usado para ambos os editores neste "
+"exemplo. O plugin do cliente LSP usado é o link:https://github.com/"
+"prabirshrestha/vim-lsp[prabirshrestha/vim-lsp]."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:98
+msgid "To set up the LSP client plugin for Neovim:"
+msgstr "Para configurar o plugin do cliente LSP para o Neovim:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:103
+#, no-wrap
+msgid ""
+"# mkdir -p ~/.config/nvim/pack/lsp/start\n"
+"# git clone https://github.com/prabirshrestha/vim-lsp ~/.config/nvim/pack/lsp/start/vim-lsp\n"
+msgstr ""
+"# mkdir -p ~/.config/nvim/pack/lsp/start\n"
+"# git clone https://github.com/prabirshrestha/vim-lsp ~/.config/nvim/pack/"
+"lsp/start/vim-lsp\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:106
+msgid "and for Vim:"
+msgstr "e para o Vim:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:111
+#, no-wrap
+msgid ""
+"# mkdir -p ~/.vim/pack/lsp/start\n"
+"# git clone https://github.com/prabirshrestha/vim-lsp ~/.vim/pack/lsp/start/vim-lsp\n"
+msgstr ""
+"# mkdir -p ~/.vim/pack/lsp/start\n"
+"# git clone https://github.com/prabirshrestha/vim-lsp ~/.vim/pack/lsp/start/"
+"vim-lsp\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:114
+msgid ""
+"To enable the LSP client plugin in the editor, add the following snippet "
+"into [.filepath]#~/.config/nvim/init.vim# when using Neovim, or [."
+"filepath]#~/.vim/vimrc# when using Vim:"
+msgstr ""
+"Para habilitar o plugin do cliente LSP no editor, adicione o seguinte trecho "
+"em [.filepath]#~/.config/nvim/init.vim# ao usar o Neovim, ou [.filepath]#~/."
+"vim/vimrc# ao usar o Vim:"
+
+#. type: Block title
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:115
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:203
+#, no-wrap
+msgid "For ccls"
+msgstr "Para o ccls"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:127
+#, no-wrap
+msgid ""
+"au User lsp_setup call lsp#register_server({\n"
+"    \\ 'name': 'ccls',\n"
+"    \\ 'cmd': {server_info->['ccls']},\n"
+"    \\ 'allowlist': ['c', 'cpp', 'objc'],\n"
+"    \\ 'initialization_options': {\n"
+"    \\     'cache': {\n"
+"    \\         'hierarchicalPath': v:true\n"
+"    \\     }\n"
+"    \\ }})\n"
+msgstr ""
+"au User lsp_setup call lsp#register_server({\n"
+"    \\ 'name': 'ccls',\n"
+"    \\ 'cmd': {server_info->['ccls']},\n"
+"    \\ 'allowlist': ['c', 'cpp', 'objc'],\n"
+"    \\ 'initialization_options': {\n"
+"    \\     'cache': {\n"
+"    \\         'hierarchicalPath': v:true\n"
+"    \\     }\n"
+"    \\ }})\n"
+
+#. type: Block title
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:129
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:188
+#, no-wrap
+msgid "For clangd"
+msgstr "Para o clangd"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:138
+#, no-wrap
+msgid ""
+"au User lsp_setup call lsp#register_server({\n"
+"    \\ 'name': 'clangd',\n"
+"    \\ 'cmd': {server_info->['clangd15', '--background-index', '--header-insertion=never']},\n"
+"    \\ 'allowlist': ['c', 'cpp', 'objc'],\n"
+"    \\ 'initialization_options': {},\n"
+"    \\ })\n"
+msgstr ""
+"au User lsp_setup call lsp#register_server({\n"
+"    \\ 'name': 'clangd',\n"
+"    \\ 'cmd': {server_info->['clangd15', '--background-index', '--header-"
+"insertion=never']},\n"
+"    \\ 'allowlist': ['c', 'cpp', 'objc'],\n"
+"    \\ 'initialization_options': {},\n"
+"    \\ })\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:141
+msgid ""
+"Depending on the version that you installed for `clangd` you might need to "
+"update the `server-info` to point to the correct binary."
+msgstr ""
+"Dependendo da versão que você instalou para o `clangd`, pode ser necessário "
+"atualizar o `server-info` para apontar para o binário correto."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:144
+msgid ""
+"Please refer to link:https://github.com/prabirshrestha/vim-lsp/blob/master/"
+"README.md#registering-servers[] to learn about setting up key bindings and "
+"code completion.  The official site of clangd is link:https://clangd.llvm."
+"org[], and the repository link of ccls is link:https://github.com/MaskRay/"
+"ccls/[]."
+msgstr ""
+"Por favor, consulte link:https://github.com/prabirshrestha/vim-lsp/blob/"
+"master/README.md#registering-servers[] para aprender sobre como configurar "
+"atalhos e as funções para autocompletar o código. O site oficial do clangd é "
+"link:https://clangd.llvm.org[], e o repositório do ccls é link:https://github"
+".com/MaskRay/ccls/[]."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:147
+msgid ""
+"Below are the reference settings of keybindings and code completions.  Put "
+"the following snippet into [.filepath]#~/.config/nvim/init.vim#, or [."
+"filepath]#~/.vim/vimrc# for Vim users to use it:"
+msgstr ""
+"Abaixo estão as configurações de referência para atalhos de teclado e o "
+"autocomplemento de código. Insira o seguinte trecho em [.filepath]#~/.config/"
+"nvim/init.vim# ou [.filepath]#~/.vim/vimrc# para que usuários do Vim possam "
+"utilizá-las:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:154
+#, no-wrap
+msgid ""
+"function! s:on_lsp_buffer_enabled() abort\n"
+"    setlocal omnifunc=lsp#complete\n"
+"    setlocal completeopt-=preview\n"
+"    setlocal keywordprg=:LspHover\n"
+msgstr ""
+"function! s:on_lsp_buffer_enabled() abort\n"
+"    setlocal omnifunc=lsp#complete\n"
+"    setlocal completeopt-=preview\n"
+"    setlocal keywordprg=:LspHover\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:168
+#, no-wrap
+msgid ""
+"    nmap <buffer> <C-]> <plug>(lsp-definition)\n"
+"    nmap <buffer> <C-W>] <plug>(lsp-peek-definition)\n"
+"    nmap <buffer> <C-W><C-]> <plug>(lsp-peek-definition)\n"
+"    nmap <buffer> gr <plug>(lsp-references)\n"
+"    nmap <buffer> <C-n> <plug>(lsp-next-reference)\n"
+"    nmap <buffer> <C-p> <plug>(lsp-previous-reference)\n"
+"    nmap <buffer> gI <plug>(lsp-implementation)\n"
+"    nmap <buffer> go <plug>(lsp-document-symbol)\n"
+"    nmap <buffer> gS <plug>(lsp-workspace-symbol)\n"
+"    nmap <buffer> ga <plug>(lsp-code-action)\n"
+"    nmap <buffer> gR <plug>(lsp-rename)\n"
+"    nmap <buffer> gm <plug>(lsp-signature-help)\n"
+"endfunction\n"
+msgstr ""
+"    nmap <buffer> <C-]> <plug>(lsp-definition)\n"
+"    nmap <buffer> <C-W>] <plug>(lsp-peek-definition)\n"
+"    nmap <buffer> <C-W><C-]> <plug>(lsp-peek-definition)\n"
+"    nmap <buffer> gr <plug>(lsp-references)\n"
+"    nmap <buffer> <C-n> <plug>(lsp-next-reference)\n"
+"    nmap <buffer> <C-p> <plug>(lsp-previous-reference)\n"
+"    nmap <buffer> gI <plug>(lsp-implementation)\n"
+"    nmap <buffer> go <plug>(lsp-document-symbol)\n"
+"    nmap <buffer> gS <plug>(lsp-workspace-symbol)\n"
+"    nmap <buffer> ga <plug>(lsp-code-action)\n"
+"    nmap <buffer> gR <plug>(lsp-rename)\n"
+"    nmap <buffer> gm <plug>(lsp-signature-help)\n"
+"endfunction\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:173
+#, no-wrap
+msgid ""
+"augroup lsp_install\n"
+"    au!\n"
+"    autocmd User lsp_buffer_enabled call s:on_lsp_buffer_enabled()\n"
+"augroup END\n"
+msgstr ""
+"augroup lsp_install\n"
+"    au!\n"
+"    autocmd User lsp_buffer_enabled call s:on_lsp_buffer_enabled()\n"
+"augroup END\n"
+
+#. type: Title ===
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:176
+#, no-wrap
+msgid "VSCode"
+msgstr "VSCode"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:183
+msgid ""
+"LSP client plugins are required to launch the language server daemon.  Press "
+"`Ctrl+Shift+X` to show the extension online search panel.  Enter `llvm-vs-"
+"code-extensions.vscode-clangd` when running clangd, or `ccls-project.ccls` "
+"when running ccls."
+msgstr ""
+"Plugins de cliente LSP são necessários para iniciar o daemon do servidor de "
+"linguagem. Pressione `Ctrl+Shift+X` para exibir o painel de pesquisa de "
+"extensões online. Digite `llvm-vs-code-extensions.vscode-clangd` quando "
+"estiver usando o clangd, ou `ccls-project.ccls` quando estiver usando o ccls."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:187
+msgid ""
+"Then, press `Ctrl+Shift+P` to show the editor commands palette.  Enter "
+"`Preferences: Open Settings (JSON)` into the palette and hit `Enter` to open "
+"[.filepath]#settings.json#.  Depending on the language server "
+"implementations, put one of the following JSON key/value pairs in [."
+"filepath]#settings.json#:"
+msgstr ""
+"Em seguida, pressione `Ctrl+Shift+P` para exibir a paleta de comandos do "
+"editor. Digite `Preferences: Open Settings (JSON)` na paleta e pressione "
+"`Enter` para abrir o [.filepath]#settings.json#. Dependendo das "
+"implementações do servidor de linguagem, adicione um dos seguintes pares "
+"chave/valor JSON em [.filepath]#settings.json#:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:201
+#, no-wrap
+msgid ""
+"[\n"
+"    /* Begin of your existing configurations */\n"
+"    ...\n"
+"    /* End of your existing configurations */\n"
+"    \"clangd.arguments\": [\n"
+"        \"--background-index\",\n"
+"        \"--header-insertion=never\"\n"
+"    ],\n"
+"    \"clangd.path\": \"clangd12\"\n"
+"]\n"
+msgstr ""
+"[\n"
+"    /* Begin of your existing configurations */\n"
+"    ...\n"
+"    /* End of your existing configurations */\n"
+"    \"clangd.arguments\": [\n"
+"        \"--background-index\",\n"
+"        \"--header-insertion=never\"\n"
+"    ],\n"
+"    \"clangd.path\": \"clangd12\"\n"
+"]\n"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:212
+#, no-wrap
+msgid ""
+"[\n"
+"    /* Begin of your existing configurations */\n"
+"    ...\n"
+"    /* End of your existing configurations */\n"
+"    \"ccls.cache.hierarchicalPath\": true\n"
+"]\n"
+msgstr ""
+"[\n"
+"    /* Begin of your existing configurations */\n"
+"    ...\n"
+"    /* End of your existing configurations */\n"
+"    \"ccls.cache.hierarchicalPath\": true\n"
+"]\n"
+
+#. type: Title ==
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:215
+#, no-wrap
+msgid "Compilation database"
+msgstr "Banco de dados de compilação"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:221
+msgid ""
+"A Compilation database contains an array of compile command objects.  Each "
+"object specifies a way of compiling a source file.  The compilation database "
+"file is usually [.filename]#compile_commands.json#.  The database is used by "
+"language server implementations for indexing purpose."
+msgstr ""
+"Um banco de dados de compilação contém um array de objetos de comando de "
+"compilação. Cada objeto especifica uma maneira de compilar um arquivo de "
+"origem. O arquivo de banco de dados de compilação geralmente é chamado de [."
+"filename]#compile_commands.json#. O banco de dados é usado por "
+"implementações de servidores de linguagem para fins de indexação."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:223
+msgid ""
+"Please refer to link:https://clang.llvm.org/docs/JSONCompilationDatabase."
+"html#format[] for details on the format of the compilation database file."
+msgstr ""
+"Por favor, consulte link:https://clang.llvm.org/docs/JSONCompilationDatabase."
+"html#format[] para obter detalhes sobre o formato do arquivo do banco de "
+"dados de compilação."
+
+#. type: Title ===
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:225
+#, no-wrap
+msgid "Generators"
+msgstr "Geradores"
+
+#. type: Title ====
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:228
+#, no-wrap
+msgid "Using scan-build-py"
+msgstr "Usando scan-build-py"
+
+#. type: Title =====
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:230
+#, no-wrap
+msgid "Installation"
+msgstr "Instalação"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:234
+msgid ""
+"`intercept-build` tool from scan-build-py is used to generate compilation "
+"database."
+msgstr ""
+"A ferramenta `intercept-build` do scan-build-py é usada para gerar o banco "
+"de dados de compilação."
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:237
+msgid ""
+"Install package:devel/python[] to get python interpreter first. To get "
+"`intercept-build` from LLVM:"
+msgstr ""
+"Primeiro instale o package:devel/python[] para obter o interpretador Python. "
+"Para obter o `intercept-build` do LLVM:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:241
+#, no-wrap
+msgid "# git clone https://github.com/llvm/llvm-project /path/to/llvm-project\n"
+msgstr ""
+"# git clone https://github.com/llvm/llvm-project /path/to/llvm-project\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:244
+msgid ""
+"where [.filename]#/path/to/llvm-project/# is your desired path for the "
+"repository. Make an alias in the shell configuration file for convenience:"
+msgstr ""
+"onde [.filename]#/path/to/llvm-project/# é o caminho desejado para o "
+"repositório. Crie um alias no arquivo de configuração do shell para "
+"conveniência:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:248
+#, no-wrap
+msgid "alias intercept-build='/path/to/llvm-project/clang/tools/scan-build-py/bin/intercept-build'\n"
+msgstr ""
+"alias intercept-build='/path/to/llvm-project/clang/tools/scan-build-py/bin/"
+"intercept-build'\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:254
+msgid ""
+"link:https://github.com/rizsotto/scan-build[rizsotto/scan-build] can be used "
+"instead of LLVM's scan-build-py.  The LLVM's scan-build-py was rizsotto/scan-"
+"build merged into the LLVM tree.  This implementation can be installed by "
+"`pip install --user scan-build`.  The `intercept-build` script is in [."
+"filename]#~/.local/bin# by default."
+msgstr ""
+"Você também pode usar o link:https://github.com/rizsotto/scan-build[rizsotto/"
+"scan-build] em vez do scan-build-py do LLVM. O scan-build-py do LLVM foi "
+"incorporado ao repositório do LLVM. Essa implementação pode ser instalada "
+"com o comando `pip install --user scan-build`. O script `intercept-build` é "
+"instalado por padrão em [.filename]#~/.local/bin#."
+
+#. type: Title =====
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:255
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:271
+#, no-wrap
+msgid "Usage"
+msgstr "Uso"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:258
+msgid ""
+"In the top-level directory of the FreeBSD src tree, generate the compilation "
+"database with `intercept-build`:"
+msgstr ""
+"No diretório raiz da árvore src do FreeBSD, gere o banco de dados de "
+"compilação com o `intercept-build`:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:262
+#, no-wrap
+msgid "# intercept-build --append make buildworld buildkernel -j`sysctl -n hw.ncpu`\n"
+msgstr ""
+"# intercept-build --append make buildworld buildkernel -j`sysctl -n hw.ncpu`"
+"\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:267
+msgid ""
+"The `--append` flag tells the `intercept-build` to read an existing "
+"compilation database (if a compilation database exists) and append the "
+"results to the database.  Entries with duplicated command keys are merged.  "
+"The generated compilation database by default is saved in the current "
+"working directory as [.filename]#compile_commands.json#."
+msgstr ""
+"A opção `--append` instrui o `intercept-build` a ler um banco de dados de "
+"compilação existente (se existir) e adicionar os resultados ao banco de "
+"dados. As entradas com chaves de comando duplicadas são mescladas. O banco "
+"de dados de compilação gerado por padrão é salvo no diretório de trabalho "
+"atual como [.filename]#compile_commands.json#."
+
+#. type: Title ====
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:269
+#, no-wrap
+msgid "Using devel/bear"
+msgstr "Usando o devel/bear"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:274
+msgid ""
+"In the top-level directory of the FreeBSD src tree, to generate compilation "
+"database with `bear`:"
+msgstr ""
+"No diretório raiz da árvore src do FreeBSD, para gerar o banco de dados de "
+"compilação com o `bear`:"
+
+#. type: delimited block . 4
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:278
+#, no-wrap
+msgid "# bear --append -- make buildworld buildkernel -j`sysctl -n hw.ncpu`\n"
+msgstr "# bear --append -- make buildworld buildkernel -j`sysctl -n hw.ncpu`\n"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:283
+msgid ""
+"The `--append` flag tells `bear` to read an existing compilation database if "
+"it is present, and append the results to the database.  Entries with "
+"duplicated command key are merged.  The generated compilation database by "
+"default is saved in the current working directory as [."
+"filename]#compile_commands.json#."
+msgstr ""
+"A opção `--append` instrui o `bear` a ler um banco de dados de compilação "
+"existente, se estiver presente, e adicionar os resultados ao banco de dados. "
+"As entradas com chave de comando duplicada são mescladas. O banco de dados "
+"de compilação gerado por padrão é salvo no diretório de trabalho atual como ["
+".filename]#compile_commands.json#."
+
+#. type: Title ==
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:285
+#, no-wrap
+msgid "Final"
+msgstr "Finalizando"
+
+#. type: Plain text
+#: documentation/content/en/articles/freebsd-src-lsp/_index.adoc:289
+msgid ""
+"Once the compilation database is generated, open any source files in the "
+"FreeBSD src tree and LSP server daemon will be launched as well in "
+"background.  Opening source files in the src tree for the first time takes "
+"significantly longer time before the LSP server is able to give a complete "
+"result, due to initial background indexing by the LSP server compiling all "
+"the listed entries in the compilation database.  The language server daemon "
+"however does not index the source files not appearing in the compilation "
+"database, thus no complete results are shown on source files not being "
+"compiled during the `make`."
+msgstr ""
+"Depois que o banco de dados de compilação for gerado, abra qualquer arquivo "
+"de código fonte na árvore src do FreeBSD e o daemon do servidor LSP será "
+"lançado em segundo plano. Abrir arquivos de código fonte na árvore src pela "
+"primeira vez leva significativamente mais tempo antes que o servidor LSP "
+"seja capaz de fornecer um resultado completo, devido à indexação de segundo "
+"plano inicial pelo servidor LSP compilando todas as entradas listadas no "
+"banco de dados de compilação. No entanto, o daemon do servidor de linguagem "
+"não indexa os arquivos de origem que não aparecem no banco de dados de "
*** 11 LINES SKIPPED ***