Implémentez un correctif similaire comme dans cet article https://sourceforge.net/p/ctags/patches/76/ afin que les présentations de projecteurs LaTeX soient triées par diapositives au lieu de sections
Merci d'avoir créé ce problème.
Avez-vous un exemple d'entrée?
Je voudrais l'inclure comme cas de test dans notre référentiel.
est un bon exemple mais il n'utilise pas \frametitle
.
Il utilise \begin{frame}{AN ITEM WE WOULD LIKE TO TAG}
.
J'ai déjà implémenté des fonctions pour capturer \frametitle
.
Cependant, \begin{frame}{...}
ne l'est pas encore.
Je pense que celui-ci peut être utilisé, j'ai changé les titres pour utiliser le mot-clé \frametitle
https://github.com/jagjordi/IL2239-presentation
Toujours en difficulté.
Y a-t-il un moyen pour que je puisse vous aider?
Pourriez-vous essayer #2424 ?
Bonjour @masatake
J'ai une suggestion pour modifier le comportement de l'analyseur dans une présentation de projecteur.
Si un arrangement de diapositives comme cela est écrit
Frame 1
|-- Subframe 1.1
|-- Subframe 1.2
|-- Subframe 1.3
Frame 2
|-- Subframe 2.1
|-- Subframe 2.2
Normalement, je ferais répéter le même titre autant de fois qu'il existe de "sous-diapositives". Par exemple
\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}
Avec le comportement actuel de l'analyseur, il générera une entrée de balise à chaque fois que la commande frametitle
est utilisée. Je dirais que généralement, le comportement devrait être qu'il ne génère une entrée de balise que la première fois que la commande est utilisée, et les utilisations ultérieures de la commande (avec le même nom de titre) "pointeront" vers la première utilisation.
Laissez-moi savoir ce que vous pensez?
Salutations,
Je travaillerai sur cet élément après avoir fusionné https://github.com/universal-ctags/ctags/pull/2450.
Cela prendra plus de temps que vous ne le pensez.
Au #2450, j'introduirai une table des symboles.
Avec cela, nous pouvons écrire le code suivant :
tagEntryInfo *tag = lookupTag ("Frame1");
if (! (tag && kinfOf(tag) == "frametitle"))
skip();
else /* a frame title we have never seen. */
makeTag ();
Super. Faites-moi savoir si vous avez besoin de quelque chose à tester
Cela fonctionne partiellement.
Un peu plus de travail est nécessaire.
[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