Spectre Console and Cake with Patrik Svensson

Durée: 30m14s

Date de sortie: 24/03/2021

In this episode, I was joined by Patrik Svensson, creator of both the Cake Build System, and a .NET library called Spectre.Console. We mostly chatted about the Spectre Console library, which adds AMAZING functionality to .NET console apps (grid, charts, images, and much more!). We also touched on Cake and Cake Frosting.For a full list of show links, see the website here

Salut à tous et bienvenue à l'Unhandled Exception podcast. Je suis Dan Clark, et c'est épisode
numéro 14. Et aujourd'hui je suis jointé par Patrick Svensson, le créateur de l'étude
de la bale de la cale et aussi un bâtiment qui s'appelle Spectre Console. Et c'est
ce bâtiment que nous allons parler de aujourd'hui. Mais je suis sûr que nous pouvons certainement
toucher sur le cake 2, surtout maintenant que c'est récentement fait.
Donc, un grand bonjour à la bale de Patrick.
Oh, merci. C'est très bien d'être ici.
Tu es le plus bienvenu. Donc avant de commencer, could you give us a quick intro
into your background, on a what it is, you're up to know it is.
Yeah, sure. My name is Patrick Svensson, like you said.
Je suis 39 ans, j'ai vécu de la Suède. J'ai travaillé comme un programmeur
for, I think 16 years now, but I've been programming most of my life.
Like you, I'm running my own little consultancy company, one person thing.
So Spectre Console, I remember seeing this on Twitter when you mentioned that you're creating this.
And it's been one of those things that have been on my list to play with for quite some time.
But I'll hang my head up in shame up until now I haven't done.
But last week, I did have a play around with it and wow, I've kind of been missing out.
I've written a lot of console ops in my time and pretty much all of them would have benefited from this.
I went through documentation and trying out all the different things it could do.
And each individual component and thing you can do, I think if I had a pound for every time,
that I said, oh wow, I was going through the documentation and trying out all the different things,
I'd probably have quite a few pounds.
I'm sure we can dig into each of the different bits and components throughout this episode.
But what would be your high level elevator picture of what Spectre Console is?
Writing console applications in .NET is fairly simple, but it's not that simple, making them beautiful.
It's quite limited when it comes to colors.
It only supports the normal four-bit color palette.
And that's about it.
You can clear the screen, move the cursor a bit.
But since the 70s, there's been this way of controlling the terminal, so to say,
with something called VT escape sequences, virtual terminal, also called ANSI escape sequences.
You can really control how the terminal works and you can have alternate buffers and style your text,
like bold and blinking text and stuff like that.
But there is no way in .NET to do all this.
Of course, you can write these escape codes yourself,
but you need to know does the terminal support these kinds of escape codes,
like if you're using an old cmd.exe on Windows 8, it doesn't.
On Windows 10, you can actually upgrade the console to support ANSI escape codes.
So even though theoretically you can write these codes yourself,
it's not very nice experience if you're trying to do it manually.
So I've actually been using another library called Rich for Python before,
and I really liked it because it's like an abstraction over ANSI escape codes,
and it also adds a concept of widgets, like tables and grids and stuff like that.
So I was actually missing Rich on .NET because .NET is my main...
C-sharp is my main language and .NET is the main platform I work with.
So I started porting small bits of Rich over to .NET.
Of course, I changed some things around and things that weren't very idiomatic for C-sharp.
But...
Not sure, I'm rambling a lot here, but...
But that's more or less why I did it and the main reason for creating it.
No, that's really cool. Looking through the documentation, it's really well documented.
I found that as soon as I jumped to it, I could pick up all the different components
and actually would try and went through each of the different components
and copied the examples into a console or project in Rider.
And it just... It took me like 30 seconds to try each one.
It was so quick, so it's certainly very well documented.
And just looking through the list of components you've got,
as you mentioned, things like list boxes, tables and things,
you've got a really nice animation on your homepage
showing a table being programmatically adjusted,
that the column widths, all the different stylings and stuff.
And it almost feels like some of the functionality you would expect
in a GUI with different components, except this is within a console application.
So it's just... I'm just going to find this so useful moving forward.
Looking through the list, most of them I would find very useful,
but there's some that jump out, which are kind of stand out as I would use more often than others.
And I think the most would be the selection, a multiple selection,
where the selection is almost like a list box
and then the multiple selection is a list of ASCII-based check boxes.
And just being able to plug that into a console application,
I think so many console applications I use would benefit from that kind of UI almost.
Yeah, absolutely.
I'm using Spectre console for a lot of stuff, both personally and at work,
really makes it easy to create great console applications.
If I may say so myself.
You may, definitely.
Thank you.
Even things like just markup, do markup, colors, text layouts.
So one of the examples was showing multiple columns.
So almost like you're styling it in CSS,
kind of thing where you've got like three different columns of text.
And just being able to do this in console apps.
Yeah, absolutely.
You mean the grid example, I think?
Yeah, let me just get up.
Yeah, on the start page.
Yeah, so the main image you've got, which has lots of different examples,
and it shows the text and you've got the green on the left,
the yellow in the center and the blue on the right,
just being able to do stuff like that.
And for the listeners, I will include a link to this,
obviously, in the show notes so that you can see these.
Yeah, so it's got like this one big image.
And obviously, it's a podcast, so I'm trying to explain it verbally,
but we've got like showing lots of different colors you can select.
Styles like bold, italic, underlined, striped through,
and lots of others and blinking text.
Markup, emojis, tables, charts.
You can do bar charts as well.
This is quite nice, actually.
I'm sure most developers doing console apps have seen exceptions on their output.
They've got like pretty colored exceptions,
so you can support that as well and lots of other stuff.
I think my biggest, what was when I saw the canvas image
and I saw you could literally take a PNG and render it to the console.
That was like amazing.
Oh, yeah, that's actually powered by Image Sharp.
Do you know the library Image Sharp?
Yes, yes.
Yeah, it's a very, very nice image library
where you can render it when you need to work with images and stuff like that.
So what I've done is, you're actually using the Image Sharp APIs,
but then you can render it to the console.
Of course, it's going to be very, very pixelated,
but in some scenarios, it really gives a nice aesthetic to your console apps,
having a logotype or something like that in the help screen.
I did play around plugging a few PNGs,
so like the Donnerd Oxford logo, my company logo, the Everstack logo,
and trying a few different ones, so that was quite fun.
I like the way you can rotate them and do all the stuff to it as well.
Yeah, I'm really happy with that.
The only problem I've been having with it is that
since the terminal size normally are quite limited,
like 80 characters wide or greater,
but some images get really big when you try to render them to the console,
even if you shrink them.
Yeah, well, I guess something that's probably more common
in console outputs and console applications
is Asciart, which you've got Figglet support, I believe.
Yeah, yeah, I've added very basic Figglet support.
There is a plan to expand on that,
but right now, you can load Figglet fonts and you can render them,
but you can't really control much of the Figglet rendering yet.
Mais si quelqu'un veut soumettre un PR, je suis très heureux.
Bien, comme je le dis, je vais inclure un lien dans les notes de la show.
Donc, oui, PR est la plus belle.
Avec .NET Core et .NET 5 en plateforme,
est-ce que ça veut dire que le console Spectre
va rapidement se dérouler sur des autres choses,
comme Raspberry Pi, peut-être ?
Ouais, ça devrait se dérouler partout où le .NET se déroulera.
Maintenant, c'est le standard .NET 2.0 et le .NET 5.0.
Donc, si vous pouvez le dérouler, vous pouvez utiliser le console Spectre.
Bien sûr, ça dépend toujours de quel termine de termine que vous utilisez,
mais si vous ne roulez pas sur les windows,
je peux garantir que ça va travailler comme prévu.
Oh, bien, est-ce que si il y a un point de vue de Sonario,
c'est un point de vue de Sonario,
si on ne roule pas sur le console .NET,
il ne devrait pas utiliser le console Spectre.
Est-ce qu'il y a des outliers où ce n'est pas compatible pour une raison ?
Non, je l'ai fait beaucoup de temps
dans l'élaboration pour avoir un fallback
pour supporter les scénarios.
Par exemple, si vous utilisez le console Spectre
dans un terminus qui ne supporte pas.
Et sur les codes escape, par exemple,
il va fall back sur l'application du console au système.
Encore une fois,
certains outils seront limités dans ces scénarios,
comme les textes de bol, etc.
Ce n'est pas supporté,
mais votre application va travailler.
Toutes les widgets vont être rendues
comme des tables et des reads, etc.
Donc si le utilisateur de votre application
roule un système d'opérations,
ça va toujours travailler,
mais ça ne pourrait pas être comme ça,
comme c'est sur votre machine.
Mais sur Linux et Mac,
ça ne devrait pas être un problème.
Très bien.
Je pense que avec Windows Terminal et tout,
je trouve que je utilise
le command line beaucoup plus...
J'ai toujours été un user command line
mais avoir plusieurs supports de tables
et de pains,
je utilise le command line beaucoup plus lourd.
Donc, je pense que ça a été affecté
en défautant beaucoup plus
que d'utiliser les consoles
pour les applications de utilité que j'ai enceinte.
Je me sens comme si je voulais aller
retourner à ma direction de code
et trouver les applications de consoles
et faire les choses,
car ça me semble tellement cool.
J'ai fait ça depuis que j'ai publié
les consoles de publicité,
et que je suis en train de faire des choses
que je n'ai pas touchées pour des années.
C'est vraiment satisfaitant de faire ça.
Est-ce que tu as le même chose que moi
quand tu regardes la code
que tu avais faite six mois ou deux ans ailleurs
et tu as dit que je n'ai pas fait ça?
Oh oui, oui.
Je veux dire,
je me suis regardé la code
que j'ai faite un mois plus tard
et j'ai eu ce sentiment.
Je me suis trompé quand j'ai faite ça.
Je pense que c'est un bon signe
parce que ça signifie que tu es toujours
en train de faire mieux et de mieux apprendre.
C'est une des choses que j'aime beaucoup de ce travail.
Oui, j'espère.
Au moins que tu es trompé
en regardant la code, je ne sais pas.
Je ne veux pas dire que c'est impossible.
Je suis juste en train de le faire.
Ah, oui.
Donc, quand je regarde la documentation,
il y a aussi quelque chose qu'il y a
qui s'appelle Spectre CLI.
Donc, j'ai toujours, dans le passé,
j'ai utilisé un nouveau packages
qui s'appelle Command Line Passer
pour faire ça.
Mais donner tout le truc incroyable
avec des discussions
en tant que Spectre.
Je pense que, comme je l'ai dit,
c'est quelque chose que j'ai utilisé
en plus de la mobilisation de console applications.
Ça semble être de la switcher
pour Spectre
pour la Passing Command 2
est le moyen de l'arriver.
Quand on a l'a écouté
en bref, il y a dit que
c'était assez opinioné.
Ah oui.
Non, c'est super opinioné.
Je veux dire que les projets
de la most-open-source sont
opinionés de manière certaine.
Je pense.
Parce que c'est toujours
que vous voulez résoudre
un problème spécifique
et que vous avez une idée
de comment vous voulez résoudre.
Et ça ne peut pas se correler
avec comment les autres
veulent résoudre ce problème.
Les gens ont écrit
un Command Line Passer
à un moment, je pense.
Il y a un milliard de ces gens.
Mais c'est toujours difficile
de trouver un que j'aime.
Donc, il y a deux ans,
j'ai écrit un pour moi-même.
Et j'ai eu des idées
de faire un type safe,
composition des commandes.
Donc, j'ai maintenant inclus
dans le library de la console spectre.
Parce que j'ai utilisé
les bouts beaucoup
et Spectre CLI,
ce qui s'est appelé,
ça a en fait dépendu
de la console spectre.
Donc, c'était juste plus facile
de le changer
dans la console spectre.
Libérer.
Il y a vraiment
des grands libraries
à l'intérieur de la console.
Il n'y a pas de problème
de mélanger et de matcher
en utilisant le console spectre
pour pritifier l'outil
et des trucs comme ça
et en utilisant quelque chose d'autre.
Je pense que Dolphin
n'a pas de problème
avec un library
qui est opinionné,
parce que je pense
que certains libraries
ont 20 différents
moyens pour faire la même chose.
Je dirais que c'est plus rapide.
Donc, j'aimerais
avoir un jeu avec ça.
Laisse-moi savoir
comment ça marche pour vous.
Oui, c'est certain.
Est-ce que vous avez beaucoup d'aide
de la communauté
avec ce library?
Juste en regardant votre page de GitHub,
je peux voir
que il y a quelques contributions.
Je pense que l'une personne
a fait beaucoup de
translations en documentation,
ce qui
semble super utile
quand l'on ouvre
votre library à plus de utilisants.
Ah oui,
je n'ai pas l'open page de la guitare
maintenant,
mais j'ai des contributions
pour la personne,
la translation,
et je pense que c'est
chinois aussi.
C'est vraiment sympa.
Ça ouvre
le library pour plus de utilisants.
Mais j'ai en fait
étendu un autre
maintenir de l'alibi.
Le nom est Phil Scott.
Il a aidé beaucoup
avec la maintenance
et tout comme ça.
Il a vraiment un job
très bon.
En répondant aux questions
et en soumettant des PRs
et en m'a aidé à maintenir le library.
Phil, si vous vous entendez,
merci beaucoup.
Merci beaucoup.
Je l'apprécie vraiment.
Fantastique.
Je pense que
beaucoup de temps avec Open Source,
les utilisants oublent
que la personne qui
développe l'alibi
ou tout ça,
n'oublient pas
que la personne
sur l'autre côté
qui le fait
est en faisant leur temps libre
pour pas de monnaie.
Ils le font parce qu'ils ont une passion
pour la construction de l'alibi.
Ils veulent aider les gens
à partager
ce qu'ils font.
Et je ne sais pas
quel est votre expérience,
mais il y a des problèmes
où les gens
ils n'ont pas l'air
de parler de leur business
et ils sont en espérant
être en certain nombre
ou,
pour moi, c'est juste mal.
Et tout le monde
doit respecter le fait
que les gens
en faisant Open Source
en faisant leur temps libre
en ce moment
quand ils ont des familles.
Oui,
on a vu pas beaucoup
mais on a vu ça
dans le projet de cake
parfois.
Les gens qui
ont eu un problème
sur quelque chose
que peut-être pas
quelque chose
que nous considérons
un problème
ou quelque chose
qui est en design.
Et ils disent
des choses comme
ok,
mais je ne vais pas utiliser ça.
Ok,
ne pas utiliser ça.
C'est ok.
On ne vous force pas.
Donc,
il y a toujours des gens
qui tentent de faire des demandes
et des trucs comme ça.
On n'a pas eu
beaucoup de problèmes avec ça.
Mais oui,
ça se passe parfois.
Quand ça se passe,
on se fait vraiment frustrer.
Parce que,
comme vous le dites,
vous faites ça
dans votre temps libre.
Et...
Oui.
Je pense que le problème
est que beaucoup de gens
qui sont
les plus vocales
sont les plus vocales
sur des choses négatives.
Et puis,
quand ils ont une bonne expérience,
ils sont juste
heureux
mais ils ne disent pas
n'importe quoi.
Les médecins,
si vous êtes heureux
sur les projets d'Open Source,
laissez les médecins
savoir
que c'est si important.
Oui, absolument.
Je suis complètement certain.
Parfois, quand je trouve
quelque chose
que j'aime vraiment,
parfois j'ai un problème ouvert
juste pour dire
aux médecins
que j'aime vraiment
ce que vous faites.
Parce que je sais
que quand quelqu'un
apprécie
ce que vous faites
dans votre temps libre,
parce que,
le projet d'Open Source
pourrait être
sur quelqu'un's hard drive
mais ils ont décidé
d'en faire publicement
dans l'open source
et d'avoir
supporté à un certain niveau.
Donc,
un remercieur est
très bon.
Il est libre
et c'est un remercieur
pour les gens
qui maintiennent
ce que vous utilisez.
Oui, absolument.
Au point d'interesse,
quand vous faites ces questions,
qui s'occupe de l'issue?
Vous vous direz
sur la team de maintien?
Oui.
Est-ce que vous dites
quelque chose
et puis vous fermez l'issue?
Oui, parfois.
Je veux dire,
à l'aim,
je n'ai pas fait beaucoup,
mais parfois
quand je suis
bloqué par un projet,
c'est comme,
je dois me dire
quelqu'un.
Et sur Twitter,
j'ai essayé de vous encourage
des gens qui m'ont écrit
ceci aussi.
Ça me semble
comme un peu
d'une fonctionnalité
qui ne m'a pas fait
de GitHub,
non?
C'est comme,
vous voulez un message
pour les maintiennes
pour dire merci,
mais pas avoir un issue

