[HN Gopher] Onivim 2 is a retro-futuristic modal editor
___________________________________________________________________
 
Onivim 2 is a retro-futuristic modal editor
 
Author : niedzielski
Score  : 80 points
Date   : 2021-06-25 04:56 UTC (2 days ago)
 
web link (v2.onivim.io)
w3m dump (v2.onivim.io)
 
| ford_o wrote:
| Why does it try to look like vscode clone?
| 
| I understand that the vscode ecosystem is awesome. However, I
| always felt like the UI was severaly lacking behind proper IDE
| like intellij.
| 
| Give me intellij-like documentation popup, run, build & debug
| buttons and debug UI, and I will switch in an instant!
 
| pope_meat wrote:
| I stared at the landing page for a good 15 seconds wondering "why
| is that picture... breathing?"
 
  | pantulis wrote:
  | Same here!
 
| TheFreim wrote:
| What does this offer that evil-mode emacs, or even vscode, has to
| offer...?
 
  | twobitshifter wrote:
  | If every text editor has to implement full emacs functionality,
  | every alternate text editor project should just stop now.
 
| da_big_ghey wrote:
| <> not helpful for marketing, what
| is the meaning here? maybe some correlation with <>
| name and outrun look, but not clear. it also has advertisement
| for <> but this not always means fast. text editor
| problem is more latency than <>, any latency benchmark
| made yet?
 
| enw wrote:
| Isn't this VS Code with the Vim extension?
 
  | hvis wrote:
  | Seems like it's Vim with a VS Code extension/adapter instead.
  | 
  | Intriguing idea, though not sure how viable.
 
  | trutannus wrote:
  | Took far too long for me to figure out that this isn't just a
  | VS Code extension. I'm not even entirely sure this isn't.
 
  | felixr wrote:
  | No, it is actually using the real vim in the background. So
  | while you might not be able to use all vim plugins/scripts, it
  | should give you a much more complete vim experience. See also
  | https://github.com/onivim/libvim
 
    | e12e wrote:
    | Is it better than (the AFAIK newer)
    | https://github.com/asvetliakov/vscode-neovim ?
 
  | ddek wrote:
  | No, likely out of diffidence onivim has a very similar design
  | to VSC. It doesn't appear to share any code with VS Code
  | though.
 
    | WiiManic wrote:
    | This isn't technically true, the extension host we use is
    | directly the one from VSCode, such that we can support their
    | extensions (well...a subset as we fill in the gaps in for the
    | Oni2 <-> ExtHost communication).
    | 
    | But the actual core editor is all seperate, written in
    | ReasonML (or OCaml if you know that instead), with a bunch of
    | C libs in the background we've wrapped (Skia/Harfbuzz/We wrap
    | real vim etc).
    | 
    | So the core editing experience has no code sharing, but the
    | extension side of things does!
 
| whatyearisit wrote:
| I really wanted to like Onivim 2, but went back to Visual Studio
| code after supporting the creator on Patreon for a while. The
| last build and creator update was provided months ago for
| supporters.
| 
| I also wanted to vote against the pricing model, because I think
| it should be a one time purchase. The creator and his company
| behind the editor tries to create a serious FOMO on likely
| customers. I considered it to be a red flag on a potential
| abandonment. Additionally, I felt it would be easier for Visual
| Studio code become faster than Onivim 2 can have support for all
| Visual Studio code extensions.
| 
| On the plus side, Onivim 2 has some smart defaults which made it
| a joy to use. I encourage anyone who thinks about buying Onivim 2
| to first learn how to fine tune VS Code to look and feel like
| Onivim 2 because you can.
 
| phelipetls wrote:
| It's unfortunate that some VS Code extensions, e.g. remote
| development extensions, can't be used in Onivim 2 due to license
| restrictions[1].
| 
| [1]:
| https://github.com/VSCodium/vscodium/issues/196#issuecomment...
 
| nine_k wrote:
| What's most interesting for me here is Revery, the GUI framework.
| React-like, cross-platform, native-code, MIT-licensed.
| 
| Yes, it's not using native widgets (so no built-in
| accessibility), but that might be fine in many cases.
 
  | romwell wrote:
  | Looking forward to seeing it displace Electron.
 
    | k__ wrote:
    | Back in the days, I would have bet on Revery as Electron
    | replacement.
    | 
    | But currently, Tauri seems like a more viable option.
 
    | nine_k wrote:
    | Not soon: however I like ML-style languages, it's JS / TS
    | what has the mass market adoption now.
    | 
    | It's not even the language, it's not much harder to learn
    | than TS. It's the smaller library ecosystem of Reason /
    | OCaml.
 
