Extension AMO page: https://addons.mozilla.org/en-US/firefox/addon/vimfx.
Mailing list: [email protected] (just send an email to subscribe)
Contribute your localization! See locale
folder.
Read Contributing and Reporting Issues section for tips.
Tl;dr: Pull request to the develop branch! Issues in English!
VimFx is a Mozilla Firefox extension which introduces Vim-style keyboard shortcuts for browsing and navigation, significantly reducing the use of mouse, and allowing your hands to rest on the home row.
VimFx was inspired by Vimperator and designed after Vimium for Google Chrome preserving the shortcuts and behavior. If your are used to Vimium then it will be easy to get started with VimFx.
- Please submit bug reports and feature requests in English.
- Please submit cotribution pull requests for
develop
branch only. Pull requests formaster
will be closed. Thank you! - Contribute your localization! See
locale
folder.
Even before Vimium there was Vimperator for Firefox. In my opinion the problem with Vimperator is that it has too many features and aggressively changes the default Firefox appearance and behavior. Vimium was developed for Google Chrome and it was exactly what I needed in terms of added functionality. That's why I decided to develop similar extension for Firefox.
VimFx will be nice to your browser and to your habits. Promise.
- Concise shortcuts for most commonly performed actions
- Follow and access controls on the page using hint markers
- Easy access to the Help page which describes all available shortcuts (press ?)
Might not be up to date. Please refer to the Help dialog withing the extension for the most relevant list.
Global shortcut to enable/disable VimFx: Shift-Alt-v
o Focus the Address Bar
p Navigate to the address in the clipboard
P Open new tab and navigate to the address in the clipboard
yf Copy link url to the clipboard
vf Focus element
yy Copy current page link to the clipboard
r Reload current page
R Reload current page and all the assets (js, css, etc.)
ar Reload pages in all tabs
aR Reload pages in all tabs including assets (js, css, img)
s Stop loading current page
as Stop loading pages in all tabs
gg Scroll to the Top of the page
G Scroll to the Bottom of the page
j,c-e Scroll Down
k,c-y Scroll Up
h Scroll Left
l Scroll Right
d Scroll half a Page Down
u Scroll half a Page Up
c-f Scroll full Page Down
c-b Scroll full Page Up
t Open New Blank tab
J,gT Go to the Previous tab
K,gt Go to the Next tab
c-J Move current tab to the Left
c-K Move current tab to the Right
gh Navigate to the Home Page
gH,g0 Go to the First tab
gL,g$ Go to the Last tab
x Close current tab
X Restore last closed tab
f Follow a link on the current page
F Follow a link on the current page in a new tab
H Go Back in history
L Go Forward in history
.,/ Enter Find mode
a.,a/ Enter Find mode to highlight all matches
n Go to the next Find match
N Go to the previous Find match
?,> Show Help Dialog
Esc Close this dialog and cancel hint markers
: Open Developer Toolbar
- Fork.
- Clone.
- Checkout the develop branch:
git checkout develop
- Create a new branch (using develop as base):
git checkout -b myTopicBranch
Using develop (and not master) as base makes it easier to pull request to develop when you're done. - Code! Try to follow the style of the rest of the code. There are no written rules (yet?).
- Push your branch to your fork on GitHub.
- Pull request to the develop branch.
- Compile the .coffee files with the
--bare
option! Otherwise you will get errors. - Run
coffee -cbw .
from the root of the project to automatically compile on changes. - Put a file called exactly
[email protected]
in the extensions/ folder of a Firefox profile, containing the absolute path to the extension/ folder in the project. Then you just need to restart Firefox (use some add-on!) after each change. More details in this MDN article. - Only create tickets for issues and feature requests in English. Otherwise duplicate tickets in different languages will pile up.