]> git.gir.st - VimFx.git/blob - README.md
Merge pull request #142 from lydell/master
[VimFx.git] / README.md
1 # VimFx - Vim keyboard shortcuts for Firefox
2
3 *Extension AMO page*: https://addons.mozilla.org/en-US/firefox/addon/vimfx/
4
5 *Contribute your localization! See `locale` folder*
6
7 [VimFx](https://addons.mozilla.org/en-US/firefox/addon/vimfx/)
8 is a [Mozilla Firefox](https://www.mozilla.org/en-US/firefox/fx/#desktop)
9 extension which introduces Vim-style keyboard shortcuts for browsing and navigation,
10 significantly reducing the use of mouse, and allowing your hands to rest on the home row.
11
12 VimFx was inspired by [Vimperator](http://www.vimperator.org/)
13 and designed after [Vimium](http://vimium.github.com/) for
14 [Google Chrome](https://www.google.com/intl/en/chrome/browser/) preserving the shortcuts and behavior.
15 If your are used to Vimium then it will be easy to get started with VimFx.
16
17 ## Why VimFx was created
18
19 Even before Vimium there was Vimperator for Firefox. In my opinion the problem
20 with Vimperator is that it has too many features and aggressively changes
21 the default Firefox appearance and behavior. Vimium was developed for Google Chrome
22 and it was exactly what I needed in terms of added functionality. That's why I decided
23 to develop similar extension for Firefox.
24
25 VimFx will be nice to your browser and to your habits. Promise.
26
27 ## Credits
28
29
30
31 ## Key Features
32
33 - Concise shortcuts for most commonly performed actions
34 - Follow and access controls on the page using hint markers
35 - Easy access to the Help page which describes all available shortcuts (press ?)
36
37 ## Shortcuts
38
39 Might not be up to date. Please refer to the Help dialog withing the extension
40 for the most relevant list.
41
42 Global shortcut to enable/disable VimFx: `Shift-Alt-v`
43
44 ### URLs
45
46 o Focus the Address Bar
47 p Navigate to the address in the clipboard
48 P Open new tab and navigate to the address in the clipboard
49 yf Copy link url to the clipboard
50 vf Focus element
51 yy Copy current page link to the clipboard
52 r Reload current page
53 R Reload current page and all the assets (js, css, etc.)
54 ar Reload pages in all tabs
55 aR Reload pages in all tabs including assets (js, css, img)
56
57 ### Navigating
58
59 gg Scroll to the Top of the page
60 G Scroll to the Bottom of the page
61 j,c-e Scroll Down
62 k,c-y Scroll Up
63 h Scroll Left
64 l Scroll Right
65 d Scroll half a Page Down
66 u Scroll half a Page Up
67 c-f Scroll full Page Down
68 c-b Scroll full Page Up
69
70 ### Tabs
71
72 t Open New Blank tab
73 J,gT Go to the Previous tab
74 K,gt Go to the Next tab
75 c-J Move current tab to the Left
76 c-K Move current tab to the Right
77 gh Navigate to the Home Page
78 gH,g0 Go to the First tab
79 gL,g$ Go to the Last tab
80 x Close current tab
81 X Restore last closed tab
82
83 ### Browsing
84
85 f Follow a link on the current page
86 F Follow a link on the current page in a new tab
87 H Go Back in history
88 L Go Forward in history
89
90 ### Misc
91
92 .,/ Enter Find mode
93 a.,a/ Enter Find mode to highlight all matches
94 n Go to the next Find match
95 N Go to the previous Find match
96 ?,> Show Help Dialog
97 Esc Close this dialog and cancel hint markers
98
99 ## Contributing
100
101 tl;dr: Pull request to the **develop** branch!
102
103 1. Fork.
104
105 2. Clone.
106
107 3. Checkout the **develop** branch: `git checkout develop`
108
109 4. Create a new branch (using develop as base): `git checkout -b myTopicBranch`
110
111 Using develop (and not master) as base makes it easier to pull request to develop when you're done.
112
113 5. Code! Try to follow the style of the rest of the code. There are no written rules (yet?).
114
115 6. Push your branch to your fork on GitHub.
116
117 7. Pull request to the **develop** branch.
118
119 Tips:
120
121 - Compile the .coffee files with the **`--bare`** option! Otherwise you will get errors.
122
123 - Run `coffee -cbw .` from the root of the project to automatically compile on changes.
124
125 - Put a file called exactly `VimFx@akhodakivskiy.github.com` in the extensions/ folder of a Firefox
126 profile, containing the absolute path to the extension/ folder in the project. Then you just need
127 to restart Firefox (use some add-on!) after each change. More details in [this MDN article][mdn-extdevenv].
128
129 [mdn-extdevenv]: https://developer.mozilla.org/en-US/docs/Setting_up_extension_development_environment#Firefox_extension_proxy_file
Imprint / Impressum