quelqu'un a de l'issue,
je pense.
Oui, oui.
Ça serait un bon feature.
Juste comme
un merci pour votre
hard work.
Je pense qu'il y a
ce nouveau
GitHub sponsor
aussi.
Ce qui est peut-être
leur façon
d'en faire ça, je pense.
Oui, absolument.
Mais
il y a
cet aspect
de moneterie.
C'est vrai.
Vous voulez dire merci
et,
plutôt que de
potentiellement beaucoup de negative
et pas de positif,
juste d'avoir un moyen
de dire merci,
ça m'a sauvé
tant de temps.
C'est
juste incroyable.
Merci.
Oui,
ça serait.
Je pense que c'est bon.
Donc,
avez-vous
d'autres plans
pour Spectre console?
Oui,
je veux dire,
nous avons beaucoup de plans.
Nous allons essayer
de stabiliser les choses
et de relier
à 1.0
à un moment.
Je pense que
la plupart des visites
qui doivent être là
ont été impliquées.
Mais il y a toujours
des cas de courant
et des choses
qui ne rendent pas
correctes
dans certains scénarios.
Et nous avons
un couple de ces
bugs à l'open.
Mais après ça,
je pense que nous voulons
relier à 1.0
et commencer à penser
sur
comment nous pouvons
prendre le projet
plus tard.
Fantastique.
Maintenant,
alors que vous êtes ici,
vous pourrez être
un peu remises
de moi
de me faire
avoir l'autorité
de cake
sur le show.
Je ne sais pas
parler de cake
tout à l'heure,
mais maintenant,
vous avez juste
dépassé
V1.
Alors,
c'est surprise
de voir
combien de topics
sur un podcast
de développement de software
peuvent en fait
me faire honger.
Mais
et
Simon Peintre
je parle de vous aussi.
Mais
il ne sait pas
ce que je veux.
Mais,
d'ailleurs,
ça me surprise
quand
je vois que
la cake
n'a pas seulement
dépassé
V1
parce que je l'ai
déjà utilisé
il y a quelques années.
Et même,
ça a été très mature.
On a même eu
Gary Hew and Park
qui nous a participé

