# Move the footnote text away from the footnote command in code

I have some text with a couple of footnotes in tables which I handle with the footnote package. The footnote text is very very long and it makes the code unreadable, it happened already that I had to bisect the entire code to find small syntax error in tables which I missed because of the really ugly code.

Is it possible to move the footnote text away from the footnote command in code?

I know already about the footnotemark-footnotetext solution, but I would like a general solution that could be used for other commands to. For example with hyperlinks and similar stuff. Is there any way to achieve this?

What I would like is something like this (this is not real code):

\begin{document}

main text here\footnote{1}
more main text\footnote{2}
more text\href{3}{name}
%%%%%%%%%%%%%%%%%%%%%%%%%%
% footnote contents
%%%%%%%%%%%%%%%%%%%%%%%%%%
[1] footnote 1 text
[2] footnote 2 text
%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%
[3] mailto:mail@server.com

\end{document}


Just to point out what you probably already know: that if you don't want email addresses cluttering the main body of your text, you can factor them out just by using vanilla LaTeX macros, like this:

\documentclass{report}

\usepackage{hyperref}

\def\harryemail{mailto:harry@server.com}
\def\sallyemail{mailto:sally@server.com}

\begin{document}

Email \href{\harryemail}{Harry} or \href{\sallyemail}{Sally}

\end{document}