summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/fixmetodonotes
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/fixmetodonotes
Initial commit
Diffstat (limited to 'macros/latex/contrib/fixmetodonotes')
-rw-r--r--macros/latex/contrib/fixmetodonotes/LICENSE121
-rw-r--r--macros/latex/contrib/fixmetodonotes/README99
-rw-r--r--macros/latex/contrib/fixmetodonotes/fixmetodonotes.dtx79
-rw-r--r--macros/latex/contrib/fixmetodonotes/fixmetodonotes.ins25
4 files changed, 324 insertions, 0 deletions
diff --git a/macros/latex/contrib/fixmetodonotes/LICENSE b/macros/latex/contrib/fixmetodonotes/LICENSE
new file mode 100644
index 0000000000..0e259d42c9
--- /dev/null
+++ b/macros/latex/contrib/fixmetodonotes/LICENSE
@@ -0,0 +1,121 @@
+Creative Commons Legal Code
+
+CC0 1.0 Universal
+
+ CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
+ LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
+ ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
+ INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
+ REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
+ PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
+ THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
+ HEREUNDER.
+
+Statement of Purpose
+
+The laws of most jurisdictions throughout the world automatically confer
+exclusive Copyright and Related Rights (defined below) upon the creator
+and subsequent owner(s) (each and all, an "owner") of an original work of
+authorship and/or a database (each, a "Work").
+
+Certain owners wish to permanently relinquish those rights to a Work for
+the purpose of contributing to a commons of creative, cultural and
+scientific works ("Commons") that the public can reliably and without fear
+of later claims of infringement build upon, modify, incorporate in other
+works, reuse and redistribute as freely as possible in any form whatsoever
+and for any purposes, including without limitation commercial purposes.
+These owners may contribute to the Commons to promote the ideal of a free
+culture and the further production of creative, cultural and scientific
+works, or to gain reputation or greater distribution for their Work in
+part through the use and efforts of others.
+
+For these and/or other purposes and motivations, and without any
+expectation of additional consideration or compensation, the person
+associating CC0 with a Work (the "Affirmer"), to the extent that he or she
+is an owner of Copyright and Related Rights in the Work, voluntarily
+elects to apply CC0 to the Work and publicly distribute the Work under its
+terms, with knowledge of his or her Copyright and Related Rights in the
+Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be
+protected by copyright and related or neighboring rights ("Copyright and
+Related Rights"). Copyright and Related Rights include, but are not
+limited to, the following:
+
+ i. the right to reproduce, adapt, distribute, perform, display,
+ communicate, and translate a Work;
+ ii. moral rights retained by the original author(s) and/or performer(s);
+iii. publicity and privacy rights pertaining to a person's image or
+ likeness depicted in a Work;
+ iv. rights protecting against unfair competition in regards to a Work,
+ subject to the limitations in paragraph 4(a), below;
+ v. rights protecting the extraction, dissemination, use and reuse of data
+ in a Work;
+ vi. database rights (such as those arising under Directive 96/9/EC of the
+ European Parliament and of the Council of 11 March 1996 on the legal
+ protection of databases, and under any national implementation
+ thereof, including any amended or successor version of such
+ directive); and
+vii. other similar, equivalent or corresponding rights throughout the
+ world based on applicable law or treaty, and any national
+ implementations thereof.
+
+2. Waiver. To the greatest extent permitted by, but not in contravention
+of, applicable law, Affirmer hereby overtly, fully, permanently,
+irrevocably and unconditionally waives, abandons, and surrenders all of
+Affirmer's Copyright and Related Rights and associated claims and causes
+of action, whether now known or unknown (including existing as well as
+future claims and causes of action), in the Work (i) in all territories
+worldwide, (ii) for the maximum duration provided by applicable law or
+treaty (including future time extensions), (iii) in any current or future
+medium and for any number of copies, and (iv) for any purpose whatsoever,
+including without limitation commercial, advertising or promotional
+purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
+member of the public at large and to the detriment of Affirmer's heirs and
+successors, fully intending that such Waiver shall not be subject to
+revocation, rescission, cancellation, termination, or any other legal or
+equitable action to disrupt the quiet enjoyment of the Work by the public
+as contemplated by Affirmer's express Statement of Purpose.
+
+3. Public License Fallback. Should any part of the Waiver for any reason
+be judged legally invalid or ineffective under applicable law, then the
+Waiver shall be preserved to the maximum extent permitted taking into
+account Affirmer's express Statement of Purpose. In addition, to the
+extent the Waiver is so judged Affirmer hereby grants to each affected
+person a royalty-free, non transferable, non sublicensable, non exclusive,
+irrevocable and unconditional license to exercise Affirmer's Copyright and
+Related Rights in the Work (i) in all territories worldwide, (ii) for the
+maximum duration provided by applicable law or treaty (including future
+time extensions), (iii) in any current or future medium and for any number
+of copies, and (iv) for any purpose whatsoever, including without
+limitation commercial, advertising or promotional purposes (the
+"License"). The License shall be deemed effective as of the date CC0 was
+applied by Affirmer to the Work. Should any part of the License for any
+reason be judged legally invalid or ineffective under applicable law, such
+partial invalidity or ineffectiveness shall not invalidate the remainder
+of the License, and in such case Affirmer hereby affirms that he or she
+will not (i) exercise any of his or her remaining Copyright and Related
+Rights in the Work or (ii) assert any associated claims and causes of
+action with respect to the Work, in either case contrary to Affirmer's
+express Statement of Purpose.
+
+4. Limitations and Disclaimers.
+
+ a. No trademark or patent rights held by Affirmer are waived, abandoned,
+ surrendered, licensed or otherwise affected by this document.
+ b. Affirmer offers the Work as-is and makes no representations or
+ warranties of any kind concerning the Work, express, implied,
+ statutory or otherwise, including without limitation warranties of
+ title, merchantability, fitness for a particular purpose, non
+ infringement, or the absence of latent or other defects, accuracy, or
+ the present or absence of errors, whether or not discoverable, all to
+ the greatest extent permissible under applicable law.
+ c. Affirmer disclaims responsibility for clearing rights of other persons
+ that may apply to the Work or any use thereof, including without
+ limitation any person's Copyright and Related Rights in the Work.
+ Further, Affirmer disclaims responsibility for obtaining any necessary
+ consents, permissions or other rights required for any use of the
+ Work.
+ d. Affirmer understands and acknowledges that Creative Commons is not a
+ party to this document and has no duty or obligation with respect to
+ this CC0 or use of the Work.
diff --git a/macros/latex/contrib/fixmetodonotes/README b/macros/latex/contrib/fixmetodonotes/README
new file mode 100644
index 0000000000..eb56e269da
--- /dev/null
+++ b/macros/latex/contrib/fixmetodonotes/README
@@ -0,0 +1,99 @@
+fixmetodonotes
+==============
+
+A LaTeX package to highlight and manage FIXME and TODO annotations.
+
+
+Usage
+-----
+
+In the preamble add
+
+ \usepackage{fixmetodonotes}
+
+In the document write notes using
+
+ I believe that in the \FIXME{"next year" or "future"?} the revolution
+ will not be televised.
+
+or
+
+ \TODO{add a playful picture}
+
+To show a list of pending notes, together with links to their pages, use
+
+ \listofnotes
+
+The list of notes will be shown like a table of content or a list of figures.
+
+
+### Creating new kinds of notes
+
+By default, `fixmetodonotes` provides three kinds of notes: `FIXME`, `TODO` and
+`CITE`.
+
+It is possible to add declare new kinds of notes using the `\defnote`
+command. Notes can be declared as _margin_ or _inline_ notes. It is also
+possible to specify new ways to mark the text.
+
+To define a new kind of note called `REMOVE` that displays a margin note
+and crosses out the text, use
+
+ \defnote{REMOVE}{margin}{\sout}
+
+Similarly, to define a red highlight marker `STYLE` use
+
+ \defnote{STYLE}{inline}{\NOTES@colorline{red}}
+
+
+### Automatic "DRAFT" watermark
+
+`fixmetodonotes` will add a "DRAFT" watermark to any page that has at least
+one notes.
+
+When all the notes are removed from a page, the watermark will not be produced
+at all. This means that it is possible to leave `fixmetodonotes` enabled even
+in final versions of the documents.
+
+Use the `nowatermark` option to disable all watermarks.
+
+
+Installation
+------------
+
+The released archives can be installed using the standard LaTeX mechanism.
+
+ latex fixmetodonotes.ins
+
+This will generate a `fixmetodonotes.sty` file that can be moved to a
+directory searched by TeX.
+
+You can also install `fixmetodonotes` in your home directory using the
+git repository.
+
+ export TEXMFHOME=~/.texmf
+ mkdir -p ~/.texmf/tex/latex/
+ cd ~/.texmf/tex/latex/
+ git clone git://github.com/gioele/fixmetodonotes.git
+
+
+Contact
+-------
+
+The homepage of `fixmetodonotes` is <https://github.com/gioele/fixmetodonotes>.
+You can send any issue or comment to <https://github.com/gioele/fixmetodonotes/issues>.
+
+
+Authors
+-------
+
+* Gioele Barabucci <http://svario.it/gioele> (initial author)
+
+
+License
+-------
+
+This is free software released into the public domain (CC0 license).
+
+See the `LICENSE` file or <http://creativecommons.org/publicdomain/zero/1.0/>
+for more details.
diff --git a/macros/latex/contrib/fixmetodonotes/fixmetodonotes.dtx b/macros/latex/contrib/fixmetodonotes/fixmetodonotes.dtx
new file mode 100644
index 0000000000..b41a1b6e06
--- /dev/null
+++ b/macros/latex/contrib/fixmetodonotes/fixmetodonotes.dtx
@@ -0,0 +1,79 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{fixmetodonotes}[2013/04/28 v0.2.2]
+
+
+\newif\if@NOTES@enabled \@NOTES@enabledtrue
+
+\DeclareOption{enabled}{} % default
+\DeclareOption{disabled}{\@NOTES@enabledfalse}
+
+\newif\if@watermark \@watermarktrue
+
+\DeclareOption{watermark}{} % default
+\DeclareOption{nowatermark}{\@watermarkfalse}
+
+\ProcessOptions\relax
+
+
+\RequirePackage{graphicx}
+\RequirePackage{color}
+\RequirePackage{transparent}
+\if@watermark\RequirePackage{watermark}\fi
+\RequirePackage{fix-cm}
+\RequirePackage[normalem]{ulem}
+\RequirePackage[titles]{tocloft}
+
+\newcommand{\listnotesname}{List of notes}
+\newlistof{NOTES@note}{notes}{\listnotesname}
+
+\newcommand{\listofnotes}{\if@NOTES@enabled\listofNOTES@note\fi}
+
+\newcommand{\@HUGE}{\fontsize{100}{120}\selectfont}
+\newcommand{\@wmstyle}{\color{red}\transparent{0.1}\@HUGE}
+\newcommand{\@wmtext}{\textsc{DRAFT}}
+
+\newcommand{\@DRAFTwatermark}{%
+ \thiswatermark{%
+ \raisebox{-0.5\textheight}{%
+ \parbox{\linewidth}{%
+ \centering{\rotatebox{30}{\@wmstyle\@wmtext}}%
+ }%
+ }%
+ }%
+}
+
+
+\newcommand{\NOTES@colorline}[1]{%
+ \bgroup%
+ \markoverwith{\textcolor{#1}{\rule[-0.2\baselineskip]{2pt}{\baselineskip}}}%
+ \ULon%
+}
+
+\newcommand{\NOTES@marker}[2]{\fbox{\color{#2}\textbf{#1}}}
+\newcommand{\NOTES@marginmarker}[2]{\marginpar{\NOTES@marker{#1}{#2}}}
+\newcommand{\NOTES@inlinemarker}[2]{\NOTES@marker{#1}{#2}}
+
+\newcommand{\NOTES@usemarker}[2]{\csname NOTES@#1marker\endcsname{#2}{red}}
+
+\newcommand{\NOTES@addtolist}[2]{%
+ \refstepcounter{NOTES@note}%
+ \phantomsection%
+ \addcontentsline{notes}{NOTES@note}{\protect\numberline{\theNOTES@note}{{#1}: {#2}}}%
+}
+
+\newcommand{\NOTES@defnoteimpl}[4]{%
+ \NOTES@usemarker{#3}{#2}%
+ #4{#1}%
+ \NOTES@addtolist{#2}{#1}%
+ \if@watermark\@DRAFTwatermark\fi%
+}
+
+\newcommand{\defnote}[3]{%
+ \global\expandafter\newcommand\csname #1\endcsname[1]{%
+ \if@NOTES@enabled\NOTES@defnoteimpl{##1}{#1}{#2}{#3}\fi%
+ }%
+}
+
+\defnote{FIXME}{margin}{\uwave}
+\defnote{TODO}{inline}{\NOTES@colorline{yellow}}
+\defnote{CITE}{inline}{\NOTES@colorline{cyan}}
diff --git a/macros/latex/contrib/fixmetodonotes/fixmetodonotes.ins b/macros/latex/contrib/fixmetodonotes/fixmetodonotes.ins
new file mode 100644
index 0000000000..bc23a518d5
--- /dev/null
+++ b/macros/latex/contrib/fixmetodonotes/fixmetodonotes.ins
@@ -0,0 +1,25 @@
+\input docstrip.tex
+\keepsilent
+
+\usedir{tex/latex/fixmetodonotes}
+
+\preamble
+
+This is a generated file
+
+
+fixmetodonotes: highlight and manage FIXME and TODO annotations.
+
+Written in 2012 by Gioele Barabucci
+
+
+This is free software released into the public domain (CC0 license).
+
+See the LICENSE file or <http://creativecommons.org/publicdomain/zero/1.0/>
+for more details.
+
+\endpreamble
+
+\generate{\file{fixmetodonotes.sty}{\from{fixmetodonotes.dtx}{package}}}
+
+\endbatchfile