Onivim 2 Code Editor

You can use these in insert mode. But it seems to behave weirdly. I found if you copy in insert mode and use p in normal it behaves more the way expect. But that whole is not expected :sweat_smile:

Maybe this is why it is only in insert mode. But it definitely needs improving. I guess this isn’t the worse since it’s not even in beta yet.

Same here! Currently I vacillate between Onivim and Vscode using the vim extension (which can sometimes be infuriating). Once more extensions are supported and I learn how to replace/replicate some of the cool tricks I’ve gotten use to in Vscode, I think it will be my daily driver.

2 Likes

Onivim looks hot as! Sick of all the monopolies around at present—projects like this and small indie firms give me hope :mechanical_arm:

2 Likes

It’s not working for me :confused:

Yeah I think this is something we need to post threads about after hearing @bryphe’s goals - perhaps there is a reason it’s not supported…

Which cool tricks are they FTT?

Hear hear! :nerd_face:

1 Like

The ones that come to mind immediately and I use constantly are:

  1. Opt/Alt + up or down - this will move a line (or selection) of of code up or down
  2. Opt/Alt + shift + up or down this will copy a line (or selection) of of code up or down
  3. Cmd + D will select the current word where the cursor is resting. After selecting a word tapping this key combination will match this text and select an additional instance of the of the word for each tap.

2020-11-14 11.46.41

There are other nice ways to navigate around with Vscode of course. But they are easily replicated and often times superior in vim.

Though I will admit one benefit of vim navigation over Vscode is using alpha keys as opposed to arrow keys. This is largely mitigated by the use of a programmable keyboard like the Moonlander.

2 Likes

Ah cool - I’m pretty sure that Vim can do similar but the problem I have with Vim is I learn stuff then forget it!!! :man_facepalming:

When I get the Moonlander I am going to get back into Vim properly. Hopefully Onivim will have had a few more updates by then too :smiley:

2 Likes

Hi @AstonJ. How did you buy Oni2? Is there a link to pre-order? Thanks

1 Like

There was @neutronstein, but it seems like it’s not there atm :thinking:

Will it be back soon @bryphe?

Thanks for the warm welcome @AstonJ , and for getting a code-editor section set up :grinning: Great to be here!

1 Like

Thanks for the great feedback!

For instance currently you can’t use macOS CMD C/V, you can in MacVim but I am on the fence whether it should be included - on the one hand it will make it easier for people to get going with Onivim, but on the other people may not fully adopt the Vim way. I

IMO, I think this should be fixed - one nice thing is that Cmd+... shortcuts tend not to conflict with built-in commands, so in places where we’re missing functionality (like Cmd+c/Cmd+v), I’d like to implement it to minimize the barrier to entry. The keyboard commands that conflict are tougher (like ‘Control+O’ on Windows/ Linux) - but the Cmd+ key on Mac def makes sense for us to handle.

I don’t want my code editor connecting to the internet in order to function - sometimes I am editing sensitive files and don’t want any part of them accidentally sent to any third party via a crash report or something like that

That’s good feedback! I turn off the telemetry in the vscode extension host, and Onivim doesn’t send any data - only traffic is an initial check-for-updates that sends as little info as we can.

2 Likes

Thanks for the feedback @foxtrottwist ! Really appreciate it.

Logged a couple issues so I wouldn’t forget - these would be nice additions for Onivim 2 (I don’t believe they’d conflict with any Vim commands, luckily!):

2 Likes

I’ve been meaning to add it for a while, I’m pleased that it may be of use to you and Onivim :blush:

I can’t wait to see more threads about Onivim tbh, I have a really good feeling about it - it ‘feels’ nice/slick, and so soon in its development too! I am sure it’s going to be even more awesome when it hits 1.0!

Ah cool!

I wonder if you could build in an off switch as well? This might be handy for those who want to force themselves to learn Vim?

How do you do that in Onivim Bryan?

I also wonder whether you could include additional controls essentially being able to prevent or authorise network access. So for instance whenever anything in Onivim wants to connect to the internet Onivim displays a notice asking for authorisation first (basically like Little Snitch but just for Onivim).

