nushell/docs/philosophy.md
2019-06-06 10:58:39 -07:00

896 B

This document contains philosophical notes about nu.

Bare Words

In Nu, bare words work the same way they do in most shells.

In most shells, bare words serve two purposes:

$ ls
# ^^ the name of a command
$ cat Cargo.toml
#     ^^^^^^^^^^ a string

Nu adopts this shell idiom.

Consequences:

  • Bare words cannot also refer to variables. Variable names are prefixed with $.
  • Bare words, in almost all contexts, cannot be keywords.
  • Numbers and operators aren't bare words.

One Screen

The utility of a command's output drops off extremely rapidly after a screenful of content.

By default, Nu prefers to present output that can fit into a screen rather than more complete output that spans many screens.

For example, this is the rationale for ls returning a flat table containing the files in the current directory, rather than presenting a tree of data by default.