24 ms·
Ox is a fast text editor, written in Rust, that runs in your terminal
- tomcat27 6y agoNew fad: build existing tools in Rust
- BoysenberryPi 6y agoBuilding existing tools in a language you are learning has been a thing forever. I would argue it's one of the best ways to learn a language in fact. The README also compares it to existing tools and explains why it's different from them.
- busterarm 6y agoThat trend is usually limited to a TodoMVC level of effort. It's not usually about reinventing wheels (or worse). Except in the Rust case, where it almost always is.
- jkelleyrtp 6y agoThat’s a lot of negativity just for someone experimenting with a unique programming language to see what it’s good and bad at. People see a new tool and try to figure out what it excels at and what it falls short at. Rust tends to be an “everything” language and people try to uncover new patterns and techniques. “How much faster/leaner/more user friendly can I make X when I don’t have to care about safety, performance, or package management?”
- busterarm 6y agoThey shipped their hobby project into Homebrew's core tap. 'brew install ox' belongs to them. They've put it out in the world for others to use and have also stated their case for why people should. This is far above the level of scrutiny of just someone's experiments. I have a hobby project that is a feature-complete scratch rewrite of Ruby's ActiveRecord, but I'd be kind of an arsehole if I named that something and uploaded it to rubygems.
- gostsamo 6y agoI think that the author had the audacity to imply that his project is grater or equal to many people's favorite tools. Add this to the rewrite it in rust meme and people feel entitled to pummel the author to the ground. I call it the righteousness fallacy where the fact that the other side is wrong give oneself permission to be as ugly as it feels good because if the other is wrong, then one can't be anything but right.
- busterarm 6y agoI really only had issue with the fact that they decided their hobby project was ready to be shipped using mainstream package managers. Most of the pummeling is me just defending this viewpoint after getting pummeled for my negativity. Nothing should be immune from criticism, and something really can't be a "hobby project" and distributed with mainstream package management tools at the same time. You have to pick one. Names are finite. If this was a "clone my github" only distribution, I'd have kept my mouth completely shut.
- gostsamo 6y agoI actually didn't have anybody in mind when commenting but the general direction of the discussion. As far as I get your main issue is the name squatting which is okay. Good names are hard to get and this is something that all packet managers should take into account. However, please, don't be too harsh on someone who wants a nice name for their project.
- deleted 6y ago[deleted]
- tomcat27 6y agoI agree with you. It's so much engaging way to explore a language and try implementing those features we really wanted. Just saying building in Rust is the new fad. I only hope in these projects people take take a little more risk in trying out ideas.
- thelastbender12 6y agoI'd love for it to be true. Tools written in a programming language with modern tooling make customizing it a lot more accessible.
- bmgxyz 6y agoI mistook the screenshots in the README for screenshots of [Doom Emacs][0]. The default theme looks similar. [0]: https://github.com/hlissner/doom-emacs https://github.com/hlissner/doom-emacs
- kccqzy 6y ago> Ox took the idea for the customization and extensibility of Emacs and made a configuration system where you can change the colours and appearance of the editor. Thanks but no thanks. Almost all editors let you customize the color and appearance. Few allow you to customize to such a deep extent as Emacs.
- ryanobjc 6y agoI thought something similar... they referenced emacs, and they took away... customized coloring? And appearance? Really?
- sooheon 6y agoThat and not taking away modality from vim makes this project seem like a parody.
- busterarm 6y agoThey also ignored the modes and composability of Vi. Chalk up another mark on the board of unserious things the Rust community does with its time. Edit: I'm sure this will be an unpopular, downvoted comment. I just want to say that I think that Rust is a fantastic language with an enthusiastic community. It's just a community that repeatedly demonstrates that it doesn't know what "good" looks like and has the world's worst case of NIH. Something about the community attracts the like minded.
- artursapek 6y agoDamn, what a shitty, negative comment.
- busterarm 6y agoWell, if these weren't the results that the community produces over and over and over and over again. Look up any of the long list of "X in Rust" Show HN posts that there have been. It's kind of a meme at this point.[0,1,2] It's going to start effecting interviews. I'm saying this as a hiring manager who has to evaluate what projects candidates spend their time on and what they are going to be like to work with. People who oversell their work or don't know how to evaluate value go into the hard pass pile. And no, I'm not shitting on them for having a hobby project. I'm shitting on them for clearly demonstrating that they don't understand what the very mainstream software they're actively trying to compete with does. [0]:https://transitiontech.ca/random/RIIR https://transitiontech.ca/random/RIIR [1]:http://adventures.michaelfbryan.com/posts/how-not-to-riir/ http://adventures.michaelfbryan.com/posts/how-not-to-riir/ [2]:https://news.ycombinator.com/item?id=21334510 https://news.ycombinator.com/item?id=21334510 (which is just the comments here from [1], but also interesting.
- johnghanks 6y agowhy
- ARandomerDude 6y agoThe readme is confusing: it says it wants to take the best of all text editors, calling out Vim first (note that the editors are not listed alphabetically), and specifically mentioning modal editing. But the rest of the readme looks like vanilla `PageUp` and `Ctrl+C` instead of `GG` and `yy` to me. So...is it modal or not?
- msherry 6y ago"Ox is easier to use than Vim because it doesn’t have modes where the keyboard is repurposed, however it takes the idea of being a keyboard-only editor and being able to act just like an IDE after some configuration."
- Kaze404 6y ago> Ox is easier to use than Vim because it doesn’t have modes where the keyboard is repurposed, however it takes the idea of being a keyboard-only editor and being able to act just like an IDE after some configuration.
- caymanjim 6y agoModal refers to Vim's insert and normal [and visual, etc] modes, where [almost] anything typed in insert mode is entered into the buffer, and you can [sorta] only navigate and manipulate the text from normal mode. The command examples you quote don't really have any bearing on modality.
- ARandomerDude 6y ago> The command examples you quote don't really have any bearing on modality. They do, actually. What happens if you type `yy` in a non-modal editor? You get "yy" in your text. It only works in Vim because you're in normal mode.
- yuskii 6y agoTerminal editing in 2020!? So c o n fused I(c) am
- FpUser 6y agoPageUp/PageDown key binding is strange. I'd go to a natural one instead (the keys are named for a reason) and bind top / bottom of the document to Ctrl + PageUp / Ctrl + PageDown.
- eitland 6y ago> bind top / bottom of the document to Ctrl + PageUp / Ctrl + PageDown. I think most editors on mainstream Linux distros and also Windows use Ctrl + Home/End for to go to the top/bottom of a document.
- mrnothing_123 6y agowhat is the advantage over micro?
- obilgic 6y agoI feel like in 2020, readme with screenshots don't cut it for me anymore . I need a youtube video of someone going through in couple minutes to get me interested.
- KKPMW 6y agoI feel like you would miss on a lot of good things with an attitude like that. And will get persuaded by projects that spend time on PR.
- qzw 6y agoEditor looks pretty cool, but I really admire how optimized the headline is for reaching the top of the front page. I mean, it's practically an HN bingo card in a single line: Text editor! Rust! Terminal! Fast! All that's missing is "minimalist" and "respects your privacy".
- fjslskyddlk 6y ago"Popularity sucks when I don't approve"
- tumblewit 6y agoGood catch!
- platinumrad 6y agoI feel like no project should be allowed to advertise itself as "fast" unless it presents at least one (1) measurement demonstrating it.
- mhh__ 6y agoI'm slowly putting together a library and series of blog posts for really showing this, so stay tuned (one measurement often isn't enough). I've always wanted to be able to try and verify performance bounds at the CI stage, and I'm hesitantly optimistic it can be done cleanly (although amortized analysis is extremely important, you can actually play "guess the C++ std container from the graph" if you plot the data right)
- hsbauauvhabzb 6y agoPython compared to raw assembly development is slow as hell in computationally heavy scenarios. Development speed of applications in Python compared to raw assembly is nearly infinitely faster, both because it’s easier to write and because the talent pool for ASM is near zero in most cities. But the same can be said for basically all metrics people use to sell products.
- vincnetas 6y agoRunning subjective benchmark now. Generated 1G text file. Vim and nano after some delay are showing things on screen, ox is still thinking. 5 minutes and counting... base64 /dev/urandom | head -c 1000000000 > file.txt
- jonnycomputer 6y agoAs far as I can tell, this is basically a toy project to show off the programmer's skills and practice doing something in Rust. It's also probably something that was fun to do and the programmer would probably like to show it off. Treating it as some kind of alternative to Emacs or Vim is probably missing the point.
- kurjam 6y agoAgreed. This should probably be under ShowHN. I was expecting to see an semi-finished product here. And even the first sentence of the "About The Project" section states: > Ox is a text editor with IDE-like features. And then we had the actual feature list, current version seems to be 0.2.5. > Auto indentation (0.3.0) > Auto brackets (0.3.1) > Auto complete (0.3.2) Which are quite essential for calling something "IDE like". Other than that. It looks nice. I've seen people calling it an Nano replacement in the comments here, which seems to be missing the big point of nano - it's easily available in a lot of *nix systems by default.
- makapuf 6y agoThe editor feature list sound definitely promising and certainely has appeal. I've tried micro, psi but they're not in a state I can use them daily. What i'd love is basically sublime text in a terminal. I tried ox, but it's currently a bit buggy and non intuitive (no help that I could find, no backspace, cursor on the wrong line..) Nothing wrong with this, it's a work in progress and early in its development. It shows great promise and I'll definitely check back in the future !
- slmjkdbtl 6y agoStrongly agreed. Every time anyone makes anything people will always say "why are you making this, since there're better options like x, y and z".
- oshanz 6y agoThese days I'm working on log files sized around 300mb. Vim is slow and some times stop responding. Geany edior works most of the time. Do you guys have any recommendations?
- Scarbutt 6y agosed
- busterarm 6y agoThis will likely be the most correct and most underrated answer. I wish to give you enough money for a coffee and a fancy cookie.
- dflock 6y agoIf you're not editing them, then lnav is what you need: http://lnav.org/ http://lnav.org/
- tstack 6y agoFor reference, a 435MB web access log with about 3 million lines takes: * lnav about 4 seconds to index[1] and display * vim about a second to display * emacs about 3 seconds to display This is on a late 2013 27-inch iMac with a 3.5Ghz i7 and the file cached. [1] - Indexing in lnav involves parsing all log lines to extract their timestamp and log level (status codes in this case)
- Gibbon1 6y agoYears ago a friend had a problem like that, I suggested janky old programmers notepad 2. Which worked for him.
- nightowl_games 6y agoI haven't used this but watched a talk from the author about how it can load huge files really quickly and can even edit while saving. Sounds pretty god tier in terms of performance: https://github.com/arximboldi/ewig https://github.com/arximboldi/ewig Check out the talks from Juan Pedro Bolivar Puente. They are truly next level imo.
- rachelbythebay 6y ago> Nano is an editor that is very simple to grasp due to its intuitive key bindings such as “Ctrl+S” to save and “Ctrl+?” for the help menu etc. I don't think that's describing nano or pico, at least, no version I've ever used had those keys doing useful stuff. Maybe this is supposed to reference some other editor?
- httpsterio 6y agoYeah uh what, I don't know any other cli editor than Nano and I'm pretty sure CTRL+O is write and CTRL+W is write and exit.
- CraftThatBlock 6y agoCtrl+X is write and exit while Ctrl+W is "where" IIRC
- saagarjha 6y ago⌃X is just close.
- evil-olive 6y agoRecent nano has changed to allow Ctrl-S to save in addition to the previous default (Ctrl-O) https://www.nano-editor.org/dist/latest/cheatsheet.html https://www.nano-editor.org/dist/latest/cheatsheet.html
- bigbizisverywyz 6y agoOh thank goodness! I'm constantly reflexively reaching for ctrl+s and then correcting myself just at the last second.
- slhdjdkskahsh 6y agoIt's only intuitive to people who grew up with PC-style keybindings as well—the editor does not appear to bind super-s despite this being the other obvious keybinding.
- Scarbutt 6y agoOne of the selling points for Vim and Emacs is that they are pretty impressive at raw text editing, having "simple, intuitive" keybindings like nano seems to go against this goal?
- asciimov 6y agoEh... what turns me off is that list of features and other editors that just names off other editors as inspiration. Don't even mention other editors unless you are fully copying their features. Imagine a car being advertised in a similar style called Imacar. Ferrari, know for its Italian design and sleek lines, Imacar takes those famous design cues by including wheels and tires. Toyota, known for it's rugged truck's like the Hilux. Inspired by that ruggedness and repairability the Imacar includes easy change windshield wipers. Tesla, know for their famous electric motors and batteries, inspired us to add a battery to Imacar's petrofuled engine.
- acd10j 6y agoI think comparison list with other editors gives good introduction about what to expect from ox, For any terminal text editor comparison with vim, emacs is inevitable. It is good to know authors opinions.
- filsdyhdkddk 6y agoIf you're expecting vim or emacs, you're in for a bad time. It's entirely unclear what niche this editor is aiming for. If it's a replacement for the editors it claims as inspiration it's not going to succeed.
- themodelplumber 6y agoFor sure. Also the author is probably going to get bombarded by people referencing their favorite editors. This may help them get out in front of that scene...
- apocolyps6 6y ago> good introduction about what to expect from ox Yes, after reading how the author described vim and emacs, I knew this project was not for me.
- jek0 6y ago"vim only provides basic text editing functionality by default" It looks like someone has never read the vim manual.
- thdxr 6y agoWeird amount of negativity in this thread, of course it's not going to compare to editors with decades of development. Pretty impressive what you've put together! I'm sure it's really cool being able an editor to work exactly the way you want it to work.
- themodelplumber 6y agoAgreed, I thought it was amusing that there's a comment saying, "wow this headline is perfect for HN" and yet so much negative talk in the other comments. I guess this happens as you approach a really specialized set of features and aesthetic--it activates some kind of nitpick psychology, where people who are proud of their specialization are able to demonstrate their unique ability to perceive just what makes a thing in this domain really special. Well, they spend a lot of time working with these interfaces and thinking about it, so it makes some sense--the thought-energy needs to be expressed. Anyway IDK if one can easily demonstrate that kind of deep specialist insight and also pay attention to how it makes them sound in relation to the author and the author's gift to the world. It's easy to get caught up in what your own perception is offering the world, and kind of steal the stage with what is likely to be perceived as a weirdly negative energy.
- creata 6y ago> Agreed, I thought it was amusing that there's a comment saying, "wow this headline is perfect for HN" and yet so much negative talk in the other comments. Well, the headline is perfect for grabbing HN's attention, and the comparison section is perfect for making HN angry, so that's only to be expected.
- asdff 6y agoEditors are practically a religion. No surprise OP is called a heretic.
- the5avage 6y agoBecause the readme says this: "What features does Ox have and why should I use it?". Instead it should say: "This is a toy project of me. Learning about text editors. It got pretty far and is really usable. Give it a try." Also there are zillion articles about "rewrite software x in rust because it's written in evil unsafe C". The author doesn't say this but i instantly think about it if someone tries to write a better vim.
- jacob019 6y agoWhich languages are supported for syntax highlighting?
- asdfasgasdgasdg 6y agoThis is a pretty looking editor! PageUp and PageDown going to the start and the end of the document is questionable! Typically we use ctrl+home and ctrl+end for that. PageUp and PageDown should go a page up or down respectively.
- samatman 6y agoMy suggestion: scrap the entire section which compares Ox to other editors. Replace it with something which pitches Ox to people who use text editors and might want to use yours. I came away from the compare-and-contrast part confused and nonplussed. It's also perfectly alright to say "I wanted to write a text editor in Rust, so here it is! I like it and use it, you might too".
- m0zg 6y agoYeah. The section that compares it to Vim seems to misunderstand that people actually _like_ the modal nature of Vim, and that it's one of its main advantages.
- isatty 6y agoAlso, when I think of minimal I think of nano or ed (I have not used ed but it still comes to mind). Vim is pretty complex out of the box if you think about it, and that’s what enables the tons of plugins that you get.
- Aeolun 6y agoHe correctly surmised that it’s hard to learn though. I’m 10 years in and it’s still a pain.
- m0zg 6y agoI can guess why this is. You're probably fighting it instead of embracing it, or perhaps have unrealistic expectations for yourself. Embrace it, and understand it's OK to not know every single thing. I doubt that's even possible for an average user.
- johncoltrane 6y ago:help user-manual is not hard and it won't take 10 years of your life.
- sime2009 6y agoBut there are also a lot of people who _don't_ like the modal nature of Vim too. Ox not being modal is then one of its main advantages over Vim in that case.
- ducaale 6y agoThat colorscheme looks cool though. Is it available for other text editors?
- berkayozturk 6y agoI wondering the same thing! I would like to know if a similar theme is available for VSCode.
- laserbeam 6y agoLooks cool from a distance, and looks more user friendly than most! However any modern editor which doesn't support multiple cursors (be it terminal or gui) is missing the start line of the race these days.
- visarga 6y agoCan you even display multiple cursors in terminal?
- zyedidia 6y agoSure you can, but you have to use a trick. You can fake it by modifying the background color of the cell where the cursor is located. Many terminal editors have support for multiple cursors.
- saagarjha 6y agoI assume this doesn’t work if your terminal uses a vertical line to show the cursor?
- zyedidia 6y agoYeah that's a drawback -- multi-cursors will be displayed as blocks regardless. As far as I know there is no way to solve that, but using block cursors for multi-cursor operations isn't that bad.
- trashburger 6y agoYou can emulate it visually with white-background text.
- joeldo 6y ago> Ox is so lightweight that it can be used on older computers. The vagueness of this statement is great.
- warkdarrior 6y agoIt only requires 1TB of RAM and 8 Xeon cores.
- enriquto 6y agoThis editor seems lovely, it has very interesting features and it looks nice. Yet, I hate the punchline "A Rust powered editor". Why should anybody care? Other text editors are never presented according to the language they are written in! For one, I'm getting a bit tired of this obsession with Rust, as if being written in a particular language was somehow an interesting feature.
- adiabatty 6y agoBinaries written in Rust or Go tend not to require external libraries and tend to be a little more cross-platform than average, it seems. I tend to like things written in Rust or Go.
- enriquto 6y agoYou know, -static is a thing.
- sime2009 6y ago> Why should anybody care? Potential contributors to the project may care.
- crowf 6y agomaybe I'm missing fonts, but rather than the icons at the bottom (a new document icon, a rust icon, 5 horizontal lines icon ...) I see Japanese characters. As a test I also opened a sh file and it was unable to color the syntax. Hopefully this continues development, but right now it doesn't look ready
- alphachloride 6y agoPerhaps a tangent: I wonder about the true utility and longevity of a project that advertises itself foremost based on the language it is written in, when that should never matter to the consumer. It comes across as a hobby project or a portfolio entry or a tech demonstrator. If it was intended as such: kudos! That is quite an achievement.
- happyweasel 6y agoThis is probably a nice starting point for devs wanting to use Rust as a programming language for creating "classic" client applications (non-web).
- emnudge 6y agoA lot of unnecessary hate here. I think many are missing the use case. You use your own favorite and highly customizable text editor? Cool! This might not be for you. I think this would be a fantastic text editor for anyone new to the terminal. Provides some syntax highlighting, a nice background, line numbers, tabs, and mostly familiar controls without a ton of setup. I think there are still quite a few improvements I’d love for it to have, but this might be the thing I recommend to anyone first starting out in the terminal who wants a bit of a nicer editor than nano.
- quanticle 6y agoHow many people out there are willing to commit to a terminal text editor that isn't either emacs or vim? I feel like, if you're committing to a steep learning curve, you may as well commit to a steep learning curve that has a real payoff at the end.
- Aeolun 6y agoAn editor without a steep leaning curve? Like what we use nano for now?
- mixmastamyk 6y agoMicro has little learning curve, if you know GUI key bindings.
- kebman 6y agoI really like that inspirational editors are mentioned. For one, there were some on there I didn't even know existed. Second, you might want to try out some different ones before you settle on the one you like. Personally I rather liked Micro, for instance, but now I'm definitively going to give Ox a go too. I think the negative remarks come from people who are probably both very knowledgeable and experienced, but also entrenched in "their" editor, and perhaps they didn't feel the blurb gave "their" editor the justice it deserves, while this isn't an editor that purports to be the "best" out there, or even the most advanced. Personally I've never been a fan of using the terminal for anything else than reviewing code, so Micro is enough for me. It has text highlighting and commonly known Windows-esque shortcuts. To compare this to Emacs, which I've given my best shot, it just turned out way too complicated for my needs, and there's a ton of extra stuff to learn that I just wasn't motivated for on top of learning to code. Once I saw the high treshold for getting into Emacs, I just opted out. Perhaps it is better in many ways, but I was instead lured in by Sublime Text, and I've stayed there ever since. Is it "better"? IDK. It's what works for me.
- svennek 6y agoI really don't think he understands vim. He writes that the plugin system is its best feature, whereas I (as someone who as almost exclusively used vim for a decade and a half) have never installed a plugin. For many, many, many vim'ers, I know, the modal system (and hence the musclememory macro/scripting) IS the defining best feature... Also, see all the "browser with vim binding" and "x with vim bindings" that is the modality, not the plugin system, that is emulated...
- skolind 6y agoI am also a vim user, but I have 15 plugins installed including themes etc.. I am a big fan of coc and use it a lot for Typescript development. I am curious how you do programming without any plugins at all? Don't you miss linters and autocompletion?
- svennek 6y agoI made a decision 20 years ago to avoid auto complete and other "in programming flow breakers". Instead, I have multiple phases, writing, linting and such. I am sure that it made me a better programmer as I know a lot of stuff by heart, where a lot of "auto" programmers are merely constantly picking of a list, which I think breaks their thinking flow... Which is basically the same as not using the vim muscle memory for me.. Consider a piano player that needs to look up the right keys before every stoke.. The never get a feel for the music..
- IshKebab 6y agoI use autocomplete heavily and I can assure you that it breaks up flow much much less than having to go to the documentation all the time to look up minor naming variations (is it "start" or "begin"?). Programming is not remotely the same as playing the piano. This and the sibling "I don't make mistakes" comment just seem like excuses to me.
- _-___________-_ 6y agoFWIW, I didn’t say that I don’t make mistakes. Perhaps you misread my comment. And why would one need an excuse for setting their development environment up the way that works best for them?
- spongechameleon 6y agoI love the focus on Arch Linux in the README
- tutfbhuf 6y agoI would like to have an editor like this but with native vim, emacs, nano, ... modes, so that the user can decide on how to use his blazingly fast terminal editor in an all-in one ecosystem.
- airstrike 6y agoSo VSCode?
- RMPR 6y agoFound the Vim emulation of Vscode lacking in some areas, plus I'm pretty sure GP is taking about a text editor in the terminal
- airstrike 6y agoIt is a bit lacking here and there indeed – my comment was tongue-in-cheek, really. I do find using VSCode with neovim to work better than vanilla vim
- RMPR 6y agoLet me introduce you to Onivim 2[1][2] I think it's a really promising project 1: onivim.io 2: youtube.com/watch?v=Pi8qRg_gseQ
- airstrike 6y agoThank you. That looks really interesting indeed. In general, I'm strongly opposed to pre-ordering stuff, but I'll sleep on it and may give it a try.
- grep_name 6y ago> I do find using VSCode with neovim to work better than vanilla vim Do neovim and VSCode integrate in some way? I've never used neovim so I'm curious how you're using these two together
- thayne 6y ago> [Vim] has a steep learning curve due to being a “modal” text editor, having special modes for editing text. Ox is easier to use than Vim because it doesn’t have modes where the keyboard is repurposed, however it takes the idea of being a keyboard-only editor I, and I think most heavy vim users will agree, think that Vim's modal editing is one of it's great strengths. Sure, it has a steeper learning curve, but once you learn it, it is amazing.
- finalight 6y agonow how i wish VS code is done in rust as well
- blargmaster42_8 6y agoSince it's Rust I assume it will check that what is written is SJW approved.
- cycomanic 6y agoIf people are interested in alternative text editors, two quite interesting ones' I've come across recently were: http://kakoune.org/ http://kakoune.org/ (very interesting concept about "turning the modal editing of vim around) and https://github.com/fox0430/moe https://github.com/fox0430/moe (written in nim)
- ajuc 6y agoI'm still installing mc on every linux machine I own just o be able to use mcedit. It's still the best text editor for me and it's sad it stopped being included by default. I'm used to the shortcuts, the syntax highlighting works, and you can run shell scripts on selected text which is the best "plugin system" if you ask me. I've tried to switch to vim and emacs a few times but they are too big an ecosystem and I don't want to change EVERYTHING at once.
- z3t4 6y agoA disadvantage to terminal based text editors is that you are limited to the performance, unicode support, etc, of the terminal emulator.
- chriszhang 6y ago> Vim provides a plugin system for adding features to it as it is very minimal and only provides basic text editing functionality by default. Clearly the author does not understand Vim. Seeing this gross misunderstanding, I can confidently assumee that Ox does not even have a quarter of the features and editing capabilities that an editor like Vim or Emacs providee.
- throwaway_pdp09 6y agoI'll be cheeky and post this top level. Sorry if it's out of place. On the discussions of opening large files, I grant emacs does tend to choke on long lines but when each line is moderate it can open pretty large files. What I can't see here is any mention of VLF mode (get via elpa/melpa) in emacs which allows you to open very large files (per acronym) which are mem mapped. I just opened a 3.3GB .mpg and it opened immediately. Seems to be editable but it gets verrrry slow (has to page huge amounts and create temp files if you edit) and I've not verified that, but in the rare case I need to browse a multi-GB file, it has worked for me. Anyone used vlf mode in emacs more extensively, please chime in. FYI, HTH
- progx 6y agoI use Sublime Text, why should i use Ox? Only for terminal fetish? Or because it is written in Rust?
- simias 6y agoI like Rust and terminal editors but the Readme really put me off, I advise the author to either remove the bit about the other editors or take the time to really study what people like in them, because there's a lot of nonsense in here. The part about Vim is almost entirely missing the mark, but arguably so does the part about Emacs. The real brilliantness of Emacs is that almost everything is an Emacs buffer. The interface is extremely uniform: text file, configuration menu, completion buffer, compilation log, IRC chat window, it's all the same "widget" with just some customization (keybinds, coloring) on top. You can always copy/paste text the way you're used to, navigate the buffer the way you're used to, everything is uniform and consistent. Ever felt the frustration of having an application pop-up a modal with an error message and you want to search for it online, only to realize that you can't select the text so you have to copy it by hand? That can't happen in Emacs. Ever been annoyed that your custom bindings and shortcuts didn't work in all the parts of your editor? That the way you interact in the main text editor is different from the input box in the search dialog? In Emacs it's all the same thing. I switched to Vim a couple of years ago but this uniform interface is still something I miss. Maybe one day I'll bite the bullet and use Spacemacs.
- okamiueru 6y agoHave you checked out doom emacs? I used to have a manually tailored emacs configuration gradually built over the years, and ditched it quite happily in favour of doom emacs. I tried spacemacs to with much less success. Doom emacs also has default vi-workflow.
- simias 6y agoThank you (and jgilias) for the Doom emacs pointer, I'll be sure to look it up!
- mercer 6y agoI switched from Spacemacs the last time Doom Emacs was discussed here and I'm very happy with it. Took me a while to adjust, and sometimes I'll miss something Spacemacs did, or struggle with muscle-memory, but overall it's been worth it. And the people on the Doom emacs discord helped out a bunch of times too.
- magoon 6y agoI find it hard to move from vim because of its ubiquity. Same with bash.
- bogosmith 6y agoThere is a statistical package with the same name https://www.doornik.com/products.html#Ox https://www.doornik.com/products.html#Ox
- wodenokoto 6y ago> “There are only two kinds of languages: the ones people complain about and the ones nobody uses.” - Bjarne Stroustrup I guess if we were to assume this is also true of text editors, Ox is well on its way to great success!
- amadeuspagel 6y agoThe main thing I want from a terminal text editor is to have the same keyboard short cuts as any other program I use, which is why I use micro. In the screenshot I see Ctrl+W to save as. Why not use Ctrl+Shift+S like any other program? Why not use Ctrl+W to close tabs, again, like any other program? I can already see myself closing tabs in other programs trying to save as, if I start using this.
- sime2009 6y agoThere are limitations to which keyboard shortcuts are available to an application running in a terminal. And those limitations often vary per terminal. In other word: It ain't that easy.
- kps 6y ago“… any other program?” ^W has been erase-word in Unix terminals since the ‘new’ tty driver 40 years ago.
- OJFord 6y ago> Ox aims to be an editor that takes features from some of the most popular editors out there, gaining the best of all worlds. > Vim http://vim.org http://vim.org: Vim provides a plugin system for adding features to it as it is very minimal and only provides basic text editing functionality by default. [...] a “modal” text editor, having special modes for editing text. Ox is easier to use than Vim because it doesn’t have modes [...] however it takes the idea of being a keyboard-only editor and being able to act just like an IDE after some configuration. Interesting, mentions vim first in list of taking features from popular editors, and explicitly doesn't take the one feature that everyone takes (when they take any)!
- Findeton 6y agoCan you create a deb package? I'll use it.
- indymike 6y agoWriting a text editor is a great way to grow as a programmer. There are some really interesting problems you have to solve, and you can see it in the comments: handling long lines, big and small files, making it load fast, dealing with Unicode... and that's before you get to the fun parts like search and replace, and extension apis.
- jbgreer 6y agoI can only express myself in English, but I laugh every time a developer explains how easy their tool is to use because one types “ctrl-f” for find and “ctrl-s” for save, etc. The day these developers learn that the latest Cool Tool uses non-English command mnemonics is going to be a rude awakening.
- mmrezaie 6y ago> ... heavily bloated and resource hungry editors such as VS Code and JetBrains ... Normally they are fine, but add the indexers and code parsers then everyone is bloated. On my emacs + lsp, lsp is the one using a lot of cpu/memory resources. > Emacs is still actively used today ... I would change much of the Readme.
- cferr 6y agoAny plans to add a folding feature? Vim has a plugin which lets you hide the code under the definition unless you want to unfold it to see/edit it. e.g. folded: class ClassName(object): def some_method(): def other_method(): class Class2(ClassName): def more_methods():
- cassepipe 6y agoI personally started to use Amp, more what I am looking for : "Heavily inspired by Vi/Vim. Amp aims to take the core interaction model of Vim, simplify it, and bundle in the essential features required for a modern text editor. Written in Rust." It's also a terminal editor btw https://github.com/jmacdonald/amp https://github.com/jmacdonald/amp
- didibus 6y ago> Ox took the idea for the customization and extensibility of Emacs and made a configuration system where you can change the colours and appearance of the editor Change the colours and appearance of the editor? Took the extensibility and customization of Emacs? Really?!?
- sanderjd 6y agoThis is sort of off-topic, but something I've been looking for is a good editor for writing prose. I want my vim keybindings because even with prose, editing is a big part of writing, but I want sane formatting -- margins, soft line breaks at reasonable text width, that sort of thing. I have not been able to get my vim configuration to a satisfying place for this use case; it seems hopelessly tailored to the code editing use case. Does anybody have something that works really well for this for them?
- deleted 6y ago[deleted]
- teleforce 6y agoThere is a popular Rob Pike's quote on writing terminal based text editor, "Everybody writes a screen editor. It's easy to do and makes them feel important. Tell them to work on something useful". Then as any self-respecting hackers will do, he wrote Sam text editor few years after making the remarks [1]. Writing text editor seems to be the second favorite hackers past time activities after perhaps writing a compiler for APL and Rob did it too :-) Anyway, congrats to the Ox editor authors for having a go, and personally I like and commended the fact that on the project Github page they provide the comparison to the other popular text editors. Since Ox is both front-end and back-end implementation based on Rust based libraries, it does shows that Rust based eco-system has been growing steadily. I have two features suggestions that perhaps can take Ox editor to the next level and be more useful. Firstly, as mentioned by the sibling comment's buried towards the end of comment section, on the very large file (VLF) feature for opening big file. This can be implemented by the help of RRB-Tree data structure and the Rust library is already available [2]. Secondly, is the CRDT feature that can be implemented with the automerge library. It seems Rust based automerge library is still in its infancy but perhaps by more project adoption, it can further accelerate the development [3].This second feature is very useful for local-first text editing capability enabling both offline and online collaboration feature that can propel Ox to stand out from the crowd. [1]https://news.ycombinator.com/item?id=20607261 https://news.ycombinator.com/item?id=20607261 [2]https://github.com/ArazAbishov/pvec-rs https://github.com/ArazAbishov/pvec-rs [3]https://github.com/automerge/automerge-rs https://github.com/automerge/automerge-rs
- ramanova 6y agoInstalled from brew and tried to open an html file. 1. no syntax highlighting 2. formatting is off (tried with nano - formatting is great) 3. the cursor moving is not rendered, eventually got lost (bug)
- graynk 6y agoLooks cool, but the author should test this with different terminals and different settings. I have gnome-terminal with white background and black font, and ox uses its own dark-grey-blueish background with the black font from (I presume) my settings, making the title and the text of the file itself completely unreadable. I'm glad that there exists a system to customize the settings, but I'm too lazy to bother, and it should work by default anyway
- mlindner 6y agoI hate the "ctrl+S" to save IMO. On Mac ctrl+S is not used to save, cmd+S is. Don't assume what OS it's being run on.