la pièce de Donut
de la Goupire
sur Donut Oxford
en
je pense que c'est
2018,
en parlant de tout ça.
Et je n'ai pas utilisé
cela récemment,
mais
je suis assez fier
de discuter
ce que nous avons

dans V1
de cake.
Mais je pense que
on devrait probablement
prendre un step back
et expliquer
ce que la cake est
pour ceux qui n'ont pas utilisé.
Oui, bien sûr.
La cake est une orchestration
de la construction
de la
C-Sharp DSL.
Donc,
utilise-le pour orchestrer
toutes les choses
autour de votre bâtiment.
Je pense que
si un projet est super simple,
vous ne pourrez probablement
pas avoir besoin
de la construction de la construction,
mais si vous voulez
faire des packages de la nouvelle,
et
vous voulez construire
des choses pour différentes plateformes
et des files de copie
et créer des packages de la nouvelle,
c'est supposé
de
remplir
les files de PowerShell
et des files de la C-Sharp DSL
et des targets de la MS Build
que vous normalement
vous avez besoin de faire
et
vous pouvez faire ça dans la C-Sharp,
en fait.
Donc, vous avez
différents tasks que vous exécuter
et des tasks
peuvent dépendre de l'un à l'autre.
Donc, il y a deux favoris de la cake.
L'une est la partie de la script
et l'autre est
où vous vous arrêtez vos scripts
dans un application de console
utilisant quelque chose de la C-Sharp.
Oui.
La chose que j'ai vraiment aimée
c'était juste
le fait que c'était dans la C-Sharp.
Je fais des bits de PowerShell,
mais la plupart de mon jour
m'aiment faire
la C-Sharp.net.
Donc, pour pouvoir
faire le jump-over
sur les scripts de la C-Sharp
et
utiliser quelque chose
que je suis familier avec,
je me suis trouvé
assez puissant.
Et puis, si j'avais besoin
de utiliser
des choses comme Link,
évidemment,
la plupart des scripts
ne sont pas nécessaires,
mais pour des cas plus compliqués,
pour pouvoir juste utiliser
la fonctionnalité de la langue,
ça m'a rendu super puissant.
J'ai entendu
une mention de Frosting,
mais je n'ai pas vraiment
utilisé ça avant.
Oui.
Je pense que c'est
beaucoup plus
d'un temps,
à l'heure de l'honneur,
depuis 2017,
je pense.
Juste avant,
la C-Sharp.net
était élevée.
Frosting
m'a emmené
le pouvoir de scripts de la C-Sharp
pour l'application de console.
Donc, en plus de avoir
un file de build.cake,
vous avez un
régulier project C-Sharp,
où vous référez
le projet de Frosting,
qui va référenter
les dépendances de la C-Sharp.
Et puis, vous définissez
vos tasks.
Vous vous inquiétez
de la classe de Frosting
pour vos tasks
et de l'envergé de la méthode,
et vous pouvez composer des tasks
comme ça
et vous pouvez le faire.
Et ça va...
Oui, je vois.
Donc, si vous avez un
package de new get,
qui a des tasks de build de MS,
pouvez-vous combiner
dans le même package de new get
ou des tasks de build de MS
et des tasks de cake,
aussi ?
Vous devez
offrir le build de cake ?
Ou de faire des choses différentes.
Peut-être que vous avez
une base de code,
vous avez des builds compliqués
et vous avez un bunch
de tasks de build de MS
et vous voulez
vous faire
de l'envergé de la méthode,
vous pouvez utiliser Frosting,
vous pouvez
utiliser un peu de tous,
et puis, vous pouvez migrer
à travers.
Je n'ai pas parlé de ça,
d'hier,
un scénario intéressant.
Vous pouvez probablement
construire
un task de build de custom
qui invoque
les
scripts de cake
ou les builds de
build de cake,
je pense,
comme une solution inter-rim.
C'est probablement
une question
que je pensais beaucoup
parce que je sais
qu'il n'y a pas de choses
comme ça,
c'est une question si chérie.
J'ai fait des projets
avant qui ont utilisé
des tasks de build de MS
où j'ai
écrit
mes condoléances.
Je sais,
je sais.
Je suis toujours
en train de faire des nightmares.
Non,
en fait,
en fait,
quand
quand un task de build de custom
de custom s'enfonce
et vous n'avez pas à toucher,
c'est parfait
parce que ça devient
donc transparent.
Mais quand il y a un problème
et vous n'oubliez pas
comment ça fonctionne,
et vous avez
à trouver
quelque chose qui n'est pas
construit dans le correcte ordre,
et vous...
Ouais,
vous avez des nightmares
sur ça.
Vous vous souvenez qu'il y a un tool,
MS build...
MS build log.
Oui, c'est ça.
J'ai déjà été introduit
par
Stuart Lange,
qui a fait un talk
à Donner Dockside
sur ça.
Donc,
oui, MS build log,
et c'est un peu...
Ça m'a aidé beaucoup
parce que le truc que j'ai fait
à la fois,
je me trouvais
que je pouvais juste
le placer.
C'est...
Je pense que c'est
Keryl Ossencobbe
qui a créé ça.
Il travaille sur Microsoft.
C'est un
vraiment bon tool.
MS build
peut produire
des files binary,
des files binary,
et MS spinlog
a fait des files binary
et peut
render
différents targets,
et vous pouvez chercher
pour les outils.
Et
j'ai utilisé beaucoup
et ça m'a aidé
beaucoup de temps.
Je peux vraiment recommander ça.
Peut-être que ça devrait être
mon tip de débat.
Comme je l'ai mentionné,
je pense que
Stuart Lange a fait un talk
à Donner Dockside,
et je suis assez sûr
que ça a été recordé.
Donc, si c'était,
je vais inclure un lien
dans les notes de débat.
Et bien,
vous avez mentionné des tips de débat.
On va commencer les tips de débat?
Et vous pouvez pas
faire ça facilement.
Ça ne peut pas être
votre débat.
C'est un bon coup.
Ok, j'ai un autre débat.
Mon tip de débat
serait
Omaiposh 3,
le prompt customisé.
Superbe.
J'ai utilisé quelque chose
qui s'est appelé
Starship avant,
mais je l'ai récentement
switché
à Omaiposh.
Et c'est
très bon.
Je recommande à tous
qui veulent une
prête
de débat
pour
le checker.
Oui, je pense que
à l'époque,
j'ai utilisé
quelque chose qui s'est appelé
Omaiposh,
je ne sais pas
le prononcer.
Zeus
ZZH
ZZH
Oh, oui, oui.
Donc,
ce qui est probablement
très très similaire,
mais oui,
c'est très bon
quand vous pouvez,
surtout
que ça est combiné
avec
Poshkit.
Oh, oui.
Donc, vous avez tout ça.
Le débat
montre ce que vous avez
sur le point,
montre ce que vous avez
vous avez auto-completé,
combiné
tout ce que vous avez

