Home Explore Blog CI



nushell

1st chunk of `blog/2020-05-12-nushell_0_14_0.md`
a9f891c263d3ad79ff85ce18a1365d4b9a45c3e6025d421c000000010000108d
---
title: Nushell 0.14.0
author: The Nu Authors
author_site: https://twitter.com/nu_shell
author_image: https://www.nushell.sh/blog/images/nu_logo.png
excerpt: We're excited to release version 0.14.0 of Nu!
---

# Nushell 0.14.0

Nushell, or Nu for short, is a new shell that takes a modern, structured approach to your commandline. It works seamlessly with the data from your filesystem, operating system, and a growing number of file formats to make it easy to build powerful commandline pipelines.

We're excited to release version 0.14.0 of Nu!

# Where to get it

Nu 0.14.0 is available as [pre-built binaries](https://github.com/nushell/nushell/releases/tag/0.14.0) or from [crates.io](https://crates.io/crates/nu). If you have Rust installed you can install it using `cargo install nu`.

If you want more goodies, you can install `cargo install nu --features=stable`.

As part of this release, we also publish a set of plugins you can install and use with Nu. To install, use `cargo install nu_plugin_<plugin name>`.

# What's New

## Temporary environment variables (sophiajt)

A feature requested by many, many folks is finally here. Up until now, to change an environment variable, you had to update the `config` settings, and then these changes would be permanent. This makes working with certain kinds of commands, which need some additional environment information, annoying to use.

With 0.14.0, you'll now be able to temporarily set an environment variable. To do so, you can use the new `with-env` command. This command takes the variable/value pair and the block to run once the environment is set:

```
> with-env [DEBUG true] { command arg1 arg2 }
```

Bash, as well as many other shells, use a handy shorthand form, which we also now support. You can write the above as:

```
> DEBUG=true command arg1 arg2
```

## Starting things off right (1ntEgr8)

Modern desktops have a way to associate file types with applications and often have a way to run that application automatically when you open a file of that type. In macOS, you can use the `open` command, `start` on Windows, and a variety of related `start` command in Linux.

In 0.14.0, we've added a unified `start` command that works across platforms that will run the associated application for a file type. For example, if you've associated your .py files with VSCode, you can edit them now using `start myfile.py`.

## Nu gets a calendar (JosephTLyons)

A fun surprise for this release is the recently-added `cal` command, which will give you a calendar in table form.

```
> cal
───┬────────┬────────┬─────────┬───────────┬──────────┬────────┬──────────
 # │ sunday │ monday │ tuesday │ wednesday │ thursday │ friday │ saturday
───┼────────┼────────┼─────────┼───────────┼──────────┼────────┼──────────
 0 │        │        │         │           │          │      1 │        2
 1 │      3 │      4 │       5 │         6 │        7 │      8 │        9
 2 │     10 │     11 │      12 │        13 │       14 │     15 │       16
 3 │     17 │     18 │      19 │        20 │       21 │     22 │       23
 4 │     24 │     25 │      26 │        27 │       28 │     29 │       30
 5 │     31 │        │         │           │          │        │
───┴────────┴────────┴─────────┴───────────┴──────────┴────────┴──────────
```

You can pass in flags to give you additional columns for the year, month, and even get calendars from the past or future.

## Commands get some helpful examples (elichai)

A last minute update also gave us a big improvement in our built-in help. Starting with 0.14, we'll now have examples as part of the help commands can use:


Title: Nushell 0.14.0 - New Features
Summary
Nushell 0.14.0 has been released with several new features. These include the ability to temporarily set environment variables using the `with-env` command or a shorthand form, a unified `start` command to open files with their associated applications across different platforms, a `cal` command to display a calendar in table form, and examples in the built-in help for commands.