Skip to content

Commit aaaf6fe

Browse files
Es and fr book (#1697)
* update es book * update fr book * Update es/book/instalacion.md Co-authored-by: Douglas <[email protected]> * Update es/book/trabajando_con_tablas.md Co-authored-by: Douglas <[email protected]> * Update fr/book/cheat_sheet.md Co-authored-by: Douglas <[email protected]> * Update es/book/entorno.md From review * Update es/book/instalacion.md From review * Update es/book/instalacion.md From review * Update fr/book/cheat_sheet.md From review --------- Co-authored-by: Joshua Nussbaum <[email protected]> Co-authored-by: Douglas <[email protected]>
1 parent 5c7d8f4 commit aaaf6fe

13 files changed

+550
-553
lines changed

es/book/aliases.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,26 +9,26 @@ Un alias te permite crear un nombre corto para un bloque de comandos. Cuando se
99
Ejemplo:
1010

1111
```
12-
> alias ls-nombres [] { ls | select name }
13-
> ls-nombres
14-
────┬────────────────────
15-
# │ name
16-
────┼────────────────────
17-
0 │ 404.html
18-
1 │ CONTRIBUTING.md
19-
2 │ Gemfile
20-
3 │ Gemfile.lock
21-
4 │ LICENSE
12+
alias ls-nombres [] { ls | select name }
13+
ls-nombres
14+
# => ────┬────────────────────
15+
# => # │ name
16+
# => ────┼────────────────────
17+
# => 0 │ 404.html
18+
# => 1 │ CONTRIBUTING.md
19+
# => 2 │ Gemfile
20+
# => 3 │ Gemfile.lock
21+
# => 4 │ LICENSE
2222
```
2323

2424
## Parámetros
2525

2626
También pueden tomar parámetros opcionales que son pasadas al bloque. Cada parámetro se convierte en una variable en el bloque.
2727

2828
```
29-
> alias decir [mensaje] { echo $mensaje }
30-
> decir "¡hola!"
31-
¡hola!
29+
alias decir [mensaje] { echo $mensaje }
30+
decir "¡hola!"
31+
# => ¡hola!
3232
```
3333

3434
Puedes tener un número arbitrario de estos argumentos. Cuando el usuario no proporciona un valor, la variable en el bloque evaulara a `Nothing` y será eliminada.

es/book/cargando_datos.md

Lines changed: 90 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,25 @@ Hemos visto como puedes usar comandos como `ls`, `ps`, `date`, y `sys` para carg
77
Una de las funciones más destacadas de Nu para trabajar con datos es el comando `open`. Es una multi-herramienta que puede trabajar con varios formatos de datos. Para ver qué significa esto intentemos abrir un archivo en formato json:
88

99
```
10-
> open editors/vscode/package.json
11-
------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
12-
name | descript | author | license | version | reposito | publishe | categori | keywords | engines | activati | main | contribu | scripts | devDepen
13-
| ion | | | | ry | r | es | | | onEvents | | tes | | dencies
14-
------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
15-
lark | Lark | Lark | MIT | 1.0.0 | [object] | vscode | [0 | [1 item] | [object] | [1 item] | ./out/ex | [object] | [object] | [object]
16-
| support | develope | | | | | items] | | | | tension | | |
17-
| for VS | rs | | | | | | | | | | | |
18-
| Code | | | | | | | | | | | | |
19-
------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
10+
open editors/vscode/package.json
11+
# => ------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
12+
# => name | descript | author | license | version | reposito | publishe | categori | keywords | engines | activati | main | contribu | scripts | devDepen
13+
# => | ion | | | | ry | r | es | | | onEvents | | tes | | dencies
14+
# => ------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
15+
# => lark | Lark | Lark | MIT | 1.0.0 | [object] | vscode | [0 | [1 item] | [object] | [1 item] | ./out/ex | [object] | [object] | [object]
16+
# => | support | develope | | | | | items] | | | | tension | | |
17+
# => | for VS | rs | | | | | | | | | | | |
18+
# => | Code | | | | | | | | | | | | |
19+
# => ------+----------+----------+---------+---------+----------+----------+----------+----------+----------+----------+----------+----------+----------+----------
2020
```
2121

2222
De manera similar a `ls`, abrir un tipo de archivo que Nu entienda nos devolverá algo más que solo texto (o una secuencia de bytes). Aquí abrimos el archivo "package.json" de un proyecto de JavaScript. Nu puede reconocer y abrir el texto en JSON y devolvernos una tabla de datos.
2323

2424
Si deseamos revisar la versión del proyecto que estamos mirando podemos usar el comando `get`.
2525

2626
```
27-
> open editors/vscode/package.json | get version
28-
1.0.0
27+
open editors/vscode/package.json | get version
28+
# => 1.0.0
2929
```
3030

3131
Actualmente Nu soporta los siguiente formatos para cargar datos directamente a tablas:
@@ -40,7 +40,7 @@ Actualmente Nu soporta los siguiente formatos para cargar datos directamente a t
4040
¿Pero qué sucede si cargas un archivo de texto que no sea de estos? Probemos:
4141

4242
```
43-
> open README.md
43+
open README.md
4444
```
4545

4646
Se nos muestra el contenido del archivo. Si el archivo es muy grande obtendremos una vista práctica desplazable para mirar el archivo y luego regresar a la terminal. Para ayudar con legibilidad Nu resaltará la sintaxis de formatos comunes de archivos como de código, markdown, y más.
@@ -54,90 +54,90 @@ Una parte importante de trabajar con datos llegando fuera de Nu es que no siempr
5454
Imaginemos que nos proporcionan estos datos de archivo:
5555

5656
```
57-
> open gente.txt
58-
Octavia | Butler | Writer
59-
Bob | Ross | Painter
60-
Antonio | Vivaldi | Composer
57+
open gente.txt
58+
# => Octavia | Butler | Writer
59+
# => Bob | Ross | Painter
60+
# => Antonio | Vivaldi | Composer
6161
```
6262

6363
Cada pedazo de dato que deseamos está separada por el símbolo de tubería (pipe '|'), y cada persona está en líneas separadas. Nu no contiene un formato de archivo delimitado con pleca ('|') predeterminado, por lo que tendremos que parsearlo nosotros mismos.
6464

6565
Lo primero que queremos hacer al cargar el archivo es trabajarlo línea por línea:
6666

6767
```
68-
> open gente.txt | lines
69-
---+------------------------------
70-
# | value
71-
---+------------------------------
72-
0 | Octavia | Butler | Writer
73-
1 | Bob | Ross | Painter
74-
2 | Antonio | Vivaldi | Composer
75-
---+------------------------------
68+
open gente.txt | lines
69+
# => ---+------------------------------
70+
# => # | value
71+
# => ---+------------------------------
72+
# => 0 | Octavia | Butler | Writer
73+
# => 1 | Bob | Ross | Painter
74+
# => 2 | Antonio | Vivaldi | Composer
75+
# => ---+------------------------------
7676
```
7777

7878
Podemos darnos cuenta que estamos trabajando con las líneas porque estamos de vuelta a una lista. Nuestro próximo paso es mirar si podemos dividir las filas a algo más útil. Para eso, usaremos el comando `split`. `split`, como implica el nombre, nos da una manera de dividir una cadena delimitada. Usaremos el subcomando `column` para dividir el contenido a varias columnas. Indicamos cuál es el delimitador y se hace el resto:
7979

8080
```
81-
> open gente.txt | lines | split column "|"
82-
---+----------+-----------+-----------
83-
# | Column1 | Column2 | Column3
84-
---+----------+-----------+-----------
85-
0 | Octavia | Butler | Writer
86-
1 | Bob | Ross | Painter
87-
2 | Antonio | Vivaldi | Composer
88-
---+----------+-----------+-----------
81+
open gente.txt | lines | split column "|"
82+
# => ---+----------+-----------+-----------
83+
# => # | Column1 | Column2 | Column3
84+
# => ---+----------+-----------+-----------
85+
# => 0 | Octavia | Butler | Writer
86+
# => 1 | Bob | Ross | Painter
87+
# => 2 | Antonio | Vivaldi | Composer
88+
# => ---+----------+-----------+-----------
8989
```
9090

9191
Casi se ve correcto. Parece que hay espacio extra ahí. Cambiemos nuestro delimitador:
9292

9393
```
94-
> open gente.txt | lines | split column " | "
95-
---+---------+---------+----------
96-
# | Column1 | Column2 | Column3
97-
---+---------+---------+----------
98-
0 | Octavia | Butler | Writer
99-
1 | Bob | Ross | Painter
100-
2 | Antonio | Vivaldi | Composer
101-
---+---------+---------+----------
94+
open gente.txt | lines | split column " | "
95+
# => ---+---------+---------+----------
96+
# => # | Column1 | Column2 | Column3
97+
# => ---+---------+---------+----------
98+
# => 0 | Octavia | Butler | Writer
99+
# => 1 | Bob | Ross | Painter
100+
# => 2 | Antonio | Vivaldi | Composer
101+
# => ---+---------+---------+----------
102102
```
103103

104104
Nada mal. El comando `split` nos da datos que podemos usar. Adicionalmente nos crea nombres de columnas predeterminadas:
105105

106106
```
107-
> open gente.txt | lines | split column " | " | get Column1
108-
---+---------
109-
# | value
110-
---+---------
111-
0 | Octavia
112-
1 | Bob
113-
2 | Antonio
114-
---+---------
107+
open gente.txt | lines | split column " | " | get Column1
108+
# => ---+---------
109+
# => # | value
110+
# => ---+---------
111+
# => 0 | Octavia
112+
# => 1 | Bob
113+
# => 2 | Antonio
114+
# => ---+---------
115115
```
116116

117117
También podemos nombrar nuestras columnas en vez de usar nombres predeterminados:
118118

119119
```
120-
> open gente.txt | lines | split column " | " primer_nombre apellido trabajo
121-
---+---------------+-----------+----------
122-
# | primer_nombre | apellido | trabajo
123-
---+---------------+-----------+----------
124-
0 | Octavia | Butler | Writer
125-
1 | Bob | Ross | Painter
126-
2 | Antonio | Vivaldi | Composer
127-
---+---------------+-----------+----------
120+
open gente.txt | lines | split column " | " primer_nombre apellido trabajo
121+
# => ---+---------------+-----------+----------
122+
# => # | primer_nombre | apellido | trabajo
123+
# => ---+---------------+-----------+----------
124+
# => 0 | Octavia | Butler | Writer
125+
# => 1 | Bob | Ross | Painter
126+
# => 2 | Antonio | Vivaldi | Composer
127+
# => ---+---------------+-----------+----------
128128
```
129129

130130
Ahora que tenemos nuestros datos en una tabla podemos usar todos los comandos que hemos usado en tablas antes:
131131

132132
```
133-
> open gente.txt | lines | split column " | " primer_nombre apellido trabajo | sort-by primer_nombre
134-
---+---------------+-----------+----------
135-
# | primer_nombre | apellido | trabajo
136-
---+---------------+-----------+----------
137-
0 | Antonio | Vivaldi | Composer
138-
1 | Bob | Ross | Painter
139-
2 | Octavia | Butler | Writer
140-
---+---------------+-----------+----------
133+
open gente.txt | lines | split column " | " primer_nombre apellido trabajo | sort-by primer_nombre
134+
# => ---+---------------+-----------+----------
135+
# => # | primer_nombre | apellido | trabajo
136+
# => ---+---------------+-----------+----------
137+
# => 0 | Antonio | Vivaldi | Composer
138+
# => 1 | Bob | Ross | Painter
139+
# => 2 | Octavia | Butler | Writer
140+
# => ---+---------------+-----------+----------
141141
```
142142

143143
Hay otros comandos que puedes usar para trabajar con cadenas:
@@ -149,25 +149,25 @@ Hay otros comandos que puedes usar para trabajar con cadenas:
149149
También hay un conjunto de comandos auxiliares que podemos llamar si conocemos de antemano que los datos tienen una estructura que Nu debería de entender. Por ejemplo, abramos un Rust archivo lock:
150150

151151
```
152-
> open Cargo.lock
153-
# This file is automatically @generated by Cargo.
154-
# It is not intended for manual editing.
155-
[[package]]
156-
name = "adhoc_derive"
157-
version = "0.1.2"
152+
open Cargo.lock
153+
# => # This file is automatically @generated by Cargo.
154+
# => # It is not intended for manual editing.
155+
# => [[package]]
156+
# => name = "adhoc_derive"
157+
# => version = "0.1.2"
158158
```
159159

160160
The `from` command can be used for each of the structured data text formats that Nu can open and understand by passing it the supported format as a subcommand.
161161

162162
El archivo "Cargo.lock" es un archivo en formato .toml pero la extensión del archivo no es .toml. Está bien, podemos usar el comando `from` usando el subcomando `toml`:
163163

164164
```
165-
> open Cargo.lock | from toml
166-
----------+-------------
167-
metadata | package
168-
----------+-------------
169-
[object] | [405 items]
170-
----------+-------------
165+
open Cargo.lock | from toml
166+
# => ----------+-------------
167+
# => metadata | package
168+
# => ----------+-------------
169+
# => [object] | [405 items]
170+
# => ----------+-------------
171171
```
172172

173173
El comando `from` se puede usar para cada dato estructurado de formatos de texto que Nu pueda abrir y entender pasando el formato soportado como subcomando.
@@ -177,24 +177,24 @@ El comando `from` se puede usar para cada dato estructurado de formatos de texto
177177
Mientras es útil poder abrir un archivo e inmediatamente trabajar con una tabla de sus datos, esto no siempre es lo que deseas hacer. Para llegar al texto subyacente, el comando `open` puede tomar una bandera opcional:
178178

179179
```
180-
> open Cargo.toml --raw
181-
[package]
182-
name = "nu"
183-
version = "0.1.3"
184-
authors = ["Yehuda Katz <[email protected]>", "Sophia Turner <[email protected]>"]
185-
description = "A shell for the GitHub era"
186-
license = "MIT"
180+
open Cargo.toml --raw
181+
# => [package]
182+
# => name = "nu"
183+
# => version = "0.1.3"
184+
# => authors = ["Yehuda Katz <[email protected]>", "Sophia Turner <[email protected]>"]
185+
# => description = "A shell for the GitHub era"
186+
# => license = "MIT"
187187
```
188188

189189
## Abriendo URLs
190190

191191
Además de cargar archivos desde tu archivos de sistema, también puedes usar el comando `http get` proporcionando una URL. Se cargará el contenido de la URL por internet y devolverá:
192192

193193
```
194-
> http get http://www.andresrobalino.com/feed.xml
195-
----------
196-
rss
197-
----------
198-
[1 item]
199-
----------
194+
http get http://www.andresrobalino.com/feed.xml
195+
# => ----------
196+
# => rss
197+
# => ----------
198+
# => [1 item]
199+
# => ----------
200200
```

0 commit comments

Comments
 (0)