some typos that were pointed out to me by a reader.
This commit is contained in:
parent
7a6aa52b11
commit
46fcd20864
|
@ -93,12 +93,12 @@ and why I think this trend is a good thing.
|
||||||
## History
|
## History
|
||||||
|
|
||||||
The terminal and the command line interface have been staples of computer user interfaces before computer monitors were even available,
|
The terminal and the command line interface have been staples of computer user interfaces before computer monitors were even available,
|
||||||
with some of the first computers offering an interactive mode in the late 1950's.
|
with some of the first computers offering an interactive mode in the late 1950s.
|
||||||
The recognizable Linux terminal traces its linage to the very first version of Unix in 1971.
|
The recognizable Linux terminal traces its linage to the very first version of Unix in 1971.
|
||||||
Many utilities that a Linux user interacts with every day,
|
Many utilities that a Linux user interacts with every day,
|
||||||
commands like `rm`, `cat`, `cd`, `cp`, `man`, and a host of other core commands trace their initial versions to this first version of Unix.
|
commands like `rm`, `cat`, `cd`, `cp`, `man`, and a host of other core commands trace their initial versions to this first version of Unix.
|
||||||
Other tools are a bit newer, such as `sed` (1974), `diff` (1974) `bc` (1975), `make` (1976), or `vi` (1976).
|
Other tools are a bit newer, such as `sed` (1974), `diff` (1974) `bc` (1975), `make` (1976), or `vi` (1976).
|
||||||
There were a few more tools introduced in the 90's, such as `vim` (1991) and `ssh` (1995), but you get the picture.
|
There were a few more tools introduced in the '90s, such as `vim` (1991) and `ssh` (1995), but you get the picture.
|
||||||
The majority of the foundational CLI tools on a Linux pc, even one installed yesterday, are older than Linux itself is.
|
The majority of the foundational CLI tools on a Linux pc, even one installed yesterday, are older than Linux itself is.
|
||||||
|
|
||||||
## Ok, so?
|
## Ok, so?
|
||||||
|
@ -203,7 +203,6 @@ but its an extremely usable IDE out of the box thanks to having all of its featu
|
||||||
|
|
||||||
### Helpful error messages
|
### Helpful error messages
|
||||||
|
|
||||||
<!-- look at nushells error messages -->
|
|
||||||
When the user does do something wrong, it is vital to let them know exactly what, where, and how it went wrong,
|
When the user does do something wrong, it is vital to let them know exactly what, where, and how it went wrong,
|
||||||
and if at all possible, what action the user can do to fix it.
|
and if at all possible, what action the user can do to fix it.
|
||||||
`Operation Failed`, `Error` or `syntax error` on their own are horrible error messages.
|
`Operation Failed`, `Error` or `syntax error` on their own are horrible error messages.
|
||||||
|
@ -217,7 +216,7 @@ This is confusing because you are trying to checkout a branch, you arent thinkin
|
||||||
|
|
||||||
Another example, I covered [before](../nushell) is the contrast between Bash and Nushell.
|
Another example, I covered [before](../nushell) is the contrast between Bash and Nushell.
|
||||||
Consider the following script:
|
Consider the following script:
|
||||||
{{<highlight sh "linenos=false">}}
|
{{<highlight console "linenos=false">}}
|
||||||
$ for i in $(ls -l | tr -s " " | cut --fields=5 --delimiter=" "); do
|
$ for i in $(ls -l | tr -s " " | cut --fields=5 --delimiter=" "); do
|
||||||
echo "$i / 1000" | bc
|
echo "$i / 1000" | bc
|
||||||
done
|
done
|
||||||
|
@ -225,7 +224,7 @@ done
|
||||||
|
|
||||||
This gets the sizes of all the files in KiB. But what if we typo the cut field?
|
This gets the sizes of all the files in KiB. But what if we typo the cut field?
|
||||||
|
|
||||||
{{<highlight sh "linenos=false">}}
|
{{<highlight console "linenos=false">}}
|
||||||
$ for i in $(ls -l | tr -s " " | cut --fields=6 --delimiter=" "); do
|
$ for i in $(ls -l | tr -s " " | cut --fields=6 --delimiter=" "); do
|
||||||
echo "$i / 1000" | bc
|
echo "$i / 1000" | bc
|
||||||
done
|
done
|
||||||
|
@ -248,12 +247,12 @@ you have to start print debugging.
|
||||||
|
|
||||||
The equivalent in nushell would be:
|
The equivalent in nushell would be:
|
||||||
|
|
||||||
{{<highlight sh "linenos=false">}}
|
{{<highlight console "linenos=false">}}
|
||||||
> ls | get size | each {|item| $item / 1000}
|
> ls | get size | each {|item| $item / 1000}
|
||||||
{{</highlight>}}
|
{{</highlight>}}
|
||||||
|
|
||||||
and the equivilant error would be:
|
and the equivilant error would be:
|
||||||
{{<highlight sh "linenos=false">}}
|
{{<highlight console "linenos=false">}}
|
||||||
> ls | get type | each {|item| $item / 1000}
|
> ls | get type | each {|item| $item / 1000}
|
||||||
Error: nu::shell::eval_block_with_input
|
Error: nu::shell::eval_block_with_input
|
||||||
|
|
||||||
|
@ -279,7 +278,7 @@ Error: nu::shell::type_mismatch
|
||||||
|
|
||||||
Though the first error isnt helpful, the second one tells us right away that `$item` is not what we expect it to be,
|
Though the first error isnt helpful, the second one tells us right away that `$item` is not what we expect it to be,
|
||||||
hopefully pointing us to the `get type` mistake.
|
hopefully pointing us to the `get type` mistake.
|
||||||
Nushells error messages are miles ahead of other shells just...
|
Nushell's error messages are miles ahead of other shells just...
|
||||||
being useful, helping you find where you made an error,
|
being useful, helping you find where you made an error,
|
||||||
rather than just telling you theres an error *somewhere*.
|
rather than just telling you theres an error *somewhere*.
|
||||||
|
|
||||||
|
|
|
@ -108,7 +108,7 @@ Build custom split keyboards with a focus on ergonomics and portability.
|
||||||
|
|
||||||
### National Cyber League
|
### National Cyber League
|
||||||
**Four-time competitor in the National Cyber League**\
|
**Four-time competitor in the National Cyber League**\
|
||||||
2021, '22, and '23
|
2021, ’22, and ’23
|
||||||
|
|
||||||
Competed for NDSU in the bi-annual National Cyber League in individual and team games,
|
Competed for NDSU in the bi-annual National Cyber League in individual and team games,
|
||||||
placing in the top 500 individuals and top 200 teams nationwide for three competitions.
|
placing in the top 500 individuals and top 200 teams nationwide for three competitions.
|
||||||
|
|
Loading…
Reference in a new issue