/minelog

Script for find somethings easily in your minecraft logs.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

minelog

CI : Docs CI : Lint CI : Tests PyPI : minelog Python : versions License : GNU GPL v3.0

Script for find somethings easily in your minecraft logs.

Install

You can install minelog via pip from PyPI

pip install minelog

Usage

Show all players IPs.

minelog -d logs -p '^.* ([a-zA-Z0-9_]+)\[\/(.*\d+(?:\.\d+){3}):\d+\].*$' -u -s -r '\1,\2'
minelog -d logs -p '^.*name=([a-zA-Z0-9_]+).*/(.*\d+(?:\.\d+){3}):\d+.*$' -u -s -r '\1,\2'

See below the help message.

Usage: minelog [OPTIONS]

  Script for find somethings easily in your minecraft logs.

Options:
  --version             Show the version and exit.
  -d, --directory PATH  Path to logs.
  -p, --pattern TEXT    Pattern used for search log.
  -r, --repl TEXT       Replacement of match.
  -u, --unique          Return only unique match.
  -s, --sort            Sort match in alphabetical order.
  --help                Show this message and exit.

  Copyright 2023, Dashstrom <dashstrom.pro@gmail.com>

Developpement

Contributing

Contributions are very welcome. Tests can be run with make tests-all, please ensure the coverage at least stays the same before you submit a pull request.

Developpement installation

sudo apt update -y && sudo apt upgrade -y && sudo apt-get install python3-pip
git clone https://github.com/Dashstrom/minelog && cd minelog
make setup

Makefile

A Makefile is available for help you to run commands.

clean        Remove all build, test, coverage, venv and Python artifacts.
cov          Check code coverage.
dist         Builds source and wheel package.
docs         Generate Sphinx HTML documentation.
format       Format style with pre-commit, ruff, black and mypy.
help         Show current message.
install      Install the package to the active Python's site-packages.
lint         Check style with tox, ruff, black and mypy.
open-docs    Open documentation.
open-cov     Open coverage report.
recreate     Clean project and recrete venv.
release      Package and upload a release.
setup        Create virtual environment and install pre-commit.
tests        Run unit and functional tests.
tests-all    Run all tests in parallel (docs, lint and tests).

Troubleshooting

Your scripts in not on your path

You can't directly run minelog. Add your path to your library as below.

echo 'export PATH="$PATH:$HOME/.local/bin' >> ~/.bashrc
source ~/.bashrc

or use minelog as module

python3 -m minelog --version

Uninstall

python3 -m pip uninstall minelog

License

This work is licensed under GNU GPL v3.0.