Skip to main content

Modules for my scripts.

Project description

huik-module

python version Alt text

How to install:

    pip install huik-module

Command Line Interface Usage

Command Line Interface are built with Click.

Use command --help for built in help info.

tool list module tl

Tool list (tl) provide a way to make user defined shortcuts for frequently used shell commands.

  • tl to start tool list.

  • tl --help to show help menu.

  • tl [command key] to quickly invoke saved shell command.

    Hint: Shell commands are ran in a new process, if a command is changing shell behavior this change will not be reflected in the current shell. If user want to retain such behavior, one way to use exec shell or exec zsh at the end of command. (see folder module for example)

folder module fd

Folder (fd) can mark folder as favorites and let user quickly navigate to that folder in terminal.

  • fd [favorite folder shortcut] cd to saved folder.

  • fd -c config use bash or zsh as default shell.

    Under the hood, fd uses python subprocess to run shell script.

    subprocess.run("cd /path/to/folder;exec zsh",shell=True,)
    

    The subprocess start another process and run shell command. Without exec zsh, after the subprocess exits, the current shell will remain in the same folder. exec zsh or exec bash start a shell in the subprocess and allow user input in that process.

OK module ok

OK module let user write / install plugins to extend its function.

OK module also manages to import/export/sync configuration and plugins.

Some included plugins are: Dictionary def; calculator cal; github tools git

One would need to use plugins if simple shell command is not sufficient in certain complex using scenarios. For example, to handle user inputs or pull data from the web.

  • ok or ok --help to show help menu.
  • ok sync to configure Github gist id and user token for upload settings to github. User token is not needed for download public gist settings but required for create/upload settigns.
  • ok [command] to run plugin commands.
  • ok plugins --help to show help menu for configure plugins.
  • ok plugins -sf or --show-folder show plugins folder.

Plugins

Plugins are single python files and stored under cli/plugins folder. These individual files are read and loaded at runtime.

Basic structure:

import click 
# other imports if needed 

@click.command() # optionally use click.group() to allow multicommands.
@click.option('--option') # add other options or arguments if needed.
def cli(option):
    """
    Documents
    """
    # handle option 

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

huik-module-0.1.22.tar.gz (5.8 MB view details)

Uploaded Source

Built Distribution

huik_module-0.1.22-py3-none-any.whl (6.0 MB view details)

Uploaded Python 3

File details

Details for the file huik-module-0.1.22.tar.gz.

File metadata

  • Download URL: huik-module-0.1.22.tar.gz
  • Upload date:
  • Size: 5.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for huik-module-0.1.22.tar.gz
Algorithm Hash digest
SHA256 e64402a4a428b98b38c2a5339cf2cc14e33bd9d2031724a6c927123be23715e6
MD5 d793bce983a3d1cd694bdfa2b801db35
BLAKE2b-256 5e12485352104e097324f0851386996a18d68f17745ae87ffe4e4530b5726f7c

See more details on using hashes here.

File details

Details for the file huik_module-0.1.22-py3-none-any.whl.

File metadata

  • Download URL: huik_module-0.1.22-py3-none-any.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for huik_module-0.1.22-py3-none-any.whl
Algorithm Hash digest
SHA256 a1e48c7d4d8f6785d625018df9a8d00e1c53c7a3e22acbad071b1ddca778e1a6
MD5 bc8c78c45f3ab8a36bebcc2c14d35228
BLAKE2b-256 e00cc0676054e6a43a7b6dd0d99372cbaef3326f59a7c188cf713b0db7c8c48c

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