Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mincrmatt12/nmfu

the "no memory for you" "parser" generator
https://github.com/mincrmatt12/nmfu

c dfa parser parser-generator python3 state-machine

Last synced: about 5 hours ago
JSON representation

the "no memory for you" "parser" generator

Awesome Lists containing this project

README

        

nmfu logo banner

# nmfu

---
_the "no memory for you" "parser" generator_

---

![PyPI - License](https://img.shields.io/pypi/l/nmfu) [![PyPI](https://img.shields.io/pypi/v/nmfu)](https://pypi.org/project/nmfu) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/nmfu) [![Jenkins](https://img.shields.io/jenkins/build?jobUrl=https%3A%2F%2Fjenkins.mm12.xyz%2Fjenkins%2Fjob%2Fnmfu%2Fjob%2Fmaster)](https://jenkins.mm12.xyz/job/nmfu) [![Jenkins tests](https://img.shields.io/jenkins/tests?compact_message&jobUrl=https%3A%2F%2Fjenkins.mm12.xyz%2Fjenkins%2Fjob%2Fnmfu%2Fjob%2Fmaster)](https://jenkins.mm12.xyz/jenkins/job/nmfu/job/master/lastCompletedBuild/testReport/) [![Jenkins Coverage](https://img.shields.io/jenkins/coverage/apiv4?jobUrl=https%3A%2F%2Fjenkins.mm12.xyz%2Fjenkins%2Fjob%2Fnmfu%2Fjob%2Fmaster)](https://jenkins.mm12.xyz/jenkins/job/nmfu/job/master/lastCompletedBuild/coverage/) [![Read the Docs](https://img.shields.io/readthedocs/nmfu)](https://nmfu.rtfd.io)

`nmfu` attempts to turn a parser specified as a procedural matching thing into a state machine, parsing protocols with minimal memory and in arbitrarily sized chunks.

There are a number of examples present in the `examples/` folder, as well as documentation and a tutorial available on [readthedocs](https://nmfu.rtfd.io).

## Plugins

There is a vim plugin available which adds syntax highlighting for `.nmfu` files at [mincrmatt12/nmfu-vim](https://github.com/mincrmatt12/nmfu-vim), as well
as a pygments lexer plugin at [mincrmatt12/nmfu-pygments](https://github.com/mincrmatt12/nmfu-pygments).

## License

NMFU is licensed under the GPLv3.
Copyright (C) 2020-2023 Matthew Mirvish.