Skip to main content

No project description provided

Project description

Define your per-directory command aliases in Yaml, to get quick shortcuts (and avoid having to remember long commands).

WARNING: This project is still experimental, and things may change suddenly. Suggestions are welcome.

Configuration

Configuration is held in a file, usually named ./.aliases, as a dictionary serialized in YAML format.

The main section is commands, a dict mapping alias names to their specification.

Command specification

  • command: command to be run, as a string

    • will be tokenized via shlex.split

    • string-format-style placeholders will be replaced:

      • positional arguments ({}, {1}) -> variadic arguments to the command

      • ..or explicit: {args[1]}

      • environment: {env[USER]}

      • vars (see below): {vars[USER]}

      • extra arguments will be appended to the command

  • env: environment for the command

    • not considered in string formatting

    • will go through the same formatting as commands

  • vars: to be replaced in env/command formatting

Notes

  • we want some way to prevent automatic appending of varargs

  • we might want to use jinja for formatting, so we can have conditionals / defaults

  • we might want inheritance, rather than having “nested” aliasing

Examples

commands:
  test:
    command: xvfb-run py.test --reuse-db -vvv ./tests/
    env:
      DJANGO_SETTINGS_MODULE: fooproject.settings.testing
      PYTHONPATH: "{env[HOME]}/Projects/fooproject"
commands:
  manage:
    command: python manage.py
    env:
      DJANGO_SETTINGS_MODULE: fooproject.settings.testing
      PYTHONPATH: "{env[HOME]}/Projects/fooproject"
      LOG_LEVEL: DEBUG

  runserver:
    command: aliasfile manage runserver

  migrate:
    command: aliasfile manage migrate

  shell:
    command: aliasfile manage shell

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

aliasfile-0.1.1.tar.gz (9.0 kB view details)

Uploaded Source

Built Distributions

aliasfile-0.1.1-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

aliasfile-0.1.1-py2-none-any.whl (12.0 kB view details)

Uploaded Python 2

File details

Details for the file aliasfile-0.1.1.tar.gz.

File metadata

  • Download URL: aliasfile-0.1.1.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aliasfile-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ff2629e44a6b3fb67a00c997ccee8ed6c850c7de4c5f6c7eaea4f5089ea78129
MD5 e2259fd92c1824d159ce07c54251c595
BLAKE2b-256 fd7f664ae7e8ec3e8b708b9168677407cb93e7cbb869ae4569cf9f141bf9161b

See more details on using hashes here.

File details

Details for the file aliasfile-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for aliasfile-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23ec4b14653ab5e988687b80f42e65ef041be6759126e5475c31abfa220096f9
MD5 670748d006161f11d4b5e22a8323a0f6
BLAKE2b-256 d842949137c5c9c6b568ae630574a20946bf078df15208623d7a07cdf98de0a7

See more details on using hashes here.

File details

Details for the file aliasfile-0.1.1-py2-none-any.whl.

File metadata

File hashes

Hashes for aliasfile-0.1.1-py2-none-any.whl
Algorithm Hash digest
SHA256 a23a040856da8799341abb85a9c6a1bcd86b3fd4c89365d67fb39ce712c94a9f
MD5 5627e9d41ebcea7768ee960f3d5b1ee6
BLAKE2b-256 2e396074380e795e3f7d9dad6e9b8a86d7011ed9784c0774d391e2082381ceaf

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