Skip to main content

Get identifiers, names, paths, URLs and words from the previous command output and use them for the next command in xonsh.

Project description

Get identifiers, names, paths, URLs and words from the previous command output and use them for the next command in xonsh.

Save time. Forget about using mouse, touchpad or trackball to get any words from output to the next command. Secure. The xontrib-output-search is not writing any output on the hard disk. Only latest not empty output stored in the memory. It works the same way as xonsh shell and the security level is the same. Universal. Forget about searching autocomplete plugins for every app you use and get the identifiers from the output.

If you like the idea of xontrib-output-search click ⭐ on the repo and stay tuned by watching releases.

Install

xpip install -U xontrib-output-search
echo 'xontrib load output_search' >> ~/.xonshrc
# Reload xonsh

Usage

After xontrib load output_search you have two ways to select tokens from latest not empty output:

  • Press Alt + F hotkeys
  • Type f__ and press Tab key

If you use this key combination for another function and your muscle memory is strong just change the key before loading the xontrib:

$XONTRIB_OUTPUT_SEARCH_KEY='i'
xontrib load output_search

Use cases

Get URL from output

$ echo "Try https://github.com/xxh/xxh"
Try https://github.com/xxh/xxh
$ git clone xx<Alt+F>
$ git clone https://github.com/xxh/xxh

Get key or value from JSON, Python dict and JavaScript object

$ echo '{"Try": "xontrib-output-search"}'
{"Try": "xontrib-output-search"}
$ echo I should try se<Alt+F>
$ echo I should try xontrib-output-search

Get the path from environment

$ env | grep ^PATH=
PATH=/one/two:/three/four
$ ls fo<Alt+F>
$ ls /three/four

Complete the complex prefix

Get the URL from previous output after typing git+:

$ echo "Try https://github.com/anki-code/xontrib-output-search"
Try https://github.com/anki-code/xontrib-output-search

$ pip install git+xo<Alt+F>
$ pip install git+https://github.com/anki-code/xontrib-output-search

Get the port number from previous output while typing the URL:

$ echo "The port number is 4242"
The port number is 4242

$ curl http://127.0.0.1:4<Alt+F>
$ curl http://127.0.0.1:4242

Get arguments from command help

$ lolcat -h
...
$ lolcat --s<Alt+F>
$ lolcat --seed=SEED

Development

The xontrib-output-search is using tokenize-output for tokenizing.

Checking that output_search xontrib has been loaded:

$ xontrib list output_search
output_search  installed  loaded

$ completer list | grep output_search
xontrib_output_search

Known issues

cat file is not captured

Workaround: cat file | head or cat file | grep text.

Alt+F combination may not working in PyCharm terminal

Workaround: f__ + Tab.

The Alt+F in the readline is to move forward

Workaround: set $XONTRIB_OUTPUT_SEARCH_KEY='i' before xontrib load output_search.

Thanks

I was inspired by xontrib-histcpy. Thanks @con-f-use!

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-output-search-0.5.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

xontrib_output_search-0.5.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file xontrib-output-search-0.5.0.tar.gz.

File metadata

  • Download URL: xontrib-output-search-0.5.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200325 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for xontrib-output-search-0.5.0.tar.gz
Algorithm Hash digest
SHA256 1b8ef9e1dacc488114ead2dcf8511c22780eb0726a1ffee11e1870ddf89b1e04
MD5 c6c54d5251505f18305d04cc5bff8be4
BLAKE2b-256 9f75ba05ce1568ad790e6ca2648b4df282025e13192d457e0508bc09cf48b598

See more details on using hashes here.

File details

Details for the file xontrib_output_search-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: xontrib_output_search-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200325 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.2

File hashes

Hashes for xontrib_output_search-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 25921994afe886558929d7c16b50f2d66373b063cab10cbe411a8b32f82a2381
MD5 75f225b07a417be970cf634568c76ca9
BLAKE2b-256 f9fb19116c4943293ca997c39ec5301a419e03a95014c1da8024d21b3828b22c

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