All Projects → varun-ramani → ZConfer

varun-ramani / ZConfer

Licence: other
The ultimate ZSH configuration utility.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to ZConfer

I3 Rice Rin Shelter
My i3wm rice with theme "Rin : shelter"
Stars: ✭ 146 (+461.54%)
Mutual labels:  zsh, configuration
zshrc
📝 Zsh Configuration for nerds with zplug
Stars: ✭ 28 (+7.69%)
Mutual labels:  zsh, configuration
hoard
cli command organizer written in rust
Stars: ✭ 71 (+173.08%)
Mutual labels:  zsh
hm
Command line history manager for bash and zsh
Stars: ✭ 25 (-3.85%)
Mutual labels:  zsh
zsh-docker
Docker containers for all versions of Zsh.
Stars: ✭ 66 (+153.85%)
Mutual labels:  zsh
aterminal
🎉 An oh-my-zsh plugin for show platform versions
Stars: ✭ 31 (+19.23%)
Mutual labels:  zsh
zsh-bench
Benchmark for interactive Zsh
Stars: ✭ 158 (+507.69%)
Mutual labels:  zsh
zarch
The Ultimate Script For Arch Linux
Stars: ✭ 49 (+88.46%)
Mutual labels:  zsh
bashy
Extremely fast and simple git prompt for bash and zsh
Stars: ✭ 43 (+65.38%)
Mutual labels:  zsh
dotfiles
My Linux settings and configs
Stars: ✭ 33 (+26.92%)
Mutual labels:  zsh
DEC
Development Environment Config. Work faster than ever with my dotfiles
Stars: ✭ 39 (+50%)
Mutual labels:  zsh
env
A lightweight package for loading OS environment variables into structs for Go projects
Stars: ✭ 24 (-7.69%)
Mutual labels:  configuration
killer-storybook-config
A killer Storybook Webpack config to help you bootstrap a great storybook config ASAP. It includes a React Frontend, GraphQL compatibility for Storybook, TypeScript, Babel, and ESlint.
Stars: ✭ 32 (+23.08%)
Mutual labels:  configuration
road-to-orleans
This repository illustrates the road to orleans with practical, real-life examples. From most basic, to more advanced techniques.
Stars: ✭ 55 (+111.54%)
Mutual labels:  configuration
gconfigs
gConfigs - Config and Secret parser
Stars: ✭ 42 (+61.54%)
Mutual labels:  configuration
dotfiles
My dotfiles for oh-my-zsh, vim and tmux 📟
Stars: ✭ 23 (-11.54%)
Mutual labels:  zsh
I WANT TO HELP
https://www.reddit.com/r/zsh/comments/qinb6j/httpsgithubcomzdharma_has_suddenly_disappeared_i/hil4oww/
Stars: ✭ 29 (+11.54%)
Mutual labels:  zsh
dot
No description or website provided.
Stars: ✭ 40 (+53.85%)
Mutual labels:  zsh
easy-props
The simple, stupid properties library for Java
Stars: ✭ 76 (+192.31%)
Mutual labels:  configuration
zsh unplugged
🤔 perhaps you don't need a Zsh plugin manager after all...
Stars: ✭ 68 (+161.54%)
Mutual labels:  zsh

Zconfer Logo

Introduction

Hey look! It's a package manager for ZSH! (And it can do a ton of other stuff too!)

Managing your ZSH configuration can be tedious, thankless toil. Solutions like Oh My Zsh address this problem admirably, but you still have to spend time messing around with configuration files! ZConfer abstracts away the task of configuration behind an easily usable command line interface, so you can get back to focusing on what actually matters.

  • ZConfer is a comprehensive plugin manager capable of adding, deleting, enabling, and disabling plugins.
  • ZConfer can download new themes and enable them.
  • ZConfer breaks your PATH into individual "segments", which can then be managed individually. ZConfer can also add new segments.
  • ZConfer is an alias manager capable of adding, removing, and changing aliases.

Table of Contents

Demo

Installing Z, a plugin for quickly jumping to previously visited directories: pluginstall

Aliasing 'ls' to 'ls -G': aliases

Setting Up

Prerequisites

  • curl
  • git
  • python3

Installation

First, install ZConfer by piping the installer to a new ZSH session:

curl https://raw.githubusercontent.com/varun-ramani/zconfer/master/installer.zsh | zsh

Then run the init step.

The Init Step

Run $HOME/bin/zconf init and respond to any prompts. Pretty simple, really.

Usage

Updating ZConfer

In its current state, this module just wraps a shell command that runs the updater script on this repository.

zconf update

The Plugin System

Through ZConfer's plugin system, you can download new plugins, remove existing ones, and select which to load on startup. You can also view both locally installed and remotely available plugins.

Browsing and Listing Plugins

  • Browse plugins that are not installed with view remote.

    zconf plugin view remote
    
  • Browse installed plugins with view local.

    zconf plugin view local
    
  • You can also view all plugins.

    zconf plugin view all
    

Adding and Removing Plugins

  • ZConfer can easily add new plugins. Example:

    zconf plugin add z
    
  • To delete plugins, use rm. Example:

    zconf plugin rm z
    

Enabling and Disabling Plugins:

  • Use enable to make a plugin load when you start ZSH. Example:

    zconf plugin enable z
    
  • Plugins won't load if you disable them. Example:

    zconf plugin disable z
    

The Theme System

Browsing and Listing Themes

  • Browse themes that aren't installed with view remote.

    zconf theme view remote
    
  • Browse installed themes with view local.

    zconf theme view local
    
  • To browse all themes, use view all.

    zconf theme view all
    

Adding and Removing Themes

Themes are automatically added when they are set for the first time. You don't ever need to add them manually.

  • However, you can add themes manually if you want. Example:
    zconf theme add dracula
    
  • To remove a theme, use rm. Example:
    zconf theme rm dracula
    

Setting Themes

  • It's easy to set themes. Example:

    zconf theme set dracula
    
  • You can also revert to no theme:

    zconf theme set notatheme
    

PATH Management

You can use ZConfer to create, update, and delete individual PATH segments. If you would prefer not to delete a segment entirely, you can also enable/disable it. ZConfer will handle the task of concatenating all the segments with the existing PATH variable in order to create a meaningful PATH string. Note that at the moment, ZConfer can only manage the PATH segments that it created.

Viewing PATH Segments

  • You can view all registered PATH segments and their values.
    zconf path view
    
  • You can also get the value of a specific segment.
    zconf path get bin
    

Creating, Updating, and Deleting PATH Segments

  • The set command can both add and update PATH segments.

    zconf path set <segment> <value>
    

    Example:

    zconf path set android_tools /Users/varun/Android/Sdk/platform_tools
    
  • Using rm deletes a segment. Example:

    zconf path rm android_tools
    

Enabling and Disabling PATH Segments

  • If you might need a segment later, then disable it. Example:

    zconf path disable android_tools
    
  • Recover disabled segments with enable. Example:

    zconf path enable android_tools
    

Alias Management

Viewing Aliases

  • The view command lists your aliases for you.
    zconf alias view
    
  • Similar to the path command, you can get the value of a specific alias.
    zconf alias get ls
    

Creating, Updating, and Deleting Aliases

  • You can use set to create and update aliases.

    zconf alias set <alias> '<value>'
    

    Example:

    zconf alias set ls 'ls -G'
    
  • To delete aliases, use rm. Example:

    zconf alias rm ls
    

Enabling and Disabling Aliases

  • The disable command is like rm, but it's reversible. Example:

    zconf alias disable ls
    
  • Use enable to undo the disable operation. Example:

    zconf alias enable ls
    
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].