Giter VIP home page Giter VIP logo

nasa-latex-docs's Introduction

NASA-LaTeX-Docs

Please refer to the official documentation: NASA-LaTeX-Docs Documentation

Usage:

With this LaTeX package, the formatting is all handled internally so that report developers only need to create their own content following a provided template (or even create their own). If not using a template (example: AIAA or IEEE submission), this package also comes with an incredibly versatile, OS independent, Python build script and Latexmk configuration file for easy document type-setting and warning/error detection.

The build script is located in the following directory and can be used to build any LaTeX document:

nasa-latex-docs/buildPDF.py

Please see NASA-LaTeX-Docs Documentation for more details, examples, and sample outputs!

System Requirements:

  • TeX Live Distribution 2015+ (with latest updates)
  • Python 2.6+, Python 3+

nasa-latex-docs's People

Contributors

eelsirhc avatar hreising avatar jasonduley avatar justingosses avatar walshahi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nasa-latex-docs's Issues

Add SBU yellow sheet options

Templates should have the option of adding the yellow SBU cover sheet with options properly filled out.

This file appears to have current electronic form for vertical layouts.
NF1686.pdf

Note that the last security training I did hinted that they would be revamping the SBU and other designations. Not sure how long the current process will be valid for. Might need to research the stability of the current designation requirements.

Capability to update document support after creation

Once a document is created using --new there is no good way, besides manually copy/paste, to update the support/ directory in the event that nasa-latex-docs has been updated and the user wants those new features in an existing document.

Add capability to allow that. Maybe using the following command directly within an existing document:

./support/buildPDF.py --update

Set a default template

Current no template is defined by default for all new documents. Select a document template as the default - better than nothing.

Add additional approvers

In the tech-memo template, I need to add more signature lines for additional approvers. How can I do this?

List of Listings

Would it be possible to add a command that creates a list of listings in the doc. Similar to the List of Tables and List of Figures in the preamble.

Bullet points in strings in buildPDF.py cause encoding error with older versions of python

In one of the recent commits, there were a couple of print statements in buildPDF.py that added some bullet point characters.

At line 276:

      # Check the return status of the TeX version call
      if tex_which_out.returncode > 0:
         print_error("""No TeX distribution installation found, check PATH environment
Standard TeX installation locations can be found in:
  • Linux: /usr/local/texlive/2025/bin/x86_64-linux
  • macOS: /usr/local/texlive/2025/bin/x86_64-darwin
  • Windows: C:\\texlive\\2025\\bin\\win32"""
            )

and at line 435:

      # Print path to created template and exit
      if not self._quiet:
         print("""Template created in:
  • {0}
To build PDF run the following:
  • cd {0}
  • ./support/buildPDF.py {1}
""".format(tc.BLUE+structure_path+tc.ENDC,self.input_tex))

It seems that when buildPDF.py is used to build a report and your python version is recent enough, this doesn't cause an issue. However, when using a python version of 2.7.5, for example, I get this error when trying to generate a report using buildPDF.py:

 File "./support/buildPDF.py", line 280
SyntaxError: Non-ASCII character '\xe2' in file ./support/buildPDF.py on line 281, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

I confirmed replacing the bullet point characters with simple hyphens ('-') resolved the issue.

License File

can you please add a License file at the root of your repo?

Add TEX root at top of each file for new build

Adding the following at the top of each file allows users to call the build command on any input TeX file throughout the document tree. Without this special syntax, errors will occur when trying to call build on one of the child files.

%!TEX root = ../<main-tex-file-name>.tex

Add standalone build capability

Add capability and docs for building standalone reports for snippets. This will include standalone PDF or option to convert to PNG.

For example if you have a snippet in a file example.tex file with ONLY the following content and no other boilerplate:

\begin{figure}[H]
   \centering
   \includegraphics[height=1in]{NASA_Logo}
   \caption{Example LaTeX Figures} 
   \label{fig:NASA_Logo}
\end{figure}

You would be able to do this:

./buildPDF.py example.tex --standalone

Will produce a PDF for you, cropped and sized appropriately for that snippet content. You can also do the following to seamlessly create a PNG:

./buildPDF.py example.tex --standalone-convert

This is a nice and easy way to take latex code and convert into cropped PDF or PNG with minimal effort. It is important to note that under the hood, the convert logic used by latex's native standalone functionality utilizes imagemagick. This will need to be installed for users who want to utilize the convert option for PNG.

http://www.imagemagick.org/script/convert.php

Citations don't work in tech document abstracts

Citations in document abstracts are not displayed correctly. See the sample code below, and the attached generated PDF file.
Note that the citation in the abstract prints to [nasa-latex-docs], as opposed to [1].

% Define Class: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[template=tech-memo]{nasa-latex-docs} 

% Preamble Section: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


% Add bibliogrpahy file
\addbibresource{test-document.bib}

\docAbstract[
    \cite{nasa-latex-docs}
]

% Main Document Content: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}

\input{tex/sample_content.tex}

\printbibliography

\end{document}
% End of Document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

test-document.pdf

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.