laTEX is awesome but we are lazy -> groff with markdown syntax and inline code execution

Overview

pyGroff

  • A wrapper for groff using python to have a nicer syntax for groff documents
  • DOCUMENTATION
  • Very similar to markdown. So if you know what that is. You will love this :)
  • We hate word -.-
  • Editing pdfs is a pain and please we are lazy
  • We love markdown. But we need pdfs and docx. So why not
  • LaTEX is amazing but it is tooo much work for small things.
  • Vim is love. What can we do without keyboard shortcuts ):

What can you do

  • Write in a text file
  • Get a cover page as well :)
  • Get a Table of contents. (Due to limitations : its only on the last page for now.)
  • Add code. And get execution results directly! Default is python. You can use any other language in your system
  • Easy tables (Aint nobody got time for complicated ones)
  • You can get a word document too (you do need libreoffice for it)
  • Get auto generated, beautifully formatted pdfs and docs instantly
  • Not cry because you moved an image and now your document is in hieroglyphics
  • (You can also write in groff syntax in the file. It will work as well. Just in case you need something extra)

Requirements

  • You need python of course.
  • For python dependencies, using pip install -r requirements.txt (Only PIL)
  • Almost every unix system has groff preinstalled.
  • If you want to convert to word, you need libreoffice.
  • If you want to get a table of contents you will need pdftk - yay pdftk #arch - sudo pacman -S pdftk #arch - sudo apt install pdftk

Syntax

  • p runner.py -f "demo.txt" -o "syntax.pdf" (most basic)
  • p runner.py -f "demo.txt" -o "syntax.pdf" -c True -n "Subhaditya Mukherjee" -t "pyGroff" (with cover page)
  • Please please look at arguments
  • By default, it is assumed that you have images. If you wish to disable it (for more speed), just use -i False
  • Check syntax.pdf and demo.txt for an example
  • Refer to syntax.pdf for new, easier syntax :)
  • This was also generated by the program hehe

Examples of langauge strings

  • python -c (default)
  • argument -l
  • R -e

FAQ

  • I dont like the cover page - If you know a bit of groff (check the links below), you can use "-d False" and then edit whatever you want using groff itself. - Then run "groff -ms {infile} -Tpdf > {outfile}" replacing the infile and outfile respectively.

Contribution guidelines

  • Can I contribute? - YES
  • What to do? - Check todo.md
  • Restrictions? - File an issue first, if it looks useful. Go for it
  • Spelling mistakes? - I mean sure why not xD

References

Owner
Subhaditya Mukherjee
https://www.linkedin.com/in/subhaditya-mukherjee-a36883100
Subhaditya Mukherjee
Mahadi-6 - This Is Bangladeshi All Sim 6 Digit Cloner Tools

BANGLADESHI ALL SIM 6 DIGIT CLONER TOOLS TOOLS $ apt update $ apt upgrade $ apt

MAHADI HASAN AFRIDI 2 Jan 23, 2022
Autogenerador tonto de paquetes para ROSCPP

Autogenerador tonto de paquetes para ROSCPP Autogenerador de paquetes que usan C++ en ROS. Por ahora tiene las siguientes capacidades: Permite crear p

1 Nov 26, 2021
Job Guy Backend

جاب‌گای چیست؟ اونجا وضعیت چطوریه؟ یه سوال به همین کلیت و ابهام معمولا وقتی برای یه شرکت رزومه می‌فرستیم این سوال کلی و بزرگ برای همه پیش میاد.اونجا وض

Jobguy.work 217 Dec 25, 2022
A program that lets you use your tablet's tilting to emulate an actual joystick on a Linux computer.

Tablet Tilt Joystick A program that lets you use your tablet's tilting to emulate an actual joystick on a Linux computer. It's called tablet tilt joys

1 Feb 07, 2022
School helper, helps you at your pyllabus's.

pyllabus, helps you at your syllabus's... WARNING: It won't run without config.py! You should add config.py yourself, it will include your APIKEY. e.g

Ahmet Efe AKYAZI 6 Aug 07, 2022
This repo houses the qhub frontend moving forward.

This repo houses the qhub frontend moving forward. This effort will house a backend written in fastAPI, and a fronend in Vue, with additional components.

Quansight 1 Feb 10, 2021
A collection of Python library code for building Python applications.

Abseil Python Common Libraries This repository is a collection of Python library code for building Python applications. The code is collected from Goo

Abseil 2k Jan 07, 2023
An open-source hyper-heuristic framework for multi-objective optimization

MOEA-HH An open-source hyper-heuristic framework for multi-objective optimization. Introduction The multi-objective optimization technique is widely u

Hengzhe Zhang 1 Feb 10, 2022
An AddOn storing wireguard configuration

Wireguard Database Connector Overview Development Status: 0.1.7 (alpha) First of all, I'd like to thank Jared McKnight for wireguard who inspired me t

Markus Neubauer 3 Dec 30, 2021
A collection of design patterns and idioms in Python (With tests!).

Python Patterns Help the project financially: Donate: https://smartlegion.github.io/donate/ Yandex Money: https://yoomoney.ru/to/4100115206129186 PayP

5 Sep 12, 2021
Python AVL Protocols Server for Codec 8 and Codec 8 Extended Protocols

pycodecs Package provides python AVL Protocols Server for Codec 8 and Codec 8 Extended Protocols This package will parse the AVL Data and log it in hu

Vardharajulu K N 2 Jun 21, 2022
Improving the Transferability of Adversarial Examples with Resized-Diverse-Inputs, Diversity-Ensemble and Region Fitting

Improving the Transferability of Adversarial Examples with Resized-Diverse-Inputs, Diversity-Ensemble and Region Fitting

Junhua Zou 7 Oct 20, 2022
Multitrack exporter for OP-Z

Underbridge for OP-Z Multitrack exporter Description Exports patterns and projects individual audio tracks to seperate folders for use in your DAW. Py

Thomas Herrmann 71 Dec 25, 2022
importlib_resources is a backport of Python standard library importlib.resources module for older Pythons.

importlib_resources is a backport of Python standard library importlib.resources module for older Pythons. The key goal of this module is to replace p

Python 36 Dec 13, 2022
personal dotfiles for rolling release linux distros

dotfiles Screenshots: Directions: Deploy my dotfiles with yadm Packages from arch listed in .installed-packages Information on osu! see ~/Games/osu!/.

-pacer- 0 Sep 18, 2022
🔩 Like builtins, but boltons. 250+ constructs, recipes, and snippets which extend (and rely on nothing but) the Python standard library. Nothing like Michael Bolton.

Boltons boltons should be builtins. Boltons is a set of over 230 BSD-licensed, pure-Python utilities in the same spirit as — and yet conspicuously mis

Mahmoud Hashemi 6k Jan 06, 2023
RxPY - The Reactive Extensions for Python (RxPY)

The Reactive Extensions for Python (RxPY) A library for composing asynchronous and event-based programs using observable collections and query operato

ReactiveX 4.4k Dec 29, 2022
Python bindings for the Plex API.

Python-PlexAPI Overview Unofficial Python bindings for the Plex API. Our goal is to match all capabilities of the official Plex Web Client. A few of t

Michael Shepanski 931 Jan 07, 2023
Markov Chain Composer

Markov Chain Composer Using Markov Chain to represent relationships between words in song lyrics and then generating new lyrics.. ahem interpretive po

Kylie 85 Dec 09, 2022
A simple and usefull python calculator.

simplepy-calculator Your simple and fresh calculator. Getting Started Install python3 from the oficial python website or via terminal. Clone this repo

Felix Sanchez 1 Jan 18, 2022