index.html 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1" />
  6. <link rel="canonical" href="https://jamesfengcao.gitlab.io/uweb/en/textprocess/" />
  7. <link rel="stylesheet" href="../style.css#" type="text/css" />
  8. <title>Text selection/processing</title>
  9. <script>
  10. function findLang(){
  11. let href = location.href;
  12. for(let i=href.length-1;i>0;i--){
  13. if('/'==href.charAt(i) && '/'==href.charAt(i-3))
  14. return i;
  15. }
  16. return 0;
  17. }
  18. function nav2(page){
  19. let i = findLang();
  20. location.href = location.href.substring(0,i+1)+page;
  21. }
  22. function nav2Lang(lang){
  23. let i = findLang();
  24. let href = location.href;
  25. location.href = location.href.substring(0,i-2)+lang+location.href.substring(i);
  26. }
  27. </script>
  28. </head>
  29. <body>
  30. <header class='header'>
  31. <a class="logo" href="javascript:void(0)" onclick="return nav2('index.html#')">Home</a> <a class="logo" href="javascript:void(0)" onclick="return nav2('tags/index.html#')">Tags</a>
  32. <a class="logo" href="javascript:void(0)" onclick="return nav2Lang('zh')">简体中文</a>
  33. <nav>
  34. </nav>
  35. </header>
  36. <br />
  37. <div class="container">
  38. <h1 class="title">Text selection/processing
  39. <br>
  40. <span class="subtitle"></span>
  41. </h1>
  42. <ul class="tags">
  43. <li><a href="../tags/termux/index.html#">termux</a> </li>
  44. <li><a href="../tags/ssh/index.html#">ssh</a> </li>
  45. <li><a href="../tags/clipboard/index.html#">clipboard</a> </li>
  46. <li><a href="../tags/windows/index.html#">windows</a> </li>
  47. </ul>
  48. <p>Click the following links to install menus for long pressing the button &quot;link&quot;:<br>
  49. <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 &quot;ric&quot; with your favorite ID</a></p>
  50. <p><a href="i:0gdefault.select::copyHtml:html/clip:%0A">Copy selected text with html format to clipboard</a></p>
  51. <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>
  52. <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>
  53. <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>
  54. <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>
  55. <p>The file &quot;default.select&quot; 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>
  56. [Name]:[mimetype]:[command line]</p>
  57. <p>[mimetype] specifies input/output for [command line].<br>
  58. It formats as &quot;[input mimetype]/[output mimetype]&quot;.<br>
  59. [input mimetype] can be the following:</p>
  60. <ul>
  61. <li>&quot;html&quot;: rich text</li>
  62. <li>&quot;&quot; (empty): text</li>
  63. <li>&quot;.js&quot; file name under configuration folder. The js file is evaluated and its return value is passed to [command line] as standard input.</li>
  64. </ul>
  65. <p>[output mimetype] is same as the one defined in &quot;<a href="../cmds/index.html#">Commands</a>&quot;.</p>
  66. <ul>
  67. <li>regular mimetype such as &quot;text/html&quot;: output as the mimetype</li>
  68. <li>&quot;uweb&quot;: output as links</li>
  69. <li>&quot;uwebA&quot;: output as &quot;A&quot; link, all characters including newlines are part of the link.</li>
  70. <li>&quot;clip&quot;: output to clipboard</li>
  71. <li>&quot;termux&quot;: output as termux command</li>
  72. </ul>
  73. <p><a target="_self" href="i:0hcheck.js:../../zh/searchurl/txt/check.js">checked.js</a>: Evaluate checked.js and return value as standard input for the command line. For any file url ending with &quot;/&quot;, optionally append &quot;?[prefix][<em>[postfix]]&quot;. For example, &quot;file:///sdcard/?</em>.png&quot; lists all .png files under the folder &quot;/sdcard&quot;. Select files and process them with checked.js(such as &quot;copy to PC&quot; as the later example).</p>
  74. <p>default.select sample file:<br>
  75. copy2addressbar:/uweb:printf i:15;cat<br>
  76. copy2PCClipboard::ssh [user:password]@192.168.2.102 &quot;DISPLAY=:0 xsel -i&quot;<br>
  77. richtext2PCClipboard:html:ssh [user:password]@192.168.2.102 &quot;DISPLAY=:0 xsel -i&quot;<br>
  78. copyFiles:checked.js:while read fname;do scp $fname [user:password]@192.168.2.102:Downloads/.; done</p>
  79. <p>Here we assume that the user PC has IP address as &quot;192.168.2.102&quot;.<br>
  80. To use ssh or scp, users need to install uweb compatible Termux provided on the <a href="../index.html#">uweb apk download page</a>, and install openssl under termux (apt install openssl).<br>
  81. PCs need command &quot;xsel&quot; available to operate on copy/paste.</p>
  82. </div>
  83. <p>Last Modified: 24 May 2024<br>
  84. add thinkany ai search<br>
  85. <pre></pre>
  86. </p>
  87. <script id='jsgiscus'
  88. src='https://giscus.app/client.js'
  89. data-repo="torappinfo/uweb"
  90. data-repo-id="MDEwOlJlcG9zaXRvcnkzMDIyMDU3MjE="
  91. data-category="Announcements"
  92. data-category-id="DIC_kwDOEgNLGc4CQjsh"
  93. data-mapping="title"
  94. data-strict="0"
  95. data-reactions-enabled="1"
  96. data-emit-metadata="0"
  97. data-input-position="top"
  98. data-theme="light"
  99. data-lang="en"
  100. data-loading="lazy"
  101. crossorigin="anonymous" async>
  102. </script>
  103. <footer class="site-footer">
  104. <div class="container">
  105. &copy; 2018-2024 Richard H. Cao
  106. </div>
  107. </footer>
  108. <!-- This document is licensed under the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at <https://www.gnu.org/licenses/>. -->
  109. </body>
  110. </html>