Skip to content

zzamboni/elvish-modules

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zzamboni’s Elvish libraries

This Elvish package contains various modules I have written for the Elvish shell. Themes and completions are kept in separate packages.

Compatibility

These modules are only guaranteed to be fully compatible with Elvish HEAD, which is what I use. This means that occasionally, they will not work even with the latest official release, when breaking changes are introduced. Since Elvish is in active development, I highly recommend you use the latest commit too.

Installation

To install, use epm:

use epm
epm:install github.com/zzamboni/elvish-modules

For each module you want to use, you need to add the following to your rc.elv file:

use github.com/zzamboni/elvish-modules/<modulename>

See each module’s page for detailed usage instructions.

Modules

The following modules are included:

1pass

This module provides wrappers to use the 1Password op CLI tool with Elvish.

alias

Implementation of aliases for Elvish.

atlas

Elvish functions for interacting with O’Reilly’s Atlas publishing system.

bang-bang

Implement the !! (last command), !$ (last argument of last command), !* (all arguments) and !<n> (nth argument of last command) shortcuts in Elvish.

dir

Keep and move through the directory history, including a graphical chooser, similar to Elvish’s Location mode, but showing a chronological directory history instead of a weighted one.

git-summary

Display a status summary of a user-defined list of git repositories.

git-vcsh

Simple wrapper to call vcsh when the current directory is managed by it. I don’t use it anymore, so it may be broken.

iterm2

This library implements iTerm2’s Shell Integration for the Elvish shell.

lazy-vars

A module that allows defining environment variables that are only evaluated when needed.

leanpub

This module provides some interfaces to the LeanPub API.

long-running-notifications

Produce notifications for long-running commands in Elvish.

nix

Functions to set up the Nix environment variables for Elvish.

opsgenie

This module implements a few common operations for the OpsGenie API in Elvish.

prompt-hooks

Convenience functions to add hooks to the prompt hook lists.

proxy

Manipulation of proxy-related environment variables (including auto-setting/unsetting based on a user-defined test) for Elvish.

semver

Comparison of semantic version numbers, as described in the Semantic Versioning specification.

spinners

Functions to print different types of progress spinners for use in Elvish scripts.

terminal-title

Sets the terminal title dynamically using ANSI escape codes. By default the current directory is shown, and the name of the current command while one is executing.

test

A very simplistic test framework for Elvish.

tinytex

Convenience functions for TinyTeX.

tty

Functions for terminal ANSI code manipulation/interaction in Elvish.

util

Various utility functions.