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.

Filename, size & hash SHA256 hash help File type Python version Upload date
aliasfile-0.1.1-py2-none-any.whl (12.0 kB) Copy SHA256 hash SHA256 Wheel py2 Dec 1, 2015
aliasfile-0.1.1-py3-none-any.whl (12.0 kB) Copy SHA256 hash SHA256 Wheel py3 Dec 1, 2015
aliasfile-0.1.1.tar.gz (9.0 kB) Copy SHA256 hash SHA256 Source None Dec 1, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page