Left: | ||
Right: |
OLD | NEW |
---|---|
1 Adblock Plus for Chrome and Opera | 1 Adblock Plus for Chrome, Opera and Edge |
Sebastian Noack
2017/06/07 14:42:14
I wonder whether we should spell out "Micorosft Ed
kzar
2017/06/08 10:50:27
FWIW I agree.
Oleksandr
2017/06/14 03:41:01
Done.
| |
2 ================================= | 2 ======================================= |
3 | 3 |
4 This repository contains the platform-specific Adblock Plus source code for | 4 This repository contains the platform-specific Adblock Plus source code for |
5 Chrome and Opera. It can be used to build Adblock Plus for these platforms, | 5 Chrome, Opera and Edge. It can be used to build Adblock Plus for these |
6 generic Adblock Plus code will be extracted from other repositories | 6 platforms, generic Adblock Plus code will be extracted from other repositories |
7 automatically (see _dependencies_ file). | 7 automatically (see _dependencies_ file). |
8 | 8 |
9 Building | 9 Building |
10 --------- | 10 --------- |
11 | 11 |
12 ### Requirements | 12 ### Requirements |
13 | 13 |
14 - [Mercurial](https://www.mercurial-scm.org/) or [Git](https://git-scm.com/) (wh ichever you used to clone this repository) | 14 - [Mercurial](https://www.mercurial-scm.org/) or [Git](https://git-scm.com/) (wh ichever you used to clone this repository) |
15 - [Python 2.7](https://www.python.org) | 15 - [Python 2.7](https://www.python.org) |
16 - [The Jinja2 module](http://jinja.pocoo.org/docs) (>= 2.8) | 16 - [The Jinja2 module](http://jinja.pocoo.org/docs) (>= 2.8) |
17 - [The PIL module](http://www.pythonware.com/products/pil/) | 17 - [The PIL module](http://www.pythonware.com/products/pil/) |
18 - For signed builds: [PyCrypto module](https://www.dlitz.net/software/pycrypto/) | 18 - For signed builds: [PyCrypto module](https://www.dlitz.net/software/pycrypto/) |
19 | 19 |
20 ### Building the extension | 20 ### Building the extension |
21 | 21 |
22 Run the following command in the project directory: | 22 Run one of the following commands in the project directory, depending on your |
kzar
2017/06/08 10:50:27
Note: If the README changes for Firefox webext[1]
| |
23 target platform: | |
23 | 24 |
24 ./build.py -t chrome build -k adblockpluschrome.pem | 25 ./build.py -t chrome build -k adblockpluschrome.pem |
26 ./build.py -t edge build | |
Sebastian Noack
2017/06/07 14:42:14
Perhaps we should add a note below, that the gener
Oleksandr
2017/06/14 03:41:01
Done.
| |
25 | 27 |
26 This will create a build with a name in the form | 28 This will create a build with a name in the form |
27 _adblockpluschrome-1.2.3.nnnn.crx_ | 29 _adblockpluschrome-1.2.3.nnnn.crx_ or _adblockplusedge-1.2.3.nnnn.appx_. |
28 Note that you don't need an existing signing key for Chrome, a new key | 30 Note that you don't need an existing signing key for Chrome, a new key |
29 will be created automatically if the file doesn't exist. | 31 will be created automatically if the file doesn't exist. |
30 | 32 |
31 ### Development environment | 33 ### Development environment |
32 | 34 |
33 To simplify the process of testing your changes you can create an unpacked | 35 To simplify the process of testing your changes you can create an unpacked |
34 development environment. For that run the following command: | 36 development environment. For that run one of the following commands: |
35 | 37 |
36 ./build.py -t chrome devenv | 38 ./build.py -t chrome devenv |
39 ./build.py -t edge devenv | |
37 | 40 |
38 This will create a _devenv.chrome_ directory in the repository. In Chrome you | 41 This will create a _devenv.platform_ directory in the repository. In Chrome you |
kzar
2017/06/08 10:50:27
Nit: Blank line before "In Chrome"? I figure the f
| |
39 should load the directory as an unpacked extension. After making changes to the | 42 should load _devenv.chrome_ as an unpacked extension directory. After making |
40 source code re-run the command to update the development environment, the | 43 changes to the source code re-run the command to update the development |
41 extension should reload automatically after a few seconds. | 44 environment, the extension should reload automatically after a few seconds. |
45 | |
46 For Edge you should load _devenv.edge/Extension_ as an unpacked extension | |
47 directory. Edge build does not automatically detect changes, so after | |
48 rebuilding the extension you should manually force reloading it in Edge by | |
49 hitting the _Reload Extension_ button. | |
42 | 50 |
43 Running the unit tests | 51 Running the unit tests |
44 ---------------------- | 52 ---------------------- |
45 | 53 |
46 To verify your changes you can use the unit test suite located in the _qunit_ | 54 To verify your changes you can use the unit test suite located in the _qunit_ |
47 directory of the repository. In order to run the unit tests go to the | 55 directory of the repository. In order to run the unit tests go to the |
48 extension's Options page, open the JavaScript Console and type in: | 56 extension's Options page, open the JavaScript Console and type in: |
49 | 57 |
50 location.href = "qunit/index.html"; | 58 location.href = "qunit/index.html"; |
51 | 59 |
52 The unit tests will run automatically once the page loads. | 60 The unit tests will run automatically once the page loads. |
53 | 61 |
54 Linting | 62 Linting |
55 ------- | 63 ------- |
56 | 64 |
57 You can lint the code using [ESLint](http://eslint.org). | 65 You can lint the code using [ESLint](http://eslint.org). |
58 | 66 |
59 eslint *.js lib/ qunit/ ext/ chrome/ | 67 eslint *.js lib/ qunit/ ext/ chrome/ |
60 | 68 |
61 You will need to set up ESLint and our configuration first, see | 69 You will need to set up ESLint and our configuration first, see |
62 [eslint-config-eyeo](https://hg.adblockplus.org/codingtools/file/tip/eslint-conf ig-eyeo) | 70 [eslint-config-eyeo](https://hg.adblockplus.org/codingtools/file/tip/eslint-conf ig-eyeo) |
63 for more information. | 71 for more information. |
OLD | NEW |