Como delinear / ocultar / mostrar texto ao escrever prosa?

9

Eu quero usar o Emacs para escrever prosa (especificamente, ficção).

Eu usei Scrivener e Ulisses no passado, mas não estou feliz com eles. Quero experimentar o Emacs, mas não sei como replicar o fluxo de trabalho com o qual estou acostumado.

Eu uso writeroom-modepara obter um ambiente livre de distrações, mas é apenas uma peça do quebra-cabeça. Gosto da maneira como o Ulysses e o Scrivener permitem que você se concentre em um pedaço de texto, e gostaria de saber como replicar essa funcionalidade. Eu gostaria, org-modeou outro esboço, que me permitisse focar em um pedaço de texto e ocultar o resto. Idealmente, eu gostaria de ter uma barra lateral (como Ulysses), na qual eu posso organizar partes do texto manualmente, como nesta captura de tela:

Ulisses

PS: Eu li o PDF "Emacs for Writers", mas ele não aborda a necessidade de organizar e estruturar seu texto.

Jason Mirk
fonte
4
Esclareça sua postagem com uma pergunta sobre o que você realmente precisa (melhor ainda, faça uma pergunta discreta por postagem e faça várias postagens, se necessário). org-modedescreve, o que permite que você se concentre em partes específicas do texto e mova o resto. Restringir remove o texto da tela.
Dan
11
Isso pode ser um candidato a uma dessas perguntas da "grande lista" :) (houve uma discussão no Meta sobre se esse tipo de pergunta é ou não apropriado no SE: meta.emacs.stackexchange.com/questions/305/… ) Mais sobre o tópico: você provavelmente deve revisitar o modo Org. É enorme e, em termos de estruturação de texto, sabe fazer muito. O Emacs, no entanto, carece de compreensão da gramática do texto que você escreve. A verificação ortográfica é tudo o que ela tem a oferecer a esse respeito.
Wvxvw 08/07
11
Os escritores @lawlist sempre usaram "barras laterais" na forma de notas. esta é apenas a versão digital dela.
Jason Mirk
2
Aqui está um artigo interessante intitulado Como escrever um livro no emacs. masteringemacs.org/article/how-to-write-a-book-in-emacs Como exemplo elispde investimento e tempo, passei alguns dias apenas para obter movimentos básicos para imitar os vários processadores de texto que eu havia usado ao longo dos anos em minha (s) profissão (s) - por exemplo, palavra esquerda / direita, parágrafo acima / abaixo e excluir palavra. O bom do Emacs é que ele é perfeito para qualquer pessoa com um pouco de Transtorno Obsessivo-Compulsivo, que precisa que as coisas sejam de uma maneira específica e que deve estar certa, não exatamente certa.
lawlist
11
Scrivener tem muita coisa e você não escreve em texto simples, tanto quanto me lembro. Ulysses 3 é muito bom, mas trava muito. Além disso, você não pode dividir o buffer, mover parágrafos de texto sem usar o mouse e muitas outras coisas que você acaba perdendo quando sabe que elas existem.
Jason Mirk

Respostas:

6

Aqui está o que considero ser seu objetivo:

  • A capacidade de se concentrar em um pedaço específico de texto enquanto tira o resto do caminho,
  • A capacidade de mover grandes pedaços de texto rapidamente.

Esta solução usa apenas a funcionalidade Emacs pronta para uso:

  • org-mode
  • estreitamento
  • janelas divididas
  • tampões indiretos

Antes de tudo, se você escrever seu documento org-mode(ou qualquer outro modo que utilize as outlineinstalações do Emacs ), poderá estruturar seu documento com títulos, subtítulos, etc., e então ocultar ou mostrar os corpos dos esses elementos. Para a prosa, você pode achar útil ser muito elementar: um cabeçalho para um capítulo, um sub-cabeçalho para uma seção, um sub-sub cabeçalho para uma subseção, até um sub-sub-sub ... -header para cada parágrafo individual.

Segundo, mesmo que org-modepermita ocultar os corpos dos cabeçalhos e focar apenas no corpo à sua frente, os cabeçalhos das seções serão exibidos na tela. Você pode ou não achar isso perturbador. Se o fizer, você pode fazer narrowo buffer apenas para esse cabeçalho (fazendo com que todo o restante dos cabeçalhos desapareça temporariamente da vista) e depois widennovamente quando desejar ver o outro texto novamente.

Terceiro, para obter uma visualização fácil do esboço e a capacidade de mover o texto rapidamente, você pode usar uma combinação de janelas divididas e buffers indiretos. Faça o seu quadro Emacs largo o suficiente para acomodar duas janelas (consulte esta postagem para terminologia de quadro / janela). Faça M-x split-window-horizontallypara obter duas janelas lado a lado no seu quadro. Na janela que possui o seu documento, faça M-x clone-indirect-buffer.

Agora você tem duas cópias vinculadas do mesmo documento em dois buffers diferentes. Coloque-os em suas duas janelas. Embora ambos contenham texto idêntico, você pode fazer com que pareçam diferentes nas duas janelas.