| siproprio wrote:
| Does it really have _INSTANT_ startup time (i.e. Sublime Text)?
| 
| If it has, I'm interested.
| 
| Was not able to find the trial though.
 
  | xaduha wrote:
  | $ time /opt/oni/Onivim2.AppDir/usr/bin/Oni2 --nofork --silent
  | -c qa              real    0m0,360s         user    0m0,280s
  | sys     0m0,042s
 
| skavi wrote:
| How fast does this feel compared to VS Code?
| 
| I went into the whole onivim -> revery -> reason rabbit hole and
| the native code compilation is compelling, but Flutter does the
| same thing and is pretty slow.
 
  | xaduha wrote:
  | It feels faster than VSCode, but I would wait until at least
  | 0.6 before trying it out more.
 
| albingroen wrote:
| I bought a license like 6 months ago and have tried a couple of
| times back and forth during this period. I thought this was
| exactly what I was looking for. A modern mix on Vim and VSCode. I
| was pretty disappointed though tbh. You can really just VSCode
| with the Vim extension, or just use actual Vim. I think there is
| space for a product like this though, so A for effort!
 
  | JNRowe wrote:
  | Much like you, I think I'm probably the target audience for
  | this.
  | 
  | One of the things that stops me from using neovim - regardless
  | of any changes I'd like - is the removal of gvim. I like my
  | gvim candy; SVG icons in sign columns, better modifier support
  | in maps, drag and drop when in command line,
  | $things_ive_forgot_i_use.
  | 
  | Likewise, I also believe the idea of onivim is worth a licence
  | fee, even it turns out I can't get behind it. It just feels
  | like one of those projects I want to see succeed, even if it
  | isn't for me.
 
| [deleted]
 
| twobitshifter wrote:
| Aside, I see it has tabs as defaults- what are people's thoughts
| on tabbed editors?
 
| koehr wrote:
| Honestly, melting two open source editors together (or rather
| cloning one while integrating the other) and ask for that amount
| of money for it is in my opinion unacceptable. The only thing
| that would make this a bit more acceptable is when the developers
| are promising to spend a lot of their earnings for vim
| development (and maybe VSCode, too).
| 
| *edit:* Just saw that it is actually open source and will be
| available for non-commercial use for free. I'm more than fine
| with that model!
 
  | lifty wrote:
  | Onivim doesn't use vscode. It's a from scratch implementation
  | that doesn't use electron, but they do replicate the vscode
  | plugin system so they can be compatible with it.
 
  | WiiManic wrote:
  | > Just saw that it is actually open source and will be
  | available for non-commercial use for free. I'm more than fine
  | with that model!
  | 
  | Yeah, we are using the dual-licensing model that some other
  | projects use.
  | 
  | Source available may be a more accurate description, since it
  | can be somewhat controversial to claim to be open source and
  | use our licensing model.
  | 
  | Tl;dr:
  | 
  | - Commits from the core team are licensed under an EULA for 18
  | months. You can use Oni2 for free for non-commercial stuff, but
  | need a license for commercial use.
  | 
  | - After 18 months, commits are re-licensed to MIT license, and
  | appear in the Oni2-MIT repo, where they are then subject to the
  | normal rules of that license.
  | 
  | We do also periodically give to the upstream projects that
  | power us, i.e. you'll see our name in the Vim leaderboard
  | thingy since we give money to the charity that Vim asks for
  | donations to.
  | 
  | And to be clear, whilst we use the vim source code as the
  | editing experience base, the UI is our own, thought obviously
  | looks very similar to VSCode, though no UI code is shared etc
  | (Oni2 is written in Reason, VSCode in Typescript).
 
