Se eu escrever algo como *shrug*
no modo organizacional, ele será automaticamente tipificado como texto em negrito . Como posso evitar isso, ou seja, na verdade, *shrug*
aparecer literalmente quando exportado?
Editar:
Ainda quero usar a fonte em negrito (sem precisar alterar a sintaxe em estrela padrão do texto em negrito) e não deve importar para o formato de arquivo que meu arquivo organizacional é exportado, por exemplo, deve funcionar tanto para o Markdown quanto para o HTML exportação.
Isso é algo importante , é por isso que está escrito em negrito. Mas, para outra coisa, não tenho a idéia * encolher os ombros *.
\ast{}shrug\ast{}
ou\star{}shrug\star{}
similar, com HTML, poderá usar a codificação de entidade:a;
ou se adicionar uma opção antes ou depois do asterisco, isso também funcionaria.code
-tag e no markdown tem backticks. Quero que não seja formatado de forma alguma.\ast{}shrug\ast{}
mencionado por wvxvw é provavelmente a sua melhor opção. exporta para html como∗shrug∗
e para látex$\ast$shrug$\ast$
usando as entidades de caracteres apropriadas.org-toggle-pretty-entities
os exibe como caracteres UTF8 no buffer organizacional.Respostas:
Esta resposta é inspirada após sugestões coletivas na lista GNU do emacs-org-mode para usar os caracteres de espaço de largura
org-entity
(C-h i g
(org) Special symbols
) em\ast{}
vez de largura zero (o que eu sugeri na minha outra resposta aqui ).Abaixo está uma solução genérica em que o usuário não precisa se lembrar das entidades orgânicas para vários símbolos. Ele insere a entidade organizacional (se disponível) quando o usuário o faz
C-u SYMBOL
; trabalha paraC-u *
,C-u /
,C-u =
, etc.Portanto, quando o usuário digita
C-u *
,\ast{}
é inserido e a mensagem abaixo é exibida na área de eco,Se
org-pretty-entities
estiver definido comot
acima, o inserido\ast{}
será exibido como*
.Se
org-entity
não existe um caractere X e se o usuário fazC-u
X , X é simplesmente inserido 4 vezes (comoC-u
normalmente faria).fonte
\*thisisnotbold\*
?org-entities
documentação.Usando o caractere unicode ZERO WIDTH SPACE
Você pode falhar na análise de ênfase em negrito adicionando um caractere de espaço de largura zero (indicado por [ZWS] nos trechos abaixo) antes do primeiro asterisco ou após o segundo asterisco.
Ambos os trechos abaixo exportados para HTML nos meus testes:
[ZWS] antes do primeiro asterisco
[ZWS] após o segundo asterisco
Você pode inserir o ZERO WIDTH SPACE (nome do unicode) fazendo
C-x 8
RET200b
RET.Eu uso isso com muita frequência, por isso vinculei isso
C-x 8 0
.Atualizar
De acordo com a discussão na lista de correio do emacs-org-mode , não é recomendável usar caracteres não ASCII para escapar; em vez disso,
org-entities
deve ser usado, se aplicável. Eu também concordei com isso e criei outra solução que facilita a inserçãoorg-entities
(C-u *
neste caso).fonte
[email protected]
lista de discussão. Se estiver interessado, você pode seguir / adicionar à discussão aqui .\ast{}
nos arquivos. Minha outra solução simplesmente torna a entrada\ast{}
mais rápida e fácil de lembrar.Por literalmente, se você realmente quiser usar alguma marcação no LaTeX exportado, poderá usar
=*shrug*=
. No entanto, se você apenas deseja que ele seja exportado como*shrug*
e deseja fazer isso o tempo todo, eu recomendaria filtros . Se, no entanto, você só precisar disso para algumas instâncias de*shrug*
, deverá usar a alternativa sugerida por @wvxvw. Você pode fazer isso corretamente usando macros . Alguns exemplos a seguir.Filtros
Essencialmente, o filtro acima procura a
\textbf{..}
marcação na string transcodificada e a substitui por\ast{}..\ast{}
, sem alterar o que foi colocado dentro{..}
. Eu não testei a expressão regular e a sequência de substituição, portanto, pode haver erros, mas você entendeu. Da mesma forma, para cobrir outros back-ends, é possível incluir trechos extras como este:A mesma ressalva vale para a expressão regular acima.
Macros
Origem da organização:
exporta para o LaTeX como:
e para HTML como:
Obviamente, você pode adicionar quantos backend quiser à macro.
Editar: como Kaushal aponta nos comentários, o snippet de exportação para o látex é opcional neste caso. No entanto, prefiro usá-los sempre que houver látex nu, pois acho bastante difícil acompanhar a lista
org-entities
e as regras específicas por trás da identificação do látex na origem da organização.Nota:
HTML
, então pode haver alguns erros nos respectivos bits.fonte
#+macro: nobold \ast{}$1\ast{}
:?ast
é um dos membros daorg-entities
lista, que especifica o que o látex, html, ascii, etc exportações deve ser parecido:("ast" "\\ast" t "∗" "*" "*" "*")
. A ordem dos elementos nessa lista é "nome, substituição do LaTeX, LaTeX mathp, substituição de HTML, substituição de ASCII, substituição de Latin1, substituição de utf-8".Isso é controlado pela variável org-ênfase-alist e pode ser facilmente modificado.
org-emphasis
.customize-group
e procure por ênfase organizacionalfonte