7 ms·
NeoVIM is great, and obviously it has been inspiration. I think it remains to be seen whether NeoVIM can deliver an experience that feels like a modern editor.
by raphlinus 11y ago
NeoVIM is great, and obviously it has been inspiration. I think it remains to be seen whether NeoVIM can deliver an experience that feels like a modern editor. My experience is that projects which attempt to layer a GUI on top of an existing, mature console UI end up leaking bits of the underlying UI. I'm thinking mostly of the various TeX shells here.
A large part of my motivation for starting this project is to explore how suitable Rust is for this kind of work. End users shouldn't have to care, they should judge it strictly by the quality of what it delivers. But I'm hoping this project will be interesting to Rust programmers for a number of reasons.
- coldtea 11y ago>NeoVIM is great, and obviously it has been inspiration. I think it remains to be seen whether NeoVIM can deliver an experience that feels like a modern editor. Well, when it comes to this new editor, doesn't it remain _even more_ to be seen? At least NeoVIM has all the basics covered already.
- cyphar 11y agoI don't understand why people need a GUI to edit text. And while I donate to the NeoVIM project, I don't really like that they are increasing incompatibility with Vim in order to create a GUI layer. It also bothers me that they didn't just use the GPLv2 (because I find the dual Vim-Apache licensing troubling).
- Myrmornis 11y agoIs your terminal program not a GUI? Or do you not run a graphical window environment at all?
- mikekchar 11y agoNot the OP, but a lot of people (myself included) have minimal mouse interaction even when they use X-windows. For example, I use a tiling window manager and only interact with it through the keyboard. I use urxvt as my terminal emulator and while I suspect it has some kind of mouse support I have no idea what it is because I have never used it. I have my web browser set up so that as much as possible everything is controllable through the keyboard. I move all my windows around, resize, hide, focus with the keyboard. I don't have any menu bars at all. All of the apps I use I have hidden the menu bars if I can because I don't use them. So even with GUI apps, I tend not to use the GUI. I don't think I'm alone. Virtually everything I run is either a terminal app to begin with or can run from the terminal. I have tmux set up to work almost exactly like my X window manager, so if I don't run X I barely notice. I'm just as productive without X window as I am with it except for a very few things: browser, gimp, a few games... Honestly I can't think of very much. It's great that some people like GUIs. I used to use them a lot, but have since found that I'm happier without them. The keyboard is not really a discoverable UI device most of the time, but it can be ridiculously efficient once you learn how to use it. I also have very poor eyesight, so that probably predisposes me to using interfaces where I don't need to use my vision.
- Natanael_L 11y agoTUI (Textual user interface)
- cyphar 11y agoI use the mouse as little as physically possible, so I use a tiling window manager with nice keybindings. I usually only have a terminal and Firefox (vimperator) open, both of which don't require mouse usage. So, I don't get the idea of having a graphical text editor when you can just use one in the terminal (and you get the benefits of portability and working on something over SSH for free -- and no, X11 forwarding isn't a substitute). The mouse is never as powerful as vim commands. ;)
- melloclello 11y agoI love GUIs. Oh dear god, sometimes I just want to click and highlight and drag things around.
- cyphar 11y agoIf that's your thing, terminal emulators have had support for that for years. Vim and NeoVim both have support for it too.
- VMG 11y agoJust tried drag-and-drop in my gnome-terminal. Didn't work.
- cyphar 11y agoWhat part of "click and highlight and drag things around" includes "drag and drop"? I'm not going to comment on drag-and-drop as being a useful feature (I don't consider it one), but it wasn't mentioned in GP.
- VMG 11y agoI guess it's possible that GP meant "drag things around without any effect".
- melloclello 10y agoDrag and drop's pretty neat I reckon. Pretty nice when things tie into the native APIs in OS X so you can even drag snippets of text between applications. Pretty sure people would have shat their pants when they first saw that working in NextStep - it's nice not to break it.
- joshsyn 11y agoCause why not? I would love inline images to be displayed instead of opening links and all sorts of interactive contents.
- cyphar 11y agoThat's not really "text editing" anymore. Also, if the "links" are remote objects (like URLs), that sounds like a whole heap of privacy and security issues.
- rtpg 11y agoSmooth scrolling alone makes me often opt for not-Emacs (running plain Emacs in OS X). I've tried several solutions to solve this from googling, never found anything that was effective. As a mouse user as well, sometimes selecting text with my mouse/positioning with mouse works fast, and I've always found text editors to not really be too great at letting me click accurately between characters. Also, if you get into more IDE-y features, not having your "popup"s be overlayed colored text is usually a win for aesthetics. And hey, if I'm staring at something 8 hours a day, having it be pretty is nice right?
- sjm 11y agoThe emacs-mac on homebrew (https://github.com/railwaycat/homebrew-emacsmacport https://github.com/railwaycat/homebrew-emacsmacport) by Yamamoto Mitsuharu has smooth scrolling and a bunch of other OS X niceties.
- kristiandupont 11y agoI like GUI's not because I use the mouse (I don't), but because the terminal is sub-optimal for presenting information. Yes, it's very portable but I don't need that, I only use my editor locally and on OS X. I despise having to install custom fonts to hack special UI elements like Airline. I like the mini-view in Sublime. I like my UI to be able to show me little hints without necessary taking up an entire character. I keep wanting to try out Spacemacs but I always revert to Vim but it's pretty far from perfect imo.
- rubber_duck 11y ago>I don't understand why people need a GUI to edit text Because I rarely want to just "edit text" - >50% of the time I want to have a visual representation of the file tree with colored/graphical icons, drag & drop, etc. A significant part of programming is organizing and exploring trough things, especially in huge code bases - GUI hands down beats any text based solution I've seen. This is also why I still won't use VS code as my go-to editor - no file icons - when I have a file tree with hundreds of nodes icons are the best way to find the stuff I'm looking for.
- thegenius2000 10y agoWhy use a file tree when you have a terminal? It's been shown to be the most effective (and before you shoot, by "effective" I mean fast) way to manage files, and that way you can do advanced searching through whatever code base you're using. Plus you can access all the other awesome tools (like Git) for managing your project.
- ebiester 10y ago1. I forget exact file names in large codebases. I'm using the visual representation to jog my memory. 2. It's easier for me to remember where an infrequently-used command is in a menu tree than it is to remember the command. It is faster for me to scan through a menu than it is for me to go to stack overflow. 3. This is clunky: https://groups.google.com/forum/#!topic/vim_mac/YUrhWQvlTRA https://groups.google.com/forum/#!topic/vim_mac/YUrhWQvlTRA and I don't know that it's any better on any platform. 4. My editor should be able to handle an interface to git as well. I have a plugin for it and MacVim personally.
- viraptor 11y ago> I don't understand why people need a GUI to edit text. They don't need it, but GUI can provide nice things consoles can't. For example real autocompletion drop-downs. Or see-through file outline/minimap like the one in sublime text. (https://2.bp.blogspot.com/-Co2awzuaA_s/TqQCZ1wwFLI/AAAAAAAAOSs/8DllhPDQpV0/s1600/sublime-main.png https://2.bp.blogspot.com/-Co2awzuaA_s/TqQCZ1wwFLI/AAAAAAAAO...) Or better markers for things like region folds, column positions, matching braces, highlights, etc.
- cyphar 11y ago> For example real autocompletion drop-downs. There's no reason a TUI can't give you "real autocompletion". Vim does pretty well in most cases. > Or see-through file outline/minimap like the one in sublime text. I personally don't see the benefit of that, but you're right that you can't see a zoomed-out version of your code in a TUI. > Or better markers for things like region folds, column positions, matching braces, highlights, All of those things are supported by Vim and can be done in a TUI. As for "syntax highlighters" that decide to italicise code, I don't really consider that a feature.
- viraptor 11y agoBy real autocompletion dropdowns, I mean dropdowns which are different from editing buffer. That means whatever is the colour of the code/background underneath, they won't blend in in confusing ways. VIM does coloured completion drop-downs, but they're still just buffer-like text. Unless you mess with your theme manually, there's a chance it will blend in and confuse you one day, because there's no real frame around it. As for markers, I know they're supported by Vim. That's why I'm saying better. For example Vim can't do single-pixel column marker (or specifically, create a line between columns). I can do hacks to highlight one column only (100th for example), but then highlight/copy on the terminal is broken, because in reality I just have spaces displayed after my code. Similar thing with region folds - they don't need to take the whole text row and the description of the fold can go off-buffer on a side. Basically you can do everything with text. You can even print out "this is a placeholder for an image of a sad green frog looking at a computer screen". But actually displaying that picture is better ;)
- gkya 11y agoThey don't. But people usually do more than mere text editing. With emacs I read PDFs and look at images. Also most terms don't properly do utf8.
- threatofrain 10y agoThere are a lot of benefits that people don't need, such as the benefits which are unique to the terminal and somehow not feasible in a GUI. Most people have a work machine that's powerful and can have an editor of their choice installed. Why be constrained to the terminal? Vim is more important as a way of text manipulation than as a specific program, and projects like NeoVim and Xi make Vim-the-way more portable and accessible. I would welcome editors that have a high-quality Vim experience and also have nice GUI features like mouse-over popups of function signatures, minimaps, or whatever a GUI unconstrained by the terminal can do -- rather than arguing for workarounds or why people don't need these features.
- neerdowell 10y ago> It also bothers me that they didn't just use the GPLv2 Maybe they want people to be able to easily distribute binaries of the software via BitTorrent. Apache allows this, the Vim License allows this, GPLv2 does not[0]. [0] https://www.gnu.org/licenses/gpl-faq.html#BitTorrent https://www.gnu.org/licenses/gpl-faq.html#BitTorrent
- cyphar 10y agoWell, it could also be used under the terms of the GPLv3 (because the Vim license allows you to license it under the GPLv2 or later). Most people don't like the GPLv3, which is why I didn't mention it (even though it is a superior license in many ways).
- cyphar 10y agoCorrection, GPLv2 or later. GPLv3 is better than GPLv2 in several respects and the Vim license lets you license under any later version of the GPL as well. :D