I do find this an interesting project. I don't think it will serve my purpose as i'm already comfortable with my chosen text editor.
I think many developers/programmers have already picked their poison - what advantages would switching to Ned have? Would newcommers try it.. or resort to VSCode, NeoVim, etc.
Not suggesting it's wrong or a waste of time. Certainly not! I am always happy to see various alternatives out there in various sections of computing... even the likes of GNU Hurd still keeping itself going!
There has been projects where I've been very tempted to use IMGUI as it is an easy/quick approach than building a website or commonly known GUI managers. (WPF, Qt, Gtk, etc)
The problem is - these projects are not about creating text editors, but some GUI Windows (or Windows) that solves problems with check boxes, buttons, and text areas. The problem is ALWAYS when the customers says "Ooh.. it would be good if we can do this!" which, for example, is supporting a Map.. like Gmaps.. which can be supported on the web or on traditional UIs easily.
Do I have the time to support a new feature? Unfortunately.. I dont! I end up using the tools or libraries that DO have these features available. In this example, I can just put together a website using Leafletjs.
Long story short.. as much as I would love to use an Immediate Mode UI to solve a problem... it sounds like a great idea... until it isn't.
This is based on the Dear ImGui library/framework [0]. It's not intended, strictly speaking, for standard desktop applications. It's intended for applications that use 3d rendering, like games or CAD.
Although you could certainly use it as a desktop editor if you wanted to, I think the real value is in embedding.
I'm always in the looking for an alternative to vscodium. This one is surprisingly feature complete for something meant to embed in 3D renderers. I'd like to see what people do with it.
Tried it on Windows on a powerful workstation. Felt sluggish.
The framerate seems to be capped as 60Hz. My monitor is running at 240Hz.
Removing the framerate limit could help.
This is the exact opposite of what I want, actually: imgui keeps promising an official mode that doesn't totally melt the machine from running at peak refresh rate the entire time (since it was developed for games, not normal desktop apps), but it never materialises, and the hacks we all implement ourselves stop working as they update the code etc.
Everyone seems to want 9234567345863489634589 fps, when that's IMO completely absurd for a normal desktop app, e.g. editor! What you actually want is low latency, not constant massive bandwidth and power usage. If all your normal desktop apps constantly ran at uncapped FPS, your computer would scream and laptops wouldn't last 5 minutes on battery.
> This is the exact opposite of what I want, actually: imgui keeps promising an official mode that doesn't totally melt the machine from running at peak refresh rate the entire time
I don't know what to tell you when you're fucking with an immediate mode UI library...
So you're arguing that the definition of an IM UI library necessarily includes running at full screen refresh rate the entire time?
Then how is it that many people, myself included, are able to hack fix this to only update when required? Why does the imgui dev himself promise official support for this?
Wouldn't it look stuttery if the user tried to drag windows or other widgets with a limited framerate?
> What you actually want is low latency
High frame rates directly contribute to lowering latency.
I guess I'm the polar opposite of you here, I heavily prefer low latency/high refresh rates over low CPU/GPU usage, as long as the machine is plugged in to a power source.
Maybe it's car analogy time: this is a bit like saying, well it's fine if my car is going full throttle 24/7, as long as it gets the speed I want on the highway.
Nobody is saying they want to tolerate some horribly laggy interface for the sake of lower CPU usage. The point is simply about not wasting enormous amounts of processing power when it's not needed.
Fifteen years ago I started to develop mild neurological symptoms. Mostly headaches, some minor muscle twitches, and some weird vision issues. I started working with first my GP and then with a neurologist to try to get to the bottom of it. The investigation was leading towards some form of optic neuropathy. In parallel I moved to a new job. All of my symptoms went away and in retrospect at the time all of the symptoms had started when I'd started that job. The fluorescent lighting near my desk there was terrible and as far as my doctors and I could figure out that was likely the cause of it.
Most lights try to avoid flicker in the design, but bad/failing ones can drive one nuts. E.g. fluorescents flicker at 120 Hz (2 crossings per cycle) but the phosphor coating carries some glow and that they stay on for ~80% of the cycle time anyways makes it a lot more bearable that if it were an idealized instantaneous 50% duty at a 60 Hz rate.
Not the OP, but yeah that used to bother me when I was younger.
As did any CRTs running below 75hz
My “super power” used to be that I could tell what refresh rate a VDU was operating at just by looking at it. Well, I couldn’t tell past 80hz. But anything below that I could.
I do find this an interesting project. I don't think it will serve my purpose as i'm already comfortable with my chosen text editor.
I think many developers/programmers have already picked their poison - what advantages would switching to Ned have? Would newcommers try it.. or resort to VSCode, NeoVim, etc.
Not suggesting it's wrong or a waste of time. Certainly not! I am always happy to see various alternatives out there in various sections of computing... even the likes of GNU Hurd still keeping itself going!
There has been projects where I've been very tempted to use IMGUI as it is an easy/quick approach than building a website or commonly known GUI managers. (WPF, Qt, Gtk, etc)
The problem is - these projects are not about creating text editors, but some GUI Windows (or Windows) that solves problems with check boxes, buttons, and text areas. The problem is ALWAYS when the customers says "Ooh.. it would be good if we can do this!" which, for example, is supporting a Map.. like Gmaps.. which can be supported on the web or on traditional UIs easily.
Do I have the time to support a new feature? Unfortunately.. I dont! I end up using the tools or libraries that DO have these features available. In this example, I can just put together a website using Leafletjs.
Long story short.. as much as I would love to use an Immediate Mode UI to solve a problem... it sounds like a great idea... until it isn't.
Writing a text editor is like writing a compiler; the point isn't adoption, the point is in the learning
This is based on the Dear ImGui library/framework [0]. It's not intended, strictly speaking, for standard desktop applications. It's intended for applications that use 3d rendering, like games or CAD.
Although you could certainly use it as a desktop editor if you wanted to, I think the real value is in embedding.
[0] https://github.com/ocornut/imgui
The embed ned is awesome. Will make ImGui engine editors that much more robust. Fantastic.
I’m going to tinker with this.
I'm always in the looking for an alternative to vscodium. This one is surprisingly feature complete for something meant to embed in 3D renderers. I'd like to see what people do with it.
Tried it on Windows on a powerful workstation. Felt sluggish. The framerate seems to be capped as 60Hz. My monitor is running at 240Hz. Removing the framerate limit could help.
This is the exact opposite of what I want, actually: imgui keeps promising an official mode that doesn't totally melt the machine from running at peak refresh rate the entire time (since it was developed for games, not normal desktop apps), but it never materialises, and the hacks we all implement ourselves stop working as they update the code etc.
Everyone seems to want 9234567345863489634589 fps, when that's IMO completely absurd for a normal desktop app, e.g. editor! What you actually want is low latency, not constant massive bandwidth and power usage. If all your normal desktop apps constantly ran at uncapped FPS, your computer would scream and laptops wouldn't last 5 minutes on battery.
> This is the exact opposite of what I want, actually: imgui keeps promising an official mode that doesn't totally melt the machine from running at peak refresh rate the entire time
I don't know what to tell you when you're fucking with an immediate mode UI library...
So you're arguing that the definition of an IM UI library necessarily includes running at full screen refresh rate the entire time?
Then how is it that many people, myself included, are able to hack fix this to only update when required? Why does the imgui dev himself promise official support for this?
Wouldn't it look stuttery if the user tried to drag windows or other widgets with a limited framerate?
> What you actually want is low latency
High frame rates directly contribute to lowering latency.
I guess I'm the polar opposite of you here, I heavily prefer low latency/high refresh rates over low CPU/GPU usage, as long as the machine is plugged in to a power source.
Maybe it's car analogy time: this is a bit like saying, well it's fine if my car is going full throttle 24/7, as long as it gets the speed I want on the highway.
Nobody is saying they want to tolerate some horribly laggy interface for the sake of lower CPU usage. The point is simply about not wasting enormous amounts of processing power when it's not needed.
It should be running at 0 fps, then when there is movement it should run at refresh rate.
It's actually not even 60. The FPS target is configurable in the settings and for some reason the default is 57.
Does it bother you when you see flourescent lighting that's connected to 50/60 Hz mains power and you just see violent flashing?
(edit: This isn't snark, I can't see changes that fast, but I know what they look like slowed down and that other people may be different to me.)
Fifteen years ago I started to develop mild neurological symptoms. Mostly headaches, some minor muscle twitches, and some weird vision issues. I started working with first my GP and then with a neurologist to try to get to the bottom of it. The investigation was leading towards some form of optic neuropathy. In parallel I moved to a new job. All of my symptoms went away and in retrospect at the time all of the symptoms had started when I'd started that job. The fluorescent lighting near my desk there was terrible and as far as my doctors and I could figure out that was likely the cause of it.
Most lights try to avoid flicker in the design, but bad/failing ones can drive one nuts. E.g. fluorescents flicker at 120 Hz (2 crossings per cycle) but the phosphor coating carries some glow and that they stay on for ~80% of the cycle time anyways makes it a lot more bearable that if it were an idealized instantaneous 50% duty at a 60 Hz rate.
God bless LEDs with some capacitance though...
Not the OP, but yeah that used to bother me when I was younger.
As did any CRTs running below 75hz
My “super power” used to be that I could tell what refresh rate a VDU was operating at just by looking at it. Well, I couldn’t tell past 80hz. But anything below that I could.
From the video looks like it's already usable, with Lua or some other scripting language it could be a good alternative to vim or helix.