Giter Club home page Giter Club logo

zsh-utils's Introduction

zsh-utils

A minimal, opinionated set of ZSH plugins designed to be small, simple, and focused.

This includes a number of simple plugins designed to smooth away some of the rough edges of zsh without getting in your way. The idea is that you should be able to say "I'd like to enable the history features of ZSH" (or other similar features) without needing to know the gritty details and without worrying that a bunch of unrelated settings will be enabled.

All the plugins are designed to work with no configuration and no additional dependencies, but shouldn't conflict with additional configuration you want to do.

Driving Principles

Many other zsh config frameworks and modules do too much, are overly complex, don't work well out of the box, and have many unmaintained modules. zsh-utils aims to be small, simple, and focused.

  • Don't reinvent the wheel. If there's an existing plugin elsewhere which works well it should be preferred (such as zsh-completions and zsh-syntax-highlighting.
  • Clear is better than clever. The code should be easy to maintain for anyone with a decent knowledge of zsh. Comments should be included when anything needs explanation.
  • Avoid configuration when possible. Most modules should be self-contained and work out of the box without any necessary configuration. These plugins make a number of opinionated decisions, so some settings may be provided to disable those.

Recommended Installation

Officially antigen is recommended, but it should be possible to load with other plugin managers like zgen or zplug as well.

The following example can be placed in your .zshrc. It will install antigen if it's missing, load antigen, install the zsh-utils repo, and load any specified plugins.

[[ ! -d "$HOME/.antigen" ]] && git clone https://github.com/zsh-users/antigen.git "$HOME/.antigen"
source "$HOME/.antigen/antigen.zsh"

# Set the default plugin repo to be zsh-utils
antigen use belak/zsh-utils --branch=main

# Specify completions we want before the completion module
antigen bundle zsh-users/zsh-completions

# Specify plugins we want
antigen bundle editor@main
antigen bundle history@main
antigen bundle prompt@main
antigen bundle utility@main
antigen bundle completion@main

# Specify additional external plugins we want
antigen bundle zsh-users/zsh-syntax-highlighting

# Load everything
antigen apply

# Set any settings or overrides here
prompt belak
bindkey -e

Provided Plugins

  • completion - Load and initialize the built-in zsh completion system
  • editor - Override and fill in the gaps of the default keybinds
  • history - Load and initilize the built-in zsh history system
  • prompt - Load and initialize the build-in zsh prompt system
  • utility - Common shell utilities, aimed at making cross platform work less painful

Plugin Details

For more specific information about the plugins, check out PLUGINS.md.

zsh-utils's People

Contributors

belak avatar mattmc3 avatar blaradox avatar gregorgebhardt avatar jsvana avatar tumd avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.