Use multiple engines::
-Type in main screen input or address bar, then click on any search engine.
+Type in main screen input or address bar, then click on any search engine on the top part of home screen.
Toolbar::
@@ -44,27 +47,27 @@ Swipe down at top or swipe at any bottom corner to show.
项目主页
-
diff --git a/en/_posts/index.xml b/en/_posts/index.xml
index d24d7c65..74ea67c4 100644
--- a/en/_posts/index.xml
+++ b/en/_posts/index.xml
@@ -2,179 +2,193 @@
_Posts on uweb browser: unlimited power
- /en/_posts/
+ https://jamesfengcao.gitlab.io/uweb/en/_posts/
Recent content in _Posts on uweb browser: unlimited powerHugoen
- Fri, 19 Jul 2024 10:06:21 +0800
-
+ Sat, 18 Apr 2026 16:45:02 +0800
+
- Text selection/processing
- /en/textprocess/
- Fri, 01 Dec 2023 00:00:00 +0000
- /en/textprocess/
- Click the following links to install menus for long pressing the button "link":
note.ms: cloud text sharing, please replace "ric" with your favorite ID
Copy selected text with html format to clipboard
Search with home screen
google Translate
bing translate
deepL
The file "default.select" defines text processing menus for selected text. If no text is selected, the menu item operates on the whole page. Each line of the file has the following format:
+ Html5 applications
+ https://jamesfengcao.gitlab.io/uweb/en/html5/
+ Tue, 06 Jan 2026 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/html5/
+ <h3 id="remotelocal-big-txthtmlmd-files-zstgzbr-compressed-optionally-as-search-engines-or-paged-reader">remote/local big txt/html/md files (.zst,.gz,.br compressed optionally) as search engines or paged reader</h3>
<p><code>i:0/js/reader.html:[remote url]#s=%s</code><br>
is the search engine url for remote/local file.</p>
<p><code>i:0/js/reader.html:[remote url]</code><br>
is the paged reader for big txt/html files.</p>
<p>Users can add a menu item by visiting <a href="../urls/index.html#">url services</a> and clicking the <code>Reader</code> link. After the menu item is installed and uweb restarts, long pressing any big txt/html/md link --> command --> Reader would load the big file in paged reader, long pressing button "->" on bottom toolbar --> add as search engine --> change the last part of url from "#p=1" to "#s=%s" and save the engine.</p>
- Links
- /en/links/
- Sat, 28 Oct 2023 00:00:00 +0000
- /en/links/
- Click the following links to install menus popped by long pressing the bookmark button (with star as icon):
Capture long screenshot (need long screenshot mode)
Select All:CTRL-A/undo:CTRL-Z/Redo:CTRL-Y
Extend site cookies to 10 years
Clear site cookies
VPN
Switch configuration
Wait for network msg
Certificate info
Backup to box.com
Restore from box.com
upload to box.com
More webdav link menu items
Web fullscreen
Long pressing the bookmark button in uweb browser will popup menus defined in file "default.
-
-
- cron
- /en/tcron/
- Wed, 25 Oct 2023 00:00:00 +0000
- /en/tcron/
- crontab (with enhanced semantics) For performance, the file "crontab" uses single space as field separator. Letters are not suppored currently. So use "1" for "January" and 2 for "Tuesday" etc.
The sixth field in crontab file could be in the format of internal links. Specifically, "c:" to execute the following commands in termux and "!" to execute commands directly. If the sixth field is not in any of above formats, then the field will appear as the message of alarm clock.
-
-
- Offline resources
- /en/offlinecache/
- Tue, 11 Apr 2023 00:00:00 +0000
- /en/offlinecache/
- Offline resources locate in the folder "sitecache". With the option "use offline resources" enabled, the corresponding files in "sitecache/[domain name]/[full path including filename, the url path part]" are loaded first before reaching the network.
Serverless local sites Click to install url service that extracts web apps to the folder "sitecache/local/": support web extensions (.crx for chrome & .xpi for firefox).
Any folder under "sitecache" can be visited as a local site.
-
-
- Resource redirection
- /en/redirect/
- Tue, 11 Apr 2023 00:00:00 +0000
- /en/redirect/
- ⚠️Redirection forwards cookies with the setting option "Redirect cookies" enabled, so use the options with care.
Setting options: "Url redirection" vs. "Resource redirection" "Url redirection" redirects the main/page url only while "Resource redirection" is for all urls in the page.
Global redirection Global redirection is enabled with the setting option "Resource redirection" or both "Url redirection" and "Redirect cookies".
When a valid global redirection url is set, the "default.redirect" has no effect, and any url resource is fetched with the new url by appending the original url to the global redirection url.
-
-
- Hosts files
- /en/adblock_domain/
- Mon, 20 Mar 2023 00:00:00 +0000
- /en/adblock_domain/
- The enhanced hosts files "hosts" and "default.hosts" take effect with the setting option "use hosts".
hosts The enhanced file "hosts" defines IP addresses/attributes for domains. Each line has the following format:
[[IP address][attributes]][single space][domain name]
where "[[IP address][attributes]]" could be:
ipv4 address such as:
172.67.157.211 torapp.eu.org
ipv6 address, Ex.:
[2606:4700:3037::6815:8c3] torapp.eu.org
empty, that would lift all server-imposed limitations. Ex.:
[single space]gitee.com
which will make all git repositories on the domain visitable as websites with raw file access url.
-
-
- JS/CSS/HTML/preprocessing for domains
- /en/sitejs/
- Sat, 28 Jan 2023 00:00:00 +0000
- /en/sitejs/
- Javascript (load when page completes, earliest loaded JS should use sitecss). Need to be named as "[domain root].js", such as "yahoo.com.js" or "finance.yahoo.com.js". The script will be loaded on the whole domain tree sites. If several files matches the domain, then the script with longest file name is loaded. Script must be put under the folder "sitejs" or "/data/data/info.torapp.uweb/files/sitejs". The later folder has the priority. Long press the button "settings", check the option "Run user scripts".
-
-
- Bookmarks
- /en/bookmark/
- Mon, 16 Jan 2023 00:00:00 +0000
- /en/bookmark/
- AI, chatgpt etc.
google gemini jeeves morphic komo iaskAI poe freegpt teach-anything magickpen note.ms
rentry
Wait for url from other devices
berify: reverse image search for video
Associated bookmarks Search engine files associate with bookmarks with extension ".html", which means the bookmark file if existing is appended to the page when the search engine file is on screen.
"help_en.html" bookmark associates with the user manual in English. Similarly, "help_zh.html" is for Chinese manual.
+ File manager
+ https://jamesfengcao.gitlab.io/uweb/en/filemanager/
+ Fri, 05 Dec 2025 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/filemanager/
+ <p>Visiting file urls ending with "/" enters internal file manager.</p>
<p>When the current tab is internal file manager, visiting file url for a file shows the content of the file, long pressing button "🕔" -> Editor loads line-based editor for the file. If the file does not exist, saving creates a new file.</p>
<p>Running any command with address bar with the format "d::command line:" to execute "command line" in the current folder of the internal file manager. Ex:<br>
"d::touch a.txt:" to create a new file a.txt.<br>
"d::mkdir subdir:" to create a new folder names "subdir".<br>
"d::mv old new:" to rename the file "old" to be "new".</p>Tips
- /en/tips/
- Mon, 16 Jan 2023 00:00:00 +0000
- /en/tips/
- Text processing for clipboard data:
On home screen, pressing the sharing button of the bottom toolbar popups the text processing menu for clipboard data.
To show web pages in desktop mode:
PC button + option "wide viewport" + global js "force page resizable".
Playing audio when screen off
Option "Floating video" + video fullscreen playing
Multiple home screens and Next/Prev page:
home5.html, home6.mht(or .search or .html), home7.mht(or .search or .html), .
+ https://jamesfengcao.gitlab.io/uweb/en/tips/
+ Fri, 05 Dec 2025 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/tips/
+ <p><strong>Address bar autocompletion as input method when starting with space</strong><br>
When address bar text starts with space, the autocompletion selection is inserted to the focused element on the web page. It could be used to choose AI prompts.</p>
<p><strong>Text processing for clipboard data</strong><br>
On home screen, pressing the sharing button of the bottom toolbar popups the <a href="../textprocess/index.html#">text processing menu</a> for clipboard data.</p>
<p><strong>To show web pages in desktop mode</strong><br>
PC button + option "wide viewport" + global js "force page resizable".<br>
If some dialog is wider than the screen, press "📄" on the bottom toolbar.</p>
- Address bar command line
- /en/acmd/
- Sun, 08 Jan 2023 00:00:00 +0000
- /en/acmd/
- ":!" ( or "!") command line Pressing ":" or "!" with hardware keyboard sets focus on the address bar.
The command line could be a ".js", ".sh" or other executable with arguments. Ex. ":!s g keyword" could invoke "s.js" executable with the whole string as arguments ("s.sh" or "s" if file exists, here "g" as google search engine); ":! g keyword" would invoke the file ".js" or ".sh" as executable.
+ Phrases and input method
+ https://jamesfengcao.gitlab.io/uweb/en/input/
+ Tue, 28 Oct 2025 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/input/
+ <h4 id="defaultinput">"default.input"</h4>
<p>Click the following links to install menus popped by long pressing the share button (with arrow-out-of-square as icon) on the bottom toolbar:<br>
<a href="i:0gdefault.input::@AddrBar%0A">Address Bar</a><br>
<a href="i:0gdefault.input::%20\n%0A">New line</a><br>
<a href="i:0gdefault.input::@^Z@%1A%0A">CTRL-Z: undo</a><br>
<a href="i:0gdefault.input::@^Y@%19%0A">CTRL-Y: redo</a></p>
<p>Long pressing the share button in <a href="../index.html#">uweb browser</a> will popup menus defined in file "default.input", each line of which defines common phrase for user inputs. If the phrase begins with "@xxxx@", then "xxxx" part is the alias for the rest part of the string. Alias could be used for non-printable phrases.</p>
- Any url as website
- /en/url2site/
- Sun, 30 Oct 2022 00:00:00 +0000
- /en/url2site/
- The uweb internal link "i:0m" make any url such as download or indirect links visitable as a website. The second part of mirrors has examples using the following tricks:
"i:0m04:[url]": to treat the [url] content as html with bookmarklet. "i:0m?:[url]": to treat the [url] content as html, handling css/js properly. "i:0m?[postfix]:[url]": auto append query postfix to url to retrieve content. "i:0mi:5h:[url]": similar to "i:0m?:[url]", to treat the [url] content as html (for download or no-script links etc.
-
-
- Html5 applications
- /en/html5/
- Sun, 02 Oct 2022 00:00:00 +0000
- /en/html5/
- This page is for uweb browser.
Click to install the following html5 apps:
Huge markdown file viewer
Huge markdown+katex file viewer (Tex formulas)
Huge markdeep file viewer (markdown, latex, diagram,graphviz etc.)
plyr video player
dplayer video player
pdf viewer
epub reader (author:llili)
djvu viewer
The corresponding menus can be installed with url services.
Features The following mentioned subfolders locate in the configuration folder.
The following html5 applications are allowed to read local files referred by "https://local/sdcard/.
-
-
- Configuration folders/files
- /en/filenames/
- Thu, 30 Jun 2022 00:00:00 +0000
- /en/filenames/
- All folders end with character "/" and others are files. All folders/files locate in "/data/data/info.torapp.uweb/files":
"css/": global css folder
"js/": global script folder
"sitejs/": script folder for domains
"sitecss/":CSS folder for domains
"bookmarklet/":bookmarklets, long pressing the "JS" button to execute.
"offline/": to save offline pages
"sbookmark/": to save super bookmarks
"sitecache/":offline cache
"longclick/": menus to appear when long-pressing hypertext (js files)
"icon/":customized icons
"app[XXX]/":html5 applications
"default.longclick": to configure menus when long-pressing hypertext.
-
-
- AD blocking
- /en/adblock/
- Sat, 25 Jun 2022 00:00:00 +0000
- /en/adblock/
- Host blocking。
Use bookmarklet "list all script urls" to generate url links, long pressing dubious script (usually 3rd-party library) link, click "Block domain root". Javascript and CSS for domains。
Long press the button "js", click the menu "MarkAD mode". In "markAD mode", click page element to show all attributes and generate CSS AD blocking styles. By default, "display:none" is used. If "display" appears in the attribute information, recommend to use "transform:scale(0)!
-
-
- Bookmarklets
- /en/bookmarklet/
- Fri, 24 Jun 2022 00:00:00 +0000
- /en/bookmarklet/
- With uweb browser, long pressing any bookmarklet link, click "Open in new tab", the bookmarklet will be run on the last other tab.
List all script urls
User agent
Cookie
Source code
Last modified date
Eruda: mobile console
QR code generation
Use "GET" method for "POST"
Shows all form elements
Enables all form elements
Toggle checkboxes
Check all checkboxes
Uncheck all checkboxes
Toggle all checkboxes in forms
Enable selection
Restore context menu
+ Context menu
+ https://jamesfengcao.gitlab.io/uweb/en/longclick/
+ Sat, 01 Mar 2025 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/longclick/
+ <h4 id="the-command-submenus">The "command" submenus</h4>
<ul>
<li>File "<a href="../links/index.html#">image.link</a>": defines "command" submenus of the context menu for images.</li>
<li>File "<a href="../links/index.html#">download.link</a>": "command" submenus for download options menu.</li>
<li>File "context.link": "command" submenus in all other cases.</li>
</ul>
<p>The "command" submenus can be toggled with <a href="i:61:../searchurl/func.html">UI options</a>. The "command" submenus are default ( service urls or image.link or download.link), links, commands or service urls (default.urls when both link and command options are ticked).</p>
<h4 id="to-run-commands">To run commands</h4>
<p>Each line of file "<a href="file:///data/data/info.torapp.uweb/files/default.longclick">default.longclick</a>" has the following format: (same as <a href="../cmds/index.html#">default.cmds</a>)<br>
[Name]:[mimetype]:[command line]<br>
in which [command line] can have <a href="../cmds/index.html#">"%c" (cookie), "%u" (current url), "%t" (title)</a> etc.</p>CSS styles
- /en/globalcss/
- Sun, 03 Apr 2022 00:00:00 +0000
- /en/globalcss/
- Uweb browser loads all ".css" files under the folder "css" as global css. Click the following links to install global css files:
Clearing font settings
The file "night.css" is used as night mode, click the following links to install one:
webview 81+ night mode
webview 80- night mode
Earliest loaded global js The ".js" files under the folder "css" are loaded as earlier as possible on the page.
+ https://jamesfengcao.gitlab.io/uweb/en/globalcss/
+ Sun, 13 Oct 2024 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/globalcss/
+ <p><a href="../index.html#">Uweb browser</a> loads all ".css" files under the folder "css" as global css. Click the following links to install global css files:</p>
<p><a href="i:0hcss/clearfont.css:../../zh/searchurl/txt/clearfont.css">Clearing font settings</a></p>
<p>The file "night.css" is used as night mode, click the following links to install one:<br>
<a href="i:0hnight.css:../../zh/searchurl/txt/night.css">webview 81+ night mode</a><br>
<a href="i:0hnight.css:../../zh/searchurl/txt/night_old.css">webview 80- night mode</a></p>
<h4 id="earliest-loaded-global-js">Earliest loaded global js</h4>
<p>The ".js" files under the folder "css" are loaded as earlier as possible on the page.</p>
<p>Click the following links to install early loaded global js:<br>
<a href="i:0hcss/nojscopy.js::document.addEventListener(%22copy%22,(e)=>{e.preventDefault()})">No webpage clipboard copy</a></p>
+
+
+ Text selection/processing
+ https://jamesfengcao.gitlab.io/uweb/en/textprocess/
+ Fri, 01 Dec 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/textprocess/
+ <p>Click the following links to install menus for long pressing the button <code>link</code>:<br>
<a href="i:0gdefault.select::Share:/uwebS:%0A">Share</a></p>
<p><a href="i:0gdefault.select::Save as:/uwebA:printf i:50:;cat%0A">Save selection as</a>, also be used to create new file with bookmark path like "../help_en.html".</p>
<p><a href="i:0gdefault.select::Edit:/text/html:echo -n %22%3cmeta charset=utf-8%3e%3cbody contenteditable%3e%22;cat%0A">Edit</a></p>
<p><a href="i:0gdefault.select::AddrBar:/uwebAddr:%0A">Copy text to address bar</a></p>
<p><a href="i:0gdefault.select::notems:/uwebA:printf i:0/js/hash2textarea.js:https://note.ms/ric#;cat%0A">note.ms: cloud text sharing, please replace "ric" with your favorite ID</a></p>
<p><a href="i:0gdefault.select::copyHtml:html/clip:%0A">Copy selected text with html format to clipboard</a></p>
<p><a href="i:0gdefault.select::Home:/uweb:printf file://data/data/info.torapp.uweb/files/home5.search%5C location.href=%5C%22i:15;cat;printf %5C%22%0A">Search with home screen</a></p>
<p><a href="i:0gdefault.select::google Translate:/uweb:printf 'https://translate.google.com/?sl=auto&tl=en&op=translate&text=';cat|tr ' ' '%2B'%0A">google Translate</a></p>
+
+
+ Links
+ https://jamesfengcao.gitlab.io/uweb/en/links/
+ Sat, 28 Oct 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/links/
+ <h4 id="context-menu">Context menu</h4>
<p>The configuration file <code>image.link</code>, <code>download.link</code> and <code>context.link</code> define the default <code>command</code> submenu of the context menus when a url link is long pressed.</p>
<h5 id="context-menu-for-images">Context menu for images</h5>
<p>Click the following links to install <code>command</code> submenu for image's context menu:<br>
<a href="i:0gimage.link::google:https://www.google.com/searchbyimage?image_url=%25u0A">google image</a></p>
<p><a href="i:0gimage.link::tineye:https://tineye.com/search?url=%25u0A">tineye</a></p>
<p><a href="i:0gimage.link::yandex:https://yandex.com/images/search?family=yes&rpt=imageview&url=%25u0A">yandex image</a></p>
<h5 id="download-options-menu---command">Download options menu -> <code>command</code></h5>
<p>Click the following links to install <code>command</code> submenu for <b>download options menu</b>:<br>
<a href="i:0gdownload.link::pager:i:0m/js/view.html:%25u#p=1%0A">huge txt pager</a></p>
<p><a href="i:0gdownload.link::pager_2lnk:i:0m/js/view.html#/js/2lnk.js:%25u#p=1%0A">pager with urls converted to links</a></p>
+
+
+ Cron
+ https://jamesfengcao.gitlab.io/uweb/en/tcron/
+ Wed, 25 Oct 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/tcron/
+ <h4 id="crontab-with-enhanced-semantics">crontab (with enhanced semantics)</h4>
<p>Some battery restrictions on android 13+ may disallow new instance of uweb browser by alarm events. Users can either keep uweb instance (no battery consumption) or remove the restriction for uweb.</p>
<p>For performance, the file "crontab" uses single space as field separator. Letters are not suppored currently. So use "1" for "January" and 2 for "Tuesday" etc.</p>
<p>The sixth field in crontab file could be in the format of <a href="../links/index.html#">internal links</a>. Specifically, "c:" to execute the following commands in termux and "!" to execute commands directly. If the sixth field is not in any of above formats, then the field will appear as the message of alarm clock.</p>
+
+
+ Offline resources
+ https://jamesfengcao.gitlab.io/uweb/en/offlinecache/
+ Tue, 11 Apr 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/offlinecache/
+ <p>Offline resources locate in the folder "sitecache". With the option "use offline resources" enabled, the corresponding files in "sitecache/[domain name]/[full path including filename, the url path part]" are loaded first before reaching the network.</p>
<h4 id="serverless-local-sites">Serverless local sites</h4>
<p><a href="i:01Extract webapp:i:0bsitecache/local/:">Click to install url service that extracts web apps to the folder "sitecache/local/"</a>: support web extensions (.crx for chrome & .xpi for firefox).</p>
<p>Any folder under "sitecache" can be visited as a local site. Urls with search queries can be dynamically processed by the js/wasm code in the local file.</p>
+
+
+ Resource redirection
+ https://jamesfengcao.gitlab.io/uweb/en/redirect/
+ Tue, 11 Apr 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/redirect/
+ <p>⚠️<span style="color:red">Redirection forwards cookies</span> with the setting option "Redirect cookies" enabled, so use the option with care.</p>
<h4 id="setting-options-url-redirection-vs-resource-redirection">Setting options: "Url redirection" vs. "Resource redirection"</h4>
<p>"Url redirection" redirects the main/page url only while "Resource redirection" is for all urls in the page.</p>
<h4 id="global-redirection">Global redirection</h4>
<p><a href="i:60/data/data/info.torapp.uweb/files/config.html:https://codeberg.org/uweb/pages/raw/branch/master/en/searchurl/config.html">Global redirection</a> is enabled with the setting option "Resource redirection" or both "Url redirection" and "Redirect cookies".</p>
<p>When a valid global redirection url is set, the "default.redirect" has no effect, and any url resource is fetched with the new url by appending the original url to the global redirection url.</p>
+
+
+ Hosts files
+ https://jamesfengcao.gitlab.io/uweb/en/adblock_domain/
+ Mon, 20 Mar 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/adblock_domain/
+ <p>The enhanced hosts files "hosts" and "default.hosts" take effect with the setting option "use hosts".</p>
<h4 id="hosts">hosts</h4>
<p>The <span style="color:red">enhanced</span> file <a href="file:///data/data/info.torapp.uweb/files/hosts">"hosts"</a> defines IP addresses/attributes for domains. Each line has the following format:<br>
[[IP address][attributes]][single space][domain name]</p>
<p>where "[[IP address][attributes]]" could be:</p>
<ul>
<li>
<p>ipv4 address such as:<br>
172.67.157.211 torapp.eu.org</p>
</li>
<li>
<p>ipv6 address, Ex.:<br>
[2606:4700:3037::6815:8c3] torapp.eu.org</p>
</li>
<li>
<p>empty, that would lift all server-imposed limitations. Ex.:<br>
[single space]gitee.com</p>
<p>which will make all git repositories on the domain visitable as websites with raw file access url.</p>
+
+
+ JS/CSS/HTML/preprocessing for domains
+ https://jamesfengcao.gitlab.io/uweb/en/sitejs/
+ Sat, 28 Jan 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/sitejs/
+ <h3 id="javascript-load-when-page-completes-earliest-loaded-js-should-use-sitecss">Javascript (load when page completes, earliest loaded JS should use sitecss).</h3>
<ul>
<li>Need to be named as "[domain root].js", such as "yahoo.com.js" or "finance.yahoo.com.js". The script will be loaded on the whole domain tree sites. If several files matches the domain, then the script with longest file name is loaded.</li>
<li>Script must be put under the folder "sitejs" or "/data/data/info.torapp.uweb/files/sitejs". The later folder has the priority.</li>
<li>Long press the button "settings", check the option "Run user scripts".</li>
<li>Support 2/3-segment domains. If the length of the last 2-segments of domain is less than 7 (ex. "com.pl"), then it is treated as one segment.</li>
</ul>
<h3 id="css-style-and-earliest-loaded-js">CSS style and earliest loaded JS</h3>
<ul>
<li>Need to be named as "[domain root].css", such as yahoo.com.css or finance.yahoo.com.css。</li>
<li>Under folder "sitecss".</li>
<li>"[domain root].js" is loaded at the earliest time.</li>
<li>Long press the button "settings", check the option "Apply user styles".</li>
</ul>
<p>If file "default.css" exists, the style will be applied to all sites not matching [domain root].css.</p>
+
+
+ Bookmarks
+ https://jamesfengcao.gitlab.io/uweb/en/bookmark/
+ Mon, 16 Jan 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/bookmark/
+ <p>AI, chatgpt etc.</p>
<ul>
<li><a href="https://aistudio.google.com/app/prompts/new_chat">google</a></li>
<li><a href="https://gemini.google.com/app">google gemini</a></li>
<li><a href="https://jeeves.ai/chat">jeeves</a></li>
<li><a href="https://poe.com">poe</a></li>
<li><a href="https://www.teach-anything.com/">teach-anything</a></li>
<li><a href="https://magickpen.com/">magickpen</a></li>
</ul>
<p>Scholar:</p>
<ul>
<li><a href="https://lumina.sh">Lumina</a></li>
</ul>
<p><a href="https://note.ms">note.ms</a><br>
<a href="https://rentry.org">rentry</a><br>
<a href="i:1w">Wait for url from other devices</a><br>
<a href="https://berify.com">berify: reverse image search for video</a></p>
<h3 id="big-txthtmlmd-files"><a href="../html5/index.html#">Big txt/html/md files</a></h3>
<p><a href="https://gutenberg.org/">gutenberg</a><br>
Japanese <a href="https://www.aozora.gr.jp/">Aozora Bunko 青空文庫</a></p>
<h3 id="associated-bookmarks">Associated bookmarks</h3>
<p><a href="../searchcat/index.html#">Search engine files</a> associate with bookmarks with extension ".html", which means the bookmark file if existing is appended to the page when the search engine file is on screen.</p>
<p>"help_en.html" bookmark associates with the user manual in English. Similarly, "help_zh.html" is for Chinese manual. Whenever user manual is open, the associated bookmark appears before the manual.</p>
+
+
+ Address bar command line
+ https://jamesfengcao.gitlab.io/uweb/en/acmd/
+ Sun, 08 Jan 2023 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/acmd/
+ <h3 id="--or--command-line">":!" ( or "!") command line</h3>
<p>Pressing ":" or "!" with hardware keyboard sets focus on the address bar.<br>
The command line could be a ".js", ".sh" or other executable with arguments. Ex. ":!s g keyword" could invoke "s.js" executable with the whole string as arguments ("s.sh" or "s" if file exists, here "g" as google search engine); ":! g keyword" would invoke the file ".js" or ".sh" as executable.</p>
+
+
+ Any url as website
+ https://jamesfengcao.gitlab.io/uweb/en/url2site/
+ Sun, 30 Oct 2022 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/url2site/
+ <p>The <a href="../index.html#">uweb</a> internal link "<a href="../links/index.html">i:0m</a>" make any url such as download or indirect links visitable as a website. The second part of <a href="../mirrors/index.html#">mirrors</a> has examples using the following tricks:</p>
<ul>
<li>"i:0m04:[url]": to treat the [url] content as html with bookmarklet.</li>
<li>"i:0m?:[url]": to treat the [url] content as html, handling css/js properly.</li>
<li>"i:0m?[postfix]:[url]": auto append query postfix to url to retrieve content.</li>
<li>"i:0mi:5h:[url]": similar to "i:0m?:[url]", to treat the [url] content as html (for download or no-script links etc.)</li>
<li>"i:0mi:5h?[postfix]::[url]": similar to "i:0m?[postfix]:[url]". auto append query postfix to url to retrieve content.</li>
<li>"i:0mi:5h/[regex]/[replacement]::[url]": use the result of regular expression replacement to retrieve the content.</li>
</ul>
<p>For more complicated links such as cloud storage shared links, which need user gestures to reach temporary generated content link, use<br>
"i:0m/.../[local.html]:[url]", where the local file "/.../[local.html]" processes "[url]" as needed.</p>
+
+
+ Configuration folders/files
+ https://jamesfengcao.gitlab.io/uweb/en/filenames/
+ Thu, 30 Jun 2022 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/filenames/
+ <p>All folders end with character "/" and others are files. All folders/files locate in "/data/data/info.torapp.uweb/files":<br>
"<a href="file:///data/data/info.torapp.uweb/files/css/">css/</a>": <a href="../globalcss/index.html#">global css folder</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/js/">js/</a>": <a href="../rjs/index.html#">global script folder</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/sitejs/">sitejs/</a>": <a href="../sitejs/index.html#">script folder for domains</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/sitecss/">sitecss/</a>":<a href="../sitejs/index.html#">CSS folder for domains</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/siteextra/">siteextra/</a>":<a href="../sitejs/index.html#">User extra folder for domains</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/bookmarklet/">bookmarklet/</a>":<a href="../rjs/index.html#">bookmarklets</a>, long pressing the "JS" button to execute.<br>
"<a href="file:///data/data/info.torapp.uweb/files/offline/">offline/</a>": to save offline pages<br>
"<a href="file:///data/data/info.torapp.uweb/files/sbookmark/">sbookmark/</a>": to save super bookmarks<br>
"<a href="file:///data/data/info.torapp.uweb/files/sitecache/">sitecache/</a>":<a href="../offlinecache/index.html#">offline cache</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/longclick/">longclick/</a>": menus to appear when long-pressing hypertext (js files)<br>
"<a href="file:///data/data/info.torapp.uweb/files/icon/">icon/</a>":<a href="../icons/index.html#">customized icons</a><br>
"app[XXX]/":<a href="../html5/index.html#">html5 applications</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/default.longclick">default.longclick</a>": to configure menus when long-pressing hypertext.<br>
"<a href="file:///data/data/info.torapp.uweb/files/default.uas">default.uas</a>":user agents<br>
"<a href="file:///data/data/info.torapp.uweb/files/default.bml">default.bml</a>":<a href="../rjs/index.html#">bookmarklets</a>, long pressing the "JS" button to execute.<br>
"<a href="file:///data/data/info.torapp.uweb/files/default.urls">default.urls</a>":<a href="../urls/index.html#">service urls</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/default.acmd">default.acmd</a>":configure address bar functionalities<br>
"<a href="file:///data/data/info.torapp.uweb/files/hosts">hosts</a>": for local <a href="../adblock_domain/index.html#">domain name attributes</a>, only single space is allowed to separate ip address and domain name.<br>
"<a href="file:///data/data/info.torapp.uweb/files/default.hosts">default.hosts</a>":<a href="../adblock/index.html#">hosts not allowed to visit</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/default.redirect">default.redirect</a>":<a href="../redirect/index.html#">redirect websites</a><br>
"<a href="file:///data/data/info.torapp.uweb/files/default.cmds">default.cmds</a>":<a href="../cmds/index.html#">commands</a></p>
+
+
+ AD blocking
+ https://jamesfengcao.gitlab.io/uweb/en/adblock/
+ Sat, 25 Jun 2022 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/adblock/
+ <ul>
<li>
<p><a href="../adblock_domain/index.html#">Host blocking</a>。</p>
<ul>
<li>Use <a href="../bookmarklet/index.html#">bookmarklet "list all script urls"</a> to generate url links, long pressing dubious script (usually 3rd-party library) link, click "Block domain root".</li>
</ul>
</li>
<li>
<p><a href="../sitejs/index.html#">Javascript and CSS for domains</a>。</p>
<ul>
<li>Long press the button "js", click the menu "MarkAD mode". In "markAD mode", click page element to show all attributes and generate CSS AD blocking styles. By default, "display:none" is used. If "display" appears in the attribute information, recommend to use "transform:scale(0)!important" instead.</li>
</ul>
</li>
<li>
<p>Long press the tab manager button, check "Videos only" for video sites and "Images only" for image sites. Other AD blocking options are "Hide pseudo elements" and "Hide iframes".</p>
+
+
+ Bookmarklets
+ https://jamesfengcao.gitlab.io/uweb/en/bookmarklet/
+ Fri, 24 Jun 2022 00:00:00 +0000
+ https://jamesfengcao.gitlab.io/uweb/en/bookmarklet/
+ <p>With <a href="../index.html#">uweb browser</a>, long pressing any bookmarklet link, click "Open in new tab", the bookmarklet will be run on the last other tab.</p>
<p><a href="javascript:{let es=document.getElementsByTagName('script');let urls='';for(let i=0;i<es.length;i++){if(es[i].src)urls+=es[i].src+'<br>';}let w=window.open(''),s=w.document;s.write(urls);s.close();}">List all script urls</a></p>
<p><a target="_self" href="javascript:alert(navigator.userAgent)">User agent</a><br>
<a href="javascript:(function(){var w=window.open(''),s=w.document;s.write('<html><body></body></html>');s.close();var pre=s.body.appendChild(s.createElement('pre'));pre.style.overflow='auto';pre.style.whiteSpace='pre-wrap';pre.appendChild(s.createTextNode(document.cookie))})()">Cookie</a><br>
<a href="javascript:(function(){var w=window.open(''),s=w.document;s.write('<html><body></body></html>');s.close();var pre=s.body.appendChild(s.createElement('pre'));pre.style.overflow='auto';pre.style.whiteSpace='pre-wrap';pre.appendChild(s.createTextNode(document.documentElement.innerHTML))})()">Source code</a><br>
<a href="javascript:function%20gett(w){try{var%20lm=new%20Date(w.document.lastModified);if(lm>maxd)maxd=lm;for(var%20i=0;F=w.frames[i];i++){gett(F);}}catch(e){}}var%20now=new%20Date();var%20maxd=new%20Date(document.lastModified);gett(window);if(maxd.getTime()==0||now.toUTCString()==maxd.toUTCString()){alert('Page%20is%20dynamically%20generated,%20cannot%20determine%20date.');}else{alert('Page%20was%20last%20modified%20'+maxd.toLocaleString());}" class="bookmarklet" rel="nofollow">Last modified date</a></p>
<p><a href="javascript:(function(){var script=document.createElement('script');script.src='//fastly.jsdelivr.net/npm/eruda';document.body.appendChild(script);script.onload=function(){eruda.init()}})()">Eruda: mobile console</a><br>
<a href="javascript:window.open('https://api.qrserver.com/v1/create-qr-code/?size=150x150&data='%20+%20decodeURIComponent(location.href));void(0);">QR code generation</a></p>
<p><a href="javascript:(function(){var x,i; x = document.forms; for (i = 0; i < x.length; ++i) x[i].method="get"; alert("Changed " + x.length + " forms to use the GET method. After submitting a form from this page, you should be able to bookmark the result."); })();">Use "GET" method for "POST"</a><br>
<a href="javascript:(function(){var i,f,j,e,div,label,ne; for(i=0;f=document.forms[i];++i)for(j=0;e=f[j];++j)if(e.type=="hidden"){ D=document; function C(t){return D.createElement(t);} function A(a,b){a.appendChild(b);} div=C("div"); label=C("label"); A(div, label); A(label, D.createTextNode(e.name + ": ")); e.parentNode.insertBefore(div, e); e.parentNode.removeChild(e); ne=C("input");/*for ie*/ ne.type="text"; ne.value=e.value; A(label, ne); --j;}})()">Shows all form elements</a><br>
<a href="javascript:(function(){var x,k,f,j;x=document.forms;for (k=0;k<x.length;++k){f=x[k];for(j=0;j<f.length;++j){f[j].disabled=false; f[j].readOnly=false;}}})()">Enables all form elements</a></p>Toolbar customization
- /en/icons/
+ https://jamesfengcao.gitlab.io/uweb/en/icons/
Sun, 06 Feb 2022 00:00:00 +0000
- /en/icons/
- If subfolder "icon" exists, then files named as "0","1","2"...
are used for icons in the bottom toolbar. file "0" to replace the left arrow button, "1" for right arrow button, "2" for the setting button,"3" for the home screen button,...
If a new button is defined (file name "20" exists), uweb also supports VectorDrawable with "android compiled XML" format. All icon files must be either all compiled VectorDrawables or common image formats.
+ https://jamesfengcao.gitlab.io/uweb/en/icons/
+ <p>If subfolder "icon" exists, then files named as "0","1","2"...<br>
are used for icons in the bottom toolbar. file "0" to replace the left arrow button, "1" for right arrow button, "2" for the setting button,"3" for the home screen button,...</p>
<p>If a new button is defined (file name "20" exists), uweb also supports VectorDrawable with "android compiled XML" format. All icon files must be either all compiled VectorDrawables or common image formats.</p>Search engine files
- /en/searchcat/
+ https://jamesfengcao.gitlab.io/uweb/en/searchcat/
Mon, 10 Jan 2022 00:00:00 +0000
- /en/searchcat/
- Search engine file names have ".search" as postfix. When they are clicked, the associated bookmark files with postfix ".search.html" would be appended. Ex: the associated bookmark for "foo.search" is "foo.search.html".
Any ".search" file can be opened as search engine file, each line of which has one of the following formats:
[Engine name]:[url without '%s' inside]
[Engine name]:[url with '%s' as keyword]
[Engine name]:POST:[post params with '%s' as keyword]:[url]
[Engine name]:[Extra request headers]:[post params with '%s' as keyword]:[url]
+ https://jamesfengcao.gitlab.io/uweb/en/searchcat/
+ <p>Search engine file names have ".search" as postfix. When they are clicked, the associated bookmark files with postfix ".search.html" would be appended. Ex: the associated bookmark for "foo.search" is "foo.search.html".</p>
<p>Any ".search" file can be opened as search engine file, each line of which has one of the following formats:<br>
[Engine name]:[url without '%s' inside]<br>
[Engine name]:[url with '%s' as keyword]<br>
[Engine name]:POST:[post params with '%s' as keyword]:[url]<br>
[Engine name]:[Extra request headers]:[post params with '%s' as keyword]:[url]</p>Termux
- /en/termux/
+ https://jamesfengcao.gitlab.io/uweb/en/termux/
Sat, 01 Jan 2022 00:00:00 +0000
- /en/termux/
- Only the termux versions provided along with uweb browser can work seamlessly. For android 10+, please install termux before installing uweb browser. If uweb is already installed, users can uninstall it first, then install termux and reinstall uweb browser.
Termux bookmarks Long pressing the following links then either "commands"->"bookmark" to add bookmarks or "open in new tab" to execute.
GNU bc (basic calculator)
bc with all extensions
Click the following links to install termux configurations: .
+ https://jamesfengcao.gitlab.io/uweb/en/termux/
+ <p>Only the termux versions provided along with uweb browser can work seamlessly. For android 10+, please install termux before installing uweb browser. If uweb is already installed, users can uninstall it first, then install termux and reinstall uweb browser.</p>
<h4 id="termux-bookmarks">Termux bookmarks</h4>
<p>Long pressing the following links then either "commands"->"<a href="../urls/index.html#">bookmark</a>" to add bookmarks or "open in new tab" to execute.<br>
<a href="c:bc -l">GNU bc (basic calculator)</a><br>
<a href="c:bc -l *.bc">bc with all extensions</a></p>
<h4 id="click-the-following-links-to-install-termux-configurations">Click the following links to install termux configurations:</h4>
<p><a href="i:0h/data/data/com.termux/files/home/.bashrc:../../termux/bashrc">.bashrc</a></p>User agents
- /en/useragents/
+ https://jamesfengcao.gitlab.io/uweb/en/useragents/
Sat, 01 Jan 2022 00:00:00 +0000
- /en/useragents/
- Clicking the following links to add user agents with uweb browser or ebrowser.
Edge for android
Edge for windows
-
-
- Long pressed link menu
- /en/longclick/
- Fri, 06 Nov 2020 00:00:00 +0000
- /en/longclick/
- To run commands Each line of file "default.longclick" has the following format: (same as default.cmds)
[Name]:[mimetype]:[command line]
in which [command line] can have "%c" (cookie), "%u" (current url), "%t" (title) etc.
To visit url and load javascript file All ".js" files under the folder "longclick" are part of the popup menu.
These javascript files are in the following format:
The very first line can begin with "//" followed by website url that can have "%u" (current url), "%t" (title) etc.
+ https://jamesfengcao.gitlab.io/uweb/en/useragents/
+ <p>Clicking the following links to add user agents with <a href="../index.html#">uweb browser</a> or <a href="../ebrowserreadme/index.html#">ebrowser</a>.<br>
<a href="i:02EdgA:Mozilla/5.0 (Linux; Android 13; KB2000) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 EdgA/127.0.2610.80">Edge for android</a><br>
<a href="i:02Edge:Mozilla/5.0 (Windows NT 11.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Mobile Safari/537.36 Edg/127.0.2610.80">Edge for windows</a></p>Tools
- /en/tools/
+ https://jamesfengcao.gitlab.io/uweb/en/tools/
Sun, 06 Sep 2020 00:00:00 +0000
- /en/tools/
- This page is for uweb browser.
install tdict_local (search with local indexes and remote content) Click to install the following local indexes with corresponding search engines (for test only).
install the indexes for "American heritage dictionary (en-en&zh with AHD/D.J./K.K. pronunciation)"
Install AHD to home screen
Indexes for "研究社新編英和活用大辞典(English usage: en-en&ja)"
Install "English usage (en-en&ja)"
Indexes for SOED6
install SOED
The following dictionaries work better with markdown processor.
Install markdown processor
+ https://jamesfengcao.gitlab.io/uweb/en/tools/
+ <p>This page is for <a href="../index.html#">uweb browser</a>.</p>
<h4 id="install-tdict_local-search-with-local-indexes-and-remote-content"><a href="i:0bhttps://fastly.jsdelivr.net/gh/torappinfo/uwebjs/bin/tdict_loc.tar.gz">install tdict_local (search with local indexes and remote content)</a></h4>
<p>Click to install the following local indexes with corresponding search engines (for test only).<br>
<a href="i:0hahd.tidx:https://fastly.jsdelivr.net/gh/torappinfo/uwebjs/bin/ahd.tidx">install the indexes for "American heritage dictionary (en-en&zh with AHD/D.J./K.K. pronunciation)"</a><br>
<a href="i:00AHD:d:text/html:tdict_loc ahd \'%s\'|loc2html text/plain \'https://s1.asytech.cn/s/HxY9QT5cdp63ZPK/download?path=%2F&files=ahd.dict\':">Install AHD to home screen</a></p>
<p><a href="i:0henja.tidx:https://fastly.jsdelivr.net/gh/torappinfo/uwebjs/bin/enja.tidx">Indexes for "研究社新編英和活用大辞典(English usage: en-en&ja)"</a><br>
<a href="i:00enja:d:text/html:tdict_loc enja \'%s\'|loc2html text/plain \'https://s1.asytech.cn/s/oaoGniEBKLnWzoj/download?path=%2F&files=enja.dict\':">Install "English usage (en-en&ja)"</a></p>
<p><a href="i:0hsoed.tidx:https://fastly.jsdelivr.net/gh/torappinfo/uwebjs/bin/soed.tidx">Indexes for SOED6</a><br>
<a href="i:00soed:d:text/html:tdict_loc soed \'%s\'|loc2html text/plain \'https://s1.asytech.cn/s/oaoGniEBKLnWzoj/download?path=%2F&files=soed.dict\':">install SOED</a></p>
<p>The following dictionaries work better with markdown processor.<br>
<a href="i:0hmd.html:https://fastly.jsdelivr.net/gh/torappinfo/uwebjs/txt/mdme.html">Install markdown processor</a><br>
<a href="i:0hmwi.tidx:https://fastly.jsdelivr.net/gh/torappinfo/uwebjs/bin/mwi.tidx">Indexes for "Merriam Webster International Unabridged"</a><br>
<a href="i:00mwi:d:text/html:tdict_loc mwi \'%s\'|loc2html text/html.md.html \'https://s1.asytech.cn/s/oaoGniEBKLnWzoj/download?path=%2F&files=mwi.dict\':">Install MWI</a></p>Custom file handling
- /en/filecap/
+ https://jamesfengcao.gitlab.io/uweb/en/filecap/
Mon, 24 Aug 2020 00:00:00 +0000
- /en/filecap/
- Long press the settings button, check the option "custom file handling" to enable the functionality.
The custom file handling configuration file is "default.filecap", each line of it has the format as follows:
[file extension]:[mimetype]:[command line]
The "[file extension]" part can have at most two-segment of extensions such as "txt.xz","html.gz".
"[mimetype]" indicates the type of "[command line]" output.
"[command line]" is same as the one in default.cmds. The most often used replacements are:
+ https://jamesfengcao.gitlab.io/uweb/en/filecap/
+ <p>Long press the settings button, check the option "custom file handling" to enable the functionality.</p>
<p>The custom file handling configuration file is "default.filecap", each line of it has the format as follows:<br>
[file extension]:[mimetype]:[command line]</p>
<p>The "[file extension]" part can have at most two-segment of extensions such as "txt.xz","html.gz".<br>
"[mimetype]" indicates the type of "[command line]" output.<br>
"[command line]" is same as the one in <a href="../cmds/index.html#">default.cmds</a>. The most often used replacements are:<br>
%u (url), %U (urlencoded url), %c (cookie), %p (site password, curl format).</p>Gestures
- /en/gesture/
+ https://jamesfengcao.gitlab.io/uweb/en/gesture/
Thu, 18 Jun 2020 00:00:00 +0000
- /en/gesture/
- Swipe down from the top to show the address bar; swipe up to the top to hide the address bar. Swipe down to the bottom to hide the toolbar with option "swipe to hide tools"; swipe on the bottom corners to show the toolbar.
Swipe left/right near the toolbar to switch window; fling left/right to switch to the last/first window.
Swiping on the top part of content window (near the top address bar by default) triggers corresponding link in the file "default.
+ https://jamesfengcao.gitlab.io/uweb/en/gesture/
+ <p>Swipe down from the top to show the address bar; swipe up to the top to hide the address bar. Swipe down to the bottom to hide the toolbar with option "swipe to hide tools"; swipe on the bottom corners to show the toolbar.</p>
<p>Swipe left/right near the toolbar to switch window; fling left/right to switch to the last/first window.</p>
<p>Swiping on the top part of content window (near the top address bar by default) triggers corresponding link in the file "default.gesture", which has the same format as <a href="../links/index.html#">default.link</a>.</p>
diff --git a/en/acmd/index.html b/en/acmd/index.html
index dee892f1..bd0514f4 100644
--- a/en/acmd/index.html
+++ b/en/acmd/index.html
@@ -3,10 +3,11 @@
+
Address bar command line
-
-
Ebrowser: keyboard-friendly minimal suckless web browser
+
+
+
Ebrowser: keyboard-friendly minimal suckless web browser
user CSS/JS at will. Ex. pressing "md" in no-focus mode to preview markdown file.
+
user CSS/JS at will. Ex. pressing md in no-focus mode to preview markdown file.
global CSS/JS for all sites at will.
CSS/JS for domains, similar to uweb, but use sitejs/[domain].js or sitecss/[domain].css, not [domain root].js/css.
customizable.
+
dark theme support.
-
Note: Usually electron apps are heavyweight as they use browsers for simple things. Ebrowser uses core chromium effectively and very lightweight. Recommend to install electron separately.
-
Installing (for Windows, MacOS and Linux)
-
Install with prebuilt binaries
+
+
Note: Usually electron apps are heavyweight as they use browsers for simple things. Ebrowser uses core chromium effectively and very lightweight.
Install ebrowser and electron separatedly (Recommended)
+
Install ebrowser
+
Either download (Click the green Code button above the file list => Select Download ZIP) and unzip from
+
https://github.com/torappinfo/ebrowser
-
Run ebrowser
+
OR download and unzip ebrowser package directly from any of npm mirror sites like npmmirror or with nodejs by
+
npm install ebrowser
+
+
OR download/git clone files directly from any of mirror repositories and ebrowser is under the folder misc/ebrowser.
+
Install electron
+
Before you can run ebrowser, you need to install electron either with nodejs by
+
npm install electron
+
+
OR download and unzip electron binary directly from github or mirrors like npmmirror.
+
Run ebrowser
electron ~/node_modules/ebrowser
-
Later on, you can run "npm install electron" to update electron/chromium or "npm install ebrowser" to update ebrowser independently.
-
Update app quickly without updating chromium
-
Pressing "Alt" to show the menu bar and choose "Check for updates" under "Help". OR
-
Type ":update" in the address bar and press "enter" key to update.
-
Mirror urls could be used like ":update https://uwebzh.netlify.app/misc/ebrowser". All the mirrors listed on uweb browser could be used. The update url needs to be changed accordingly to be the folder "misc/ebrowser" under the mirror site root url.
-
Key shortcuts
+
OR
+
electron [the-path-of-folder-with-downloaded-ebrowser-files]
+
+
Update app quickly without updating chromium
+
Pressing Alt to show the menu bar and choose Check for updates under Help. OR
+
Type :update in the address bar and press enter key to update.
+
Key shortcuts
Alt: show menu
ALT+<-: go backward
@@ -85,23 +102,23 @@ npm install ebrowser
CTRL+TAB: switch to next tab
CTRL+SHIFT+TAB: switch to previous tab
CTRL+W: close Tab
-
CTRL+SHIFT+R: enable global redirection ("gredirect.json")
+
CTRL+SHIFT+R: enable global redirection (gredirect.json)
CTRL+R: disable global redirection
ESC: remove focus. similar to vi normal mode.
F1: Help
F5: page refresh/reload
F12: devtools
-
Address bar commands
-
Like any popular browser, the very first word in address bar if defined in "search.json" identifies a search engine. Moreover, the address bar serves as command line interface:
+
Address bar commands
+
Like any popular browser, the very first word in address bar if defined in search.json identifies a search engine. Moreover, the address bar serves as command line interface:
"/" for find-in-page
":" for address bar commands
-
ac [bookmark/history path w/o ext] : load ".rec" file for autocomplete.
+
ac [bookmark/history path w/o ext] : load .rec file for autocomplete.
b [bookmarkfilename w/o ext] : bookmark current page in file.
bjs : Browser-level JavaScript execution.
-
bml [filename w/o extension]: load/execute the javascript file.
+
bml [filename w/o extension] [arguments...]: load/execute the javascript file.
gr [gredirect index]: global redirection with corresponding index. Use the first global redirection url if no argument. Disable global redirection with any index out of the range.
js [js code] : execute JS code at OS level. Note: "javascript:..." is special url and thus works in the current web page, while ":js ..." commands can do any OS operations.
@@ -118,20 +136,26 @@ npm install ebrowser
nr/ur for No/Use "redirect.json" for domain redirection.
np : no proxy.
up [proxyName] : use proxy. privous proxy or the first proxy in proxy.json w/o [proxyName]. ":up" command also disables global and domain redirections, which are not restored by ":np".
+
sys [command line] : execute system commands with url as one of arguments, and replace "%cookie" with corresponding one. Ex. "curl" commands for uploading.
ua [useragentName] : set user agent for future tabs. default user agent w/o arguments.
update [filename] : update the app w/o argument, otherwise retrive the [filename] from remote. The filename could be any file on mirror sites (this repository is part of it).
pdf [filename w/o extension] {options} : print to PDF file. All arguments are optional; empty option "{}" to capture long screenshot as vector graphics.
-
"!" address bar commands
-"!xx ..." evaluates "xx.js" with the whole text as arguments[0].
+
"!" address bar commands
+
+
"!xx ..." evaluates "xx.js" with the whole text as arguments[0] at OS level.
+
"!!xx ..." evaluates "xx.js" with the whole text as arguments[0] at browser level, which could manipulate address bar etc.
+
+
i: internal urls, which will be consistent with uweb.
"i:0/js/xxx.js:[url]" loads the "[url]" with bookmarklet "js/xxx.js".
+
"i:8d[url]" fo force downloading
-
Commands in no-focus mode (this mode is similar to vi Normal mode)
+
Commands in no-focus mode (this mode is similar to vi Normal mode)
Pressing "ESC" to enter no-focus mode if not sure.
":" for address bar commands
@@ -139,7 +163,7 @@ npm install ebrowser
"!" for "!" address bar commands
The other commands are defined in "mapkeys.json", which will map keys to address bar commands.
-
Configuration files
+
Configuration files
"config": lines of address bar commands.
"search.json": search engines as shortcut-queryUrl pairs, where "%s" would be replaced by search query.
@@ -157,24 +181,27 @@ npm install ebrowser
-
Javascript at three levels
+
Javascript at three levels
Web page: url like "javascript:" or bookmarklet command ":bml" runs in web page.
Browser (or renderer process) :
":bjs" to execute the following js code at browser level.
-
"!xx" evaluates "xx.js", which could manipulate address bar etc.
-
OS level (or main process) : ":js" to execute the following js code with all OS APIs available.
+
OS level (or main process) : ":js" to execute the following js code with all OS APIs available.
+
+
"!xx" evaluates "xx.js" with arguments.
-
examples for ":js"/":bjs" commands
+
+
+
examples for ":js"/":bjs" commands
:js bJS=true //allow external Javascript files for web pages
:js bJS=false //disallow external Javascript files for web pages
:bjs bHistory=true //to record url history
:bjs bQueryHistory=true //to record query/command history
-
New usages
+
New usages
Vector designing with web tech to replace Adobe Illustrator/Inkscape.
@@ -196,12 +223,12 @@ npm install ebrowser
-
License
+
License
You can copy or modify the code/program under the terms of the GPL3.0 or later versions.
-
Last Modified: 12 July 2024
-reorg ebrowserreadme.md
+
Visiting file urls ending with "/" enters internal file manager.
+
When the current tab is internal file manager, visiting file url for a file shows the content of the file, long pressing button "🕔" -> Editor loads line-based editor for the file. If the file does not exist, saving creates a new file.
+
Running any command with address bar with the format "d::command line:" to execute "command line" in the current folder of the internal file manager. Ex:
+"d::touch a.txt:" to create a new file a.txt.
+"d::mkdir subdir:" to create a new folder names "subdir".
+"d::mv old new:" to rename the file "old" to be "new".
+
+
+
Last Modified: 5 December 2025
+add filemanager.md
+
Click the following links to install menus popped by long pressing the share button (with arrow-out-of-square as icon) on the bottom toolbar:
+Address Bar
+New line
+CTRL-Z: undo
+CTRL-Y: redo
+
Long pressing the share button in uweb browser will popup menus defined in file "default.input", each line of which defines common phrase for user inputs. If the phrase begins with "@xxxx@", then "xxxx" part is the alias for the rest part of the string. Alias could be used for non-printable phrases.
Address bar autocompletion as input method when starting with space
+
"default.autoc" or other .autoc files when choosen are loaded for address bar autocompletion. If the address bar text starts with space, the selected text is treated as user input for focused element in the visible tab.