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