1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
\r
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
\r
5 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
\r
6 <meta name="generator" content="AsciiDoc 8.6.9" />
\r
7 <title>What’s New</title>
\r
8 <style type="text/css">
\r
10 background: #FFFFFF;
\r
12 font-family: Ubuntu,Arial,sans-serif;
\r
14 font-weight: lighter;
\r
15 margin: 1em 2em 2em 2em;
\r
21 margin: 0 0 0.267em 0;
\r
23 font-weight: normal;
\r
28 margin: 0 0 0.375em;
\r
30 font-weight: normal;
\r
35 margin: 0 0 0.522em;
\r
37 font-weight: normal;
\r
42 margin: 0 0 0.615em;
\r
44 font-weight: normal;
\r
55 font-weight: normal;
\r
57 letter-spacing: 0.1em;
\r
58 margin: 0 0 0.923em;
\r
59 text-transform: uppercase;
\r
79 text-decoration: none;
\r
83 text-decoration: underline;
\r
87 font-family: "Ubuntu Mono","Courier New",Courier,monospace;
\r
88 font-weight: normal;
\r
93 background: none repeat scroll 0 0 #e0e0e0;
\r
95 padding: 0.5em 0.5em;
\r
97 white-space: pre-wrap;
\r
98 word-wrap: break-word;
\r
108 font-size: 1.219em;
\r
109 margin: 0 0 0.615em;
\r
111 font-weight: normal;
\r
117 font-weight: lighter;
\r
122 <script type="text/javascript">
\r
124 var asciidoc = { // Namespace.
\r
126 /////////////////////////////////////////////////////////////////////
\r
127 // Table Of Contents generator
\r
128 /////////////////////////////////////////////////////////////////////
\r
130 /* Author: Mihai Bazon, September 2002
\r
131 * http://students.infoiasi.ro/~mishoo
\r
133 * Table Of Content generator
\r
136 * Feel free to use this script under the terms of the GNU General Public
\r
137 * License, as long as you do not remove or alter this notice.
\r
140 /* modified by Troy D. Hanson, September 2006. License: GPL */
\r
141 /* modified by Stuart Rackham, 2006, 2009. License: GPL */
\r
143 // toclevels = 1..4.
\r
144 toc: function (toclevels) {
\r
146 function getText(el) {
\r
148 for (var i = el.firstChild; i != null; i = i.nextSibling) {
\r
149 if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
\r
151 else if (i.firstChild != null)
\r
152 text += getText(i);
\r
157 function TocEntry(el, text, toclevel) {
\r
160 this.toclevel = toclevel;
\r
163 function tocEntries(el, toclevels) {
\r
164 var result = new Array;
\r
165 var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');
\r
166 // Function that scans the DOM tree for header elements (the DOM2
\r
167 // nodeIterator API would be a better technique but not supported by all
\r
169 var iterate = function (el) {
\r
170 for (var i = el.firstChild; i != null; i = i.nextSibling) {
\r
171 if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
\r
172 var mo = re.exec(i.tagName);
\r
173 if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
\r
174 result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
\r
184 var toc = document.getElementById("toc");
\r
189 // Delete existing TOC entries in case we're reloading the TOC.
\r
190 var tocEntriesToRemove = [];
\r
192 for (i = 0; i < toc.childNodes.length; i++) {
\r
193 var entry = toc.childNodes[i];
\r
194 if (entry.nodeName.toLowerCase() == 'div'
\r
195 && entry.getAttribute("class")
\r
196 && entry.getAttribute("class").match(/^toclevel/))
\r
197 tocEntriesToRemove.push(entry);
\r
199 for (i = 0; i < tocEntriesToRemove.length; i++) {
\r
200 toc.removeChild(tocEntriesToRemove[i]);
\r
203 // Rebuild TOC entries.
\r
204 var entries = tocEntries(document.getElementById("content"), toclevels);
\r
205 for (var i = 0; i < entries.length; ++i) {
\r
206 var entry = entries[i];
\r
207 if (entry.element.id == "")
\r
208 entry.element.id = "_toc_" + i;
\r
209 var a = document.createElement("a");
\r
210 a.href = "#" + entry.element.id;
\r
211 a.appendChild(document.createTextNode(entry.text));
\r
212 var div = document.createElement("div");
\r
213 div.appendChild(a);
\r
214 div.className = "toclevel" + entry.toclevel;
\r
215 toc.appendChild(div);
\r
217 if (entries.length == 0)
\r
218 toc.parentNode.removeChild(toc);
\r
222 /////////////////////////////////////////////////////////////////////
\r
223 // Footnotes generator
\r
224 /////////////////////////////////////////////////////////////////////
\r
226 /* Based on footnote generation code from:
\r
227 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
\r
230 footnotes: function () {
\r
231 // Delete existing footnote entries in case we're reloading the footnodes.
\r
233 var noteholder = document.getElementById("footnotes");
\r
237 var entriesToRemove = [];
\r
238 for (i = 0; i < noteholder.childNodes.length; i++) {
\r
239 var entry = noteholder.childNodes[i];
\r
240 if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")
\r
241 entriesToRemove.push(entry);
\r
243 for (i = 0; i < entriesToRemove.length; i++) {
\r
244 noteholder.removeChild(entriesToRemove[i]);
\r
247 // Rebuild footnote entries.
\r
248 var cont = document.getElementById("content");
\r
249 var spans = cont.getElementsByTagName("span");
\r
252 for (i=0; i<spans.length; i++) {
\r
253 if (spans[i].className == "footnote") {
\r
255 var note = spans[i].getAttribute("data-note");
\r
257 // Use [\s\S] in place of . so multi-line matches work.
\r
258 // Because JavaScript has no s (dotall) regex flag.
\r
259 note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
\r
260 spans[i].innerHTML =
\r
261 "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
\r
262 "' title='View footnote' class='footnote'>" + n + "</a>]";
\r
263 spans[i].setAttribute("data-note", note);
\r
265 noteholder.innerHTML +=
\r
266 "<div class='footnote' id='_footnote_" + n + "'>" +
\r
267 "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
\r
268 n + "</a>. " + note + "</div>";
\r
269 var id =spans[i].getAttribute("id");
\r
270 if (id != null) refs["#"+id] = n;
\r
274 noteholder.parentNode.removeChild(noteholder);
\r
276 // Process footnoterefs.
\r
277 for (i=0; i<spans.length; i++) {
\r
278 if (spans[i].className == "footnoteref") {
\r
279 var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
\r
280 href = href.match(/#.*/)[0]; // Because IE return full URL.
\r
282 spans[i].innerHTML =
\r
283 "[<a href='#_footnote_" + n +
\r
284 "' title='View footnote' class='footnote'>" + n + "</a>]";
\r
290 install: function(toclevels) {
\r
293 function reinstall() {
\r
294 asciidoc.footnotes();
\r
296 asciidoc.toc(toclevels);
\r
300 function reinstallAndRemoveTimer() {
\r
301 clearInterval(timerId);
\r
305 timerId = setInterval(reinstall, 500);
\r
306 if (document.addEventListener)
\r
307 document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
\r
309 window.onload = reinstallAndRemoveTimer;
\r
313 asciidoc.install();
\r
317 <body class="article">
\r
319 <h1>What’s New</h1>
\r
322 <div class="sect1">
\r
323 <h2 id="_v1_0_0">v1.0.0</h2>
\r
324 <div class="sectionbody">
\r
325 <div class="ulist"><ul>
\r
328 allowed 2.4.0, 2.4.1 and 2.5 release of taskwarrior.
\r
333 added keywords in the desktop file.
\r
338 added a command line option to force usage of an unsupported
\r
339 version of taskwarrior (risk of malfunction like damaging data).
\r
345 <div class="sect1">
\r
346 <h2 id="_v0_0_9">v0.0.9</h2>
\r
347 <div class="sectionbody">
\r
348 <div class="ulist"><ul>
\r
351 fixed potential memory leak when failing to convert time to string
\r
357 added incremental search (ctrl-shift f) on description and tags.
\r
362 ctrl-n for new task.
\r
367 ctrl-r for refresh.
\r
373 <div class="sect1">
\r
374 <h2 id="_v0_0_8">v0.0.8</h2>
\r
375 <div class="sectionbody">
\r
376 <div class="ulist"><ul>
\r
379 fixed a critical gtk error when loading the glade file
\r
380 which can also cause a memory corruption.
\r
385 fixed crash when creating task with a project
\r
386 containing a task with a tag.
\r
392 <div class="sect1">
\r
393 <h2 id="_v0_0_7">v0.0.7</h2>
\r
394 <div class="sectionbody">
\r
395 <div class="ulist"><ul>
\r
398 added support of taskwarrior 2.3.0.
\r
403 added combo box for project in the new task dialog.
\r
408 disable the removal of recurrent tasks which is freezing ptask
\r
409 because taskwarrior CLI is prompting a confirmation. That’s the
\r
410 consequence of the taskwarrior bug TW-638.
\r
415 display the tags of the selected task.
\r
421 <div class="sect1">
\r
422 <h2 id="_v0_0_6">v0.0.6</h2>
\r
423 <div class="sectionbody">
\r
424 <div class="ulist"><ul>
\r
427 added contextal menu item in the task tree: task done.
\r
432 added start/stop task.
\r
437 fixed coredump with taskwarrior 2.0.0 when there is not any tasks.
\r
443 <div class="sect1">
\r
444 <h2 id="_v0_0_5">v0.0.5</h2>
\r
445 <div class="sectionbody">
\r
446 <div class="ulist"><ul>
\r
449 keep focus on project after refresh.
\r
454 keep focus on task after refresh.
\r
459 added support of tasks with deleted status.
\r
464 added urgency column.
\r
469 implemented the cancel button of the task panel.
\r
479 restore position of vertical/horizontal spliters.
\r
484 added creation date, due, id, uuid, urgency, and start date in the
\r
490 popup menu to filter columns of the table of tasks.
\r
495 allow to change the directory containing the notes.
\r
500 fixed compilation with gtk+ 3.10 (ignore deprecation of GtkAction).
\r
506 <div class="sect1">
\r
507 <h2 id="_v0_0_4">v0.0.4</h2>
\r
508 <div class="sectionbody">
\r
509 <div class="ulist"><ul>
\r
512 fixed i18n support.
\r
517 added --version and --help options.
\r
527 popup error dialog when .taskrc does not exist.
\r
537 added taskwarrior version checking (supported version are 2.2.0 and 2.0.0).
\r
542 added support for taskwarrior 2.2.0 (avoid confirmation query).
\r
547 added window position and size restore.
\r
552 added tasks sort column/order restore.
\r
557 fixed error message displayed when a note does not exist.
\r
562 new task dialog allow to set description and priority.
\r
567 added project table to filter the list of tasks.
\r
572 added application icon.
\r
577 added remove task button.
\r
583 <div class="sect1">
\r
584 <h2 id="_v0_0_3">v0.0.3</h2>
\r
585 <div class="sectionbody">
\r
586 <div class="ulist"><ul>
\r
589 fixed window close to terminate the application.
\r
599 generated HTML version of README and NEWS files.
\r
604 added fr translation and i18n support.
\r
610 <div class="sect1">
\r
611 <h2 id="_v0_0_2">v0.0.2</h2>
\r
612 <div class="sectionbody">
\r
613 <div class="ulist"><ul>
\r
616 added refresh keyboard shortcut (ALT-r).
\r
621 added new task keyboard shortcut (ALT-n).
\r
626 renamed gtask to ptask.
\r
632 <div class="sect1">
\r
633 <h2 id="_v0_0_1">v0.0.1</h2>
\r
634 <div class="sectionbody">
\r
635 <div class="ulist"><ul>
\r
645 <div id="footnotes"><hr /></div>
\r
647 <div id="footer-text">
\r
649 2016-05-23 20:34:41 CEST
\r