I have an issue with \themycounter being evaluated too late:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{hyperref}
\newcounter{mycounter}
\newcommand{\defineXX}[3]{%
\refstepcounter{mycounter}
\expandafter\def\csname#1@id\endcsname{FSR \themycounter}
\expandafter\def\csname#1@definition\endcsname{#2}
\expandafter\def\csname#1@misc\endcsname{#3}
}
\newcommand{\printXX}[2]{%
\hypertarget{#1}{%
\subsection{\csname#1@id\endcsname}\label{#1}}
\csname#1@definition\endcsname
Test: \csname#1@misc\endcsname
#2
}
\begin{document}
\defineXX{test-1}{Definition 1}{Bla bla}
\defineXX{test-2}{Definition 2}{Bla bla}
\printXX{test-1}{Additional remark 1}
\printXX{test-2}{Additional remark 2}
\end{document}
yields
but I want to see FSR 1 and FSR 2



! You can't use \spacefactor in vertical mode. \@->\spacefactor \@m {}– Markus W. Dec 14 '20 at 17:42\makeatletter...\makeatotherpair. – Werner Dec 14 '20 at 17:44