help3/xhpeditor/index.php | 8 help3/xhpeditor/old-index.html | 196 --------------------- help3/xhpeditor/old.html | 375 ----------------------------------------- help3/xhpeditor/xhp2html.js | 29 +++ 4 files changed, 34 insertions(+), 574 deletions(-)
New commits: commit 2e100bac16e6513c2e170ebb4b2deee68ce6f3cd Author: Olivier Hallot <olivier.hal...@libreoffice.org> AuthorDate: Sat Dec 7 22:33:02 2019 -0300 Commit: Olivier Hallot <olivier.hal...@libreoffice.org> CommitDate: Sun Dec 8 02:35:08 2019 +0100 Add Save command in XHP editor Change-Id: Idee319110ca2613dc33dcd220fc50b9f91923906 Reviewed-on: https://gerrit.libreoffice.org/84704 Reviewed-by: Olivier Hallot <olivier.hal...@libreoffice.org> Tested-by: Olivier Hallot <olivier.hal...@libreoffice.org> diff --git a/help3/xhpeditor/index.php b/help3/xhpeditor/index.php index 780dcbc..295b948 100644 --- a/help3/xhpeditor/index.php +++ b/help3/xhpeditor/index.php @@ -57,8 +57,9 @@ echo $xhp; ?> </textarea></br> </form> - <div class="snip_heading"><div class="snip_div">Open local file:</div> - <input type="file" id="file-input" accept=".xhp"/> + <div class="snip_heading"> + <div class="snip_div">Open:</div><input type="file" id="file-input" accept=".xhp"/> + <div class="snip_div">Save:</div><button onclick="download(editor.getValue(),getFileNameFromXML(),'text/xml')" class="snip_buttons">Save local file</button> </div> <div class="snip_heading"><div class="snip_div">Edit:</div> <button onclick="editor.undo()">Undo</button> @@ -93,6 +94,7 @@ echo $xhp; <button onclick="warning()" class="snip_buttons">warning</button> <button onclick="tip()" class="snip_buttons">tip</button> <button onclick="bascode_par()" class="snip_buttons">bascode-par</button> + <button onclick="pycode_par()" class="snip_buttons">pycode-par</button> </div> <div class="snip_heading"><div class="snip_div">Characters:</div> <button onclick="emph()" class="snip_buttons">emph</button> @@ -113,6 +115,8 @@ echo $xhp; <button onclick="switchXHP('sys')" class="snip_buttons">Switch sys</button> <button onclick="switchInline('appl')" class="snip_buttons">Switchinline appl</button> <button onclick="switchInline('sys')" class="snip_buttons">Switchinline sys</button> + <button onclick="MenuPrefMAC()" class="snip_buttons">Menu MAC</button> + <button onclick="KeyMAC()" class="snip_buttons">Key MAC</button> </div> <div class="snip_heading"><div class="snip_div">Lists:</div> <button onclick="tList('unordered')" class="snip_buttons">UL</button> diff --git a/help3/xhpeditor/old-index.html b/help3/xhpeditor/old-index.html deleted file mode 100644 index 5bb0048..0000000 --- a/help3/xhpeditor/old-index.html +++ /dev/null @@ -1,196 +0,0 @@ -<!doctype html> - -<title>CodeMirror</title> -<meta charset="utf-8"/> - -<link rel=stylesheet href="lib/codemirror.css"> -<link rel=stylesheet href="doc/docs.css"> -<script src="lib/codemirror.js"></script> -<script src="mode/xml/xml.js"></script> -<script src="mode/javascript/javascript.js"></script> -<script src="mode/css/css.js"></script> -<script src="mode/htmlmixed/htmlmixed.js"></script> -<script src="addon/edit/matchbrackets.js"></script> - -<script src="doc/activebookmark.js"></script> - -<style> - .CodeMirror { height: auto; border: 1px solid #ddd; } - .CodeMirror-scroll { max-height: 200px; } - .CodeMirror pre { padding-left: 7px; line-height: 1.25; } -</style> - -<div id=nav> - <a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="doc/logo.png"></a> - - <ul> - <li><a class=active data-default="true" href="#description">Home</a> - <li><a href="doc/manual.html">Manual</a> - <li><a href="https://github.com/codemirror/codemirror">Code</a> - </ul> - <ul> - <li><a href="#features">Features</a> - <li><a href="#community">Community</a> - <li><a href="#browsersupport">Browser support</a> - </ul> -</div> - -<article> - -<section id=description class=first> - <p><strong>CodeMirror</strong> is a versatile text editor - implemented in JavaScript for the browser. It is specialized for - editing code, and comes with a number of <a href="mode/index.html">language modes</a> and <a href="doc/manual.html#addons">addons</a> - that implement more advanced editing functionality.</p> - - <p>A rich <a href="doc/manual.html#api">programming API</a> and a - CSS <a href="doc/manual.html#styling">theming</a> system are - available for customizing CodeMirror to fit your application, and - extending it with new functionality.</p> -</section> - -<section id=demo> - <h2>This is CodeMirror</h2> - <form style="position: relative; margin-top: .5em;"><textarea id=demotext> -<!-- Create a simple CodeMirror instance --> -<link rel="stylesheet" href="lib/codemirror.css"> -<script src="lib/codemirror.js"></script> -<script> - var editor = CodeMirror.fromTextArea(myTextarea, { - lineNumbers: true - }); -</script></textarea> - <select id="demolist" onchange="document.location = this.options[this.selectedIndex].value;"> - <option value="#">Other demos...</option> - <option value="demo/complete.html">Autocompletion</option> - <option value="demo/folding.html">Code folding</option> - <option value="demo/theme.html">Themes</option> - <option value="mode/htmlmixed/index.html">Mixed language modes</option> - <option value="demo/bidi.html">Bi-directional text</option> - <option value="demo/variableheight.html">Variable font sizes</option> - <option value="demo/search.html">Search interface</option> - <option value="demo/vim.html">Vim bindings</option> - <option value="demo/emacs.html">Emacs bindings</option> - <option value="demo/sublime.html">Sublime Text bindings</option> - <option value="demo/tern.html">Tern integration</option> - <option value="demo/merge.html">Merge/diff interface</option> - <option value="demo/fullscreen.html">Full-screen editor</option> - <option value="demo/simplescrollbars.html">Custom scrollbars</option> - </select></form> - <script> - var editor = CodeMirror.fromTextArea(document.getElementById("demotext"), { - lineNumbers: true, - mode: "text/html", - matchBrackets: true - }); - </script> - - <div class=actions> - <div class=actionspicture> - <img src="doc/yinyang.png" class=yinyang> - <div class="actionlink download"> - <a href="http://codemirror.net/codemirror.zip">DOWNLOAD</a> - </div> - <div class="actionlink fund"> - <a href="https://marijnhaverbeke.nl/fund/">FUND</a> - </div> - </div> - <div class=actionsleft> - Get the current version: <a href="http://codemirror.net/codemirror.zip">5.38.0</a>.<br> - You can see the <a href="https://github.com/codemirror/codemirror" title="Github repository">code</a>,<br> - read the <a href="doc/releases.html">release notes</a>,<br> - or study the <a href="doc/manual.html">user manual</a>. - </div> - <div class=actionsright> - Software needs maintenance,<br> - maintainers need to subsist.<br> - Current funding status = <img src="https://marijnhaverbeke.nl/fund/status_s.png" title="Current maintainer happiness" style="vertical-align: middle; height: 16px; width: 16px"><br> - You can help <a href="https://marijnhaverbeke.nl/fund/" title="Set up a monthly contribution">per month</a> or - <a title="Donate with PayPal" href="https://www.paypal.me/marijnhaverbeke">once</a>. - </div> - </div> - -</section> - -<section id=features> - <h2>Features</h2> - <ul> - <li>Support for <a href="mode/index.html">over 100 languages</a> out of the box - <li>A powerful, <a href="mode/htmlmixed/index.html">composable</a> language mode <a href="doc/manual.html#modeapi">system</a> - <li><a href="doc/manual.html#addon_show-hint">Autocompletion</a> (<a href="demo/xmlcomplete.html">XML</a>) - <li><a href="doc/manual.html#addon_foldcode">Code folding</a> - <li><a href="doc/manual.html#option_extraKeys">Configurable</a> keybindings - <li><a href="demo/vim.html">Vim</a>, <a href="demo/emacs.html">Emacs</a>, and <a href="demo/sublime.html">Sublime Text</a> bindings - <li><a href="doc/manual.html#addon_search">Search and replace</a> interface - <li><a href="doc/manual.html#addon_matchbrackets">Bracket</a> and <a href="doc/manual.html#addon_matchtags">tag</a> matching - <li>Support for <a href="demo/buffers.html">split views</a> - <li><a href="doc/manual.html#addon_lint">Linter integration</a> - <li><a href="demo/variableheight.html">Mixing font sizes and styles</a> - <li><a href="demo/theme.html">Various themes</a> - <li>Able to <a href="demo/resize.html">resize to fit content</a> - <li><a href="doc/manual.html#mark_replacedWith">Inline</a> and <a href="doc/manual.html#addLineWidget">block</a> widgets - <li>Programmable <a href="demo/marker.html">gutters</a> - <li>Making ranges of text <a href="doc/manual.html#markText">styled, read-only, or atomic</a> - <li><a href="demo/bidi.html">Bi-directional text</a> support - <li>Many other <a href="doc/manual.html#api">methods</a> and <a href="doc/manual.html#addons">addons</a>... - </ul> -</section> - -<section id=community> - <h2>Community</h2> - - <p>CodeMirror is an open-source project shared under - an <a href="LICENSE">MIT license</a>. It is the editor used in the - dev tools for - <a href="https://hacks.mozilla.org/2013/11/firefox-developer-tools-episode-27-edit-as-html-codemirror-more/">Firefox</a>, - <a href="https://developers.google.com/chrome-developer-tools/">Chrome</a>, - and <a href="https://developer.apple.com/safari/tools/">Safari</a>, in <a href="http://www.lighttable.com/">Light - Table</a>, <a href="http://brackets.io/">Adobe - Brackets</a>, <a href="http://blog.bitbucket.org/2013/05/14/edit-your-code-in-the-cloud-with-bitbucket/">Bitbucket</a>, - and <a href="doc/realworld.html">many other projects</a>.</p> - - <p>Development and bug tracking happens - on <a href="https://github.com/codemirror/CodeMirror/">github</a> - (<a href="http://marijnhaverbeke.nl/git/codemirror">alternate git - repository</a>). - Please <a href="http://codemirror.net/doc/reporting.html">read these - pointers</a> before submitting a bug. Use pull requests to submit - patches. All contributions must be released under the same MIT - license that CodeMirror uses.</p> - - <p>Discussion around the project is done on - a <a href="https://discuss.codemirror.net">discussion forum</a>. - Announcements related to the project, such as new versions, are - posted in the - forum's <a href="https://discuss.codemirror.net/c/announce">"announce"</a> - category. If needed, you can - contact <a href="mailto:mari...@gmail.com">the maintainer</a> - directly. We aim to be an inclusive, welcoming community. To make - that explicit, we have - a <a href="http://contributor-covenant.org/version/1/1/0/">code of - conduct</a> that applies to communication around the project.</p> - - <p>A list of CodeMirror-related software that is not part of the - main distribution is maintained - on <a href="https://github.com/codemirror/CodeMirror/wiki/CodeMirror-addons">our - wiki</a>. Feel free to add your project.</p> -</section> - -<section id=browsersupport> - <h2>Browser support</h2> - <p>The <em>desktop</em> versions of the following browsers, - in <em>standards mode</em> (HTML5 <code><!doctype html></code> - recommended) are supported:</p> - <table style="margin-bottom: 1em"> - <tr><th>Firefox</th><td>version 4 and up</td></tr> - <tr><th>Chrome</th><td>any version</td></tr> - <tr><th>Safari</th><td>version 5.2 and up</td></tr> - <tr><th style="padding-right: 1em;">Internet Explorer/Edge</th><td>version 8 and up</td></tr> - <tr><th>Opera</th><td>version 9 and up</td></tr> - </table> - <p>Support for modern mobile browsers is experimental. Recent - versions of the iOS browser and Chrome on Android should work - pretty well.</p> -</section> - -</article> diff --git a/help3/xhpeditor/old.html b/help3/xhpeditor/old.html deleted file mode 100644 index 96ed444..0000000 --- a/help3/xhpeditor/old.html +++ /dev/null @@ -1,375 +0,0 @@ - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <!-- - Modified from the Debian original for Ubuntu - Last updated: 2016-11-16 - See: https://launchpad.net/bugs/1288690 - --> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - <title>Apache2 Ubuntu Default Page: It works</title> - <style type="text/css" media="screen"> - * { - margin: 0px 0px 0px 0px; - padding: 0px 0px 0px 0px; - } - - body, html { - padding: 3px 3px 3px 3px; - - background-color: #D8DBE2; - - font-family: Verdana, sans-serif; - font-size: 11pt; - text-align: center; - } - - div.main_page { - position: relative; - display: table; - - width: 800px; - - margin-bottom: 3px; - margin-left: auto; - margin-right: auto; - padding: 0px 0px 0px 0px; - - border-width: 2px; - border-color: #212738; - border-style: solid; - - background-color: #FFFFFF; - - text-align: center; - } - - div.page_header { - height: 99px; - width: 100%; - - background-color: #F5F6F7; - } - - div.page_header span { - margin: 15px 0px 0px 50px; - - font-size: 180%; - font-weight: bold; - } - - div.page_header img { - margin: 3px 0px 0px 40px; - - border: 0px 0px 0px; - } - - div.table_of_contents { - clear: left; - - min-width: 200px; - - margin: 3px 3px 3px 3px; - - background-color: #FFFFFF; - - text-align: left; - } - - div.table_of_contents_item { - clear: left; - - width: 100%; - - margin: 4px 0px 0px 0px; - - background-color: #FFFFFF; - - color: #000000; - text-align: left; - } - - div.table_of_contents_item a { - margin: 6px 0px 0px 6px; - } - - div.content_section { - margin: 3px 3px 3px 3px; - - background-color: #FFFFFF; - - text-align: left; - } - - div.content_section_text { - padding: 4px 8px 4px 8px; - - color: #000000; - font-size: 100%; - } - - div.content_section_text pre { - margin: 8px 0px 8px 0px; - padding: 8px 8px 8px 8px; - - border-width: 1px; - border-style: dotted; - border-color: #000000; - - background-color: #F5F6F7; - - font-style: italic; - } - - div.content_section_text p { - margin-bottom: 6px; - } - - div.content_section_text ul, div.content_section_text li { - padding: 4px 8px 4px 16px; - } - - div.section_header { - padding: 3px 6px 3px 6px; - - background-color: #8E9CB2; - - color: #FFFFFF; - font-weight: bold; - font-size: 112%; - text-align: center; - } - - div.section_header_red { - background-color: #CD214F; - } - - div.section_header_grey { - background-color: #9F9386; - } - - .floating_element { - position: relative; - float: left; - } - - div.table_of_contents_item a, - div.content_section_text a { - text-decoration: none; - font-weight: bold; - } - - div.table_of_contents_item a:link, - div.table_of_contents_item a:visited, - div.table_of_contents_item a:active { - color: #000000; - } - - div.table_of_contents_item a:hover { - background-color: #000000; - - color: #FFFFFF; - } - - div.content_section_text a:link, - div.content_section_text a:visited, - div.content_section_text a:active { - background-color: #DCDFE6; - - color: #000000; - } - - div.content_section_text a:hover { - background-color: #000000; - - color: #DCDFE6; - } - - div.validator { - } - </style> - </head> - <body> - <div class="main_page"> - <div class="page_header floating_element"> - <img src="/icons/ubuntu-logo.png" alt="Ubuntu Logo" class="floating_element"/> - <span class="floating_element"> - Apache2 Ubuntu Default Page - </span> - </div> -<!-- <div class="table_of_contents floating_element"> - <div class="section_header section_header_grey"> - TABLE OF CONTENTS - </div> - <div class="table_of_contents_item floating_element"> - <a href="#about">About</a> - </div> - <div class="table_of_contents_item floating_element"> - <a href="#changes">Changes</a> - </div> - <div class="table_of_contents_item floating_element"> - <a href="#scope">Scope</a> - </div> - <div class="table_of_contents_item floating_element"> - <a href="#files">Config files</a> - </div> - </div> ---> - <div class="content_section floating_element"> - - - <div class="section_header section_header_red"> - <div id="about"></div> - It works! - </div> - <div class="content_section_text"> - <p> - This is the default welcome page used to test the correct - operation of the Apache2 server after installation on Ubuntu systems. - It is based on the equivalent page on Debian, from which the Ubuntu Apache - packaging is derived. - If you can read this page, it means that the Apache HTTP server installed at - this site is working properly. You should <b>replace this file</b> (located at - <tt>/var/www/html/index.html</tt>) before continuing to operate your HTTP server. - </p> - - - <p> - If you are a normal user of this web site and don't know what this page is - about, this probably means that the site is currently unavailable due to - maintenance. - If the problem persists, please contact the site's administrator. - </p> - - </div> - <div class="section_header"> - <div id="changes"></div> - Configuration Overview - </div> - <div class="content_section_text"> - <p> - Ubuntu's Apache2 default configuration is different from the - upstream default configuration, and split into several files optimized for - interaction with Ubuntu tools. The configuration system is - <b>fully documented in - /usr/share/doc/apache2/README.Debian.gz</b>. Refer to this for the full - documentation. Documentation for the web server itself can be - found by accessing the <a href="/manual">manual</a> if the <tt>apache2-doc</tt> - package was installed on this server. - - </p> - <p> - The configuration layout for an Apache2 web server installation on Ubuntu systems is as follows: - </p> - <pre> -/etc/apache2/ -|-- apache2.conf -| `-- ports.conf -|-- mods-enabled -| |-- *.load -| `-- *.conf -|-- conf-enabled -| `-- *.conf -|-- sites-enabled -| `-- *.conf - </pre> - <ul> - <li> - <tt>apache2.conf</tt> is the main configuration - file. It puts the pieces together by including all remaining configuration - files when starting up the web server. - </li> - - <li> - <tt>ports.conf</tt> is always included from the - main configuration file. It is used to determine the listening ports for - incoming connections, and this file can be customized anytime. - </li> - - <li> - Configuration files in the <tt>mods-enabled/</tt>, - <tt>conf-enabled/</tt> and <tt>sites-enabled/</tt> directories contain - particular configuration snippets which manage modules, global configuration - fragments, or virtual host configurations, respectively. - </li> - - <li> - They are activated by symlinking available - configuration files from their respective - *-available/ counterparts. These should be managed - by using our helpers - <tt> - a2enmod, - a2dismod, - </tt> - <tt> - a2ensite, - a2dissite, - </tt> - and - <tt> - a2enconf, - a2disconf - </tt>. See their respective man pages for detailed information. - </li> - - <li> - The binary is called apache2. Due to the use of - environment variables, in the default configuration, apache2 needs to be - started/stopped with <tt>/etc/init.d/apache2</tt> or <tt>apache2ctl</tt>. - <b>Calling <tt>/usr/bin/apache2</tt> directly will not work</b> with the - default configuration. - </li> - </ul> - </div> - - <div class="section_header"> - <div id="docroot"></div> - Document Roots - </div> - - <div class="content_section_text"> - <p> - By default, Ubuntu does not allow access through the web browser to - <em>any</em> file apart of those located in <tt>/var/www</tt>, - <a href="http://httpd.apache.org/docs/2.4/mod/mod_userdir.html" rel="nofollow">public_html</a> - directories (when enabled) and <tt>/usr/share</tt> (for web - applications). If your site is using a web document root - located elsewhere (such as in <tt>/srv</tt>) you may need to whitelist your - document root directory in <tt>/etc/apache2/apache2.conf</tt>. - </p> - <p> - The default Ubuntu document root is <tt>/var/www/html</tt>. You - can make your own virtual hosts under /var/www. This is different - to previous releases which provides better security out of the box. - </p> - </div> - - <div class="section_header"> - <div id="bugs"></div> - Reporting Problems - </div> - <div class="content_section_text"> - <p> - Please use the <tt>ubuntu-bug</tt> tool to report bugs in the - Apache2 package with Ubuntu. However, check <a - href="https://bugs.launchpad.net/ubuntu/+source/apache2" - rel="nofollow">existing bug reports</a> before reporting a new bug. - </p> - <p> - Please report bugs specific to modules (such as PHP and others) - to respective packages, not to the web server itself. - </p> - </div> - - - - - </div> - </div> - <div class="validator"> - </div> - </body> -</html> - diff --git a/help3/xhpeditor/xhp2html.js b/help3/xhpeditor/xhp2html.js index 1543b01..8b57cb9 100644 --- a/help3/xhpeditor/xhp2html.js +++ b/help3/xhpeditor/xhp2html.js @@ -11,7 +11,6 @@ var xhttp; - function loadDoc(filename, isXML) { if (window.ActiveXObject) @@ -51,3 +50,31 @@ function readSingleFile(e) { document.getElementById('file-input').addEventListener('change', readSingleFile, false); +// XML parser of the poor... +function getFileNameFromXML(){ + var textXML = editor.doc.getValue(); + var p1=textXML.lastIndexOf('<filename>'); + var p2=textXML.lastIndexOf('</filename>'); + return textXML.substring(p1+10,p2).split('/').pop(); +} + + +// Function to download data to a file +// source: https://stackoverflow.com/questions/13405129/javascript-create-and-save-file +function download(data, filename, type) { + var file = new Blob([data], {type: type}); + if (window.navigator.msSaveOrOpenBlob) // IE10+ + window.navigator.msSaveOrOpenBlob(file, filename); + else { // Others + var a = document.createElement("a"), + url = URL.createObjectURL(file); + a.href = url; + a.download = filename; + document.body.appendChild(a); + a.click(); + setTimeout(function() { + document.body.removeChild(a); + window.URL.revokeObjectURL(url); + }, 0); + } +} _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits