7 ms·
Probably it's just driven by the use cases: most vi users (probably) come from server side, where you don't have a mouse. Vi is particularly effective in those
by ai_ja_nai 12y ago
Probably it's just driven by the use cases: most vi users (probably) come from server side, where you don't have a mouse.
Vi is particularly effective in those circumstances
- wz1000 12y agoVi is particularly effective because you don't have to use a mouse, even if you have one.
- dstanko 12y agoSo I suppose you're replying to this in your lynx browser?
- tyrfing 12y agoNope! With VimFx: https://addons.mozilla.org/en-US/firefox/addon/vimfx/ https://addons.mozilla.org/en-US/firefox/addon/vimfx/
- wz1000 12y agoClose but no cigar. I use Vimperator! With that, tmux, xmonad and vim I rarely if ever have to use the mouse.
- dstanko 12y agoWell good for you! I am impressed seriously! It is 2015 and arguments like "we don't need no stinking mice" are still used to defend vi. If all that effort was put into building a better shell that works with a mouse (or trackpad if you use them apples), where would we be right now?
- wz1000 12y ago> If all that effort was put into building a better shell that works with a mouse (or trackpad if you use them apples), where would we be right now? You are missing the very point of a shell. Text gives you power, composability and flexibility that you simply cannot achieve with a GUI. Automation becomes extremely easy because of this. Editing text without having to move your hands back and forth between keyboard and mouse makes it so much faster and lets you concentrate on your actual work instead of breaking your concentration. Vim has its own vocabulary, and the essence of vim commands is composability. You imbibe this vocabulary over time and editing text becomes effortless like stringing together words to form sentences and sentences to form paragraphs. The shell is so successful precisely because it uses text as a common representation for all data. It simply wouldn't work with a mouse. Many people have tried this and failed. Computers are good at manipulating text and humans are good at understanding text. The abstract geometry that you have to use to describe mouse movements is neither intuitive, nor is it easy to process.
- WorldWideWayne 12y ago> Text gives you power, composability and flexibility that you simply cannot achieve with a GUI. Can you think of any big things that you lose though? > Editing text without having to move your hands back and forth between keyboard and mouse makes it so much faster and lets you concentrate on your actual work... I could probably get between floors in my house an order of magnitude faster if I replaced the stair cases with slides and a trampolines. Somehow, that does not seem practical though. > The shell is so successful precisely because it uses text as a common representation for all data. Successful in what way? As successful as GUIs? > Computers are good at manipulating text and humans are good at understanding text. Humans are good at understanding patterns and symbols and they're not good at memorizing text commands. That's why everybody can use GUIs but few can use a shell.
- pfranz 12y agoAhh, these arguments. They each have pros and cons. GUIs are generally more discoverable. Terminals are /way/ more flexible, faster, and customizable if that's your job and you take the time to learn them. > Can you think of any big things that you lose though? Definitely. Customizing behaviors. I work with image sequences a lot. "ls" is used to list files in a directory "lss" is a command we wrote to group image sequences together. This makes finding missing images in a sequence, knowing the range, and dealing with 1000's of files in a folder trivial. These are technically possible with a gui, you need to re-write your whole file-browser or have one with some plugin system that support this (I don't know of any). > I could probably get between floors in my house an order of magnitude faster if I replaced the stair cases with slides and a trampolines. Somehow, that does not seem practical though. That's a terrible analogy and a half-truth on both sides. Jumping to the mouse does slow things down, but I use GUI file browsers without a mouse just fine. The only thing I can't do out of the box is resize and move windows around--navigating through directories is fine. > Humans are good at understanding patterns and symbols and they're not good at memorizing text commands. That's why everybody can use GUIs but few can use a shell. I think the difference is that guis offer more spacial queues and persistent information than terminals do. Someone who has never used a computer would be equally confused at how a mouse or scrolling worked. Humans are not terrible as memorizing text commands, there's just no need to use them everyday and a gui is usually good enough. Fewer people can drive a stick-shift or parallel park now that it's generally unnecessary. It's not that it was difficult. I imagine in a few generations after automation takes off driving a car at all will be difficult for most people.
- noir_lord 12y ago> where would we be right now? Plan 9's ACME or it's descendant probably.
- dstanko 12y agothanks everyone for clearing this for me... I guess you learn something every day, even after 30 years of programming. I would have never thought of the infamous "computers are good at processing text" argument. Is there an archive of pro-vi arguments somewhere?
- wz1000 12y agoYou achieve absolutely nothing with your casual dismissal and sarcasm. The fact that you have not made a single counterargument to any of my points betrays a lot.
- dstanko 12y agoThere you go - you win this argument! Now you can feel fulfillment when you log into your graphical OS and instantly open gazillion terminal windows to bypass all the progress that has been made in last 20+ years... because computers are better processing text then graphics. I grant you one thing: when you sit in your cafe pretending to work on something infinitely more important then everyone else, girls/boys will be impressed by the complexity of your screen...
- stephenr 12y agoIf you're editing files live on the server, you're doing it wrong. This argument ("Oh I use <insert console based editor> because I can use it on my laptop or via SSH on the server") is fucking stupid. If you can learn how to use fucking vim or emacs, you can learn how to use configuration management - either through a "full blown" tool like puppet/chef/ansible/etc or through config packages (if you're on debian) or even through plain old shell scripts.
- pas 12y agoYes, yes, conf. mgmt. Yes, yes. Except when it's not really your call. And you have to poke around files so far down behind God's back through a shared desktop Enterprise VPN IE-only plugin-fest, that you don't even know which way is 127.0.0.1, then you're happy that you have vim on Dear Client's pointlessly supported RHEL boxes by default. And othertimes, when you want to debug something that only happens on a live/production server. Editing files on the server live is - in itself - not right or wrong. Doing it as a regular workflow is what's bad.
- AnimalMuppet 12y agoThat's a long way from original claim that "the vi/vim editing model is just superior to any other out there", though. "You may need it in some crippled environments, so it's handy to know" is a considerably weaker claim...
- cauterized 12y agoYou can host a non-production development environment on a remote server. That can help ensure it's as similar as possible to your production environment, as well as making it easier to move between locations / computers without having to sync your Dev environment. Oh, and if you're editing system config files for systems administration tasks? That's on the server. As GP said, if you come from a sysadmin background, you're used to using a keyboard-only editor. And Vim sure beats ed.
- stephenr 12y ago