APUNSTFME PACKAGE
=================

This is a package created by ApuntsFME in order to make taking notes
in math lessons easier. This will provide the required environments
as well as useful commands that make taking math notes a lot easier.

As taking notes on the spot is quite difficult, we recommend
taking them by hand and writing your LaTeX later (it's also an
opportunity to review the lesson), but if you are willing to try
taking notes during the lesson, we recommend the use of
vim-latex or similar tools.

-----

Copyright 2019 ApuntsFME

This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
of this license or (at your option) any later version.
The latest version of this license is in
  http://www.latex-project.org/lppl.txt
and version 1.3 or later is part of all distributions of LaTeX
version 2005/12/01 or later.

This work has the LPPL maintenance status `maintained'.

The Current Maintainer of this work is the ApuntsFME organization.

This work consists of the files apuntsfme.dtx and apuntsfme.ins
and the derived file apuntsfme.sty.