I think people are taking security more and more seriously now and I think this could be a killer feature for Onivim. One of the things I love about editors like TextMate and MacVim is that I can block all internet access for them via little snitch and they work perfectly. It would be great if Onivim does something similar to Little Snitch out of the box.

It’s good to know the pre-order lifetime license and discount is still there :smiley: Personally I think most developers will be interested in being able to purchase a lifetime license rather than paying a monthly fee for access. The market is huge and growing each year so I wouldn’t worry about revenue - there will always be new developers and so always new people interested in buying a license (these are just my personal thoughts and of course you have to do what you feel is right for you and your product :blush:)

Great!

Would you like us to create a separate suggestions thread for Onivim, and another for issues/bugs? For things like tips and how to’s I would post these in dedicated threads as they will be more likely to be discoverable by anyone who might be searching for something similar in future.

One suggestion that comes to mind right now is that on resizing Onivim stretches whatever is in the window and then on release fits the new size, however when you are resizing a code editor window you are usually doing so to better fit what you’re editing at the time. I wonder if you could add this to your list (if it’s not already on it)?

Hi @bryphe. Just purchased it :smiley: . Good to know that there is still a lifetime purchase. I prefer that to monthly payment :grin:
Again thank you and your team for this amazing work :wink:. I will, eventually, try to contribute if I can.

3 Likes

Erlang is not listed for supported languages. How has that experience been without an Erlang plugin/extension?

1 Like

I just installed the VSCode plugin for Erlang :nerd_face:

Actually since I have a new macOS install I need to do that again so here are some screen grabs:

I am getting this notice which I’m fairly sure I didn’t get on Catalina tho, about it not being able to start the Erlang LS client - any ideas why @bryphe?

Not sure if this is a bug in the latest build or because I’m now on Big Sur. // @foxtrottwist and @neutronstein are you getting this too?

1 Like

Hi @AstonJ. I didn’t get that error when I opened an Elixir project. I am currently working on a Go project instead so I didn’t have that error.
You can try to replace elixir-lsp plugin with VS Code one and check if it is the same issue.

@AstonJ I am seeing that when I view an Erlang file. I’m also on Big Sur and I’m running today’s build of Onivim.

Hi @foxtrottwist @AstonJ!

Looking at a couple of these issues - that super-bright-notifications is definitely a bug (theme color issue :grimacing:) - that’s fixed in the latest nightly.

And then the Erlang extension - first issue is that we’re missing the output logs - I checked them in the terminal and saw this:

Method: $append args: [null,"escript: Failed to open file: /home/bryphe/.config/oni2/extensions/erlang-ls.erlang-ls-0.0.15/erlang_ls/_build/debug/bin/erlang_ls\n"]

Inspecting further - it turns out the extensions erlang_ls/_build folder is empty - it seems to be that the open-vsx extension doesn’t have the built erlang language server included in the package.

I logged an issue on open-vsx: https://github.com/open-vsx/publish-extensions/issues/228

As a workaround… the extension can be manually installed / built - here’s the steps I used (assuming node/npm/erl/rebar3 are installed):

  • cd ~/.config/oni2/extensions
  • rm -rf erlang-ls*
  • git clone https://github.com/erlang-ls/vscode erlang-ls
  • cd erlang-ls
  • npm install
  • npm run compile

Bit of a pain for sure… but with that, the language server is working:

We hit this a few times with the open-vsx packages missing dependencies, unfortunately (ie - haskell: https://github.com/open-vsx/publish-extensions/pull/122 , vetur: https://github.com/open-vsx/publish-extensions/pull/146)

They’ve done an awesome job seeding the repository with a bunch of packages, but it’s hard to capture all the build steps / environments native tools need - best case is that more extensions will publish directly to open-vsx :crossed_fingers: Would be great if the owner of elixir-ls/vscode published to open-vsx along with the vscode marketplace!

2 Likes

Also - looks like there’s already a fix being worked on for the erlang-ls plugin: https://github.com/open-vsx/publish-extensions/pull/217

2 Likes

Awesome - I wondered why it had changed! Glad it’s back to what it was, thanks!

Thanks for that too Bryan!..

Awesome! I’ll try and hang on for that fix then :smiley:

I believe @axelson is already pushing ElixirLS to open-vsx :nerd_face:

2 Likes

A post was split to a new topic: Revery - an Electron alternative