| a3w wrote:
| Buying software without a trial makes me disinterested. I still
| want to learn using vim every day, but won't commit to this text
| editor/vsx-powered IDE, unless I find out that I have the guts to
| use it every day. Also, there is VIM mode for VS Code, I guess.
 
  | WiiManic wrote:
  | Oni2 is available for use for free for non-commercial usage, it
  | just needs building from source at the moment. The steps are in
  | the user manual if anyone is interested:
  | https://onivim.github.io/docs/for-developers/building
  | 
  | Partially that is a thank you to those who have supported our
  | development, and partially its to help put up a small barrier
  | to entry, just so we don't get too flooded with issues and
  | feature requests!
  | 
  | A public release is coming soon-ish, and can be used for non-
  | commercial use.
 
  | injidup wrote:
  | Hand holding is still a thing here I guess.
  | https://onivim.github.io/docs/for-developers/building
 
  | gryn wrote:
  | it seems to be open source there's a link in the page to the
  | project's GitHub page.
  | 
  | https://github.com/onivim/oni2
 
  | ddek wrote:
  | > Also, there is VIM mode for VS Code, I guess.
  | 
  | I feel like this is something said by people who are more
  | invested in VS Code than vim. The main vim plugin for VS Code
  | is straight trash.* It's slow, buggy, and unintuitive; while
  | lacking the extensibility that vim has. At least IDEAVim, which
  | has the same limitations of being built in another IDE,
  | replicates enough of the common plugins to be pleasant.
  | 
  | It's also worth noting that onivim is not VS Code repackaged.
  | It is not an electron app, and it doesn't appear to use the
  | monaco editor. They have apparently taken great design
  | inspiration from VS Code, which I think is a fairly diffident
  | decision.
  | 
  | Overall, I'm looking at neovim nightly and not knowing why
  | onivim is a thing. I can understand the appeal of a GUI vim,
  | but implementing a vim backend is a monumental task _if you
  | intend to be compatible with existing vim plugins_ (and you
  | should). Nvim 0.5 has native lua, and now freed from vimscript
  | the quality of plugins is improving continuously. I just can 't
  | see a way for a 'third vim' - if you don't start with vimscript
  | you won't be compatible, but if you do you're already outdated.
  | 
  | * There are a few attempts to splice VS Code and neovim, all of
  | these are awful.
 
    | WiiManic wrote:
    | > but implementing a vim backend is a monumental task if you
    | intend to be compatible with existing vim plugins
    | 
    | We skipped that and haven't implemented any vim backend at
    | all!
    | 
    | We use/made libvim[1], which is just the vim source, that
    | we've essentially turned into a library. So its the vim code
    | base with terminal UI stuff stripped out, and an interface
    | added for us to hook into it. The README of that repo has
    | some good insight into that (including why we didn't use
    | neovim here, as much as the team all loves nvim).
    | 
    | We don't support vimscript stuff at the moment, but its in
    | progress as all the vim source code is there to load/run it
    | as normal, its just about integrating is properly into Oni2
    | (making sure keybinds are working, commands are properly
    | loaded, packing stuff up nicely for distrib etc).
    | 
    | (There is some other motivation bits in this doc[2]. Its
    | outdated since we haven't edited it since before the project
    | started, but it outlines the motivations we went in with
    | etc).
    | 
    | [1]: https://github.com/onivim/libvim [2]: https://github.com
    | /onivim/oni2/blob/master/docs/MOTIVATION.m...
 
      | jnovek wrote:
      | "We skipped that and haven't implemented any vim backend at
      | all ... so its the vim code base with terminal UI stuff
      | stripped out, and an interface added for us to hook into
      | it."
      | 
      | You took out the most important part!
      | 
      | I don't know about other people, but I became a vim user
      | because I found myself configuring servers and needed to
      | know a better text editor than nano.
      | 
      | Vim is also my primary code editor these days but
      | portability is still a killer feature.
 
        | lbotos wrote:
        | You are mis-interpreting what they did. They literally
        | took vim, and built a ui around it. No re-implementation.
        | It's Vim with a more modern frontend stack. You can go
        | look at the libvim source and see it for yourself.
        | 
        | The point of this is to bring Vim into more modern
        | workflows, not but "vim compat" but literally... _vim_.
        | 
        | Source: had some pull requests into libvim a while back
        | to remove a lot of the various legacy compat features
        | that don't make sense for libvim.
 
  | rapind wrote:
  | According to their FAQ it looks like they'll be offering a
  | trial version once they hit v1.
  | 
  | https://onivim.github.io/docs/other/faq#is-there-a-trial-ver...
 
| dasdadjak wrote:
| Was an early adopter in 2019, right now not so much. No proper
| channel distributions, no hidpi support, UI clone/copy/paste of
| vscode - all things which actually makes user sad... After all
| going in the wrong direction, sorry.
 
| rapind wrote:
| I'm interested. I don't think it's far enough along for me yet
| (.vimrc support), but I'll be keeping an eye on it.
| 
| I really like the "Outline" view, as I'm often editing large
| files and would find this extremely useful.
 
___________________________________________________________________
(page generated 2021-06-27 23:00 UTC)