Skip to content

Commit 036d645

Browse files
ma8matimss
authored andcommitted
Fix #690: Create README.md (#694)
README.md shows the name, release versions, description, features, installation, method of building own version, contributing and license.
1 parent 7088253 commit 036d645

File tree

2 files changed

+254
-0
lines changed

2 files changed

+254
-0
lines changed

README.md

Lines changed: 253 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,253 @@
1+
Vimperator-labs
2+
===============
3+
4+
[![amo release][amo_version]][amo_release]
5+
[![github release][github_version]][github_release]
6+
7+
**Make Firefox/Thunderbird look and behave like Vim**
8+
9+
> **To beginners**: Welcome to the Vimperator-labs!
10+
> This README isn't written usage and help for the add-on itself.
11+
> Try `:help` command after installing add-on for details.
12+
13+
Description
14+
-----------
15+
16+
See also [Home page][homepage].
17+
18+
Writing efficient user interfaces is the main maxim, here at Vimperator labs.
19+
We often follow the Vim way of doing things, but extend its principles when
20+
necessary.
21+
Towards this end, we've created the liberator library for Mozilla based
22+
applications, to encapsulate as many of these generic principles as possible,
23+
and liberate developers from the tedium of reinventing the wheel.
24+
25+
Currently, these applications are using this library:
26+
27+
### Vimperator
28+
29+
Vimperator, the flagship project from Vimperator labs, creates a Vim-like
30+
Firefox.
31+
32+
Vimperator is a Firefox browser extension with strong inspiration from the Vim
33+
text editor, with a mind towards faster and more efficient browsing. It has
34+
similar key bindings and you could call it a modal web browser, as key bindings
35+
differ according to which mode you are in. For example, it has a special Hint
36+
mode, where you can follow links easily with the keyboard only. Also most
37+
functionality is available as commands, typing `:back` will go back within the
38+
current page history, just like hitting the back button in the toolbar.
39+
40+
### Muttator
41+
42+
Muttator is to Thunderbird what Vimperator is to Firefox. Combines the best
43+
aspects of Vim and Mutt.
44+
45+
Muttator is a free add-on for the Thunderbird mail client, which makes it look
46+
and behave like the Vim text editor. It has similar key bindings and you could
47+
call it a modal mail client, as key bindings differ according to which mode you
48+
are in. For example, it the same keys can select the next message while the
49+
message list has focus or can scroll down an existing message when the message
50+
preview is selected. It also adds commands for accessing most Thunderbird
51+
functionality. E.g., `:contact -lastname "Vimperator" [email protected]`
52+
will add Vimperator's mailing list to your address book.
53+
54+
Features (Vimperator)
55+
---------------------
56+
57+
- Vim-like keybindings (`h`, `j`, `k`, `l`, `gg`, `G`, `0`, `$`, `ZZ`, etc.)
58+
- Ex commands (`:quit`, `:open www.foo.com`, ...)
59+
- Tab completion available for all commands with support for 'longest' matching
60+
when set in 'wildmode'
61+
- Extensions! Yes, you can extend Vimperator's functionality with scripts just
62+
like you can extend Firefox with extensions
63+
- Explore JavaScript objects with `:echo window` and even context-sensitive tab
64+
completion
65+
- Hit-a-hint like navigation of links (start with `f` to follow a link)
66+
- Advanced completion of bookmark and history URLs (searching also in title,
67+
not only URL)
68+
- Vim-like statusline with a wget-like progress bar
69+
- Minimal GUI (easily hide useless menubar and toolbar with `:set guioptions=`)
70+
- Ability to `:source` JavaScript files, and to use a `~/.vimperatorrc` file
71+
- Easy quick searches (`:open foo` will search for "foo" in google, `:open ebay
72+
terminator` will search for "terminator" on ebay) with support for Firefox
73+
keyword bookmarks and search engines
74+
- Count supported for many commands (`3<C-o>` will go back 3 pages)
75+
- Beep on errors
76+
- Marks support (`ma` to set mark 'a' on a webpage, `'a` to go there)
77+
- QuickMarks support (quickly go to previously marked web pages with
78+
`go{a-zA-Z0-9}`)
79+
- `:map` and `:command` support (and `feedkeys()` for script writers)
80+
- `:time` support for profiling
81+
- Move the text cursor and select text with vim keys and a visual mode
82+
- External editor support
83+
- Macros to replay key strokes
84+
- AutoCommands to execute action on certain events
85+
- A comprehensive `:help`, explaining all commands, mappings and options
86+
- Much more...
87+
88+
Installation (Vimperator)
89+
-------------------------
90+
91+
> Note that Vimperator doesn't support multi-process aka
92+
> [Electrolysis][wiki_e10s] (e10s), it's necessary to disable e10s to use the
93+
> add-on.
94+
95+
- Download **signed** add-on from addons.mozilla.org (AMO) <sup>1</sup>
96+
97+
1. Enter [Add-ons page][amo_release].
98+
2. Click `Continue to Download` button.
99+
3. Click `Add to Firefox` button.
100+
101+
- Download **unsigned** <sup>2</sup> add-on from github.com (Github)
102+
103+
1. Enter [Releases page][github_release].
104+
2. Click `vimperator-3.N.N.xpi` link under Downloads topic.
105+
106+
- Build own version (and signing)
107+
See [Build own version](#build-own-version) topic.
108+
109+
> <sup>1</sup> If the version on [AMO][amo_release] is older than the [latest
110+
> release][github_release], you can build your own version and use it until AMO
111+
> release is updated.
112+
113+
> <sup>2</sup> Since version 48, installing add-on to Firefox has required
114+
> signing. Unsigned add-on is for Unbranded Builds. See [mozilla
115+
> wiki][wiki_signing].
116+
117+
Build own version
118+
-----------------
119+
120+
### Unsigned (for Unbranded Builds)
121+
122+
See http://www.vimperator.org/developerinfo.
123+
124+
### Signed (for Firefox 48+)
125+
126+
Instructions for building this can be found in
127+
vimperator/private.properties.in. See also [MDN document][mdn_signing]
128+
(developer.mozilla.org) for details about signing and distribution.
129+
130+
There are necessary four steps to use own version.
131+
132+
1. Prepare "AMO API key" and "jpm" if first time
133+
2. Build unsigned add-on
134+
3. Submit unsigned add-on to AMO
135+
4. Install signed add-on to Firefox
136+
5. Addition: Use Command-line interface (CLI) to build and submit
137+
138+
#### Prepare AMO API key and jpm
139+
140+
- [AMO API key][amo_api_key] (require Firefox Account)
141+
- [jpm][jpm_repo] (require node.js):
142+
143+
```bash
144+
npm install -g jpm
145+
```
146+
147+
#### Build unsigned add-on
148+
149+
Clone repository and create private.properties:
150+
151+
```bash
152+
git clone https://github.com/vimperator/vimperator-labs.git
153+
cd vimperator-labs/vimperator
154+
cp private.properties.in private.properties
155+
```
156+
157+
Then edit private.properties so that it looks something like:
158+
159+
```makefile
160+
VERSION := $(VERSION).$(shell date '+%Y%m%d%H%M%S')
161+
UUID = vimperator@<uniqueid> # e.g. vimperator@<yourdomain>
162+
AMO_API_KEY = <your API key> # AKA "Issuer"
163+
AMO_API_SECRET = <your API secret>
164+
UPDATE_URL =
165+
UPDATE_URL_XPI =
166+
```
167+
168+
Then run:
169+
170+
```bash
171+
make xpi
172+
```
173+
174+
The unsigned XPI should appear in
175+
`../downloads/vimperator-3.N.N.yyyymmddhhmmss.xpi`.
176+
177+
#### Submit unsigned add-on to AMO
178+
179+
<table>
180+
<tr>
181+
<th>Have you ever submitted own version to AMO?</th><th>How to submit</th>
182+
</tr>
183+
<tr>
184+
<td>No, I'd like to register own version.</td>
185+
<td>Enter <a
186+
href="https://addons.mozilla.org/en-US/developers/addon/submit/distribution">
187+
How to Distribute this Version</a>, upload the XPI selecting <code>On your
188+
own</code> button.
189+
</td>
190+
</tr>
191+
<tr>
192+
<td>Yes, I'd like to update own version.</td>
193+
<td>Enter <a href="https://addons.mozilla.org/en-US/developers/addons">
194+
Manage My Submissions</a>, upload the XPI from your Vimperator's <code>New
195+
Version</code> link.
196+
</td>
197+
</tr>
198+
</table>
199+
200+
Then the validation starts. Finally, automatically validation XPI finishes,
201+
click `Sign add-on` button to sign.
202+
203+
#### Install signed add-on to Firefox
204+
205+
Install it via the link in your AMO developer account (find your Vimperator's
206+
`Manage Status & Versions`). The new UUID makes it a new add-on, so don't
207+
forget to disable the old version.
208+
209+
#### Use CLI to build and submit
210+
211+
After once you signed the add-on, you are able to update the add-on using CLI.
212+
213+
```bash
214+
cd vimperator-labs/vimperator
215+
make sign
216+
```
217+
218+
Contributing
219+
------------
220+
221+
**Vimperator is in need of collaborators! Help bring vimperator into the age
222+
of e10s!**
223+
224+
Please check existing issues for similar issues before opening a new issue.
225+
See [CONTIRIBUTING.md][contributing] for details.
226+
227+
License
228+
-------
229+
230+
Vimperator-labs is released under the MIT license, see [License.txt][license].
231+
232+
Links | URL
233+
---------------------|---------------------------------------------------------
234+
Home page | http://www.vimperator.org/
235+
Add-ons (Vimperator) | https://addons.mozilla.org/en-US/firefox/addon/vimperator/
236+
Add-ons (Muttator) | https://addons.mozilla.org/en-US/firefox/addon/muttator/
237+
Github repository | https://github.com/vimperator/vimperator-labs/
238+
239+
<!-- References -->
240+
[amo_version]: https://img.shields.io/amo/v/vimperator.svg
241+
[amo_release]: https://addons.mozilla.org/en-US/firefox/addon/vimperator/
242+
[github_version]: https://img.shields.io/github/release/vimperator/vimperator-labs.svg
243+
[github_release]: https://github.com/vimperator/vimperator-labs/releases/latest
244+
[homepage]: http://www.vimperator.org/
245+
[wiki_e10s]: https://wiki.mozilla.org/Electrolysis
246+
[wiki_signing]: https://wiki.mozilla.org/Add-ons/Extension_Signing
247+
[mdn_signing]: https://developer.mozilla.org/en-US/Add-ons/Distribution
248+
[amo_api_key]: https://addons.mozilla.org/en-US/developers/addon/api/key/
249+
[jpm_repo]: https://github.com/mozilla-jetpack/jpm
250+
[contributing]: https://github.com/vimperator/vimperator-labs/blob/master/CONTRIBUTING.md
251+
[license]: https://github.com/vimperator/vimperator-labs/blob/master/License.txt
252+
253+
<!-- vim: set ft=markdown sw=4 ts=4 sts=4 et ai: -->

vimperator/NEWS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
201x-xx-xx:
2+
* create README.md
23

34

45
2017-02-01:

0 commit comments

Comments
 (0)