Show HN: Toast, a beautiful by default in terminal IDE
Posted by dividedcomet 22 hours ago
Comments
Comment by gopalv 21 hours ago
My emacs days are 1999 during my "functional or get out" phase, but my .emacs had close to 4000 lines in it, including xterm mouse support, a clone of midnight commander + sftp to a wehbost and deep integration with ctags/cscope/c++filt. There was even a line by line debugger with custom .gdbinit commands - look at the php project's gdbinit[1] if you want an idea of how to walk your own super special data structures.
You can't put Emacs in an IDE comparison and say anything about features without at least one person saying "well, actually".
I eventually switched to vim but that had to do with needing to ssh into 100k+ machines on support rotation & never having emacs on any of them.
Comment by godelski 20 hours ago
My friend on eMacs say something similar, but you don't really need as many plugins as people typically use. There's lots of native ways to do things. It's totally fine to prefer NerdTree over the native netrw but it's not like you can't do file exploring. Hell, I use fzf most times (`:GFiles`). But what I don't like is when people confidently say "x can't do y" when it can. I'll give people a break if it requires plugins or complicated commands, but native ones? It just shows ignorance.
While we're on the topic, stop using Esc, use <C-[>. You don't need Esc. And type `set -o vi` into bash/zsh. It's still worth learning your tools. You'll find lots of solutions to problems that only exist because of ignorance. Maybe those solutions are better, but the bigger problem seems to be ignorance. It's fine to be ignorant too! There's a shit ton of docs, no one expects you to read it all. But it's a good place to start
Comment by LiamPowell 20 hours ago
Comment by apetresc 20 hours ago
> toast is for the developer who wants to stay in their terminal without spending hours getting it up to snuff.
I think he knows you can get anything you want in emacs/vim. The pitch is that toast is batteries-included.
Comment by godelski 20 hours ago
Comment by lilbigdoot 20 hours ago
Comment by alecfv26 21 hours ago
Comment by mplanchard 20 hours ago
Comment by cyberax 21 hours ago
Long time ago, in mid-2000-s I tried to switch to Emacs or Vim from Visual Studio.
I wanted to have a simple project file tree as a side panel and multiple editor tabs on the right. I spent a week toying with various elisp scripts, Vim plugins, and digging out information from a then-moribund XEmacs mailing list.
And I couldn't do what I wanted in the end. Nothing worked seamlessly or reliably.
Can this be done out-of-the-box now?
Comment by iLemming 16 hours ago
Yes, with built-in packages there are at least two different ways - speedbar, or Dired in a side window. And what even "out-of-the-box" means? In Emacs-land packages are not like extensions in other editors and IDEs, they more like recipe books. You can collect literally over a thousand of them without ever explicitly loading them until that specific moment that happens once in a decade and you won't ever notice their presence until then. And there are tons and tons of different packages that do the sidebar directory listing - treemacs, dired-sidebar, dired-subtree, direx, ztree, etc. You seriously thought that in 50 effing years nobody, just nobody thought of making a sidebar directory tree that works in Emacs?
> Nothing worked seamlessly or reliably.
Skill issue. You. You couldn't figure it out. And then decided it can't be done, period. Brilliant.
Comment by godelski 20 hours ago
> Can this be done out-of-the-box now?
It always could be. Go into vim and type `let g:netrw_liststyle = 3` then `:Vex`. The window size won't be what you want, but is the core idea? Because if it is, you just set the liststyle in your vimrc and have netrw start on load, with proper pane location and width.That or most people have used NerdTree for a decade
Comment by cyberax 20 hours ago
A project tree is NOT a file list. It's a persistent panel that allows you to navigate within the project. It should also integrate with tools like recursive search (so it doesn't recurse into ignored folders like `node_modules`), build tools, code intelligence, and a debugger.
Comment by godelski 17 hours ago
> It's a persistent panel that allows you to navigate within the project.
Trivial to do with netrw. Again, NerdTree is a common alternative > It should also integrate with tools like recursive search (so it doesn't recurse into ignored folders like `node_modules`)
`:vim /re/ */* +`Or checkout telescope, FZF, or rg. There's plenty of integrations
> build tools
`:make`, `:grep`, `:compiler`. I mean you can do any terminal command...Or plugins, dispatch.vim, overseer.nvim, vim-test
> code intelligence
Ctags, or nvim has a LSP so I don't use ctags (or cscope) much anymore. Common plugins are: coc.nvim, ALE, vim-lsp, YouCompleteMe > debugger
termdebug Is native? Also check nvim-dap (Neovim), vimspectorMost of the plugins listed mostly just make things nicer, not add functionality that doesn't exist. There's a ton of native things I didn't even list.
I'm not saying you have to like it nor that it looks/works the way you like/want/are used to, but you're claiming the functionality doesn't exist and that isn't correct. If it want you argue over style, that's perfectly okay. The reason a lot of us use vim/emacs is because we customize the tools to what works best for us. That's one of their best features! You don't have to use vim, emacs, or any TUI. The tools you should use are the tools best suited to you. Full stop.
But I'll also add that I haven't seen a single thing VS Code or any GUI IDE can do that I can't do in vim while also using a lot fewer compute resources to accomplish it. Personally, I program better and faster in vim because I have years of experience in it and I'm at the point that reaching for the mouse just slows me down. The learning curve isn't that steep to get pretty comfortable in vim, but the depth is enormous and that takes a long time to master. But honestly, the latter is true about most tools. And frankly, I'd rather have a tool where I can keep progressing and do crazy things in than a tool that caps my limits or puts a huge barrier if I want to extend. I moved away from IDEs because I found I could do more in vim quicker. But that's me, not you. Your experience will certainly be different and there's nothing wrong with that. We're just different people and that's perfectly fine.
The only thing really being argued here is your claim that "x can't do y" and as a user of "x", I assure you, I can do "y"
Comment by flexagoon 19 hours ago
Comment by cyberax 18 hours ago
Comment by mplanchard 20 hours ago
Or use any of the various file tree packages in [M]ELPA
Comment by kccqzy 20 hours ago
Comment by jasonjmcghee 21 hours ago
"github.com/yourusername/toast/internal/components/breadcrumbs" "github.com/yourusername/toast/internal/components/closedialog" "github.com/yourusername/toast/internal/components/commandpalette" "github.com/yourusername/toast/internal/components/editor"
Comment by SahAssar 19 hours ago
Comment by Instantnoodl 20 hours ago
Comment by gkoberger 21 hours ago
Comment by dividedcomet 21 hours ago
Comment by vouaobrasil 17 hours ago
Comment by skinfaxi 17 hours ago
Idk the point of my comment but I feel you.
Comment by latexr 20 hours ago
Comment by dividedcomet 20 hours ago
Comment by adamddev1 15 hours ago
Comment by bigfishrunning 21 hours ago
Comment by dividedcomet 21 hours ago
Comment by kolme 21 hours ago
Comment by kccqzy 21 hours ago
Comment by dbalatero 21 hours ago
Comment by dividedcomet 21 hours ago
Comment by gnufied 20 hours ago
Comment by kccqzy 20 hours ago
Comment by pwinnski 20 hours ago
Comment by iLemming 16 hours ago
"I don't think" is never a good argument for making wide claims about anything.
Comment by Hugsbox 20 hours ago
Comment by SoftTalker 19 hours ago
Comment by schainks 21 hours ago
I need a terminal that just works. If it doesn't work out of the box with sensible defaults, it is indeed not up to snuff, and therefore thrown away immediately. Don't ask me to use your buggy-vibe coded thing if it's not up to snuff, right?
This is coming from someone who did spend hundreds of hours learning to customize their terminal, their vim environment, and put all of it in source control to rot away.
Comment by DanielHB 20 hours ago
I just made a bash script that shells into the container (or starts it if it is not already running) and in there everything is set up.
Comment by s_dev 20 hours ago
This seems like all those UI designers who have a crack at redoing Wikipedia and then fail miserably because they just plaster whatever trend on top of something that is universally good.
Comment by pwinnski 20 hours ago
I'm really sad that those people keep releasing those tools to other people via cookie-cutter websites filled with misinformation instead of just enjoying them privately.
Comment by iLemming 16 hours ago
It's not a happy world. It's dystopian. I really don't like how unskilled people get confidence for creating novelty using AI and then dare to put themselves on a pedestal next to bona fide creators. It is robbing them of trust and authenticity.
My neighbor, who barely survived through high school, happily begged me to buy her book: "I created something very special to me. I'm asking my friends to support me by ordering my book. There is a lot of useful information inside based on years of research and observations, and months of putting everything together." I knew it would be complete and utter bullshit, yet I was curious. I ordered "the book". It is chock-full of misspelled words and the substance is just pure garbage. It's a waste of human potential, it's a waste of resources, but hey, now we have yet another fucking "author". Terrific.
Comment by skinfaxi 16 hours ago
Why would that make you really sad? If something scratches your itch, it might scratch someone else's, too. It's kind of like blogging for yourself when you solve an issue.
Comment by LiamPowell 20 hours ago
Comment by dividedcomet 20 hours ago
Comment by LiamPowell 20 hours ago
Comment by flexagoon 19 hours ago
Comment by colesantiago 20 hours ago
We need this terminal TUI nonsense trend to completely die.
Stop using TUIs! They are garbage.
Honestly, the GUI is more intuitive and everyone can use it.
Comment by evanjrowley 20 hours ago
Comment by dllthomas 20 hours ago
Comment by dim13 21 hours ago
Comment by eleventen 20 hours ago
I have so much shit now that I have custom workspaces to deal with because "repository" has stopped being the correct boundary to think about software development (for me). It would be great if _any_ decent editor would support these, especially Zed.
Comment by dividedcomet 20 hours ago
Comment by krogenx 21 hours ago
Comment by OSaMaBiNLoGiN 21 hours ago
Christ.
Comment by dividedcomet 21 hours ago
Comment by fwip 20 hours ago
Comment by dividedcomet 20 hours ago
Comment by fwip 16 hours ago
Comment by david38 16 hours ago
Comment by colesantiago 21 hours ago
> Sees "Claude"
Now almost 90% of projects on GitHub including existing projects are now slop or are adding slop.
Many projects are getting contaminated with AI, and even Linux is getting contaminated with this.
There is a list of projects that have non-slop alternatives one can use instead.
Comment by jjice 21 hours ago
The idea that there can be no high quality use of LLMs to aid software development is lacking a lot of nuance.
Comment by aniviacat 21 hours ago
Comment by delis-thumbs-7e 21 hours ago
Comment by eikenberry 20 hours ago
Comment by s_dev 20 hours ago
LLMs are just another multiplier. A liability in the hands of incompetence and an asset in the hands competence.
Another tool, knowledge will always empower those further than those without knowledge.
Comment by colesantiago 21 hours ago
Yes.
To quote the repository:
"slop: Anything generated by AI, typically code, books, articles, or images."
If you are reviewing AI generated code, you are already reviewing slop which is a lose-lose situation.
Comment by Philpax 21 hours ago
Comment by cnqso 20 hours ago
Comment by dividedcomet 21 hours ago
Comment by CamperBob2 21 hours ago
Comment by rschiavone 21 hours ago
Comment by dividedcomet 21 hours ago
Comment by nosioptar 21 hours ago
To me, it's just yet another bland low-contrast dark mode interface.
Also, vim has mouse support. Probably shouldn't use a clanker to write your readme if you're not going to take the time to do a basic fact check.
Comment by dividedcomet 20 hours ago
Comment by gslepak 20 hours ago
I wrote this article a while back on how to build a great terminal editor that's better than Emacs and VIM [1], you might find it interesting!
[1] https://gist.github.com/taoeffect/086220456e736cceb30d68834d...
Comment by iLemming 16 hours ago
Wow. This is brilliant. Nobody ever. Not once. Not even theoretically. Nobody in 50 years of Emacs' existence ever tried that. Not a single programmer ever said this or attempted to do this. With exception of insignificant fools such as XEmacs, Zmacs, Hemlock, Climacs, Edwin, JEmacs, Yi, Lem, Guile Emacs, Remacs, emacs-ng, and the eleven thousand config frameworks that were going to fix it from the inside. I salute your effort, and may the spirit of your burned tokens please the digital gods and may they accept your sacrifice. Godspeed.
Comment by gslepak 16 hours ago
Comment by iLemming 15 hours ago
What I love about Vim and Emacs is that they taught me humility. I am grateful to my younger self for forcing me to learn them, deeply. They cut my enormously inflated hubris down to size, and I believe they made me not only a better programmer but a better person. I won't tell you to try that path, because that would sound patronizing, and would undo this entire paragraph.