All Projects → Erfaniaa → codes2pdf

Erfaniaa / codes2pdf

Licence: MPL-2.0 license
Auto-generate a PDF notebook from your source codes (useful for ACM-ICPC)

Projects that are alternatives of or similar to codes2pdf

competitive-programming
This is my collection of various algorithms and data structures that I feel that are needed frequently in competitive programming .
Stars: ✭ 30 (-79.87%)
Mutual labels:  notebook, icpc, acm
CPTH
🌟 Competitive Programming Template Headers | With documentation, CI tests and Codecov
Stars: ✭ 23 (-84.56%)
Mutual labels:  icpc, acm
code-review-culture
📖 The art of cultivating a strong dev culture in your team.
Stars: ✭ 19 (-87.25%)
Mutual labels:  code
awesome.gl
棒棒哒攻略:Developer's Technical Documents, API References, Code Examples, Quick Starts, Programming minutebooks, and Tutorials. https://awesome.gl
Stars: ✭ 12 (-91.95%)
Mutual labels:  code
CodeWars
Daily Coding Exercises to sharpen problem solving skills
Stars: ✭ 67 (-55.03%)
Mutual labels:  code
gintonic
A declarative transformation language for GraphQL 🍸
Stars: ✭ 27 (-81.88%)
Mutual labels:  code
generaptr
Generaptr is a node package that helps when starting up a project by generating boilerplate code for Express api.
Stars: ✭ 16 (-89.26%)
Mutual labels:  code
Lua-Obfuscator
Obfuscate your lua code because it's so easy to steal!
Stars: ✭ 69 (-53.69%)
Mutual labels:  code
Linux-cheat-sheet
List of Linux commands
Stars: ✭ 199 (+33.56%)
Mutual labels:  cheatsheet
reveal-code-focus
A Reveal.js plugin that allows focusing on specific lines of code blocks.
Stars: ✭ 108 (-27.52%)
Mutual labels:  code
forward
Port Forwarding Utility
Stars: ✭ 41 (-72.48%)
Mutual labels:  notebook
CTF
🚩 A cheatsheet of useful tools and shell scripts that come in handy in capture the flag contests.
Stars: ✭ 31 (-79.19%)
Mutual labels:  cheatsheet
IKFB
Involution King Fun Book (IKFB, Chinese: 快卷, 卷王快乐本) is an integrated management system for papers and literature. Powered by Electron.
Stars: ✭ 29 (-80.54%)
Mutual labels:  notebook
ml dev env
Machine Learning / Deep Learning Environment. Everywhere. Anywhere.
Stars: ✭ 47 (-68.46%)
Mutual labels:  code
jupyterq
Jupyter kernel for kdb+
Stars: ✭ 87 (-41.61%)
Mutual labels:  notebook
ViaCEP
The ViaCEP API/webservice .NET client
Stars: ✭ 21 (-85.91%)
Mutual labels:  code
Fundamental-Kotlin
Code examples for the Fundamental Kotlin book.
Stars: ✭ 16 (-89.26%)
Mutual labels:  code
cheatsheets
Jimmy's cheatsheet for developers https://jimmysong.io/cheatsheets/
Stars: ✭ 37 (-75.17%)
Mutual labels:  cheatsheet
terraform-aws-acm-request-certificate
Terraform module to request an ACM certificate for a domain name and create a CNAME record in the DNS zone to complete certificate validation
Stars: ✭ 83 (-44.3%)
Mutual labels:  acm
ScienceNotebooks
Collection of tools and stylesheet for scientific writting and learning (through Anki)
Stars: ✭ 43 (-71.14%)
Mutual labels:  notebook

codes2pdf

Auto generate a PDF notebook from your source codes (useful for your ACM-ICPC cheatsheet)

Dependencies

This generator works in both Linux and Windows, so check how to install TeX Live in your OS.

TeX Live for linux:

sudo aptitude install texlive

TeX Live for Windows:

download installer (install-tl-windows.exe) from https://www.tug.org/texlive/acquire-netinstall.html

Also install the latest version of Node.js and NPM on your machine (you can download them from https://nodejs.org/en/download/).

After installing Node.js on Linux, add this command to your ~/.bashrc:

export PATH="$HOME/.npm_modules/bin:$PATH"

Install

sudo npm install -g codes2pdf

Update

sudo npm update -g codes2pdf

Use

Usage: codes2pdf <source_dir> [options]

Auto generate a PDF notebook from your source codes

Options:

    -V, --version             output the version number
    -a --author [name]        author's name to be added in the notebook
    -i --initials [initials]  initials of the author to be placed in the upper-right corner of all pages
    -o --output [filename]    output file for the notebook. Default to `./notebook.pdf`
    -h, --help                output usage information

example:

codes2pdf ./ /tmp/team_reference.pdf
codes2pdf ./ --author "Shahid Beheshti University" --initials SBU

The second one will create a 'notebook.pdf' file in the current directory, from the source code files which are located in the current directory and its subdirectories.

The notebook generator will add your source code with syntax highlighting, additionally you can add .tex files which will be rendered as Latex code.

Sample PDF

Here you can find a sample: https://github.com/Erfaniaa/codes2pdf/blob/master/sample_notebook.pdf

(In this forked version of the original repository, the generated notebook file will have three columns in each page with a smaller font size; so you can put more source codes in a few number of pages for ACM-ICPC contests.)

Sample PDF Screenshots

Notes

  • Try to use up to 3 "levels" in your source code.
  • Use spaces insead of underscore (in the filenames) to print a prettier TOC.
  • In this forked version of the original repository, the generated notebook will have three columns in each page with a smaller line spacing. This is useful when you have a large number of different source codes and there is a limit on the number of pages for creating a cheatsheet.
  • The original repository was created by Manuel Pineda and Diego Restrepo.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].