l'expérience online
peut être amusante.
Poshkit est
très bon,
comme vous le dites.
Juste quand vous êtes
en train de faire une branche,
juste d'être
capable de
presser le tab
jusqu'à
trouver le
c'est super.
Je dis que
j'ai recently
une nouvelle machine
et j'ai
tout mon terminal
réglé
en même temps
ou
mon Zeus
ou
comment vous le prononcer.
ZZH
et
la auto-completion,
la tab
de l'autocomplete
c'est la seule chose
qu'il n'y a pas
tout autre que le même,
mais ça ne marche pas.
Donc, je dois travailler
à ce que ce n'est pas installé
et que ce n'est pas la seule chose
que vous faites
avec la auto-completion.
Mais oui,
c'est juste
je pense que
le command line
ne serait pas le même
sans
Poshkit.
Donc,
mon tip de détail
et pendant que nous parlons
beaucoup de CLI,
je vais
se mettre sur le sujet.
Et
vous le savez déjà,
ce sont les plus
lignes
command line
intervacés,
les utilisateurs
le connaissent déjà,
mais pour ceux qui ne le sont pas,
les deux powerchels
ont un très utile
le shortcut
de contrôle R
qui est un truc qui s'appelle
la réverse, la historique, la mode de search
qui vous permet de
tuer et de chercher
votre historique command
et depuis que
beaucoup de temps
quand nous utilisons la CLI,
nous répétons la même commande,
nous avons déjà type
beaucoup de temps,
surtout quand ces commandes
peuvent avoir beaucoup de arguments
que vous ne vous souvenez pas.
Je trouve que ça
m'a fait un énorme nombre de temps.

