Merge branch 'master' of ssh://git.snopyta.org:2222/aabm/emacs-humanities into master
This commit is contained in:
commit
7858cc6f10
201
README.org
201
README.org
|
@ -8,21 +8,15 @@ O Emacs Humanities é uma configuração do GNU Emacs feita para a produção de
|
|||
|
||||
Esta configuração é destinada a iniciantes e leigos no uso do Emacs. Os arquivos de configuração são bem documentados, com comentários e indicações de uso para cada bloco de código. Isso não impede, no entanto, que usuários experientes utilizem esta configuração como base para as suas próprias. O Emacs Humanities tem uma base simples, que encoraja modificações pelos usuários.
|
||||
|
||||
Aqui incluo, até este momento, apenas configuração para uso do org-mode e org-roam, duas ótimas (se não as melhores existentes) ferramentas para anotações e organização de mapas mentais. Demonstrações podem ser encontradas abaixo
|
||||
Aqui incluo, até este momento, apenas configuração para uso do org-mode e org-roam, duas ótimas (se não as melhores existentes) ferramentas para anotações e organização de mapas mentais. Demonstrações podem ser encontradas na [[https://git.snopyta.org/aabm/emacs-humanities/wiki][wiki]].
|
||||
|
||||
O objetivo a longo prazo é incluir uma suíte completa de configurações, com suporte para a editoração em LaTeX por meio dos pacotes AucTeX e latex-mode, e até análise de dados estatísticos em R, Python, Julia e outros por meio do pacote ESS (Emacs Speaks Statistics).
|
||||
O objetivo a longo prazo é incluir uma suíte completa de configurações, com suporte para a editoração em LaTeX por meio dos pacotes AucTeX e latex-mode, e até processamento de dados estatísticos em R, Python, Julia e outros por meio do pacote ESS (Emacs Speaks Statistics).
|
||||
|
||||
* Instalação rápida
|
||||
** Instalação automática pelo git (recomendada)
|
||||
Execute o comando a seguir, depois inicie o Emacs. Os pacotes da configuração serão instalados automaticamente. O comando requer o =git= instalado no sistema.
|
||||
Esta configuração pode ser encontrada em dois repositórios. O [[https://git.snopyta.org/aabm/emacs-humanities][repositório oficial]], e o [[https://gitlab.com/aabm/emacs-humanities][mirror no gitlab]]. O repositório oficial possui uma wiki detalhando o processo de instalação, e muito mais.
|
||||
|
||||
#+begin_src shell
|
||||
git clone https://git.snopyta.org/aabm/emacs-humanities ~/.emacs.d
|
||||
#+end_src
|
||||
* Instalação
|
||||
|
||||
** Instalação manual sem git
|
||||
|
||||
Para instalar sem o =git=, baixe o .zip ou .tar.gz do repositório e extraia tudo para o diretório =~/.emacs.d=, depois inicie o Emacs. Os pacotes da configuração serão instalados automaticamente.
|
||||
A wiki do Emacs Humanities tem um guia completo de instalação, tanto do Emacs quanto desta configuração. O guia cobre diversos sistemas operacionais, e pode ser encontrado [[https://git.snopyta.org/aabm/emacs-humanities/wiki/Instala%C3%A7%C3%A3o-do-Emacs-Humanities][aqui]]. Não se intimide, o processo de instalação completo é bem simples e dura no máximo alguns minutos.
|
||||
|
||||
* Por onde começar
|
||||
|
||||
|
@ -32,176 +26,19 @@ O Emacs já vem com um tutorial em si, que contém informações básicas sobre
|
|||
|
||||
Outra coisa a mencionar: esse documento pode parecer longo e complexo, mas não se intimide; Não há porque ler esse manual todo de uma vez. Leia-o aos poucos, conforme precisar de alguma informação.
|
||||
|
||||
* Guia de referência rápida do Emacs
|
||||
* TODO Coisas a fazer
|
||||
*** TODO Escolher um tema de cores mais razoável.
|
||||
*** TODO Adicionar melhor suporte para escrita de LaTeX pelo AucTeX
|
||||
|
||||
Essa seção serve como guia de referência rápida para conceitos, teclas de atalho, etc, relacionados ao Emacs. Não é um substituto para o tutorial ou a prática de uso, mas pode servir para tirar quaisquer dúvidas que surgirem.
|
||||
Atualmente o Emacs Humanities não possui configuração específica para
|
||||
a produção de documentos LaTeX diretamente. Por enquanto recomendo que
|
||||
façam tais documentos pelo org-mode com inserção de blocos LaTeX.
|
||||
É perfeitamente possível escrever LaTeX na configuração atual; só não há
|
||||
nenhum aprimoramento em relação à experiência padrão. De qualquer maneira,
|
||||
o Emacs é completamente extensível e programável, e esta configuração é
|
||||
software livre: você tem a liberdade e a possibilidade de modificá-la
|
||||
como quiser e adicionar o que quiser.
|
||||
|
||||
** Buffers, frames, janelas. O que é tudo isso?
|
||||
** Notação das teclas de atalho
|
||||
|
||||
Lendo este manual, você já deve ter percebido a forma incomum de se denotar teclas de atalho. Esta notação é usada em toda a documentação do Emacs, e é explicada no tutorial. A forma é simples, fácil de ler, e curta para se escrever, mas não é utilizada por outros programas, então pode ser confusa para iniciantes. Segue aqui uma explicação rápida:
|
||||
|
||||
- Teclas modificadoras (Control, Alt, Shift, Super, Hyper) são indicadas por apenas uma letra
|
||||
- Control é indicada por C, Alt por M, Shift por S, Windows por s, e Hyper por H.
|
||||
- Alt é chamada de Meta e a tecla Windows de Super. A tecla Hyper não está presente na maioria dos teclados atuais.
|
||||
- Teclas a serem pressionadas juntas são conectadas por hífen
|
||||
- Portanto C-x denota Control+x, e M-x denota Meta+x ou Alt+x
|
||||
- Teclas a serem pressionadas em seguida são separadas por espaço
|
||||
- Portanto C-x 0 denota Control+x, depois 0, e C-x C-c indica Control+x, depois Control+c.
|
||||
- A maior parte das teclas usa prefixos comuns
|
||||
- C-x C-c são os prefixos mais utilizados. Com eles começa a maior parte das combinações de atalho.
|
||||
|
||||
** Teclas de atalho úteis
|
||||
|
||||
Sabendo a notação das teclas de atalho, é fácil aprender novas combinações. Aqui incluímos uma breve lista de teclas úteis e frequentemente utilizadas. Pode ser útil manter este arquivo aberto, como referência rápida das teclas de atalho.
|
||||
|
||||
Não incluímos as teclas de navegação textual descritas no tutorial, pois podem ser substituídas por iniciantes pelas setas do teclado e pelo uso do mouse, com o intuito de minimizar a curva de aprendizagem inicial. Dito isso, é altamente recomendado que você aprenda sim as teclas de navegação, que são muito mais eficientes do que navegar usando o mouse ou as setas do teclado.
|
||||
|
||||
- Teclas de uso geral:
|
||||
- C-g para cancelar a ação atual. Útil para aquelas vezes em que você aperta ou faz algo de errado. Lembre-se: se algo de inesperado acontecer, pressione C-g.
|
||||
- C-x C-f para find-file, que é, procurar e abrir o arquivo desejado.
|
||||
- C-x C-s para salvar o buffer (arquivo) atual.
|
||||
- C-x C-c para sair do Emacs.
|
||||
- M-x para o menu interativo de funções, de onde você pode chamar qualquer função do programa
|
||||
- Teclas para manipular buffers:
|
||||
- C-x b para mudar de buffer (buffers são similares ao conceito de arquivos, e são descritos em mais detalhes no tutorial)
|
||||
- C-x k para deletar o buffer atual
|
||||
- Teclas para manipular janelas:
|
||||
- C-x o para focar para a pŕoxima janela
|
||||
- C-x 0 para deletar a janela atual
|
||||
- C-x 1 para deletar todas as /outras/ janelas exceto a atual
|
||||
- E finalmente, as teclas para acessar ajuda, documentação, e o tutorial. A auto-documentação é explicada em mais detalhes em seguida;
|
||||
- C-h k para descrever a função realizada por alguma tecla
|
||||
- C-h t para acessar o tutorial
|
||||
- C-h m para descrever o modo atual e suas teclas de atalho (org-mode, por exemplo)
|
||||
- C-h f e C-h v para descrever funções e variáveis, respectivamente.
|
||||
|
||||
Experimente apertar alguma tecla de prefixo, como C-x, e sem apertar mais nada, esperar por um momento. O menu do which-key aparecerá, indicando todas as teclas de atalho disponíveis a partir da sua tecla de prefixo. Uma maneira intuitiva de explorar os comandos existentes. O which-key funciona para qualquer prefixo ou combinação de teclas, a qualquer momento. Não tenha medo de utilizá-lo.
|
||||
|
||||
** Acessando a documentação interna do Emacs
|
||||
|
||||
O Emacs possui um sistema único de auto-documentação, não encontrado em nenhum outro editor. Algumas funções são capazes de analisar e descrever informações sobre outras funções, variáveis, pacotes, e muito mais, essecialmente gerando documentação, instruções e ajuda para o usuário automaticamente. Isso torna o processo de aprendizagem e exploração das funcionalidades do editor muito mais orgânico; o usuário não precisa ler o manual de instruções inteiro para aprender sobre o editor. Basta apenas acessar a documentação para cada ponto individual que precisar.
|
||||
|
||||
As teclas de atalho da auto-documentação podem ser acessadas pelo prefixo C-h, como descrito na seção de teclas de atalho acima.
|
||||
|
||||
* Anotações com org-mode
|
||||
|
||||
O org-mode é uma extensão muito popular para o Emacs. É o principal motivo
|
||||
pelo qual muitas pessoas não ligadas à programação ou computação fazem uso
|
||||
frequente do Emacs, tanto para fins pessoas quanto fins acadêmicos.
|
||||
|
||||
Em termos simples, o org-mode é uma linguagem de marcação, editoração, ou
|
||||
markup, feita para organização pessoal. Ele possibilita a criação de
|
||||
listas de afazeres, entradas de agenda, e outras formas de anotação pessoal,
|
||||
mas também permite a exportação destas anotações para documentos completos,
|
||||
usando uma conversão pelo LaTeX. Isto torna o org-mode uma ferramenta de
|
||||
alta utilidade: tem a simplicidade de uma linguagem básica como Markdown,
|
||||
mas todas as capacidades de uma linguagem completa como LaTeX.
|
||||
|
||||
O org-mode suporta exportação para vários formatos além de LaTeX, incluindo
|
||||
Markdown e HTML, e pode ser usado até para criação de páginas da web.
|
||||
Esta documentação está escrita em org, e assim recebe a formatação adequada
|
||||
na página do git do Emacs Humanities.
|
||||
|
||||
** Guia rápido de org-mode
|
||||
|
||||
*** Formato simples
|
||||
|
||||
Arquivos do org-mode usam a extensão .org. A extensão é utilizada apenas para indicar a uso da linguagem na escrita do arquivo; o formato em si é texto simples, como arquivos .txt, e podem ser acessados por qualquer outro editor.
|
||||
|
||||
*** Sintaxe simples
|
||||
|
||||
Muitos dizem que o org-mode é inspirado pelo Markdown, outra linguagem de marcação comum, devido à similaridade das sintaxes de ambos. O org-mode é, na verdade, mais antigo que o Markdown, e possui uma sintaxe que é, em geral, mais simples, consistente e padronizada, e ao mesmo tempo mais abrangente e capaz.
|
||||
|
||||
*** Exemplo de org-mode
|
||||
|
||||
Vale notar que quaisquer vírgulas no início das linhas não são presentes no org normal. Estão aqui só para que o texto não seja formatado pela página.
|
||||
|
||||
#+begin_src org
|
||||
,* Títulos (chamados headings) se denotam com um asterisco.
|
||||
,** Dois asteriscos indicam um subtítulo (subheading).
|
||||
,*** Três asteriscos indicam um subsubtítulo.
|
||||
,*** e assim vai...
|
||||
,**** Existem níveis infinitos de subsubsubsubs...títulos.
|
||||
|
||||
Títulos podem conter texto dentro de si.
|
||||
|
||||
,** Texto!
|
||||
|
||||
Para inserir texto, basta apenas... inserir texto. Nada de tags de <p> ou qualquer coisa.
|
||||
|
||||
Para separar dois blocos de texto em parágrafos, apenas inclua uma linha vazia entre os dois.
|
||||
|
||||
Podemos também fazer algumas formatações básicas, como *negrito*, /itálico/, =realçado=, etc.
|
||||
|
||||
- Fazer listas também é fácil, basta usar um hífen seguido por um espaço logo ao início da linha, antes do texto
|
||||
- Outro item de exemplo
|
||||
- Listas também suportam sub-itens, que são indicados por um espaço antes do hífen do início
|
||||
- outro subitem
|
||||
- [ ] As listas também podem ser /checklists/, se possuírem colchetes separados por um espaço no início
|
||||
- [-] As checklists são interativas. Elas se relacionam com seus subitens.
|
||||
- [X] Subitem completo. Este é marcado por um X entre os colchetes. Para facilitar, não é necessário inserir o X manualmente. Há uma tecla de atalho para isso, C-c C-c, que torna a ação mais rápida.
|
||||
- [ ] Subitem incompleto. Este marca o item acima com o sinal de compleção parcial, o hífen.
|
||||
|
||||
|
||||
|
||||
1. Pode-se fazer listas numeradas também, usando um número e um ponto.
|
||||
2. Outro item numerado
|
||||
|
||||
1) Há outro formato para listas numeradas também, usando um parêntese.
|
||||
2) Listas numeradas não suportam
|
||||
|
||||
|
||||
|
||||
#+end_src
|
||||
|
||||
|
||||
Abaixo está o mesmo texto em org do bloco acima, porém exibido corretamente:
|
||||
*** Títulos (chamados headings) se denotam com um asterisco.
|
||||
**** Dois asteriscos indicam um subtítulo (subheading).
|
||||
***** Três asteriscos indicam um subsubtítulo.
|
||||
***** e assim vai...
|
||||
****** Existem níveis infinitos de subsubsubsubs...títulos.
|
||||
|
||||
Títulos podem conter texto dentro de si.
|
||||
|
||||
***** Texto!
|
||||
|
||||
Para inserir texto, basta apenas... inserir texto. Nada de tags de <p> ou qualquer coisa.
|
||||
|
||||
Para separar dois blocos de texto em parágrafos, apenas inclua uma linha vazia entre os dois.
|
||||
|
||||
Podemos também fazer algumas formatações básicas, como *negrito*, /itálico/, =realçado=, etc.
|
||||
|
||||
- Fazer listas também é fácil, basta usar um hífen seguido por um espaço logo ao início da linha, antes do texto
|
||||
- Outro item de exemplo
|
||||
- Listas também suportam sub-itens, que são indicados por um espaço antes do hífen do início
|
||||
- outro subitem
|
||||
- [ ] As listas também podem ser /checklists/, se possuírem colchetes separados por um espaço no início
|
||||
- [-] As checklists são interativas. Elas se relacionam com seus subitens.
|
||||
- [X] Subitem completo. Este é marcado por um X entre os colchetes. Para facilitar, não é necessário inserir o X manualmente. Há uma tecla de atalho para isso, C-c C-c, que torna a ação mais rápida.
|
||||
- [ ] Subitem incompleto. Este marca o item acima com o sinal de compleção parcial, o hífen.
|
||||
|
||||
|
||||
|
||||
1. Pode-se fazer listas numeradas também, usando um número e um ponto.
|
||||
2. Outro item numerado
|
||||
|
||||
1) Há outro formato para listas numeradas também, usando um parêntese.
|
||||
2) Listas numeradas não suportam
|
||||
|
||||
** Mapas mentais com org-roam
|
||||
|
||||
O org-roam é uma extensão do org-mode centrada na interligação de arquivos
|
||||
relacionados, inspirada pelo Roam Research e pelo método Zettelkasten.
|
||||
A ideia é permitir ao usuário criar um verdadeiro cérebro externo, com toda
|
||||
a riqueza de informação de seu cérebro real.
|
||||
|
||||
Com o org-roam-server, é possível navegar os arquivos do org-roam por um
|
||||
gráfico renderizado em tempo real, exibido no seu navegador de internet,
|
||||
e conectado ao org-roam pelo org-roam-protocol.
|
||||
|
||||
Um gif demonstrando o uso do org-roam-server para navegação de arquivos
|
||||
interligados:
|
||||
|
||||
[[file:docs/org-roam-server.gif]]
|
||||
*** TODO Adicionar suporte para pacotes de Estatística, mais especificamente o ESS
|
||||
- O ESS pode ser usado para programação em R, Julia e outras linguagens
|
||||
- Código em R pode ser incluído em documentos org e exportado para PDFs pela compilação de LaTeX
|
||||
|
|
Loading…
Reference in New Issue