You are browsing as a guest. Sign up (or log in) to start making projects!

4h 2m 55s logged

I stayed up late into the night yesterday reading docs for Go and Bubble Tea. Here are the ones I read:

So far, my overall impressions are “wow, Go kinda sucks compared to TypeScript”. Maybe it’s just that I’m only scratching the surface and I’ve yet to see the true advantages of Go, but so far I am unimpressed. It’s just much more restrictive and much less expressive than TypeScript while simultaneously somehow being more prone to runtime panics, at least from my small amount of experience.


Anyways, I’ve also gotten a decent amount of work done. deci can now kind of edit files. Watch the video below for a demonstration.

Things that work:

  • reading files
  • creating files if they don’t exist
  • transforming the lines of a file into a slice (Go’s version of dynamic-length arrays) of strings
  • displaying the lines on screen
  • moving the cursor around
  • displaying the cursor
  • preventing the cursor from going out of bounds
  • inserting characters onto the current line at the cursor position
  • displaying a line of status text
  • writing lines to the file

Things that might seem like they would work based on the list above, but actually don’t:

  • backspaces
  • creating new lines (aka enter)
  • scrolling through a file
  • displaying the cursor when it isn’t directly over an existing character
  • preventing the cursor from going out of bounds when it goes above or below a line that’s longer than its neighbors
  • other subtle cursor behaviors that are difficult to describe that we take for granted in editors but are surprisingly difficult to implement

There’s still a lot to do. It might seem like I’ve made a lot of progress but I doubt that I’m even 10% of the way done.

0
23

Comments 2

@Koei

thanks for including resources where you learnt what you’re using, i really appreciate that and should do it myself.

@arjun_

looking good bro