je suis comme tout le temps
qui me passe le contrôle R
puis type un subset
de command que j'ai écrit
dans le passé
et ça fait
faire des choses sur le command line
plus vite.
C'est un bon tip.
En fait,
je ne l'utilise pas,
mais je vais définitivement
commencer à le checker.
Oh,
je vais le tester maintenant.
C'est vraiment bien.
Bien.
La chose que vous pouvez faire
c'est que whichever
tu utilises,
je pense que c'est un hash
pour les deux, pour les commentaires.
Si il y a un command
avec beaucoup de arguments
et il utilise beaucoup,
si à la fin de la ligne
tu mets un hash
et puis un mot
qui est
presque comme un tag
parce que c'est un comment
donc ce n'est pas le command.
Mais ensuite,
quand tu fais le contrôle R,
tu peux contrôler
et type ce tag
qui va te prendre
en bas à la ligne.
Toutes ces petits tips de command line.
Un autre bon point est
si tu fais cd
space hyphen
ça t'envoie
au premier
le premier direct que tu as
donc si tu le fais
quelques fois
il va aller
reprendre
en bas et en bas.
Ce qui est bien.
On a trouvé
je n'ai pas réalisé ça
mais il y a eu
l'année dernière
on avait Scott Hansman
à l'un des events
d'Oxford
et
Scott Hansman
brilhante
avec interaction
avec l'audience
dans un talk
il a comme il y a des gens
qui sont intéressés
et ça a été mentionné
je ne sais pas si c'est moi
qui m'a mentionné
dans l'une des conversations
sur le CD hyphen
et puis
quelques gens
parlent de ça
et jouent sur un autre truc
et puis quelqu'un dans l'audience
a trouvé que
je pense que c'était juste
un power shell
je pense pas en bas
je ne suis pas sûr
de quel genre de manière c'était
mais le CD plus
a went forward
dans la history de l'Histoire
et le CD minus a went backwards
encore dans la show notes
il y a eu un lien avec ça
il y a eu un event Hansman
parce que ça n'était pas récordé
mais c'était
juste vraiment intéressant
comment il était expérimenté
et à l'involer
il y avait quelques choses différentes
où on a trouvé des choses
en milieu de la conversation
et il aurait aimé
quelqu'un pour la team Microsoft
il aurait aimé
ouvrir les équipes
et lui demander une question
sur ce sujet
pendant que nous étions en train de faire un talk
Incroyable
et je ne sais pas comment ça se fait
c'était
il a trouvé l'answer bien
mais il était essayant de faire
le look more involved
ou si c'était
juste généralement
que
nous étions
comme une groupe
en découvrant les choses
comme le talk s'est passé
mais
il a definitivement fait
comme un membre de l'audience
beaucoup plus engagé
il a senti beaucoup plus involvement
donc c'était un bon talk
je vais vérifier
si vous avez mis un lien
dans la show note
oui, oui, on l'a inclus
toutes les choses qu'on a parlé
donc avant de rappeler
vous avez rien d'autre
que vous voulez mentionner
ouh
non
non, c'est ok, il ne faut pas
je ne sais pas
vous pensez à toutes les choses
après
comme normalement
non, je pense que je suis bon
cool
donc un grand merci
Patrick Vigione
c'est un grand merci de vous avoir regardé
oh merci
c'était vraiment divertant
en parler avec vous
oui, vous aussi
et un grand merci à tous pour l'entendre
un petit souvenir
que ce podcast est sponsorisé
par Everstack
qui est mon propre company
à propos de développement de softwares
et services de consultation
pour plus d'informations
visite Everstack.com
et si vous aimez le podcast
s'il vous plait, m'aurez aidé
à mettre la parole sur les médias sociaux
je n'ai normalement pas utilisé
la tag « Unhandled Exception »
et je peux être trouvé sur Twitter
à Dracan
D-R-A-C-A-N
et mes DMs sont ouvertes
et mon blog
danclock.com
a des liens à tous mes services sociaux
aussi
nous allons inclurent les liens
à toutes les choses qu'on a mentionnées
aujourd'hui dans les notes de la show
qui peuvent être trouvées
sur
unhandledexceptionpodcast.com

Les infos glanées

Je suis une fonctionnalité encore en dévelopement

Signaler une erreur

TheUnhandledExceptionPodcast

Tags
Card title

Lien du podcast

[{'term': 'Technology', 'label': None, 'scheme': 'http://www.itunes.com/'}]

Go somewhere