[#32] Ghostty: A New Terminal Emulator Written in Zig - Mitchell Hashimoto

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 พ.ย. 2024

ความคิดเห็น • 94

  • @10e999
    @10e999 ปีที่แล้ว +53

    The Zig Compiler Internals blog series was incredibly helpful for learning the language.
    Thanks a lot Mitchell.

  • @misconfiguration
    @misconfiguration ปีที่แล้ว +28

    Mitchell is such an inspiration, he doesn't need to work yet still finds ways to write things people need and do it better than the rest. Big fan of Mitchell and may God bless his family!

  • @bendon4604
    @bendon4604 ปีที่แล้ว +33

    Amazing talk, learned a lot about Zig features in a huge project and very insightful examples!

  • @jeezusjr
    @jeezusjr 6 หลายเดือนก่อน +10

    I wish I was 10% as productive as Mitchell is. 😓

  • @LucasOe
    @LucasOe ปีที่แล้ว +14

    That looks really promising! Despite there being so many Terminal Emulators, I can agree, that none of them check all boxes, so I'm excited for Ghostty.

    • @Microphunktv-jb3kj
      @Microphunktv-jb3kj 17 วันที่ผ่านมา

      the name is terrible tho :d not catchy, should have just named Ghost or whatever

  • @LtdJorge
    @LtdJorge 2 หลายเดือนก่อน +3

    Damn, this is the guy where the Hashi in Hashicorp comes from, I didn't know he was doing Zig now (insted of Go) :D

  • @mattanimation
    @mattanimation 8 วันที่ผ่านมา

    cool project for learning all these inner workings of a TE

  • @bjbboy71697
    @bjbboy71697 ปีที่แล้ว +5

    i hope you make this project public when it's ready! it looks really interesting and would be an amazing addition to the pool of zig software.

  • @kevinkkirimii
    @kevinkkirimii ปีที่แล้ว +2

    Mitchell is just an amazing human being. Thank you for ghostty

  • @koodeau
    @koodeau ปีที่แล้ว +1

    Yep, agree. Seeing suck improvements in iTerm happened would be the best thing to happen for me. Otherwise I can already see where ghostty can be used with wasm, so crazy

  • @j-r-hill
    @j-r-hill ปีที่แล้ว +6

    Excited for where this could go! Personally I'm a Linux TWM hipster and so I generally favor more minimal terminals (Sakura and LilyTerm are some that met my needs) but I'm really interested to see where this goes
    Also i just was not prepared for it to get so deep into metaprogramming, that blew my mind

    • @J-Random-Luser
      @J-Random-Luser หลายเดือนก่อน

      The default X window manager?

  • @cemgecgel4284
    @cemgecgel4284 ปีที่แล้ว +12

    the showtime intro blew me away!

    • @sadhlife
      @sadhlife 6 หลายเดือนก่อน

      I also want to know what song it is

  • @bobuva2245
    @bobuva2245 ปีที่แล้ว +1

    Thanks for the insights and the demo, Mitchell. I've been wondering whether to learn Zig because it reminds me of the days of learning to program in C, many moons ago. From what you said, I think I'll give it a try.

  • @conformist
    @conformist หลายเดือนก่อน

    Ghostty seems really cool. I can't wait to start using the v1.
    Maybe becoming a beta tester could be interesting as well!

  • @bsergean
    @bsergean ปีที่แล้ว +1

    This baby talk and 3 hours pattern makes me think of a cron job, in this nerdy context.

  • @krumbergify
    @krumbergify ปีที่แล้ว +3

    The mozilla public license 2.0 is copyleft per file, convertable to GNU licenses and accepted in app stores. It is used by the VLC media player. The LGPL doesn’t work well for static linking.

  • @SteeveMorin
    @SteeveMorin ปีที่แล้ว +3

    Great talk!

  • @NickBlack
    @NickBlack 3 หลายเดือนก่อน

    notcurses author here, good stuff, always happy to see notcurses-demo killing it =]

  • @0netom
    @0netom ปีที่แล้ว +8

    I'd say memory usage is the biggest end-user problem with Electron apps, NOT their speed.
    After seeing that compile-time struct definition for bit packing font info, I was expecting memory usage being optimized too, so it was a surprise to hear, that memory usage is not prioritized.
    All your CPU optimizations are down the drain, if there is not enough memory and the system starts swapping, which I've often seen on macOS even with 16GB RAM.

    • @0netom
      @0netom ปีที่แล้ว

      For example, I'm using IntelliJ's built-in terminal plugin, which is horribly slow and not very feature-rich, but it's at hand and integrated with the window handling of the editor, so it's less of a mental context switch, then switching to an external editor and that's why I use it 80-90% of the time.
      2% of the time I'm even starting to use the Cursive plugin's Clojure REPL to call out to shell commands, just so I can stay even more focused.

  • @neunmalelf
    @neunmalelf ปีที่แล้ว +3

    From a PR point of view, you did A GREAT JOB so far. Some (bigger) companies could learn a lot ... 👍😉

  • @BarakaAndrew
    @BarakaAndrew 3 หลายเดือนก่อน

    The power of one 10x engineer.

  • @VeitLehmann
    @VeitLehmann 3 หลายเดือนก่อน

    Man, this looks amazing! Can't wait to put my hands on it! I'm currently using iTerm on macOS, and on Linux I'm torn between Wezterm (a little more feature-rich, and I like how the splits work) and Kitty (a little bit more robust, often a bit faster, better font rendering, but I don't like how splits work). I also don't like how both Wezterm and Kitty always feel a bit alien.
    Ghostty looks like the solution to all these issues! Any updates on when to expect a public release? Or how to get access to the closed beta?

  • @CreachterZ
    @CreachterZ 27 วันที่ผ่านมา

    In our enterprise we are required to run Windows even though almost all of my work is on AIX via SecureCRT. I do have WSL2 Ubuntu. What are the chances I can run this and when?

  • @jhonyortiz5
    @jhonyortiz5 11 หลายเดือนก่อน +2

    Options are good. People want different things. I really like a minimal emulator like Alacrity. Its less customizable by design and i prefer that. I dont need tabs on alacrity because i use zellij, its like tmux. I like the defaults on alacritty so i dont spend a lot of time configuring it and i like that. I know its nit picking but alacrity doesn't lack features as much as it is feature complete according to the standards that the devs and community have agreeed on.

  • @pranavdubey4364
    @pranavdubey4364 2 หลายเดือนก่อน +1

    00:01 05:33 Mitch starts

  • @Br4dButt0wski
    @Br4dButt0wski 6 หลายเดือนก่อน +1

    I like the songs in your intros, can you share them in the notes?

  • @htr-g8r
    @htr-g8r ปีที่แล้ว +5

    Didn't know Zig has comptime type construct. That's really nice. I'm getting creeps from template programming on C++. Very nice of you to discourage the type gymnastics coming from this, since the comptime type construct is not mathematically meaningful or useful to overuse, especially as (automated) proof system (your use case was 100% valid though).

  • @underflowexception
    @underflowexception ปีที่แล้ว +1

    great video

  • @johncavanaugh6481
    @johncavanaugh6481 ปีที่แล้ว +1

    I cant wait for this on Windows/WSL and VSCode...

    • @codenameirvin1590
      @codenameirvin1590 7 หลายเดือนก่อน +2

      It isn’t a shell, it’s a terminal emulator. VS Code is a terminal emulator as well. So you won’t use this inside of VS Code.

    • @johncavanaugh6481
      @johncavanaugh6481 7 หลายเดือนก่อน

      @@codenameirvin1590 not necessarily true, Mitchell has talked about a flexible licensing so it could be used in vscode as a much more performant terminal. As for wsl, I hope to use ghostty to replace Microsoft terminal as my interface to wsl.

  • @3DCharacterArt
    @3DCharacterArt ปีที่แล้ว +3

    The following dependencies will be installed:
    cctools
    clang-16
    clang_select
    gdbm
    ld64
    ld64-xcode
    libomp
    llvm-16
    llvm_select
    perl5
    perl5.34
    readline
    xar
    Continue? [Y/n]:

  • @dwylhq874
    @dwylhq874 4 หลายเดือนก่อน +1

    05:33 Mitch starts

  • @DexieTheSheep
    @DexieTheSheep ปีที่แล้ว

    love the new intro lol

  • @pyaehtetaung
    @pyaehtetaung หลายเดือนก่อน

    Ghostty is still in close beta.

  • @cunningham.s_law
    @cunningham.s_law 2 หลายเดือนก่อน

    why do you prefer tabs and splits over tmux?

  • @Bvngee
    @Bvngee ปีที่แล้ว

    So siked for this!!

  • @kamalkamals
    @kamalkamals 6 หลายเดือนก่อน +1

    link to download ??

  • @flylord42
    @flylord42 6 หลายเดือนก่อน

    why not write an ide in zig that works like a terminal?

  • @sdstorm
    @sdstorm 3 หลายเดือนก่อน

    What is that nvim color scheme?

  • @xdman2956
    @xdman2956 ปีที่แล้ว +3

    52:48 why 3 bit? lol

  • @senapk
    @senapk 3 หลายเดือนก่อน

    I changed for wezterm. Love the lua config, font support, images and multiplexer

  • @sdstorm
    @sdstorm 3 หลายเดือนก่อน

    This guy must have a PhD.

  • @sporefergieboy10
    @sporefergieboy10 ปีที่แล้ว +54

    Ziggers rise up

    • @greenrocket23
      @greenrocket23 ปีที่แล้ว +4

      🤣

    • @kennethcox6895
      @kennethcox6895 6 หลายเดือนก่อน +1

      Hahahahahahahaha

    • @juniorsundar
      @juniorsundar 3 หลายเดือนก่อน +14

      Woah there buddy! No need to use a hard ‘r’
      Where my ziggas at?

  • @severgun
    @severgun 4 หลายเดือนก่อน +3

    Closed source closed beta.

  • @jarod1701
    @jarod1701 ปีที่แล้ว +2

    Under the BSL in three, two, one, ...

  • @BotYoutubevertification
    @BotYoutubevertification 3 หลายเดือนก่อน

    10:31 so uh............................................................................................................

  • @bobbycomputers
    @bobbycomputers ปีที่แล้ว

    What font is he using in his terminal?

  • @benjamindeharo314
    @benjamindeharo314 ปีที่แล้ว

    Would you consider making a space invaders emulators ? (the Midway 8080 arcade machine, not a clone of the game)
    It is generally considered to be the next step after chip8 in emulation programming, but there isn't any clear tutorial about it

  • @clintquasar
    @clintquasar ปีที่แล้ว +1

    Missed Konsole from your list.

  • @IAmOxidised7525
    @IAmOxidised7525 ปีที่แล้ว +2

    Does it work in windows , I bet it does not

    • @mjmlvp
      @mjmlvp ปีที่แล้ว +3

      In the video it is mentioned that Windows support is going to be there, but not yet

  • @swastikacharyya
    @swastikacharyya ปีที่แล้ว +1

    There's a frame drope between 10:33 to 10:42 .

    • @JohnDoe-sp3dc
      @JohnDoe-sp3dc ปีที่แล้ว +5

      The application author is streaming over the Internet and this is a recording of the stream. There's nothing that could've been done.

  • @Gordonfreems
    @Gordonfreems ปีที่แล้ว +1

    Wheres the discord link?

  • @ukyoize
    @ukyoize ปีที่แล้ว +5

    variable lenght fonts in terminals are antifeature

    • @0netom
      @0netom ปีที่แล้ว

      I'd love to use proportional fonts for programming and in fact I did use it for ~2 years (before switching to Clojure),
      BUT I don't see how could it be used effectively in terminals.
      I would have loved to see a demo of that.

  • @TakinProfit
    @TakinProfit ปีที่แล้ว +13

    I guess Mitch never heard of wezterm 🙄

    • @homelessrobot
      @homelessrobot ปีที่แล้ว +2

      i guess Wez never heard of alacritty.

    • @TakinProfit
      @TakinProfit ปีที่แล้ว +10

      @@homelessrobot Wez never made a video comparing wezterm to other terminal emulators and then not mentioning the obvious alternative.

    • @homelessrobot
      @homelessrobot ปีที่แล้ว +8

      @@TakinProfit Yeah i didn't really know what game we were playing i was just stabbing in the dark and named a random terminal

    • @LKamii
      @LKamii ปีที่แล้ว +6

      Changed from alacritty to wezterm and never looking back.

    • @ac130kz
      @ac130kz ปีที่แล้ว +3

      @@homelessrobot good luck with no ligatures

  • @uchennaofoma4624
    @uchennaofoma4624 ปีที่แล้ว +2

    Made it early 😅

  • @ac130kz
    @ac130kz ปีที่แล้ว

    cool, sadly no Vulkan

  • @trejohnson7677
    @trejohnson7677 ปีที่แล้ว

    y never 30 seconds of thing working with these kinds of talks??? lol.

  • @salonsospain
    @salonsospain 2 หลายเดือนก่อน

    12K

  • @JeffreyGarcia-u9g
    @JeffreyGarcia-u9g 2 หลายเดือนก่อน

    Arianna Trace

  • @khanra17
    @khanra17 9 หลายเดือนก่อน +1

    I think he intentionally not included wez because it solved all the problems he mentioned.
    And you have to make up a problem to solve

    • @deviantsemicolon618
      @deviantsemicolon618 3 หลายเดือนก่อน +2

      wezterm isn't fast at all. it's a good terminal, but i certainly wouldn't call it fast.
      there's also its lack of ability to work on wayland properly.
      there's also the fact that there isn't really a competition between devs to make the best terminal emulator, so why shit on other projects like this on the behalf of someone who probably wouldn't even care?

  • @johnnm3207
    @johnnm3207 ปีที่แล้ว +10

    LORIS 4 min intro? please STOP

    • @RapidPixel79
      @RapidPixel79 ปีที่แล้ว +6

      There's a scrubbing bar btw, and the start of the talk is marked with a chapter...

    • @johnnm3207
      @johnnm3207 ปีที่แล้ว

      @@RapidPixel79 4 MINs?

    • @TimoFriedl
      @TimoFriedl หลายเดือนก่อน

      Dude is watching at .25x speed

  • @salonsospain
    @salonsospain 2 หลายเดือนก่อน

    12332

  • @uchennaofoma4624
    @uchennaofoma4624 ปีที่แล้ว +1

    First 😮

  • @uchennaofoma4624
    @uchennaofoma4624 ปีที่แล้ว +1

    Made it early 😅

  • @uchennaofoma4624
    @uchennaofoma4624 ปีที่แล้ว +1

    First 😮

  • @uchennaofoma4624
    @uchennaofoma4624 ปีที่แล้ว +1

    Made it early 😅