added ptask
[www.git] / www / ptask / doc / stable / NEWS.html
diff --git a/www/ptask/doc/stable/NEWS.html b/www/ptask/doc/stable/NEWS.html
new file mode 100644 (file)
index 0000000..bf3a333
--- /dev/null
@@ -0,0 +1,466 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
+    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
+<head>\r
+<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
+<meta name="generator" content="AsciiDoc 8.6.7" />\r
+<title>What&#8217;s New</title>\r
+<style type="text/css">\r
+body {\r
+    background: #FFFFFF;\r
+    color: #333333;\r
+    font-family: Ubuntu,Arial,sans-serif;\r
+    line-height: 1.6;\r
+    font-weight: lighter;\r
+    margin: 1em 2em 2em 2em;\r
+    padding: 0 0 0 0;\r
+}\r
+\r
+h1 {\r
+    font-size: 2.813em;\r
+    margin: 0 0 0.267em 0;\r
+    padding: 0 0 0 0;\r
+    font-weight: normal;\r
+}\r
+\r
+h2 {\r
+    font-size: 2em;\r
+    margin: 0 0 0.375em;\r
+    padding: 0 0 0 0;\r
+    font-weight: normal;\r
+}\r
+\r
+h3 {\r
+    font-size: 1.438em;\r
+    margin: 0 0 0.522em;\r
+    padding: 0 0 0 0;\r
+    font-weight: normal;\r
+}\r
+\r
+h4 {\r
+    font-size: 1.219em;\r
+    margin: 0 0 0.615em;\r
+    padding: 0 0 0 0;\r
+    font-weight: normal;\r
+}\r
+\r
+h5 {\r
+    font-size: 1em;\r
+    margin: 0 0 0.75em;\r
+    padding: 0 0 0 0;\r
+    font-weight: bold;\r
+}\r
+\r
+h6 {\r
+    font-weight: normal;\r
+    font-size: 0.813em;\r
+    letter-spacing: 0.1em;\r
+    margin: 0 0 0.923em;\r
+    text-transform: uppercase;\r
+    padding: 0 0 0 0;\r
+}\r
+\r
+li {\r
+    margin: 0 0 0 1em;\r
+    line-height: 1.6;\r
+}\r
+\r
+li p {\r
+    margin: 0 0 0 0;\r
+}\r
+\r
+ul {\r
+    margin: 0 0 0 0;\r
+    padding: 0 0 0 0;\r
+}\r
+\r
+a:link, a:visited {\r
+    color: #19B6EE;\r
+    text-decoration: none;\r
+}\r
+\r
+a:hover {\r
+    text-decoration: underline;\r
+}\r
+\r
+code, pre, tt {\r
+    font-family: "Ubuntu Mono","Courier New",Courier,monospace;\r
+    font-weight: normal;\r
+    color: #333333;\r
+}\r
+\r
+pre {\r
+    background: none repeat scroll 0 0 #e0e0e0;\r
+    border-radius: 4px;\r
+    padding: 0.5em 0.5em;\r
+    margin: 0 0 0 0;\r
+    white-space: pre-wrap;\r
+    word-wrap: break-word;\r
+}\r
+\r
+/* ASCIIDOC */\r
+\r
+div.toclevel2 {\r
+    margin-left: 1em;\r
+}\r
+\r
+#toctitle {\r
+    font-size: 1.219em;\r
+    margin: 0 0 0.615em;\r
+    padding: 0 0 0 0;\r
+    font-weight: normal;\r
+}\r
+\r
+#footer {\r
+    margin: 2em 0 0 0;\r
+    font-size: 0.8em;\r
+    font-weight: lighter;\r
+}\r
+</style>\r
+<script type="text/javascript">\r
+/*<![CDATA[*/\r
+var asciidoc = {  // Namespace.\r
+\r
+/////////////////////////////////////////////////////////////////////\r
+// Table Of Contents generator\r
+/////////////////////////////////////////////////////////////////////\r
+\r
+/* Author: Mihai Bazon, September 2002\r
+ * http://students.infoiasi.ro/~mishoo\r
+ *\r
+ * Table Of Content generator\r
+ * Version: 0.4\r
+ *\r
+ * Feel free to use this script under the terms of the GNU General Public\r
+ * License, as long as you do not remove or alter this notice.\r
+ */\r
+\r
+ /* modified by Troy D. Hanson, September 2006. License: GPL */\r
+ /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
+\r
+// toclevels = 1..4.\r
+toc: function (toclevels) {\r
+\r
+  function getText(el) {\r
+    var text = "";\r
+    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
+      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
+        text += i.data;\r
+      else if (i.firstChild != null)\r
+        text += getText(i);\r
+    }\r
+    return text;\r
+  }\r
+\r
+  function TocEntry(el, text, toclevel) {\r
+    this.element = el;\r
+    this.text = text;\r
+    this.toclevel = toclevel;\r
+  }\r
+\r
+  function tocEntries(el, toclevels) {\r
+    var result = new Array;\r
+    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
+    // Function that scans the DOM tree for header elements (the DOM2\r
+    // nodeIterator API would be a better technique but not supported by all\r
+    // browsers).\r
+    var iterate = function (el) {\r
+      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
+        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
+          var mo = re.exec(i.tagName);\r
+          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
+            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
+          }\r
+          iterate(i);\r
+        }\r
+      }\r
+    }\r
+    iterate(el);\r
+    return result;\r
+  }\r
+\r
+  var toc = document.getElementById("toc");\r
+  if (!toc) {\r
+    return;\r
+  }\r
+\r
+  // Delete existing TOC entries in case we're reloading the TOC.\r
+  var tocEntriesToRemove = [];\r
+  var i;\r
+  for (i = 0; i < toc.childNodes.length; i++) {\r
+    var entry = toc.childNodes[i];\r
+    if (entry.nodeName.toLowerCase() == 'div'\r
+     && entry.getAttribute("class")\r
+     && entry.getAttribute("class").match(/^toclevel/))\r
+      tocEntriesToRemove.push(entry);\r
+  }\r
+  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
+    toc.removeChild(tocEntriesToRemove[i]);\r
+  }\r
+\r
+  // Rebuild TOC entries.\r
+  var entries = tocEntries(document.getElementById("content"), toclevels);\r
+  for (var i = 0; i < entries.length; ++i) {\r
+    var entry = entries[i];\r
+    if (entry.element.id == "")\r
+      entry.element.id = "_toc_" + i;\r
+    var a = document.createElement("a");\r
+    a.href = "#" + entry.element.id;\r
+    a.appendChild(document.createTextNode(entry.text));\r
+    var div = document.createElement("div");\r
+    div.appendChild(a);\r
+    div.className = "toclevel" + entry.toclevel;\r
+    toc.appendChild(div);\r
+  }\r
+  if (entries.length == 0)\r
+    toc.parentNode.removeChild(toc);\r
+},\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////\r
+// Footnotes generator\r
+/////////////////////////////////////////////////////////////////////\r
+\r
+/* Based on footnote generation code from:\r
+ * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
+ */\r
+\r
+footnotes: function () {\r
+  // Delete existing footnote entries in case we're reloading the footnodes.\r
+  var i;\r
+  var noteholder = document.getElementById("footnotes");\r
+  if (!noteholder) {\r
+    return;\r
+  }\r
+  var entriesToRemove = [];\r
+  for (i = 0; i < noteholder.childNodes.length; i++) {\r
+    var entry = noteholder.childNodes[i];\r
+    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
+      entriesToRemove.push(entry);\r
+  }\r
+  for (i = 0; i < entriesToRemove.length; i++) {\r
+    noteholder.removeChild(entriesToRemove[i]);\r
+  }\r
+\r
+  // Rebuild footnote entries.\r
+  var cont = document.getElementById("content");\r
+  var spans = cont.getElementsByTagName("span");\r
+  var refs = {};\r
+  var n = 0;\r
+  for (i=0; i<spans.length; i++) {\r
+    if (spans[i].className == "footnote") {\r
+      n++;\r
+      var note = spans[i].getAttribute("data-note");\r
+      if (!note) {\r
+        // Use [\s\S] in place of . so multi-line matches work.\r
+        // Because JavaScript has no s (dotall) regex flag.\r
+        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
+        spans[i].innerHTML =\r
+          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
+          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
+        spans[i].setAttribute("data-note", note);\r
+      }\r
+      noteholder.innerHTML +=\r
+        "<div class='footnote' id='_footnote_" + n + "'>" +\r
+        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
+        n + "</a>. " + note + "</div>";\r
+      var id =spans[i].getAttribute("id");\r
+      if (id != null) refs["#"+id] = n;\r
+    }\r
+  }\r
+  if (n == 0)\r
+    noteholder.parentNode.removeChild(noteholder);\r
+  else {\r
+    // Process footnoterefs.\r
+    for (i=0; i<spans.length; i++) {\r
+      if (spans[i].className == "footnoteref") {\r
+        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
+        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
+        n = refs[href];\r
+        spans[i].innerHTML =\r
+          "[<a href='#_footnote_" + n +\r
+          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
+      }\r
+    }\r
+  }\r
+},\r
+\r
+install: function(toclevels) {\r
+  var timerId;\r
+\r
+  function reinstall() {\r
+    asciidoc.footnotes();\r
+    if (toclevels) {\r
+      asciidoc.toc(toclevels);\r
+    }\r
+  }\r
+\r
+  function reinstallAndRemoveTimer() {\r
+    clearInterval(timerId);\r
+    reinstall();\r
+  }\r
+\r
+  timerId = setInterval(reinstall, 500);\r
+  if (document.addEventListener)\r
+    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
+  else\r
+    window.onload = reinstallAndRemoveTimer;\r
+}\r
+\r
+}\r
+asciidoc.install();\r
+/*]]>*/\r
+</script>\r
+</head>\r
+<body class="article">\r
+<div id="header">\r
+<h1>What&#8217;s New</h1>\r
+</div>\r
+<div id="content">\r
+<div class="sect1">\r
+<h2 id="_v0_0_4">v0.0.4</h2>\r
+<div class="sectionbody">\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+fixed i18n support.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added --version and --help options.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added manpage.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+popup error dialog when .taskrc does not exist.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added --debug.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added taskwarrior version checking (supported version are 2.2.0 and 2.0.0).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added support for taskwarrior 2.2.0 (avoid confirmation query).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added window position and size restore.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added tasks sort column/order restore.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+fixed error message displayed when a note does not exist.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+new task dialog allow to set description and priority.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added project table to filter the list of tasks.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added application icon.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added remove task button.\r
+</p>\r
+</li>\r
+</ul></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
+<h2 id="_v0_0_3">v0.0.3</h2>\r
+<div class="sectionbody">\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+fixed window close to terminate the application.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added README.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+generated HTML version of README and NEWS files.\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added fr translation and i18n support.\r
+</p>\r
+</li>\r
+</ul></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
+<h2 id="_v0_0_2">v0.0.2</h2>\r
+<div class="sectionbody">\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+added refresh keyboard shortcut (ALT-r).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+added new task keyboard shortcut (ALT-n).\r
+</p>\r
+</li>\r
+<li>\r
+<p>\r
+renamed gtask to ptask.\r
+</p>\r
+</li>\r
+</ul></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
+<h2 id="_v0_0_1">v0.0.1</h2>\r
+<div class="sectionbody">\r
+<div class="ulist"><ul>\r
+<li>\r
+<p>\r
+Initial release.\r
+</p>\r
+</li>\r
+</ul></div>\r
+</div>\r
+</div>\r
+</div>\r
+<div id="footnotes"><hr /></div>\r
+<div id="footer">\r
+<div id="footer-text">\r
+Last updated 2013-12-01 13:58:06 CET\r
+</div>\r
+</div>\r
+</body>\r
+</html>\r