Uma maneira muito útil de usar esse recurso é ter uma janela principal de edição na qual você entra e edita sua prosa e usar a outra janela como vista de tópicos: oculte os corpos para mostrar apenas os cabeçalhos em uma determinada seção / subseção / para fornecer uma visão geral da estrutura do documento. Você pode então mover blocos ao redor rapidamente - se você estiver usando org-mode, M-<up>e M-<down>executar org-metaupe org-metadown, respectivamente, o que, neste contexto, irá mover subárvores (um cabeçalho e tudo abaixo dele) para cima ou para baixo no documento.

Dan
fonte
11
isso é quase perfeito. Eu escrevi alguns elisp e personalizei tudo ao meu gosto também. Não foi tão difícil, afinal. Mais uma coisa seria como estar na barra lateral, pressionar uma tecla e carregá-la no buffer principal. Mas acho que é uma pergunta diferente.
21815 Jason Mirk
2
Você também pode gostar clone-indirect-buffer-other-window.
incandescentman
9

Eu acho que essa é uma ótima pergunta. Tenho certeza de que existem vários modos super úteis que os escritores de ficção não sabem que precisam. Aconteci no modo palimpsesto por acidente, mas agora não podia viver sem ele. Adoraria ver quais pacotes outros escritores de ficção acham úteis.

Aqui estão alguns que eu uso todos os dias:

  • modo palimpsesto . Envia o texto selecionado para a parte inferior do arquivo. Eu uso provavelmente 20 vezes por hora.
  • Deft . Pesquisa incremental de arquivos de texto em um diretório, semelhante ao nvALT do @ ttscoff .
  • Olivetti . Torne a área de texto menor e mais agradável.
  • Fonte . Se você é roteirista.
  • Helm-swoop para encontrar as coisas rapidamente.
  • Capitalização automática . Não há necessidade de escrever letras maiúsculas.
  • Org-pomodoro para se manter na pista.
  • wc-mode para contar palavras, se necessário.
  • E acima de tudo, o modo organizacional para descrever. Meu truque é escrever notas para mim mesmo (por exemplo, "esta seção precisa de uma introdução melhor") usando comentários no modo organizacional, para que eles não sejam incluídos quando eu exporto. Ah, e use o comando org-narrow-to-subtreepara se concentrar apenas na seção em que você está trabalhando.
homem incandescente
fonte
2
Isto e excelente! Eu me vejo usando o modo palimpsesto milhares de vezes e também a restrição de árvore para subárvore!
Jason Mirk
11
Eu também achei isso que parece replicar o que eu estava procurando: github.com/titaniumbones/org-writers-room, mas ainda não funcionou corretamente. Isso é muito interessante: github.com/theironsamurai/scribemacs
Jason Mirk
11
Até onde eu sei, a sala de redatores ainda não funciona. É uma ótima idéia, mas alguém precisa escrever o código.
Incandescentman
11
Quaisquer voluntários?
incandescentman
1

Essa resposta não é exaustiva, mas não posso postar isso nos comentários porque ela possui uma imagem. O índice do qual você está falando pode ser algo como abaixo?

insira a descrição da imagem aqui

Outra maneira ad hoc de ter um esboço é executar M-s o^\s-*\*(o que equivale a M-xoccur). Embora esse não seja um esboço adequado, na maioria das vezes, acho que essa é uma solução adequada para o problema de localizar e navegar nas seções do documento.

wvxvw
fonte
11
Sim, tentei o speedbar, mas não gosto que seja uma janela flutuante. Parece desatualizado.
Jason Mirk
2
@JasonMirk: havia um projeto para tornar o Speedbar um buffer, em vez de uma janela, mas é difícil fazê-lo funcionar "corretamente" devido a vários comandos do buffer que podem eventualmente enterrá-lo ou substituir o conteúdo. Costumava haver gerenciadores de configuração de buffer, como o ECB, que criava um layout de buffer fixo e também podia exibir o esboço no local fixo, mas minha experiência de trabalhar com o ECB é que, na maioria das vezes, fica no meu caminho. Mas talvez algo assim funcione para você, se você não precisar manipular buffers com muita frequência.
Wvxvw
11
emacswiki.org/emacs/SrSpeedbar, este é o projeto que eu estava falando.
Wvxvw
11
Se o conceito da barra de velocidade é algo que o pôster original gosta, pode valer a pena investir tempo para fazê-lo se comportar como o pôster original gostaria. Levei cerca de uma hora (com dois anos de acompanhamento elisp) para tornar a biblioteca minha própria configuração personalizada, retirar todo esse material da moldura e transformá-lo em um buffer sob demanda que pode ser exibido em qualquer janela. É aqui que entra o investimento de tempo ao lidar com o Emacs - você encontra algo que gosta (ou seja, pode trabalhar) e o altera para o que melhor se adapte às suas necessidades exatas. Por exemplo, generate-speedbar-noselect+ display
lawlist
Eu não o usei, mas e o neotree ?
Incandescentman