Skip to main content

Format xonsh history to post it to Github or another page.

Project description

Format xonsh history to post it to Github or another page.

The mission of xontrib-hist-format is to make commands repeatable, copy-pastable and save time to preparing.

If you like the idea click ⭐ on the repo and stay tuned.

Installation

xpip install xontrib-hist-format
# or: xpip install -U git+https://github.com/anki-code/xontrib-hist-format

Usage

xontrib load hist_format
hist-format --help         # Basic command
hist-md                    # Markdown format shortcut
hist-txt                   # Text format shortcut

Arguments:

usage: hist-format [-h] [-f FORMAT] [-c COMMANDS_COUNT] [-l]
                   [-H [OUTPUT_HEAD_COUNT]] [-T [OUTPUT_TAIL_COUNT]]
                   [-m] [--lines]

Format xonsh history to post it to Github or another page.

optional arguments:
  -h, --help            show this help message and exit
  -f FORMAT, --format FORMAT
                        Format: md, txt.
  -c COMMANDS_COUNT, --commands-count COMMANDS_COUNT
                        Count of commands
  -l, --commands-list   Show commands in distinct section.
  -H [OUTPUT_HEAD_COUNT], --output-head-count [OUTPUT_HEAD_COUNT]
                        Count of lines from output head to show.
  -T [OUTPUT_TAIL_COUNT], --output-tail-count [OUTPUT_TAIL_COUNT]
                        Count of lines from output tail to show.
  -m, --min             Make block minimized i.e. by adding <details> tag in Markdown.
  --lines               Add additional lines before and after.

Note! The clear command is used as marker of the beginning of commands list. If you run commands 1, 2, 3 then run clear, and run 4, 5, 6 and finally run hist-md it will show 4, 5, 6 commands. Feel free to open an issue with feedback on this approach.

Example

Run commands:

echo 123
ls / | head -n 3

Run hist-format:

hist-md -c 2 -l --lines    # latest 2 commands + commands list + header and footer as line

As result you will get the output that you can copy and paste to the Github comment or md-file:


Output:

echo 123
#123

ls / | head -n 3
#boot
#cdrom
#dev

# Prepared by xontrib-hist-format

Commands:

echo 123
ls / | head -n 3

# Prepared by xontrib-hist-format

You can disable the "Prepared by" message by setting XONTRIB_HIST_FORMAT_FOOTER = '' in your environment. If you like this xontrib, tell your friends!


Clipboard

You can redirect the output to clipboard. Example for xclip:

hist-md | xclip

Known issues

Not every command has output in the __xonsh__.history.

Workaround in some cases is to use pipe into head i.e. cat file | head.

Not working after xonsh 0.10.0 (4283)

Workaround: Check XONSH_CAPTURE_ALWAYS environment variable to bring the capturing of the output back.

Credits

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xontrib-hist-format-0.0.13.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

xontrib_hist_format-0.0.13-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

File details

Details for the file xontrib-hist-format-0.0.13.tar.gz.

File metadata

  • Download URL: xontrib-hist-format-0.0.13.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for xontrib-hist-format-0.0.13.tar.gz
Algorithm Hash digest
SHA256 a3a7b01172a4510966be2acace8257a0005b36c0a7ae8bc4eae4838d9c1a990b
MD5 e6550e5a4f207105ca3b7242743f4f05
BLAKE2b-256 9e85567455be37feba9c838cf24075ba2c86eb15012fb8d422fa5eee23a09e57

See more details on using hashes here.

File details

Details for the file xontrib_hist_format-0.0.13-py3-none-any.whl.

File metadata

  • Download URL: xontrib_hist_format-0.0.13-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for xontrib_hist_format-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 2d1550594a7b9f39c5e55a4116f16715a4d0fe4a400d5de5eb2a4a6d123183c6
MD5 e3ac9357ab2f68a35b5dad68c2f25799
BLAKE2b-256 d94203b94ede10f6ee7aded98af295d816dece7fe10fa06bcbf3c70d7800a84b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page