+项目主页
diff --git a/en/_posts/index.xml b/en/_posts/index.xml
index 4fce3154..1143b1a4 100644
--- a/en/_posts/index.xml
+++ b/en/_posts/index.xml
@@ -1,188 +1,194 @@
- _posts on
- /en/_posts/
- Recent content in _posts on
- Hugo -- gohugo.io
- Sat, 02 Jul 2022 00:00:00 +0000
+ _Posts on uweb browser: unlimited power
+ https://jamesfengcao.gitlab.io/uweb/en/_posts/
+ Recent content in _Posts on uweb browser: unlimited power
+ Hugo
+ en
+ Tue, 06 Jan 2026 19:39:18 +0800
+
- Site map
- /en/sitemap/
- Sat, 02 Jul 2022 00:00:00 +0000
-
- /en/sitemap/
- UI Search engines Home screen Quick start UI (gitee) Backup and restore Customization Bottom toolbar button long pressing menus User agents Javascript Url services Links Commands Remote javascript Menu for selections Menu for long pressing hypertext Toolbar Gestures Font settings Advanced Content AD blocking CSS styles redirection Javascript and CSS for domains Offline cache Tools Bookmarklets Custom file handling Html5 application File manager Tools Termux GNU bc Gnuplot tcron Offline download Miscellaneous Configuration files Plugins Tips Tips Video Debug
+ 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>
-
- 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.
+ 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
+ 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>
+
+
+ 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>
+
+
+ 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
+ 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::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>
<p><a href="i:0gdefault.select::bing Translate:/uweb:printf 'https://cn.bing.com/translator/?from=&to=en&text=';cat|tr ' ' '%2B'%0A">bing translate</a></p>
<p><a href="i:0gdefault.select::deepL:/uweb:printf https://www.deepl.com/translator-mobile#auto/en/;cat|sed 's/ /%2520/g'%0A">deepL</a></p>
<p>The file <code>default.select</code> 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:<br>
[Name]:[mimetype]:[command line]</p>
-
Links
- /en/links/
- Thu, 30 Jun 2022 00:00:00 +0000
-
- /en/links/
- Clicking the following hypertext will install menus for long pressing the bookmark button (with star as icon):
-Certificate info
-Web fullscreen
-Long pressing the bookmark button in uweb browser will popup menus defined in file "default.link". The file format is as follows:
-[Menu name]:[url][space][javascript code]
-in which space and later parts are optional. url and later parts support "%u","%s" etc.. The javascript code will be executed after url is fully loaded.
+ 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://jamesfengcao.codeberg.page/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="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/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
- /en/adblock/
+ https://jamesfengcao.gitlab.io/uweb/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)!
+ 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
- /en/bookmarklet/
+ https://jamesfengcao.gitlab.io/uweb/en/bookmarklet/
Fri, 24 Jun 2022 00:00:00 +0000
-
- /en/bookmarklet/
- With a href="../index.html">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
+ 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();w.location.href='i:631:';}">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>
-
-
- Text selection
- /en/pccopy/
- Sat, 23 Apr 2022 00:00:00 +0000
-
- /en/pccopy/
- Click the following links to install menus for long pressing the button "link":
-google Translate
-bing translate
-deepL
-The file "default.select" defines 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:
-[Name]:[mimetype]:[command line]
-[mimetype] specifies input/output for [command line].
-It formats as "[input mimetype]/[output mimetype]".
-[input mimetype] can be the following:
-"html": rich text "" (empty): text ".
-
-
-
- CSS样式
- /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
-
-
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 all VectorDrawables or 此时所有图标文件必须都是compiled XML格式,或都是普通的图像格式(png,jpg,gif等)。用户可将VectorDrawable XML文件放到安卓项目目录assets下面,重新生成apk文件以后将apk文件解压即可得compiled XML格式图标文件。
+ 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>
-
- 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.
+ Search engine files
+ https://jamesfengcao.gitlab.io/uweb/en/searchcat/
+ Mon, 10 Jan 2022 00:00:00 +0000
+ 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
+ https://jamesfengcao.gitlab.io/uweb/en/termux/
+ Sat, 01 Jan 2022 00:00:00 +0000
+ 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
+ https://jamesfengcao.gitlab.io/uweb/en/useragents/
+ Sat, 01 Jan 2022 00:00:00 +0000
+ 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
+ https://jamesfengcao.gitlab.io/uweb/en/tools/
+ Sun, 06 Sep 2020 00:00:00 +0000
+ 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>
-
- Blocking domain trees
- /en/adblock_domain/
- Mon, 01 Jan 0001 00:00:00 +0000
-
- /en/adblock_domain/
- hosts blocks whole domain trees including all descedant domains. The domains in the hosts file must be 2 or 3 segment domains, such as "yahoo.com" and "finance.yahoo.com". If the length of the last 2 segments is less than 7, such as "com.pl", then it is treated as one segment, so domains like "xxx.xxx.com.pl" are also valid in the hosts file.
-Each line of the hosts file has the following format:
+ Gestures
+ https://jamesfengcao.gitlab.io/uweb/en/gesture/
+ Thu, 18 Jun 2020 00:00:00 +0000
+ 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>
-
-
- Change log
- /en/changelog/
- Mon, 01 Jan 0001 00:00:00 +0000
-
- /en/changelog/
- 901: Use in-app files folder for configuration
-
-
-
- Javascript and CSS for domains
- /en/sitejs/
- Mon, 01 Jan 0001 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".
-
-
diff --git a/en/acmd/index.html b/en/acmd/index.html
new file mode 100644
index 00000000..bd0514f4
--- /dev/null
+++ b/en/acmd/index.html
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+ Address bar command line
+
+
+
+
+ HomeTags
+
+
+
+
+
+
+
Address bar command line
+
+
+
+
+
+
+
":!" ( 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.
+
For regular (non-js) executables, the standard output of the command line could be treated as lines of urls (or html, plain text).
Commands are the best for repeated execution of an instruction. Address bar command modes provide ways to run different commands in the same category easily.
+
The configure file "default.acmd" has the exactly same format as default.cmds. Click the following links to install new modes (cold start the app to take effect, then long click the "refresh" button to switch modes):