21 ms·
Show HN: I built an interactive course that helps you learn Vim faster
Hey show HN!
This course came about as a result of wanting a more targeted way of practicing using new vim commands I wanted to pick up, rather than just trying to use them in my regular code editing sessions.
When I would try to use new commands during code editing, my productivity took a hit because I was trying to do two different things at once: thinking about code vs practicing my muscle memory.
So, I made a separate environment for practicing, one that had an interactive editor, progress tracking, and achievement goals to let me see which areas I should work on, like speed and efficiency (# of keystrokes).
When I realized it would be useful for beginners too, I added lessons to go along with it and this course is the result!
Let me know what you guys think about it :)
- seanp2k2 4y ago:set nu / whatever you want to find [return] i *edit stuff and use arrow keys for nav* :wq Or :q to quit without saving That’s all the vim most people need. The fact that less is installed on many more systems than nano is a testament to the bad assumptions too many devs make about who will be using these systems in the future. And yes, it’s not hard to "apt -y install nano" except at work where we have proxies and internal repos, so now I need to use vim to reconfigure apt sources just so I can use a more normal editor that doesn’t require arcane incantations to perform basic config file editing.
- mikojan 4y agoAbsolutely haram
- getcrunk 4y agoIs this an Andrew tate reference or just normal Muslim one?
- cheeko1234 4y agoNano and commandline is good enough. If apt is available, Micro is even better.
- AlchemistCamp 4y agoI don't find Nano very productive or very easy on my previously RSI-suffering hands and wrists. VIM is so much better for me along those two dimensions that it's not even much of a comparison.
- password4321 4y agoMy problem is I can't use the up/down arrows for nav while editing stuff, it just starts spewing control characters on new lines IIRC.
- Fuzzwah 4y agoThis is the reason why I like vim-nox
- wruza 4y agonow I need to use vim to reconfigure apt sources just so I can use a more normal editor Prepare and paste this into your terminal: echo "another line" | sudo tee -a /etc/apt/sources.list Sorry for your pain, but choosing hard ways is a person’s business.
- LoveMortuus 4y agoI believe the parent was trying to say that the default editor is the hard option, even though easier and intuitive solutions exist.
- taskforcegemini 4y agoor just "echo 'another line' >> /etc/apt/sources.list"
- wruza 4y agoYes, but only when logged in as root.
- taskforcegemini 4y agoof course, but redundant if you are root
- taskforcegemini 4y ago*sudo is redundant
- AlchemistCamp 4y agoThis is equivalent to saying hunting and pecking on a keyboard and using only their index fingers to type is "all the typing most people need". Technically, it's true, but it's also sacrificing a lot of productivity that could be gained from a relatively modest one-off investment in learning a skill. It's also derailing someone's Show HN with a very old and generic online argument.
- vogt 4y agoAmazing. I came into programming from a bit of an unorthodox professional background. When I started learning web app development in a serious way, I got blindsided by some of the encounters with vim. In fact it took a long time before I even realized that it was vim I was interfacing with at first. wish I had this back then.
- gordon_freeman 4y agoMind sharing what professional background you came into programming from? I find such info always interesting.
- vogt 4y agoA little late to reply but yes I am always happy to talk about this kind of thing. Unfortunately the reality is that my story is not in any way interesting; I didn't start off as a railroad engineer or 2nd grade teacher or anything like that. I started in graphic design in the mid-2000s, got heavily into Web 2.0 and was one of those designers that did skeuomorphic designs delivered in .PSD format with the Lobster font and realistic metal textures and all of that. I've been in UI/UX design sense, and still technically have a role in a design department, but I write code full time. It's an interesting niche to fill and the pool of competent technical designers is growing all the time.
- chadcmulligan 4y agoNicely done. Though I have to say - I gave courses on vi in the 80's but then IDE's and GUI's came along and I moved on. I will never understand why anyone still uses vi in the 21st century, except for occasionally editing a config file on a *nix box.
- bityard 4y agoOh man, you are going to get a ton of replies on this. Short version: vim is not vi. Longer version: I use vim because I am way faster with it than any standard editor. I personally barely customize my vim at all, but there is a large community whose hobby is installing dozens of plugins to turn it into a full IDE and/or making it a highly personalized experience.
- ilrwbwrkhv 4y agoNeovim is pushing the text editor space like nothing else.
- steakknife 4y agoHow is it that nobody seems to know that every major editor has either vim mode or a vim plugin. I love vim, but I almost never use it directly. I usually use JetBrains IDE with vim plugin. Best of both worlds.
- hyperhopper 4y agoI've used a great many editors/IDEs and within a day of installing any vim mode or plugin I find multiple inconsistencies or errors that make my life worse. Exception being spacemacs/evil, which is why that's the only thing I prefer using over vim
- artificialLimbs 4y agoNormal mode navigation, macros, (mostly because I end up editing a lot of repetitive old code), and marks so far. Using vim for vscode enables me to much more quickly bang out code.
- loginNSR 4y agoAnything like this for editing in Emacs?
- cassepipe 4y agoLearning to remap escape to Caps Lock or to jk or what the Ctrl combination are to switch to normal mode should be the first lesson of all vim courses. This was the biggest cognitive discrepancy for me as a vim beginner : What did you use your smarts to create a modal editor while choosing the worst key ever to switch modes!?
- malauxyeux 4y ago> What did you use your smarts to create a modal editor while choosing the worst key ever to switch modes!? I believe when vi was originally created, the Esc key was often placed to the left of Q, where the Tab key is now located on QWERTY layouts.
- samatman 4y agoYou could also just press the Alt key on some systems, which sends the control code Esc.
- yjftsjthsd-h 4y agoCorrect; vi was born on this layout: https://en.m.wikipedia.org/wiki/File:KB_Terminal_ADM3A.svg https://en.m.wikipedia.org/wiki/File:KB_Terminal_ADM3A.svg (see https://en.wikipedia.org/wiki/Vi https://en.wikipedia.org/wiki/Vi). Notice the arrow keys, and Ctrl and escape. In this case, the history of the program basically explains everything in my opinion.
- Andrew_nenakhov 4y agoSo, did it help you finally learn Vim?!
- Silica6149 4y agoYes, in a narrow sense. I would say I know it well enough now to edit code faster than using a regular editor. It would be difficult for a lot of people to say they've fully learned vim though, since it has a lot of things to discover. Many people who've been using vim for years still find out new tricks. This aspect of vim is appealing, in a way.
- LoveMortuus 4y agovimtutor is pretty good! Besides that once you learn that you enter edit mode by pressing i - ESC to exit it. :w to save, :q to quit and :q! to force quit / quit without saving. Then you can get by just fine. You can of course do magic with vim, but that's more in the tinkerer territory~
- xavdid 4y agoThis looks very cool, kudos on the launch! I feel like vim tutorials mostly focus on navigating and editing a single file, which is great! But I mostly struggle with how to replicate opening a whole directory in VSCode, which makes it easy to browse the directory, switch between files, open multiple panels, etc. I'm almost certain vim does all these things out of the box, but tutorials always end at "this is how you edit some text quickly" and never cover "this is how you do software engineering".
- vidyesh 4y agoI am new to using vim too so NerdTree is a little hard for me to use and navigate and the split windows too are difficult to understand in vim. Not many tutorials or guides or courses cover that well. So I have the same issue as you, I really like using neovim for smaller projects as its easy to work on them through the shell. But when it comes to big projects I go back to VSCode with the Vim emulator extension as it just makes using the tree much easier for me in VSCode. I have setup custom keybindings and settings to launch the directory when needed or the command palette works great to launch other files. I wish there was a resource to help switch VSCode to neovim while retaining some of the "most" used VSCode features.
- bootstrappit 4y agoThat's exactly how I feel too. I just started using neovim a few weeks ago. I'm using `nvim .` to get to a navigable tree, but have no idea if that's the right way to do it.
- RMPR 4y agoYou may want to check out Practical Vim by Drew Neil, he covers that aspect.
- xavdid 4y agoGood to know, thank you! I'll check it out.
- kazinator 4y agoI've been using Vim since 1994, but only this past year have I started getting better at juggling large numbers of buffers. There are three main improvements in how I use Vim compared to before and they are simple. 1. I switched to :autochdir, so that in any buffer, the current working directory is that of the file. Then I dumped :autochdir due to certain annoyances and found a nice way of emulating its good behaviors. 2. I started using sessions to save and recover the states of the buffers. I associate sessions with certain tasks and can return to those tasks quickly. 3. I started using a buffer navigator. Regarding (1) here is the setup: :let $top=getcwd() :au BufWinEnter * exec "lcd " . expand('%:h') :au BufWinEnter * if expand("%") == "" | exec "lcd $top" | endif :au BufWinEnter *.git/* exec "lcd $top" I know you don't need the colon in your vimrc, but I have it anyway. The $top variable captures the top level directory on startup; I refer to it in command lines when I need it using $top. Why the dollar sign? Ah, this makes it an environment variable. Vim is much better about interpolating environment variables than other variables; there are more places you can use them thanks to the dollar sigil. The other three commands above set up a local chdir (lcd) to the directory of the file containing the buffer. The third rule is smart: if we are editing something under .git/ then we go back to the top. This is what autochdir gets wrong. What do we edit under .git? Oh, COMMIT_EDITMSG, for one thing! I want to be in the repository root when editing a commit message. Regarding 2, here is my setup for working with sessions: :nmap + :wa<Bar>exe "mksession! " . v:this_session<CR> :command -nargs=1 S exec "mksession! " . expand('$top/') . expand('<args>') + becomes a command for saving the current session. Then I have a :S <whatever> command to save a session under a new name, relative to the top directory: the $top variable rears its head. Regarding 3, there are many buffer navigators. I'm using bufexplorer (version 7.4.32). I make the following tweak to the plugin/bufexplorer.vim file: " added before the other maps if !hasmapto('BufExplorer') && g:bufExplorerDisableDefaultKeyMapping == 0 nnoremap <script> <silent> <unique> <Leader>\ :BufExplorer<CR> endif In Vim the "leader key" for hot key commands is backslash by default. Instead of using the default key binding for launching the bufexplorer view, which is like \be or something, I map the backslash key to do that. So just by hitting \\ (backslash twice) I get the buffer explorer. Mostly I use the LRU view in buffer explorer (most recently used buffer goes to top, pushing others down). Should be called MRU, but everyone who knows memory cache hierarchies understands LRU. The above three things are very simple, and have a big payoff. I have many more tricks in my vimrc. For instance I use a C program called autotab to analyze a sample of lines from the loaded file and adjust the indentation settings.
- stayux 4y agoI am a designer that got fed up with "mouse" control everywhere. One day I asked myself: Is there a way to scroll in the browser without using a mouse or arrow keys?. Enter Vimium.:) I have tried in the past Emacs, but I have an operating system, and I don't need a new one (for now). So now you can take MacVim only from my cold hands. P.S. > You can paste the buffer in insert mode with ctrl+r+0.
- giansegato 4y agoI see that there's a pretty big miss in the syllabus: surround! yes, true, it's not "official" but rather a plugin, but you can't really do without it, can you?
- Silica6149 4y agoI see, I could add a whole chapter on useful vim plugins! Thanks for the suggestion! In addition to surround, what other plugins do you think beginners should almost always use?
- giansegato 4y agoI think surround is so deeply nested in users workflow that it's almost like an official one. It's the only one i'd go as far as to adding it to your course, but potentially you could think of a chapter on vimrc, which skyrockets your productivity (but is also quite advanced)
- bearbearbear 4y ago
- Vlados099 4y agoHey, I have started using the course yesterday, opened just now and my statistics are gone... Is there a way to report a bug?
- sashevuchkov 4y agoIt's visually appealing. I really like the web design. Congrats!
- deleted 4y ago[deleted]
- MatthiasPortzel 4y agoMy pet peeve is Vim tutorials that start with "use hjkl to move around" instead of "use `set mouse=a` to turn on the mouse." In my opinion you need to make sure that you are very clearly disclaiming that you are teaching a harder way of doing things in exchange for incredibly small productivity gains that will be realized years in the future, if ever. (This is basically a copy-paste of previous comments I’ve made, I haven’t tried your tutorial beyond the first lesson.)
- kjeetgill 4y agoHuh. I mainly find myself disabling mouse=a if it's on by default. But that's mostly because the only time I'm using my mouse is to copy/paste something out of my term and it breaks that. Also, I think scaring people away from arrow keys is premature. It's not that big a deal.
- deleted 4y ago[deleted]
- Silica6149 4y agoAh, I see. I agree, more context would be better for the beginner to understand why the lessons are the way they are. I tried to explain the benefits of vim in the "Why Vim?" section, but I should really go into why using and learning vim will be slower at first than using the editor you're already comfortable with, and how it might be worth it in the end. Thanks for the feedback!
- stevenjgarner 4y agoIMO, the choice of nix editor is always somewhat contextual depending on how much full stack work is being done. If one is doing a lot of systems work (ie a lot of bash commands), then one inevitably wants to set a default editor on the systems being used. While I choose vi, it really depends on the number and type of systems being regularly accessed, and your personal preferences. For me the use of a terminal editor is just part of the seamless flow of using the command line for everything else. I personally don't think it is especially valuable to consider terminal editors in isolation away from bash, other than to become familiar with key strokes.
- johncoltrane 4y ago> Let me know what you guys think about it :) Same as the last time you posted it: learning Vim has nothing to do with muscle memory and doing it outside of Vim is pointless. Plus, the "master Vim" claim is dubious given how basic the lessons seem to be. :help user-manual is easy, built-in, and it goes way beyond this. And it's free.
- Silica6149 4y agoHi, I understand where you're coming from. My introduction to vim was through vimtutor and it was free! I agree with your point about muscle memory. Learning !== muscle memory. However it does make it more comfortable to edit code by not having to expend energy remembering the vim command to do something (since you can just focus on editing code). Practicing new vim commands in the interactive editor has helped me use them faster when coding. I feel that my muscle memory is built faster when practicing in a targeted way. The interactive editor aims to bring the skills you develop while practicing in it, into your daily code editing, by making you practice on code snippets (for all the lessons after the first 2). In addition, in my opinion, vimtutor and :help are slightly difficult for a complete beginner to parse because they overwhelm with a little too much information. I tried to fix this by making each lesson focused on a single topic, with short and simple explanations. Thank you for your feedback, I appreciate it!
- cdbyr 4y agoAgreed with your comments on muscle memory and very cool project overall. An issue keeping me from wanting to use this: holding down the directional keys doesn't move the cursor multiple times - it's one keypress per movement. In the desktop environment, one can hold 'j' to go down, and since there is so much vertical movement, it's important that that's replicated.
- Silica6149 4y agoHuh, thanks for letting me know, no one else has mentioned this issue, and I haven't experienced the issue either. Can you let me know which browser and OS you're using? This seems like an important bug, thank you.
- deleted 4y ago[deleted]
- firechickenbird 4y agoInvalid email
- Silica6149 4y agoOn it! Edit: hmm, can't find any errors. Can you reply with the first 3 letters of your email? You can also contact me via the email located at the bottom of the page.
- firechickenbird 4y agogot it, need to pay before login
- dash2 4y agoI really want to like vim and I love some things about it, like the ability to move chunks about with only the keyboard. But so many things about it kill me. Like, why can't I hit right at the end of a line, and move to the next line? Who thinks that is a good idea? Also, why do I have to have a special mode to insert things? Having to change modes just seems so complex and unintuitive. And why does the help system never tell me what I want? The frustration is that probably there are fixes for all these things, which if I were an expert I would know. But meanwhile I can use an ordinary visual text editor and I don't have to learn anything new.
- wruza 4y agowhy can't I hit right at the end of a line, and move to the next line? Who thinks that is a good idea? I do, I hate accidental wrapping on left/right so much and see absolutely no use to it. But you may configure it, :help 'whichwrap' Also, why do I have to have a special mode to insert things? Because if your alphabet keys do always insert, you have to hold some control key to enter commands and movements, and not if not. That’s the point of being modal. Otherwise there are plenty of emacs-alikes to train pinkies on, and no need for yet another notepad+.
- juniperplant 4y ago> Like, why can't I hit right at the end of a line, and move to the next line? set whichwrap+=<,>,h,l,[,] Source: https://vim.fandom.com/wiki/Automatically_wrap_left_and_right https://vim.fandom.com/wiki/Automatically_wrap_left_and_righ...
- gofreddygo 4y agoI really want to like to swim and I love some things about it, like the ability to not sink when thrown in deep water. But so many things about it kill me. Like, why can't I just sit in the water, and float to the top? Who thinks that drowning by default is a good idea? Also, why do I have to have a special way to move my hands and legs? Having to coordinate my limbs just seems so complex and unintuitive. And why can I not see anything underwater? The frustration is that probably there are fixes for all these things, which if I were an expert swimmer I would know. But meanwhile I can use an ordinary kayak and I don't have to learn anything new.
- naillo 4y agoLove it!
- Silica6149 4y agoThanks! If you wanted any features that are missing, let me know!
- sy7ar 4y agoIMO one of the best ways to learn vim after the basic movement is to copy others vimrc and build your own using vim. Use :help or :h along the way. vimrc is fairly simple to edit compare to actual programming languages.
- nmz 4y agoThis is the wrong way to go, if the UI is so bad it requires a course, then the problem is clearly the tool.
- olalonde 4y agoHow do you reconcile that with Vim's massive popularity? Surely, Vim users are aware that there are many "easy to learn" editors.
- nmz 4y agoI don't, I belittle it whenever I can. but I'm just a stranger on the internet. pay no attention to me.
- Silica6149 4y agoIt can also be a boon. One of the things some vim users like is always being able to discover something new, after using it for years. I'm not really in this camp though, I would prefer vim commands to somehow be more "discoverable". Much easier said than done, though.
- wruza 4y agoWhat were the last three things that you discovered in your editor?
- blep_ 4y agoIn Helix: - space, k for documentation on the thing under the cursor - space, [yp] for copying/pasting to the system clipboard - m, [ai], [acfo] for selecting around/in language structures This is easy because Helix has a very fast command palette thing, and a lot of its commands are behind consistent prefixes, so if you know `mi(` for selecting within parentheses, you can do `mi` to ask "what other things can I select within?"
- _qua 4y agoThis is a wild take. I'm not quite sure how you would go about changing it into something "better" without funadmentally destroying its functionality. The "UI" of driving a car or a jet requires "a course" but it doesn't meant that they're bad.
- Linda703 4y ago[dead]
- immigrantheart 4y agoI'm a vim user. Over the time I dwindle down my plugins and stick to the basic ones because I often do SSH and don't want my environment to change rapidly. One thing that I still need though, is proper syntax highlighting. I wish there is an easy way for vim to do it rather than just too many plugins here and there.
- JulianWasTaken 4y agoDo what makes you happy, but just in case you weren't aware, vim supports editing over SSH natively, so there's not really a need to skimp just because you need to edit files remotely, you can use your local machine's setup to edit remote files. The SCP incantation is `vim scp://user@myserver[:port]//path/to/file.txt`, or see `:h netrw` or various tutorials you'll be able to find.
- immigrantheart 4y agoOoh I didn’t know this. Thank you.
- ronyclau 4y agoTwo suggestions: 1. Prefer sftp over scp whenever it's available. The scp protocol is pretty obsoleted. Just substitute `scp` with `sftp` in the command. 2. Turn on ssh multiplexing to drastically shorten the wait time when opening a file.
- mknsri 4y agoI tried out vim for a month or so. I did enjoy using it, although I'm not sure if using vim just feels more productive because you press more keys to do the same thing. However multi-cursor editing and cutting whole lines in modern editors is way more conducive to my workflow and eventually stopped using vim. Do vim users know if there was anything like Select next occurrence in vim? Feature discovery is not one of vims strong suites EDIT: More specifically by multi-cursor editing I mean selecting multiple occurrences of a word, and then editing in place. For example selecting all occurrences of the word user -> (getUser, setUserId, variable declarations with user) and then replacing them with account. This can be done with vim but is nowhere near as fast, since every change needs to be done one-by-one. Or selecting all the above occurrences, and pasting them somewhere for an interface declaration.
- acedTrex 4y agoVim has visual block mode for multi cursor which you can enter with ctrl-v
- mknsri 4y agoYeah that works for selecting contiguous blocks of text. Multi-cursor editing allows for selecting rows that are further apart.
- petepete 4y agovim-visual-multi works well. https://github.com/mg979/vim-visual-multi https://github.com/mg979/vim-visual-multi I do wish it was built in (like in vis) though https://github.com/martanne/vis https://github.com/martanne/vis
- deleted 4y ago[deleted]
- afranchuk 4y agoIf I'm interpreting "cutting whole lines" correctly, in vim that's "dd" in normal mode. Then you can paste (put) with "p". I agree discoverability is not great; to be honest I can't remember how I discovered the plethora of commands I use, though I do have a habit of reading the help a decent amount. That's how I discovered "g?" (Rot13) :D
- quest88 4y agoHow does yours compare to shortcutfoo.com?
- Silica6149 4y agoThanks for asking, I actually have practiced vim on shortcutfoo. It is really good for remembering shortcuts for regular desktop applications, but I felt that it wasn't really meant for learning a code editor like vim. It did not have an interactive code editor, with the ability to edit lines of code inside of it. In addition, it does not measure progress in terms of speed and # of keystrokes, so you aren't able to see how you could improve. If I recall correctly, it is just meant for remembering the command keystrokes and typing them out (kind of like using flashcards). Also, as of right now, shortcutfoo is $8 monthly, but it allows access to all shortcut courses. Please correct me if I'm wrong, I used shortcutfoo a few years ago.
- imperistan 4y agoI write C# three days a week. Is learning vim worth it?
- olalonde 4y agoIf you plan to code for many years, it's definitely worth it. But it has a steep learning curve. It could take you a few weeks before you feel like Vim is not actually slowing you down. But past that point, you will continuously gain productivity and will eventually refuse to use anything else. I've been using Vim for almost a decade and I'm still learning new tricks that boost my productivity.
- pluijzer 4y agoYes I would say. Most IDE's support vim keybindings via plugins. Vim kingbindings with the convenience of and IDE results in an powerful experience.
- Silica6149 4y agoNope. If you're already comfortable in your code editor of choice and like it, there's no good reason to switch. However, if you've seen people use it in real life or in youtube videos, and think that it's cool being able to execute precise and fast commands without needing to move your hands from the keyboard, to edit code exactly how you want to, definitely try it!
- ezfe 4y agoTried to register using my `.dev` email address: "Invalid email"
- Silica6149 4y agoHey, sorry the landing page is a little unclear. You gain access with the email you use to purchase (the buy button is all the way at the bottom, which I could with improving its location). Thanks for letting me know!
- ezfe 4y agoAh, that is not clear. It should say "account not found" at least instead of "invalid email."
- sneak 4y ago*interactive paid course. That should be disclosed above the fold, methinks.
- Silica6149 4y agoDefinitely try out the free resources for learning vim before ever considering Vimified, or any paid option! I used vimtutor and openvim to get started, and they're fantastic free resources. It was only when I couldn't find something to fix my specific problem that I stated in the top comment, did I start building this.
- smitty1e 4y agoThis looks interesting. I also paid for https://vimvalley.com/ https://vimvalley.com/ and am a satisfied customer.
- timwaagh 4y agoI often use vim for editing files but not code. The need to adhere to corporate style pretty much kills it for that.
- mastermedo 4y agoI love projects that popularize vim. But I think this one might be in a way too early stage to justify the pricing (assuming those 8 lessons are all there is).
- Silica6149 4y agoThanks for the feedback! The 8 lessons you mention are actually 8 chapters. There are actually 34 lessons right now (you can see the lessons if you click on the chapters to expand them). Please let me know if there are topics that you want to see, I wanna add what people want to learn!
- mastermedo 4y agoSorry, I meant 8 chapters. I read through the 34 lessons. I suggest you take a look at typingclub. 700+ lessons free of charge. Repetition, and metrics are the selling point. If you incorporate that model in vimified I think you’ll have way wider adoption.
- Silica6149 4y agoThanks for the guidance! I'll look into how typingclub works, I'm new to this business stuff.
- _1a 4y agoAfter reading Practical Vim by Drew Neil I went to his site to check out what else he has. Well he's selling a course that looked like the majority of what he's covered in the book. When I saw the $150 price tag I couldn't believe my eyes. I left the site and bought his other Vim book instead.
- QuiiBz 4y agoI wonder why the headline and other gradient title are images. Why not a text with linear-gradient and background-clip?
- Silica6149 4y agoThanks for asking, I initially had them like you suggested but with the way I was doing it, it made it kind of hard to make responsive. For the hero especially, the words didn't line up without lots of adjusting. I'm not really good at css though, so there's that.
- Arisaka1 4y agoI once tried to migrate from VS Code to Neovim. I use TypeScript at work, and use many languages for my side projects. But the worst part was making Vim provide with things that you'd expect programming editors to have. So many options, what's best is up to opinion, integrating language servers, getting intellisense to work as you would expect, searching the project folder for file names. Then I realized that all I'm trying to do is make Neovim behave like VS Code with the extra addition of keyboard navigation, which I can get behind. But at my current career level I'd rather spent those 5-10 hours configuring an editor in learning more about <insert whatever language/framework I'm learning>. I mean, just another Vim introduction when you already have the free options (vimtutor etc.) and FEM's "Vim Fundamentals" won't fix my pains with getting it to work as I'm expecting it to work.
- steakknife 4y agoHow is it that nobody seems to know that every major editor has either vim mode or a vim plugin. I love vim, but I almost never use it directly. I usually use JetBrains IDE with vim plugin. Best of both worlds.
- Lio 4y agoI guess many of us have tried but don’t like the “uncanny valley” where standard Vim thing don’t work. It’s been a few years since I last tried so hopefully this has improved. I tried the vim plugin for Jetbrains and found it lacked window navigation and support for things like registers that I use a lot in vim. At the time I was using webstorm (at a client’s insistence) and found that for the weird JS project we were working on Tern.js was actually better at refactoring and navigating anyway so I just went back to using it with Vim.
- Otek 4y agoThis is a good starting point if you ever feel like trying again with Neovim. https://github.com/nvim-lua/kickstart.nvim/blob/master/init.lua https://github.com/nvim-lua/kickstart.nvim/blob/master/init....
- immrammc 4y ago
- stevebmark 4y agoPlease just read Practical Vim if you’re going to double down on using Vim. All of these tutorials are the minimal basics. Vim forces you to glue together lots of inefficient commands to manipulate text. I feel frustrated seeing Vim users tout how efficient their editor is when they haven’t learned all of Vim’s nasty bells and whistles you need to actually be efficient at manipulating text. (When you press colon, do you know how to edit the command in Vim mode? No? Read Practical Vim).
- bckr 4y agoI can't really understand whether you recommend Vim itself or not, because of these sentences: > Vim forces you to glue together lots of inefficient commands to manipulate text > Vim’s nasty bells and whistles you need to actually be efficient at manipulating text
- stevebmark 4y agoI’m a power Vim user. I do not recommend it for code editing. Learn it as a curiosity if you want. It’s also handy for quickly editing over SSH. IDEs with multiple cursors are so much nicer than Vim.
- bckr 4y agocool, that's a really useful opinion! Perhaps I'll stick with VS Code over SSH, then
- pindab0ter 4y agoThere's no reason to be snarky.
- bckr 4y agoWasn't being snarky.
- azemetre 4y ago
- drodil 4y agoWhen I was learning vim, I decided to extend the existing vimtutor with some more programming specific tasks. You can find it at https://github.com/drodil/codetutor.vim https://github.com/drodil/codetutor.vim if you are interested :)
- bordercases 4y ago
- CoffeePython 4y agoCongrats on launching :) I built a pretty similar tool last year [1]. This looks like it has some nice improvements over the stuff I did with mine. Wish I had the time to improve on the course I launched but I ended up starting a company shortly after launching my course and getting into YC. [1] https://www.vim.so https://www.vim.so
- psyklic 4y agoThis is very kind, saying "pretty similar." The example exercise seems nearly identical!
- phkahler 4y agoJust type "vimtutor". If you have vim you should also have vimtutor.
- wruza 4y agoAh, the lost ritual of descending into accompanying manuals. Only a few are able to practice it nowadays.
- yjftsjthsd-h 4y agoIn fairness, a lot of software doesn't come with good documentation built-in anymore, so it's understandable that people would get out of the habit.