Giter Site home page Giter Site logo

aljabr-1's Introduction

This is the LaTeX source for the textbook Methods of Algebra (in Chinese: 代数学方法), volume 1.

The book has been published by Higher Education Press (Beijing), ISBN 978-7-04-050725-6. The PDF version and the errata are available on the author's web page. The contents in this book are somewhat "frozen", and the spotted mistakes will be corrected in the next edition.

It is hoped that these files will be of some help to those professors, students as well as amateurs who wish to write serious Chinese books in Mathematics or Physics without too much TeXnical trouble.

How to compile

System requirements

The files are to be compiled using XeLaTeX with the xeCJK package. The reader is assumed to work under the UN*X + bash environment.

The recipes below can be tweaked to work under Windows, but this is not recommended. The simplest solution is to go open-source.

We only need the standard packages and fonts, such as

  • TeX Live, including the programs latexmk, xindy and biber.
  • Standard fonts included in TeX Live, in particular the Fandol fonts. For some strange reason I used and installed the TeX Gyre Heros fonts in the system. In case of error messages related to these fonts, please look for the OTF files (inside the directories in your computer which store TeX-related fonts) whose names start with texgyreheros, and install them manually in your system.
  • The Noto Sans CJK SC fonts from Noto CJK, which should also be installed system-wide.

Make sure that all the relevant packages/programs are installed. For reference, the author made the compilation using Arch-based Linux distributions with TeX Live 2018; the packages biber and texlive-science are required.

Clone the files

As a preparation for the compilation process, we will clone the files into ~/AlJabr-1 in our home directory. In command line, type

cd ~
git clone https://github.com/wenweili/AlJabr-1

All the source files are encoded in UTF-8, which is the de facto standard for storing multilingual texts. If you encounter problems in opening the source files under Windows, try to re-configure your editor or convert the encoding manually.

Compile the TeX source

Move to the directory

cd ~/AlJabr-1

Then, either type

latexmk -pdf -pdflatex="xelatex -shell-escape -interaction=nonstopmode %O %S" Al-jabr-1

under bash, or more simply

make

Have a cup of coffee since this will take several minutes. The resulting PDF file should appear as Al-jabr-1.pdf in the same directory. Note that the main file is Al-jabr-1.tex.

To clean up everything in our directory except the PDF file, type

make clean

The document class AJbook

The book is written in the AJbook class (AJbook.cls). This is a general-purpose document class, based on XeLaTeX/xeCJK and the standard book class in LaTeX, whose aim is to produce Chinese books in Mathematics/Physics of professional quality. Its basic usage is illustrated in Template-AJbook.tex; type

latexmk -pdf -pdflatex="xelatex -shell-escape -interaction=nonstopmode %O %S" Template-AJbook

or more simply

make template

to compile the template.

The fonts and other apppearances are customizable through several config files; please read the source files carefully for further details. The Template-AJbook.tex file follows the original configurations of the book.

The errata

The errata is produced from Errata-Al-jabr-1.tex, which is based on the really simple document class file AJerrata.cls. Apart from the standard fonts bundled with TeX, it also depends on Noto Serif CJK SC and Noto Sans CJK SC; you can install them from Noto CJK fonts.

To compile the errata, type

xelatex Errata-Al-jabr-1

or

make errata

in the same directory.

Feedback

In case of problems of compilation, please kindly report to the author. Make sure that all the system requirements above are met, and provide detailed error messages. Other suggestions are also welcome.

License

The entire codebase is under CC BY 4.0.

aljabr-1's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.