You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+11-9Lines changed: 11 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -45,7 +45,7 @@ These are the basic steps for building your first PEB-based application:
45
45
***2.** Write [a settings JavaScript object](#perl-scripts-api) for every Perl script you are going to run.
46
46
47
47
***3.** Write your Perl scripts.
48
-
Input from local HTML forms is read just like reading POST or GET requests in a Perl CGI script. Use the ``get-post-test.pl`` file within the PEB demo package as an example.
48
+
Input from local HTML forms is read just like reading POST or GET requests in a Perl CGI script. Use the [get-post-test.pl](resources/app/perl/get-post-test.pl) file as an example.
49
49
50
50
***4.** Connect your Perl scripts using a link to ``name-of-script-configuration-object.settings``.
51
51
@@ -71,7 +71,7 @@ PEB is created to work from any folder without installation and all your local H
71
71
72
72
## Security
73
73
* PEB does not need administrative privileges, but does not refuse to use them if needed.
74
-
* PEB does not install or start any kind of server.
74
+
* PEB does not use any kind of server.
75
75
* PEB executes with no sandbox only local Perl 5 scripts and
76
76
users have full access to their local files.
77
77
* Cross-origin requests and cross-site scripting are disabled.
@@ -115,7 +115,9 @@ CONFIG += app_bundle
115
115
```
116
116
117
117
## Runtime Requirements
118
-
* Qt 5 libraries - their full Linux list can be found inside the ``start-peb.sh`` script,
118
+
* Qt 5 libraries.
119
+
Their full list for a QtWebKit Linux build of PEB can be found inside the ``start-peb-webkit.sh`` script.
120
+
119
121
* Perl 5 distribution - any Linux, Mac or Windows Perl distribution.
120
122
121
123
Tested successfully using the following Perl distributions:
@@ -129,11 +131,11 @@ CONFIG += app_bundle
129
131
PEB can also use any Perl on PATH.
130
132
131
133
## Preparing a Perl Distribution for PEB
132
-
Sometimes it is important to minimize the size of the relocatable (or portable) Perl distribution used by a PEB-based application. ``{PEB_binary_directory}/sdk/compactor.pl`` script is one solution to this problem. It finds all dependencies of all Perl scripts in the ``{PEB_binary_directory}/resources/app`` directory and copies them in a new ``{PEB_binary_directory}/perl/lib`` folder; a new ``{PEB_binary_directory}/perl/bin`` is also created. The original ``bin`` and ``lib`` folders are saved as ``{PEB_binary_directory}/perl/bin-original`` and ``{PEB_binary_directory}/perl/lib-original`` respectively. These directories should be manually archived for future use or removed.
134
+
Sometimes it is important to minimize the size of the relocatable (or portable) Perl distribution used by a PEB-based application. [{PEB_binary_directory}/sdk/compactor.pl](sdk/compactor.pl) script is one solution to this problem. It finds all dependencies of all Perl scripts in the ``{PEB_binary_directory}/resources/app`` directory and copies them in a new ``{PEB_binary_directory}/perl/lib`` folder; a new ``{PEB_binary_directory}/perl/bin`` is also created. The original ``bin`` and ``lib`` folders are saved as ``{PEB_binary_directory}/perl/bin-original`` and ``{PEB_binary_directory}/perl/lib-original`` respectively. These directories should be manually archived for future use or removed.
133
135
134
-
``compactor.pl`` should be started using ``{PEB_binary_directory}/compactor.sh`` on a Linux or a Mac machine and ``{PEB_binary_directory}/compactor.cmd`` on a Windows machine to ensure that only the Perl distribution used by PEB is going to start ``compactor.pl``. This is necessary to avoid dependency mismatches with any other Perl on PATH.
136
+
``compactor.pl`` should be started using [{PEB_binary_directory}/compactor.sh](compactor.sh) on a Linux or a Mac machine or [{PEB_binary_directory}/compactor.cmd](compactor.cmd) on a Windows machine to ensure that only the Perl distribution used by PEB is going to start ``compactor.pl``. This is necessary to avoid dependency mismatches with any other Perl on PATH.
135
137
136
-
``compactor.pl`` relies on ``Module::ScanDeps`` and ``File::Copy::Recursive`` CPAN modules, which are located in the ``{PEB_binary_directory}/sdk/lib`` folder.
138
+
``compactor.pl`` relies on ``Module::ScanDeps`` and ``File::Copy::Recursive`` CPAN modules, which are included in the ``{PEB_binary_directory}/sdk/lib`` folder.
137
139
138
140
## Perl Scripts API
139
141
Every Perl script run by PEB is called by clicking a link or submitting a form to a pseudo filename composed from the name of the JavaScript object with the settings of the Perl script and a ``.settings`` extension.
This object property is useless if ``requestMethod`` is not set.
185
187
186
188
*``inputDataHarvester``
187
-
This object property is a function that can get input data from an HTML form or other data source and supply it to PEB.
189
+
This object property is a function that can get input data from an HTML form and supply it to PEB.
188
190
189
191
Single input box example with no dependencies:
190
192
@@ -255,7 +257,7 @@ The following code shows how to start an interactive Perl script right after a l
255
257
</html>
256
258
```
257
259
258
-
The ``index.htm`` file of the demo package demonstrates how to start one script in two instances immediately after a page is loaded.
260
+
The [index.htm](resources/app/index.html) file of the demo package demonstrates how to start one script in two instances immediately after a page is loaded.
259
261
260
262
## Selecting Files and Folders
261
263
Selecting files or folders with their full paths is performed by clicking a link to a pseudo filename composed from the name of the JavaScript object with the settings of the wanted dialog and a ``.dialog`` extension. Selected files or folders are seamlessly inserted in any local page by the ``receiverFunction`` taking all selected files or folders as its only argument.
0 commit comments