Vimium Is Vim For Your Browser

NeuralNine · Intermediate ·💻 AI-Assisted Coding ·4y ago

Key Takeaways

The video demonstrates the use of Vimium, a plugin that brings Vim key bindings to browsers like Firefox and Chrome, enhancing navigation and control with techniques such as using hjkl for movement and gs for viewing page source.

Full Transcript

[Music] what is going on guys welcome back in today's little video i want to show you a plug-in that i discovered a couple of days ago for firefox and chrome and i think it might be interesting to some of you guys because i have a lot of vim content on this channel and usually the vim related videos perform quite well so i think that a lot of you guys are interested in vim or at least vim key bindings and this plugin that i found for firefox and chrome is called vimium you can get it here on a firefox add-on store or in a chrome store and essentially this is a plug-in that introduces vim extensions or vim key bindings as an extension to your browser now the key bindings are not exactly the same you can go to the github page here and you can look up the key bindings they're not the same but the idea is the same the idea is that you have your main keys like the letter keys and the numbers and essentially this is what you use in order to do certain things you don't have to click the menu here or you don't have to go to the url bar and do something you just use these key bindings to operate your browser and it makes it more efficient especially if you are already getting used to it i just have it for a couple of days so i'm i'm not entirely used to the plugin yet but essentially you can do very basic stuff like using hjkl instead of the arrow keys but it's not the exact same thing it's even better because when you try to scroll with the arrow keys so for example i'm going to now hold down the the down arrow what happens is you can see that it always makes like a step and then it pauses and then it starts scrolling so you can see it always makes this little step then it makes a pause and then it starts scrolling same thing with up and i don't think this is very pleasant i like to use jk for that because when you press j it immediately starts scrolling and when you press k it immediately starts scrolling up and the same with hl for left right so just a basic thing here you can do the same thing with d and u for page down and page up to go a little bit faster and you can also use the typical vim key bindings of gg and capital g to go to the bottom of the page top of the page so gg goes to the top of the page and capital g goes to the bottom of the page i think it's very useful to just navigate the site because otherwise especially if it's a very long site you just get the mouse and you you scroll and i don't know what so it's a very very um nice key binding i would say um what we can also do is we can open links and this is a very interesting thing if you don't want to use the mouse because you have a couple of links here you can have this link you have all these links here you have these links and these links um and what you can do with the keyboard is you can just press f like lowercase f if you want to do it in the same tab and capital f if you want to do it in a different tab i'm going to go with capital f to open a new tab and essentially you can see now that all the links have certain letters and depending on which one i want to open i just type the key so for example if i want to go to the chrome web store i type ss and then it opens up the chrome web store in a second tab i can do the same thing here again capital f and i can go with um i know sd and opens this update readme commit message here so very interesting um again lowercase f does it in the same tab uh we can also do some basic stuff like reloading the page by just pressing r uh we can also do some stuff like gs to show the source code which is probably not something to use all the time but you don't have to go right click view page source you just you just say gs and there it is um and you also have this this is i think very interesting if you want to copy the url what you usually do of course is you go up here you select everything especially if it's a very long url you go control a maybe and then ctrl c what you can do here is you can just anywhere in the page press y y so usually the command for yanking a line for copying a line and if you press yy you're just copying um the url here so if i paste it now i have this url copied in my clipboard and i can also do the same thing with links so i can say y f and then i can do the same thing that i did before of course they need to be visible so y f and then i can copy the link to [Music] for example to this year to ap and then if i go to a new tab uh what happened here oh it's the same link okay uh or no it's actually not the same link we have the blame in here there you go so there you can see that it takes me to that page we can copy links by just pressing y f and then uh yeah then we can just press the combination again to copy a certain link um what we can also do is we can open a url very basic thing so with capital o you open it in a new tab with lowercase o you open it and open it in the same tab so capital o and then for example i don't know um what are we going to do stocks for example and this does a google search in this case because it wasn't a url but it's it's essentially the same thing as just typing something up here in the url bar um and you can do that in the same page you can do the same thing with bookmarks i'm not going to do that because this would reveal all my bookmarks i don't want to do that here but by using b and capital b you can just go through your bookmarks and do the same thing that you did with the url um then you can also use the basic vim search with just slash and then i don't know find for example and then or actually find this bad let's go tab and then i can press n [Music] or capital n to go back just a basic bim search here um and you can also navigate using the hl key so if i go here for example to this here and then to the github main page i can just type h to go back or l to go forward so hh would get me to this now i'm not sure this is the first time i even think about this if we can combine this with numbers like in the ordinary vim i don't think so to be honest but if i type 2l oh it actually works two h goes two back and one l goes just one fourth okay it actually works you can combine it even this is even more impressive i didn't know that up until i was recording this video here um that you can combine this with numbers as well now i'm not sure if this is uh possible for all commands we can try so jjj is like that if i go 10 j it scrolls more if i go 20j yeah it actually works you can combine the numbers with the individual key bindings to repeat them this is very impressive actually i didn't know that um and yeah that's it for the basic commands we also have some tab commands so the tab commands are actually quite useful what you can do first of all is you can open up a new tab by just pressing t new empty tab and i can type something like test there you go and what i can now do is instead of clicking here and going through the tabs with my mouse what i can do is i can just uh press j capital j and uh capital k so not not the keys for scrolling up and down but capitals so we can go left with j and write with k now of course if you are in a text box this is a problem because when you're in a text box the bindings are disabled but essentially you can just go through the things like that very useful you can also go to the first tab or to the last tab let's say we're here in reddit for example now i can press g0 to go to the first tab or g dollar to go to the last tab which is you know the bindings in vim to go to the first position in the line in the last position in the line um but this is how you can do that you can also duplicate tabs so if you want to have this tab again you just press yt and it opens a new tab with the exact same url uh also can be quite useful we can close a tab by just pressing x if we want to restore it we press shift x i think we should also be able to restore two tabs so if i press two capital x it restores two tabs very impressive um and what we can also do is we can search through tabs so if we have let's say 50 tabs open which is not that unrealistic i can just type capital t and then i don't know for example where is reddit and i can type reddit and then i can go to this tab i don't have to go click through all the tabs to to find it i can just look for it and it i think it searches for the url and for the title so not for the page content unfortunately um and we can also shift a current tab into a new window so this tab here i want to have it in a new window shift w and it gets it into a new window instead of a new tab um yeah one last thing here that we can do is we can also say alt p to pin tabs or to unpin them but this allows us to do that here actually i don't need to do it like that i can do it with a k key yeah so can be useful can be interesting if you need it yeah that's it so then we also have a couple of more advanced things this is like yeah i don't think that this is what you need on an everyday basis but it can be quite useful and for that for the next one i have to actually change my keyboard layout because i have to use the i think it's the back tick and the problem is that on a german keyboard which is what i'm using the backtick is not triggering immediately so i need to type two backticks to actually get a backtick it's a little bit confusing uh but if you don't have a us keyboard layout this can be a problem so when you have a us keyboard layout though you can just type a back tick and the back tick jumps to a certain mark and the mark can be defined with m so for example i want to say um here at this at this point here where i see keyboard bindings in the top i want to define the mark a so m a and you can see here it says created local mark a and now i can scroll somewhere else and i can just type backtick a ah or actually backtick a and it jumps back to that now i'm not sure if it works across tabs so if i type this here no it doesn't work across tabs but in the same tab if i define a certain position so let's go to i don't know some wikipedia article let's go to activision blizzard for example yeah this is kind of long so let's say i want to have this position here marked as mk mark k then i go to the top and then i basically say backtick k and it gets me to that mark again probably not something that you're going to use on an everyday basis but i think that it even works if you close a tab and reopen it it should first of all it jumps to that immediately but i think it should be possible okay jumps to that immediately but i think that they are um at least in the same session they should be stored i'm not even sure if it's i'm not sure if it's not even stored in general so if you close the browser open it up again maybe it's still there so this would be quite useful if it's the case for pages that you use quite often and then a little thing that i found is uh you can go up the hierarchy by typing gu what does it mean to go up the hierarchy it means that in this case here we're at getup.com then this user then this repository then a blob master and then the readme file now if you type gu it goes up one level in this case it doesn't exist because this is not a valid url but i can go gu gu and then you can see i'm in the repository now of course i can also um combine this with numbers so i can say 3 gu and then it goes immediately to the repository or what i can also do is i can type g capital u and it goes to the base url to the root url which is getup.com can also be quite useful and the last but at least the last command that i want to show you here is ge if you type ge you change the url in the same um in the same tab and if you type g capital e you change it in a new tab so if i press enter now it opens this in a new tab so that's it that that is what i want to show you maybe uh last last thing i want to show you is this is a plugin up here you can exclude certain keys if you want a certain url pattern so if you say okay on github i don't want to be able to i don't know reload the page or copy the url for whatever reason you can exclude the keys here if you want to and you can also go to the options and there are some available commands that are not bound to certain keys so for example um open a new link in private mode for example this would be the command but it doesn't have a key binding if you want to add one you can add a custom mapping here so you can also extend this a little bit you can also show some advanced options here if you want to i think it's a very interesting plugin for those of you who want to make working in the browser more efficient um yeah so that's my recommendation if you're a vim fan get vimium so that's it for today's video if you enjoyed it hope you'll learn something if so let me know by hitting the like button and leaving a comment in the comment section down below and of course don't forget to subscribe to this channel and hit the notification bell to not miss a single future video for free other than that thanks so much for watching see you next video and bye [Music] you

