Implemente um patch semelhante como neste post https://sourceforge.net/p/ctags/patches/76/ para que as apresentações do projetor LaTeX sejam classificadas por slides em vez de seções
Obrigado por fazer este problema.
Você tem um exemplo de entrada?
Eu gostaria de incluí-lo como um caso de teste em nosso repositório.
é um bom exemplo, mas não usa \frametitle
.
Ele usa \begin{frame}{AN ITEM WE WOULD LIKE TO TAG}
.
Já implementei funções para capturar \frametitle
.
No entanto, \begin{frame}{...}
ainda não é.
Acho que este pode ser usado, mudei os títulos para usar a palavra-chave \frametitle
https://github.com/jagjordi/IL2239-presentation
Ainda lutando.
Existe alguma maneira de eu ajudar com isso?
Você poderia tentar o # 2424?
Ola @masatake
Tenho uma sugestão para modificar o comportamento do analisador em uma apresentação de projetor.
Se um arranjo de slides como este está escrito
Frame 1
|-- Subframe 1.1
|-- Subframe 1.2
|-- Subframe 1.3
Frame 2
|-- Subframe 2.1
|-- Subframe 2.2
Normalmente, eu teria o mesmo título repetido tantas vezes quanto os "sub-slides" existissem. Por exemplo
\frametitle{Frame1}
\framesubtitle{Subframe1.1}
\frametitle{Frame1}
\framesubtitle{Subframe1.2}
\frametitle{Frame1}
\framesubtitle{Subframe1.3}
\frametitle{Frame2}
\framesubtitle{Subframe2.1}
\frametitle{Frame2}
\framesubtitle{Subframe2.2}
Com o comportamento atual do analisador, ele irá gerar uma entrada de tag para cada vez que o comando frametitle
for usado. Eu diria que geralmente o comportamento deve ser que ele apenas gere uma entrada de tag a primeira vez que o comando é usado, e os usos subsequentes do comando (com o mesmo nome de título) "apontarão" para o primeiro uso.
Diz-me o que pensas?
Cumprimentos,
Vou trabalhar neste item após mesclar https://github.com/universal-ctags/ctags/pull/2450.
Vai demorar mais tempo do que você imagina.
Em # 2450, apresentarei uma tabela de símbolos.
Com isso podemos escrever o seguinte código:
tagEntryInfo *tag = lookupTag ("Frame1");
if (! (tag && kinfOf(tag) == "frametitle"))
skip();
else /* a frame title we have never seen. */
makeTag ();
Parece bom. Avise-me se precisar de algo para testar 👍
Funciona parcialmente.
Um pouco mais de trabalho é necessário.
[yamato@slave]~/var/ctags-github% cat /tmp/input.tex
cat /tmp/input.tex
\frametitle{Frame1}
\framesubtitle{Subframe1.1}
\frametitle{Frame1}
\framesubtitle{Subframe1.2}
\frametitle{Frame1}
\framesubtitle{Subframe1.3}
\frametitle{Frame2}
\framesubtitle{Subframe2.1}
\frametitle{Frame2}
\framesubtitle{Subframe2.2}
[yamato@slave]~/var/ctags-github% ./ctags --sort=no -o - /tmp/input.tex
./ctags --sort=no -o - /tmp/input.tex
Frame1 /tmp/input.tex /^\\frametitle{Frame1}$/;" f language:TeXBeamer
Subframe1.1 /tmp/input.tex /^\\framesubtitle{Subframe1.1}$/;" g language:TeXBeamer frametitle:Frame1
Subframe1.2 /tmp/input.tex /^\\framesubtitle{Subframe1.2}$/;" g language:TeXBeamer frametitle:Frame1
Subframe1.3 /tmp/input.tex /^\\framesubtitle{Subframe1.3}$/;" g language:TeXBeamer frametitle:Frame1
Frame2 /tmp/input.tex /^\\frametitle{Frame2}$/;" f language:TeXBeamer
Subframe2.1 /tmp/input.tex /^\\framesubtitle{Subframe2.1}$/;" g language:TeXBeamer frametitle:Frame2
Subframe2.2 /tmp/input.tex /^\\framesubtitle{Subframe2.2}$/;" g language:TeXBeamer frametitle:Frame2