Live data from Hacker News

Nvui: A NeoVim GUI written in C++ and Qt

github.com

61–70 of 145 posts

Re: Nvui: A NeoVim GUI written in C++ and Qt

#61
post #8

The window animations are really nice: https://github.com/rohit-px2/nvui/blob/main/assets/display/v... I wonder if it's possible to reduce duration slightly. Personally I find animations useful and a great improvement to UX but I prefer as short durations as possible. I also set 0.5x animation duration / scale on Android and it makes it feel much snappier, but don't like outright disabling them.

Eww, a 20MB GIF with harsh dithering artefacts. And then another 22MB in two more GIFs. All in the repository. (a) GIF is not the right format here, use a video format because it’ll produce a visually superior result (proper colour, no dithering needed—not that it actually is even with animated GIFs) and much more usable result (not autoplaying if the user agent’s configuration says not to, allowing scrubbing, showin…

Forgive me if I'm missing something here, but can't you just add media files to .gitignore?

Re: Nvui: A NeoVim GUI written in C++ and Qt

#62

Earlier quoted context omitted.

Eww, a 20MB GIF with harsh dithering artefacts. And then another 22MB in two more GIFs. All in the repository. (a) GIF is not the right format here, use a video format because it’ll produce a visually superior result (proper colour, no dithering needed—not that it actually is even with animated GIFs) and much more usable result (not autoplaying if the user agent’s configuration says not to, allowing scrubbing, showin…

Forgive me if I'm missing something here, but can't you just add media files to .gitignore?

The author deliberately added the files to the repository. That’s (part of) the problem. .gitignore is about saying “I don’t want to add matching files to the repository, so stop telling me they’re not in the repository”.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#63

Earlier quoted context omitted.

No idea why he's getting downvoted but megabytes of GIFs absolutely don't belong in a code repo. Author could have just put a screenshot in there put the video inside the github .wiki.git repo. EDIT: didn't think I have to clarify this, but when I say put a screenshot, I mean "A"(1) screenshot, if necessary.

Even the screenshots don’t belong in the code repository, there’s another 2MB in this instance. I think you can still get the README to embed images from elsewhere? And if not, just link to it, “screenshots over here”. The compromises being made in bloating repositories because GitHub presents the README as project info rather than at least allowing you to separate it are painful.

What happens when the URLs referenced by the README stop existing (domain expiry)? What about when the project is forked? What happens when I want to look at old documentation locally?

Why should the entire project not be subject to version control? It's a well established industry best practice.

Reproducible documentation is just as important as reproducible builds.

There's likely a strong argument to be made for Git sub-modules though i.e. putting the documentation in a sub-module.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#64
post #54

It seems neat, though I would never seriously use an editor that I couldn't run in a terminal. Too much of my work happens remotely. Additionally, in my mind a terminal serves a similar role as plain HTML web pages - it constrains what can be done and I am extremely used to it, which makes it very easy and quick to use. On the other hand in a GUI editor (or a JS-heavy web page) it feels that it has more possibilities…

Isn't this just a UI layer for NeoVim, which you can easily switch to text when going remote?

It is, OP is overreacting. This is just a front end. I'm pretty sure it just uses the neovim binary on your system in headless mode.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#66
post #47
post #24

Earlier quoted context omitted.

> Splits I can drag around to move and resize with a mouse You can already use the mouse to resize splits in neovim, :set mouse+=a > "Native" window tabs instead of terminal-style tabs Which features would "native" tabs provide that aren't already available? > A gvim-style menu bar with some operations for which I can't be bothered to remember the key combination. Which operations would you put under the menu?

> Which features would "native" tabs provide that aren't already available? In ideal world: reordering, tearing off and merging. > Which operations would you put under the menu? Ostensibly, all of them?

> In ideal world: reordering, tearing off and merging.

That's an interesting idea. It sounds like it should be technically possible in the terminal too.

Same would go with drag copying text.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#67

Earlier quoted context omitted.

Even the screenshots don’t belong in the code repository, there’s another 2MB in this instance. I think you can still get the README to embed images from elsewhere? And if not, just link to it, “screenshots over here”. The compromises being made in bloating repositories because GitHub presents the README as project info rather than at least allowing you to separate it are painful.

What happens when the URLs referenced by the README stop existing (domain expiry)? What about when the project is forked? What happens when I want to look at old documentation locally? Why should the entire project not be subject to version control? It's a well established industry best practice. Reproducible documentation is just as important as reproducible builds. There's likely a strong argument to be made for Gi…

This particular content isn’t documentation so much as marketing material—part of the shift GitHub has foist upon us in what a README is. But even were it documentation, that needn’t belong in the same place. This is the wisdom of rjzzleep’s suggestion of the wiki repository, an auxiliary Git repository that GitHub already creates for you.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#68

Earlier quoted context omitted.

>has any Vim user actually seen real world benefit after switching to NeoVim I've tried NeoVim for a couple of month this year. It's a tad snappier than vim, but there are a number of "quirks" (behaves ok, but doesn't behave exactly like vim) that made me walk away from it: at this point, vim is so hard-wired in my brain that any tiny difference in behavior is painful.

What for example? I genuinely haven't noticed any difference out of the box. I usually also don't like deviations, hence why I can't stand Emacs' Evil mode.

There was quite a few, but off the top of my head:

    1. searching for stuff with / jumps prematurely to destination, drives me nuts.

    2. I have most "smart" features (auto-indent type stuff) disabled for C++ mode in my .vimrc, which works fine in vim but is completely ignored by neovim. It requires futzing around with post/pre loading of plugins, which - 1.who has the time to do these things 2. makes for incompatible init files.


    3. does not read .vimrc by default and requires linking files to have a united init file
I'm sure with enough work, I can get it to behave the way my poor old stiff brain expects, but - again - who has time for stuff like this.

I might revisit neovim the day I have enough time on my hand to figure out how to install the whole tresitter shebang.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#69
post #56

Could this support a code map? That would be a killer feature for any vim/neovim UI.

You can already do that inside regular (neo)vim, using https://github.com/wfxr/code-minimap

I’ve seen it, it’s really innovative but I was hoping for a more traditional one that has actual characters.

Re: Nvui: A NeoVim GUI written in C++ and Qt

#70
post #6

This looks very interesting. Are there any advantages to using it as opposed to neovim in a terminal? I guess my question can be posed to any gui text editor. Still, nice project!

In general: There are a few theoretical advantages when it comes to doing advanced syntax "highlighting". Not that I've seen any GUI IDE/editor ever do syntax highlighting that couldn't be done in a terminal. There are a few examples in the GUI based disassemblers world (like IDA pro) which use graphical arrows to show where branch/jump instructions goto. The usefulness of those is enough to convince me that perhaps…

> Not that I've seen any GUI IDE/editor ever do syntax highlighting that couldn't be done in a terminal.

A very basic feature is that IDEs underlines in yellow for warnings and in red for errors, as well as show fix-it popups when hovering the mouse around the error area I don't believe a terminal can do that while keeping syntax highlighting no ?

Post reply on HN