Respostas:
A função texmathp
definida no AUCTeX (carregada automaticamente a partir de texmathp
) faz exatamente isso (ok, na verdade, faz um pouco mais).
Utilizado de forma interativa, ele fornecerá mais informações, incluindo se o ponto está em uma construção matemática.
Usado no elisp, será t
em matemática, nil
caso contrário. As peças adicionais de informações são, em seguida, armazenado na variável texmathp-why
.
Quando texmathp
retorna t
, trata-se de contras (MATCH . POSITION)
, onde MATCH
está uma sequência que contém o comando TeX ou o nome do ambiente que acionou o modo matemático e POSITION
é a posição em que essa sequência foi encontrada no buffer. MATCH
é algo como "$"
, "$$"
, "\\("
, "\\["
"\\ensuremath"
, "displaymath"
, "equation"
, ... Quando texmathp
retorna nil
, a variável texmathp-why
é (nil . pos)
onde pos
é o começo do parágrafo.
Aviso da docstring:
As funções pressupõem que você tenha (quase) sintaticamente (La) TeX correto no buffer.
Ele está ciente de todos os ambientes que AUCTeX
sabe de (por exemplo, para font-bloqueio), e você pode adicionar mais usando a variável texmathp-tex-commands
.