7

I'm looking for a way to turn toggle the "comment" status of certain comments within a latex document. The idea is that throughout the document, including the preamble, there are specific commented-out lines that I can effectively toggle on and off, from comment to printed line. The following MWE shows my attempt to instigate this using a command, but unfortunately it just prints the % character:

% Compiles with XeLaTeX

\documentclass{memoir}

\usepackage{polyglossia}
\setmainlanguage{english}


\newcommand{\tcom}{\%} % I was hoping changing this as needed would work.

\tcom comment in preamble that can be toggled.

\begin{document}

% comment that should remain hidden.
\tcom comment that can be toggled.

\end{document}
10
  • No, not this way
    – user31729
    Jun 19, 2015 at 20:02
  • 1
    Maybe you can achieve what you are looking for by introducing feature switches with \newif? After \newif\iffoo you can use \iffoo .. \else ..\fi and set the switch to true (\footrue) or false (\foofalse). Jun 19, 2015 at 20:05
  • See the comment package; and perhaps the topics conditional compilation and editorial.
    – jon
    Jun 19, 2015 at 20:05
  • @ChristianLindig This is not something I currently understand, but I will look into it. Thanks
    – DavidR
    Jun 19, 2015 at 20:07
  • 1
    @DavidRowthorn: Yes -- if you use a real comment (indicating some explanation to some code, you don't use macros, just ordinary text) -- this is no problem in the document environment, but in the preamble, this text means typesetting as long as the % is removed
    – user31729
    Jun 19, 2015 at 20:39

2 Answers 2

9

Since you're using XeLaTeX you have thousands of characters you don't use in your document. Choose one that you can easily type (maybe with a shorthand in your editor). Here I use TIBETAN SYLLABLE OM

\documentclass{memoir}

\usepackage{polyglossia}
\setmainlanguage{english}

\newif\ifshowcomments
%\showcommentstrue % uncomment to show the comments

\ifshowcomments
  \catcode`ༀ=9 % ignored
\else
  \catcode`ༀ=14 % comments
\fi

ༀ \usepackage{kantlipsum} %comment in preamble that can be toggled.

\begin{document}

Some text

% comment that should remain hidden.
ༀ comment that can be toggled.

\end{document}

If you uncomment the line \showcommentstrue the chosen character will be ignored, otherwise it will act exactly like %.

1
  • And thanks for introducing me to the kantlipsum package. I wonder if there's a hegellipsum on the horizon
    – DavidR
    Jun 19, 2015 at 21:22
0

If there is always a blank line after then you could do (untested)

\def\tcom#1\par{}

Eats everything until the next paragraph

Then the toggle would just be a redefinition of the macro

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .