You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Whenever I'm implementing a new CUI application I find myself reimplementing all sort of vim-key bindings and associated logic if I want to have a text input area. This has led me to ponder if I should write a library (say 'minivim') to allow the developer of a CUI to be able to quickly embed a widget of sorts for text editing... but then I realized helix MAY just be able to be this library for any kind of rust CUI.
Has anyone embedded helix into another editor? Or aware of any projects which have done this?
I was thinking it may be possible to accomplish this by feeding in a custom stdin object to crossterm which helix is built upon (right?). The custom stdin would be then processed by the developer of the CUI aka the parent owner of the helix instance, and could be drawn in a custom smaller widget for instance. I suspect there's also a way to send a resize event through crossterm if the user wanted to resize a helix widget.
It's probably more than just the stdin which would need to be modified, for instance it'd make sense to allow for the CUI to handle initialization of any text in a helix-widget as well as be in control of processing the text (maybe when the widget is closed, or potentially everytime the widget receives an event). Ideally all this text management would occur all in memory to allow the parent CUI decide how to process the text (in many situations likely not saving a file). I'm wondering how much of this configuration is already possible?
Could helix be configured to be "ultra" lightweight, if so I'd even be possible to use it a very small text editing areas in CUIs - for instance I'd love to be able to use helix for tiny textbox entry to enable the user to have vim-bindings. This kind of an "ultra-tiny-helix" would likely only have a single line to play with for the status line/command line etc.
Anyways these are all just ideas! I'd love feedback. Without doubt I will one day be compelled to write minivim hopefully it's possible to do this as a wrapper on helix!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Whenever I'm implementing a new CUI application I find myself reimplementing all sort of vim-key bindings and associated logic if I want to have a text input area. This has led me to ponder if I should write a library (say 'minivim') to allow the developer of a CUI to be able to quickly embed a widget of sorts for text editing... but then I realized helix MAY just be able to be this library for any kind of rust CUI.
Has anyone embedded helix into another editor? Or aware of any projects which have done this?
I was thinking it may be possible to accomplish this by feeding in a custom
stdin
object to crossterm which helix is built upon (right?). The customstdin
would be then processed by the developer of the CUI aka the parent owner of the helix instance, and could be drawn in a custom smaller widget for instance. I suspect there's also a way to send a resize event through crossterm if the user wanted to resize a helix widget.It's probably more than just the stdin which would need to be modified, for instance it'd make sense to allow for the CUI to handle initialization of any text in a helix-widget as well as be in control of processing the text (maybe when the widget is closed, or potentially everytime the widget receives an event). Ideally all this text management would occur all in memory to allow the parent CUI decide how to process the text (in many situations likely not saving a file). I'm wondering how much of this configuration is already possible?
Could helix be configured to be "ultra" lightweight, if so I'd even be possible to use it a very small text editing areas in CUIs - for instance I'd love to be able to use helix for tiny textbox entry to enable the user to have vim-bindings. This kind of an "ultra-tiny-helix" would likely only have a single line to play with for the status line/command line etc.
Anyways these are all just ideas! I'd love feedback. Without doubt I will one day be compelled to write
minivim
hopefully it's possible to do this as a wrapper on helix!Beta Was this translation helpful? Give feedback.
All reactions