<commit_before># envirou - View and manage your shell environment

![Build Status](https://travis-ci.org/sverrirab/envirou.svg?branch=master)

Envirou (`ev`) helps you to quickly configure your shell environment.
Stop writing `export` statemenents and maintaining custom shell scripts.

Example after minimal configuration:
![Simple View](./screenshots/header.png)

# Demo session

[![asciicast](https://asciinema.org/a/hVaeBUd4zJ21LT3yRqQhvR0p8.svg)](https://asciinema.org/a/hVaeBUd4zJ21LT3yRqQhvR0p8)

# Key hightlights 
* Works with any other tool - just views and optionally sets environment variables.
* Shows instantly what profiles are active (`dev` AWS profile above).
* Compact output (replaces $HOME with `~` and _underscores_ paths for readability).
* Hides all irrelevant variables such as `TMPDIR`, `LSCOLORS` etc, etc.
* Simple to customize.
* Works on Mac / Linux using bash and zsh.  
* Fully standalone with no dependencies - uses any python 2.7 or 3.4+ you have installed.
* New: Command completion support for bash and zsh.
* New: Includes [oh-my-zsh](https://ohmyz.sh/) theme.

## Quickstart

```bash
$ curl -o- https://raw.githubusercontent.com/sverrirab/envirou/master/curl_install.sh | bash
```

## Example use cases
### AWS configuration
Add all your aws profiles in `~/.aws/config`.  Then create an Envirou profile for each
that sets the `AWS_PROFILE` variable to the name of the AWS profile.  This way you can
easily e.g. switch between `dev` and `prod` or even the default region or output formatting.

### Kubectl configuration
Copy your `~/.kube/config` into a new file for each environment.  Create an Envirou 
profile for each that sets the `KUBECONFIG` pointing to each file.

Make sure you set the default context in each file to be the correct one.  This way you
can create different profiles that for example have a different default namespace.

## Advanced configuration<commit_msg>Add Windows information to README.md<commit_after># envirou - View and manage your shell environment

![Build Status](https://travis-ci.org/sverrirab/envirou.svg?branch=master)

Envirou (`ev`) helps you to quickly configure your shell environment.
Stop writing `export` statemenents and maintaining custom shell scripts.

Example after minimal configuration:
![Simple View](./screenshots/header.png)

# Demo session

[![asciicast](https://asciinema.org/a/hVaeBUd4zJ21LT3yRqQhvR0p8.svg)](https://asciinema.org/a/hVaeBUd4zJ21LT3yRqQhvR0p8)

# Key hightlights 
* Works with any other tool - just views and optionally sets environment variables.
* Shows instantly what profiles are active (`dev` AWS profile above).
* Compact output (replaces $HOME with `~` and _underscores_ paths for readability).
* Hides all irrelevant variables such as `TMPDIR`, `LSCOLORS` etc, etc.
* Simple to customize.
* Works on Mac / Linux using bash and zsh.  
* Fully standalone with no dependencies - uses any python 2.7 or 3.4+ you have installed.
* Command completion support for bash and zsh.
* Includes [oh-my-zsh](https://ohmyz.sh/) theme.
* New: Windows support.

## Quickstart

### Using Mac OS X or Linux

```bash
$ curl -o- https://raw.githubusercontent.com/sverrirab/envirou/master/curl_install.sh | bash
```

### Using Windows

1) Make sure you have python installed (`py` should work, 3.7+ recommended).
1) Download the [zip file](https://github.com/sverrirab/envirou/archive/master.zip) (or do git checkout).
3) Extract the zip file and open a shell in that folder.

```cmd
> echo @%CD%\envirou.bat %* > <tools-folder-on-path>\ev.bat 
```

## Example use cases
### AWS configuration
Add all your aws profiles in `~/.aws/config`.  Then create an Envirou profile for each
that sets the `AWS_PROFILE` variable to the name of the AWS profile.  This way you can
easily e.g. switch between `dev` and `prod` or even the default region or output formatting.

### Kubectl configuration
Copy your `~/.kube/config` into a new file for each environment.  Create an Envirou 
profile for each that sets the `KUBECONFIG` pointing to each file.

Make sure you set the default context in each file to be the correct one.  This way you
can create different profiles that for example have a different default namespace.

## Advanced configuration
{'fraction_non_alphanumeric': 0.09681227863046045, 'fraction_numerical': 0.008736717827626918, 'mean_word_length': 4.4447300771208225, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 6, 'https://': 11, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5720111', 'n_tokens_mistral': 1327, 'n_tokens_neox': 1287, 'n_words': 515}