Original Description

Today we talk about the Vimium plugin for Firefox and Chorme, which enables Vim bindings in your browser. ◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾◾ 📚 Programming Books & Merch 📚 🐍 The Python Bible Book: https://www.neuralnine.com/books/ 💻 The Algorithm Bible Book: https://www.neuralnine.com/books/ 👕 Programming Merch: https://www.neuralnine.com/shop 🌐 Social Media & Contact 🌐 📱 Website: https://www.neuralnine.com/ 📷 Instagram: https://www.instagram.com/neuralnine 🐦 Twitter: https://twitter.com/neuralnine 🤵 LinkedIn: https://www.linkedin.com/company/neuralnine/ 📁 GitHub: https://github.com/NeuralNine 🎙 Discord: https://discord.gg/JU4xr8U3dm 🎵 Outro Music From: https://www.bensound.com/
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from NeuralNine · NeuralNine · 0 of 60

← Previous Next →
1 Visualizing Stock Data With Candlestick Charts in Python
Visualizing Stock Data With Candlestick Charts in Python
NeuralNine
2 Python Beginner Tutorial #1 - Installation and First Program
Python Beginner Tutorial #1 - Installation and First Program
NeuralNine
3 Python Beginner Tutorial #2 - Variables and Data Types
Python Beginner Tutorial #2 - Variables and Data Types
NeuralNine
4 Python Beginner Tutorial #3 - Operators and User Input
Python Beginner Tutorial #3 - Operators and User Input
NeuralNine
5 Python Beginner Tutorial #4 - If Statements and Conditions
Python Beginner Tutorial #4 - If Statements and Conditions
NeuralNine
6 Python Beginner Tutorial #5 - Loops
Python Beginner Tutorial #5 - Loops
NeuralNine
7 Python Beginner Tutorial #6 - Sequences and Collections
Python Beginner Tutorial #6 - Sequences and Collections
NeuralNine
8 Python Beginner Tutorial #7 - Functions
Python Beginner Tutorial #7 - Functions
NeuralNine
9 Python Beginner Tutorial #8 - Exception Handling
Python Beginner Tutorial #8 - Exception Handling
NeuralNine
10 Python Beginner Tutorial #9 - File Operations
Python Beginner Tutorial #9 - File Operations
NeuralNine
11 Python Beginner Tutorial #10 - String Functions
Python Beginner Tutorial #10 - String Functions
NeuralNine
12 Python Intermediate Tutorial #1 - Classes and Objects
Python Intermediate Tutorial #1 - Classes and Objects
NeuralNine
13 Python Intermediate Tutorial #2 - Inheritance
Python Intermediate Tutorial #2 - Inheritance
NeuralNine
14 Python Intermediate Tutorial #3 - Multithreading
Python Intermediate Tutorial #3 - Multithreading
NeuralNine
15 Python Intermediate Tutorial #4 - Synchronizing Threads
Python Intermediate Tutorial #4 - Synchronizing Threads
NeuralNine
16 Python Intermediate Tutorial #5 - Events and Daemon Threads
Python Intermediate Tutorial #5 - Events and Daemon Threads
NeuralNine
17 Python Intermediate Tutorial #6 - Queues
Python Intermediate Tutorial #6 - Queues
NeuralNine
18 Python Intermediate Tutorial #7 - Sockets and Network Programming
Python Intermediate Tutorial #7 - Sockets and Network Programming
NeuralNine
19 Python Intermediate Tutorial #8 - Database Programming
Python Intermediate Tutorial #8 - Database Programming
NeuralNine
20 Python Intermediate Tutorial #9 - Recursion
Python Intermediate Tutorial #9 - Recursion
NeuralNine
21 Python Intermediate Tutorial #10 - XML Processing
Python Intermediate Tutorial #10 - XML Processing
NeuralNine
22 Python Intermediate Tutorial #11 - Logging
Python Intermediate Tutorial #11 - Logging
NeuralNine
23 Python Data Science Tutorial #1 - Anaconda and PyCharm Setup
Python Data Science Tutorial #1 - Anaconda and PyCharm Setup
NeuralNine
24 Python Data Science Tutorial #2 - NumPy Arrays
Python Data Science Tutorial #2 - NumPy Arrays
NeuralNine
25 Python Data Science Tutorial #3 - Numpy Functions
Python Data Science Tutorial #3 - Numpy Functions
NeuralNine
26 Python Data Science Tutorial #4 - Plotting Functions With Matplotlib
Python Data Science Tutorial #4 - Plotting Functions With Matplotlib
NeuralNine
27 Python Data Science Tutorial #5 - Subplots and Multiple Windows
Python Data Science Tutorial #5 - Subplots and Multiple Windows
NeuralNine
28 Python Data Science Tutorial #6 - Matplotlib Styling
Python Data Science Tutorial #6 - Matplotlib Styling
NeuralNine
29 Python Data Science Tutorial #7 - Bar Charts with Matplotlib
Python Data Science Tutorial #7 - Bar Charts with Matplotlib
NeuralNine
30 Python Data Science Tutorial #8 - Pie Charts with Matplotlib
Python Data Science Tutorial #8 - Pie Charts with Matplotlib
NeuralNine
31 Python Data Science Tutorial #9 - Plotting Histograms with Matplotlib
Python Data Science Tutorial #9 - Plotting Histograms with Matplotlib
NeuralNine
32 Python Data Science Tutorial #10 - Scatter Plots with Matplotlib
Python Data Science Tutorial #10 - Scatter Plots with Matplotlib
NeuralNine
33 Python Data Science Tutorial #11 - 3D Plotting with Matplotlib
Python Data Science Tutorial #11 - 3D Plotting with Matplotlib
NeuralNine
34 Python Data Science Tutorial #12 - Pandas Series
Python Data Science Tutorial #12 - Pandas Series
NeuralNine
35 Python Data Science Tutorial #13 - Pandas Data Frames
Python Data Science Tutorial #13 - Pandas Data Frames
NeuralNine
36 Python Data Science Tutorial #14 - Pandas Statistics
Python Data Science Tutorial #14 - Pandas Statistics
NeuralNine
37 Python Data Science Tutorial #15 - Pandas Sorting and Functions
Python Data Science Tutorial #15 - Pandas Sorting and Functions
NeuralNine
38 Python Data Science Tutorial #16 - Pandas Merging Data Frames
Python Data Science Tutorial #16 - Pandas Merging Data Frames
NeuralNine
39 Python Data Science Tutorial #17 - Pandas Queries
Python Data Science Tutorial #17 - Pandas Queries
NeuralNine
40 Python Machine Learning Tutorial #1 - What is Machine Learning?
Python Machine Learning Tutorial #1 - What is Machine Learning?
NeuralNine
41 Python Machine Learning Tutorial #2 - Linear Regression
Python Machine Learning Tutorial #2 - Linear Regression
NeuralNine
42 Python Machine Learning Tutorial #3 - K-Nearest Neighbors Classification
Python Machine Learning Tutorial #3 - K-Nearest Neighbors Classification
NeuralNine
43 Python Machine Learning #4 - Support Vector Machines
Python Machine Learning #4 - Support Vector Machines
NeuralNine
44 Python Machine Learning Tutorial #5 - Decision Trees and Random Forest Classification
Python Machine Learning Tutorial #5 - Decision Trees and Random Forest Classification
NeuralNine
45 Python Machine Learning Tutorial #6 - K-Means Clustering
Python Machine Learning Tutorial #6 - K-Means Clustering
NeuralNine
46 Python Machine Learning Tutorial #7 - Neural Networks
Python Machine Learning Tutorial #7 - Neural Networks
NeuralNine
47 Python Machine Learning Tutorial #8 - Handwritten Digit Recognition with Tensorflow
Python Machine Learning Tutorial #8 - Handwritten Digit Recognition with Tensorflow
NeuralNine
48 Generating Poetic Texts with Recurrent Neural Networks in Python
Generating Poetic Texts with Recurrent Neural Networks in Python
NeuralNine
49 Stock Portfolio Visualization with Matplotlib in Python
Stock Portfolio Visualization with Matplotlib in Python
NeuralNine
50 Analyzing Coronavirus with Python (COVID-19)
Analyzing Coronavirus with Python (COVID-19)
NeuralNine
51 Making Text Images Readable Again with Python and OpenCV
Making Text Images Readable Again with Python and OpenCV
NeuralNine
52 Neural Networks Simply Explained (Theory)
Neural Networks Simply Explained (Theory)
NeuralNine
53 Motion Filtering with OpenCV in Python
Motion Filtering with OpenCV in Python
NeuralNine
54 Top 5 Programming Languages To Learn in 2020
Top 5 Programming Languages To Learn in 2020
NeuralNine
55 Simple TCP Chat Room in Python
Simple TCP Chat Room in Python
NeuralNine
56 Image Classification with Neural Networks in Python
Image Classification with Neural Networks in Python
NeuralNine
57 Edge Detection with OpenCV in Python
Edge Detection with OpenCV in Python
NeuralNine
58 S&P 500 Web Scraping with Python
S&P 500 Web Scraping with Python
NeuralNine
59 Simple Sentiment Text Analysis in Python
Simple Sentiment Text Analysis in Python
NeuralNine
60 Introduction - Algorithms & Data Structures #1
Introduction - Algorithms & Data Structures #1
NeuralNine

This video teaches how to use Vimium to bring the power of Vim key bindings to your browser, significantly enhancing navigation and control. By learning these bindings, viewers can improve their browsing efficiency and productivity. The video covers various techniques and shortcuts for tasks such as scrolling, copying URLs, opening new tabs, and managing tabs.

Key Takeaways
  1. Install Vimium plugin
  2. Configure key bindings
  3. Use hjkl instead of arrow keys
  4. Use jk for scrolling
  5. Use gg and capital G for going to top and bottom of page
  6. Press gs to view page source
  7. Press yy to copy the url
  8. Press yf to copy a link
  9. Press capital o to open a url in a new tab
  10. Press lowercase o to open a url in the same tab
💡 Vimium provides a powerful way to navigate and control your browser using Vim key bindings, which can significantly improve browsing efficiency and productivity.

Related Reads

Up next
How to Create ONE PAGE Website using Claude AI (FREE & FAST)
Quick Tips - Web Desiign & Ai Tools
Watch →