GithubHelp home page GithubHelp logo

tasknc's People

Contributors

irl avatar lharding avatar matthiasbeyer avatar mjheagle8 avatar nfraprado avatar prurigro avatar puzanov avatar teasp00n avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tasknc's Issues

Segfaults running on Linux 64-bit

Segfaults when trying to run it.

[2012-11-08 14:24:37] ERROR: source: file "/meta/i/irl/.config/tasknc/config" could not be opened
[2012-11-08 14:24:37] ERROR: SEGFAULT
[2012-11-08 14:24:37] ERROR: segmentation fault, exiting

Valgrind error can be found at: https://gist.github.com/4039110

tasknc crashes if task list is empty

I found tasknc currently crashes if the task list is empty with the following backtrace:

#0  0x00007ffff7836d05 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff783aab6 in abort () at abort.c:92
#2  0x00007ffff787087b in __libc_message (do_abort=2, fmt=0x7ffff79590a0 "*** glibc detected *** %s: %s: 0x%s ***\n")
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#3  0x00007ffff787c58f in malloc_printerr (av=<value optimised out>, p=0x629c60) at malloc.c:6283
#4  _int_free (av=<value optimised out>, p=0x629c60) at malloc.c:4795
#5  0x00007ffff78803e3 in __libc_free (mem=<value optimised out>) at malloc.c:3738
#6  0x0000000000403cfa in pad_string (argstr=0x405f20 " ", length=1, lpad=0, rpad=1, align=114 'r') at tasknc.c:1221
#7  0x0000000000404298 in print_task_list (head=0x608120, projlen=1, desclen=114, datelen=10) at tasknc.c:1376
#8  0x0000000000402f85 in nc_main (head=0x608120) at tasknc.c:833
#9  0x000000000040546b in main (argc=1, argv=0x7fffffffe1f8) at tasknc.c:1888

Digging a little deeper into the code, I think I found two problems:

First: We see at tasknc.c: 1876 that tasknc expects get_tasks to return NULL if the task list is empty. This does not occur.

I have taskwarrior 2.0.0 installed so it appears that tasknc will try to parse the output of 'task export.json status:pending'. The output of this command is:

$ task export.json status:pending
[task next export.json status:pending]
No matches.

However, based on my quick glance it doesn't appear get_tasks will ever return NULL if tw outputs anything at all.

Next: We see from the bt that pad_string is called from print_task_list at line 1376.

                if (cur->project==NULL)
                        bufstr = pad_string(" ", projlen, 0, 1, 'r');

In pad_string, it will truncate the string if the length of the string is longer than the argument 'length' (which in this case is suppose to be the length of the largest project name. Since there are no tasks, the largest project name length is zero but max_project_length always adds one so length here is one) minus lpad and rapd being applied.

We then have this in pad_string which will make the string zero length since length (1) - lpad (0) - rpad (1) equals zero and the length of str is 1.

        if ((int)strlen(str)>length-lpad-rpad)
        {
                str[length-lpad-rpad] = '\0';
                int i;
                for (i=1; i<=3; i++)
                        str[length-lpad-rpad-i] = '.';
        }

Finally, tasknc then crashes when it attempts to free str at the end of the function.

Can't build on Archlinux

All information I have for you:

cmake --version
cmake version 2.8.11.2
gcc --version
gcc (GCC) 4.8.1

mkdir build
[0][tasknc] (master) -> cd build/
[0][build] (master) -> cmake ..
-- The C compiler identification is GNU 4.8.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Looking for wsyncup in /usr/lib64/libcursesw.so
-- Looking for wsyncup in /usr/lib64/libcursesw.so - found
-- Found Curses: /usr/lib64/libcursesw.so  
-- Configuring done
-- Generating done
-- Build files have been written to: /home/m/dlds/programs/tasknc/build
[0][build] (master) -> make
Scanning dependencies of target tasknc
[  7%] Building C object src/CMakeFiles/tasknc.dir/color.c.o
[ 14%] Building C object src/CMakeFiles/tasknc.dir/command.c.o
[ 21%] Building C object src/CMakeFiles/tasknc.dir/common.c.o
[ 28%] Building C object src/CMakeFiles/tasknc.dir/formats.c.o
[ 35%] Building C object src/CMakeFiles/tasknc.dir/keys.c.o
[ 42%] Building C object src/CMakeFiles/tasknc.dir/log.c.o
[ 50%] Building C object src/CMakeFiles/tasknc.dir/pager.c.o
[ 57%] Building C object src/CMakeFiles/tasknc.dir/sort.c.o
[ 64%] Building C object src/CMakeFiles/tasknc.dir/statusbar.c.o
[ 71%] Building C object src/CMakeFiles/tasknc.dir/tasklist.c.o
[ 78%] Building C object src/CMakeFiles/tasknc.dir/tasknc.c.o
[ 85%] Building C object src/CMakeFiles/tasknc.dir/tasks.c.o
[ 92%] Building C object src/CMakeFiles/tasknc.dir/test.c.o
Linking C executable tasknc
[ 92%] Built target tasknc
Scanning dependencies of target ManPages
[100%] Generating tasknc.1
/home/m/dlds/programs/tasknc/doc/manual.pod around line 44: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 154: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 158: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 202: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 206: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 210: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 214: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 218: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 222: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 226: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 230: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 234: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 238: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 242: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 246: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 250: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 254: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 258: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 262: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 266: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 270: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 274: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 278: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 282: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 286: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 290: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 308: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 312: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 316: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 320: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 324: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 328: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 332: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 336: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 340: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 352: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 356: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 360: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 364: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 368: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 386: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 392: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 396: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 400: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 404: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 408: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 424: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 430: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 434: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 438: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 442: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 446: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 450: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 462: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 474: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 478: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 482: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 492: Expected text after =item, not a bullet
/home/m/dlds/programs/tasknc/doc/manual.pod around line 496: Expected text after =item, not a bullet
POD document had syntax errors at /usr/bin/core_perl/pod2man line 71.
make[2]: *** [doc/tasknc.1] Fehler 255
make[1]: *** [doc/CMakeFiles/ManPages.dir/all] Fehler 2
make: *** [all] Fehler 2

Can't compile on Cygwin windows

In the ncurses_init method in tasknc.c, there's an attempt to assign to stdscr:

if ((stdscr = initscr()) == NULL )

This won't work, as stdscr is #defined to a function in the current ncurses implementation in Cygwin, which is not a valid lvalue (and the resulting error is a complaint that the left side of an assignment is not an lvalue).

segfault when marking task as complete

when I hit ''c' after highlighting a task tasknc seg faults though the task does indeed get marked as completed. The last part of the debug output is as follows (-l 5)

2012-08-23 00:21:54] DEBUG: cursor_check(init) - selline:10 offset:0 taskcount:11 perscreen:63
[2012-08-23 00:21:54] DEBUG: cursor_check - selline:10 offset:0 taskcount:11 perscreen:63
[2012-08-23 00:21:54] DEBUG: cursor_check(init) - selline:10 offset:0 taskcount:11 perscreen:63
[2012-08-23 00:21:54] DEBUG: cursor_check - selline:10 offset:0 taskcount:11 perscreen:63
[2012-08-23 00:21:56] DEBUG: calling function @0x804e650 tasklist - scroll_up((null))
[2012-08-23 00:21:56] DEBUG: selline:9 offset:0 tasks:11
[2012-08-23 00:21:58] DEBUG: calling function @0x804ebe0 any - complete((null))
[2012-08-23 00:21:58] DEBUG: running command: task 55139031-9423-42fd-b996-4758610f2112 done
[2012-08-23 00:21:58] DEBUG: cursor_check(init) - selline:9 offset:0 taskcount:10 perscreen:63
[2012-08-23 00:21:58] DEBUG: cursor_check - selline:9 offset:0 taskcount:10 perscreen:63
[2012-08-23 00:21:58] ERROR: SEGFAULT
[2012-08-23 00:21:58] ERROR: segmentation fault, exiting

uname -a
Linux x.y 2.6.39.1-linode34 #1 SMP Tue Jun 21 10:29:24 EDT 2011 i686 i686 i386 GNU/Linux

Cannot build because pod2man fails

Trace:

pod2man --section=1 --center="tasknc Manual" --name="tasknc" --release="tasknc " README.pod > tasknc.1
README.pod around line 44: Expected text after =item, not a bullet
README.pod around line 154: Expected text after =item, not a bullet
README.pod around line 158: Expected text after =item, not a bullet
README.pod around line 202: Expected text after =item, not a bullet
README.pod around line 206: Expected text after =item, not a bullet
README.pod around line 210: Expected text after =item, not a bullet
README.pod around line 214: Expected text after =item, not a bullet
README.pod around line 218: Expected text after =item, not a bullet
README.pod around line 222: Expected text after =item, not a bullet
README.pod around line 226: Expected text after =item, not a bullet
README.pod around line 230: Expected text after =item, not a bullet
README.pod around line 234: Expected text after =item, not a bullet
README.pod around line 238: Expected text after =item, not a bullet
README.pod around line 242: Expected text after =item, not a bullet
README.pod around line 246: Expected text after =item, not a bullet
README.pod around line 250: Expected text after =item, not a bullet
README.pod around line 254: Expected text after =item, not a bullet
README.pod around line 258: Expected text after =item, not a bullet
README.pod around line 262: Expected text after =item, not a bullet
README.pod around line 266: Expected text after =item, not a bullet
README.pod around line 270: Expected text after =item, not a bullet
README.pod around line 274: Expected text after =item, not a bullet
README.pod around line 278: Expected text after =item, not a bullet
README.pod around line 282: Expected text after =item, not a bullet
README.pod around line 286: Expected text after =item, not a bullet
README.pod around line 304: Expected text after =item, not a bullet
README.pod around line 308: Expected text after =item, not a bullet
README.pod around line 312: Expected text after =item, not a bullet
README.pod around line 316: Expected text after =item, not a bullet
README.pod around line 320: Expected text after =item, not a bullet
README.pod around line 324: Expected text after =item, not a bullet
README.pod around line 328: Expected text after =item, not a bullet
README.pod around line 332: Expected text after =item, not a bullet
README.pod around line 336: Expected text after =item, not a bullet
README.pod around line 348: Expected text after =item, not a bullet
README.pod around line 352: Expected text after =item, not a bullet
README.pod around line 356: Expected text after =item, not a bullet
README.pod around line 360: Expected text after =item, not a bullet
README.pod around line 364: Expected text after =item, not a bullet
README.pod around line 382: Expected text after =item, not a bullet
README.pod around line 388: Expected text after =item, not a bullet
README.pod around line 392: Expected text after =item, not a bullet
README.pod around line 396: Expected text after =item, not a bullet
README.pod around line 400: Expected text after =item, not a bullet
README.pod around line 404: Expected text after =item, not a bullet
README.pod around line 420: Expected text after =item, not a bullet
README.pod around line 426: Expected text after =item, not a bullet
README.pod around line 430: Expected text after =item, not a bullet
README.pod around line 434: Expected text after =item, not a bullet
README.pod around line 438: Expected text after =item, not a bullet
README.pod around line 442: Expected text after =item, not a bullet
README.pod around line 446: Expected text after =item, not a bullet
README.pod around line 458: Expected text after =item, not a bullet
README.pod around line 470: Expected text after =item, not a bullet
README.pod around line 474: Expected text after =item, not a bullet
README.pod around line 478: Expected text after =item, not a bullet
README.pod around line 488: Expected text after =item, not a bullet
README.pod around line 492: Expected text after =item, not a bullet

I'm on NixOS, but this error does not look NixOS-specific.

tasknc is having trouble reading my task list

I have installed tasknc and all seems to be working, but when I run the program nothing happens. Looking in /tmp/.tasknc_runlog_nigel I have a string of lines of the format "[2015-09-19 22:26:52] ERROR: error parsing task @ 1.03288}," and a final line saying: "[2015-09-19 22:26:52] ERROR: it appears that your task list is empty. tasknc does not yet support empty task lists.".

Install on a Mac

I would like to try tasknc on a Mac, but I'm getting an error with make.

clang: warning: -lncursesw: 'linker' input unused when '-c' is present
tasklist.c:343:43: warning: format string is not a string literal
      (potentially insecure) [-Wformat-security]
        statusbar_message(cfg.statusbar_timeout, reply);
                                                 ^~~~~
tasklist.c:408:44: warning: format string is not a string literal
      (potentially insecure) [-Wformat-security]
                statusbar_message(cfg.statusbar_timeout, success);
                                                         ^~~~~~~
tasklist.c:615:8: error: address expression must be an lvalue or a function
      designator
        ret = WEXITSTATUS(pclose(cmdout));
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/sys/wait.h:151:26: note: expanded from macro 'WEXITSTATUS'
#define WEXITSTATUS(x)  ((_W_INT(x) >> 8) & 0x000000ff)
                          ^
/usr/include/sys/wait.h:138:28: note: expanded from macro '_W_INT'
#define _W_INT(w)       (*(int *)&(w))  /* convert union wait to int */
                                 ^ ~
2 warnings and 1 error generated.
make: *** [tasklist.o] Error 1

Anyway, the idea is great, hope I can try it soon. :)

tasknc fails to build on ubuntu 13.04

$ cmake ..
-- Could NOT find Curses (missing: CURSES_LIBRARY)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CURSES_NCURSES_LIBRARY (ADVANCED)
linked by target "tasknc" in directory /home/shock/src/tasknc/src

-- Configuring incomplete, errors occurred!

$ dpkg -l curses
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-===========================-==================-==================-===========================================================
ii libcurses-perl 1.28-1build2 amd64 Curses interface for Perl
un libcurses-ruby1.8 (no description available)
un libncurses-dev (no description available)
ii libncurses5:amd64 5.9-10ubuntu4 amd64 shared libraries for terminal handling
ii libncurses5:i386 5.9-10ubuntu4 i386 shared libraries for terminal handling
ii libncurses5-dev 5.9-10ubuntu4 amd64 developer's libraries for ncurses
ii libncursesw5:amd64 5.9-10ubuntu4 amd64 shared libraries for terminal handling (wide character supp
ii libncursesw5:i386 5.9-10ubuntu4 i386 shared libraries for terminal handling (wide character supp
un ncurses (no description available)
ii ncurses-base 5.9-10ubuntu4 all basic terminal type definitions
ii ncurses-bin 5.9-10ubuntu4 amd64 terminal-related programs and man pages
un ncurses-dev (no description available)
un ncurses-doc (no description available)
un ncurses-runtime (no description available)
un ncurses-term (no description available)

Cannot build

Hi,

I'm maintaining the tasknc nixpkgs package definition and when updating to the latest release I get the following build error:

pod2man --section=1 --center="tasknc Manual" --name="tasknc" --release="tasknc 0.8" README.pod > tasknc.1
README.pod around line 44: Expected text after =item, not a bullet
README.pod around line 154: Expected text after =item, not a bullet
README.pod around line 158: Expected text after =item, not a bullet
README.pod around line 202: Expected text after =item, not a bullet
README.pod around line 206: Expected text after =item, not a bullet
README.pod around line 210: Expected text after =item, not a bullet
README.pod around line 214: Expected text after =item, not a bullet
README.pod around line 218: Expected text after =item, not a bullet
README.pod around line 222: Expected text after =item, not a bullet
README.pod around line 226: Expected text after =item, not a bullet
README.pod around line 230: Expected text after =item, not a bullet
README.pod around line 234: Expected text after =item, not a bullet
README.pod around line 238: Expected text after =item, not a bullet
README.pod around line 242: Expected text after =item, not a bullet
README.pod around line 246: Expected text after =item, not a bullet
README.pod around line 250: Expected text after =item, not a bullet
README.pod around line 254: Expected text after =item, not a bullet
README.pod around line 258: Expected text after =item, not a bullet
README.pod around line 262: Expected text after =item, not a bullet
README.pod around line 266: Expected text after =item, not a bullet
README.pod around line 270: Expected text after =item, not a bullet
README.pod around line 274: Expected text after =item, not a bullet
README.pod around line 278: Expected text after =item, not a bullet
README.pod around line 282: Expected text after =item, not a bullet
README.pod around line 286: Expected text after =item, not a bullet
README.pod around line 304: Expected text after =item, not a bullet
README.pod around line 308: Expected text after =item, not a bullet
README.pod around line 312: Expected text after =item, not a bullet
README.pod around line 316: Expected text after =item, not a bullet
README.pod around line 320: Expected text after =item, not a bullet
README.pod around line 324: Expected text after =item, not a bullet
README.pod around line 328: Expected text after =item, not a bullet
README.pod around line 332: Expected text after =item, not a bullet
README.pod around line 336: Expected text after =item, not a bullet
README.pod around line 348: Expected text after =item, not a bullet
README.pod around line 352: Expected text after =item, not a bullet
README.pod around line 356: Expected text after =item, not a bullet
README.pod around line 360: Expected text after =item, not a bullet
README.pod around line 364: Expected text after =item, not a bullet
README.pod around line 382: Expected text after =item, not a bullet
README.pod around line 388: Expected text after =item, not a bullet
README.pod around line 392: Expected text after =item, not a bullet
README.pod around line 396: Expected text after =item, not a bullet
README.pod around line 400: Expected text after =item, not a bullet
README.pod around line 404: Expected text after =item, not a bullet
README.pod around line 420: Expected text after =item, not a bullet
README.pod around line 426: Expected text after =item, not a bullet
README.pod around line 430: Expected text after =item, not a bullet
README.pod around line 434: Expected text after =item, not a bullet
README.pod around line 438: Expected text after =item, not a bullet
README.pod around line 442: Expected text after =item, not a bullet
README.pod around line 446: Expected text after =item, not a bullet
README.pod around line 458: Expected text after =item, not a bullet
README.pod around line 470: Expected text after =item, not a bullet
README.pod around line 474: Expected text after =item, not a bullet
README.pod around line 478: Expected text after =item, not a bullet
README.pod around line 488: Expected text after =item, not a bullet
README.pod around line 492: Expected text after =item, not a bullet
POD document had syntax errors at /nix/store/kiapz3kjvb46jbvswdjkmrzg0s4l2zm7-perl-5.28.1/bin/pod2man line 71.
make: *** [Makefile:27: tasknc.1] Error 255

keybind 'm' for modify

With a task selected, hit 'm' and be prompted for task modifications.
(does this exist, and I somehow missed it?)

indicate sort-field and bind "<" and ">" for top-like sort control

This is a two-part feature request, the first part "indicate sort-field" is to embolden the field-header of whatever field the list is being sorted on.
The second part "bind "<" and ">" for top-like sort control", is to bind these keys to mean "< sort on the column to the left" and "> sort on the column to the right"

This behavior is modeled after the command-line utility "top", and I think that with an additional "R" to mean reverse sort, this could greatly enhance list-browsing.

cannot delete tasks anymore

tasknc version (git describe): v0.5-380-ga713f6d

log output:

[2012-08-16 11:00:50] DEBUG: selline:4 offset:[2012-08-16 11:01:04] ERROR: SEGFAULT
[2012-08-16 11:01:04] ERROR: segmentation fault, exiting

compiling under ubuntu not working

Works if I change the order of link parameters in the Makefile. i.e.

LDFLAGS = -lncursesw

- $(CC) -c $(CFLAGS) $<

  • $(CC) -c $(CFLAGS) $&lt; $(LDFLAGS)

- $(CC) $(CFLAGS) -o $@ $(OBJ)

  • $(CC) $(CFLAGS) -o $@ $(OBJ) $(LDFLAGS)

Could NOT find Curses (missing: CURSES_LIBRARY)

CMAKE can not find the CURSES_LIBRARY.

I had to manually do

locate libncurses.so

Then add the following on line 150 of Findcurses.cmake

SET(CURSES_NCURSES_LIBRARY "/usr/lib/x86_64-linux-gnu/libncurses.so")

I am on Ubuntu-precise (64 bit)

tasknc doesn't start on my machine, not clue why (error log attached)

Just installed tasknc (v0.8 by mjheagle) with pacman and cloning the repo. When I run on command line it does nothing, doesn't return, doesn't echo nothing to screen. After a ctrl+c It stop and output:

aborted
ERROR: tasknc ended abnormally. please check '/tmp/.tasknc_runlog_rmonico' for details

But the file is empty.

With tasknc -d all I get on console:

first abr 08     v0.8 task mjheagle   ++++ ++++ second
first uuid:'c08aa80f-9a8b-4685-b265-6be6ab2f9154' pro:'' desc:'Pagar Santander' $badvar second
task count      failed
str_trim        passed
search          passed
set string var  passed
set int var     passed

Pagar Santander is a recurring task.
Then /tmp/.tasknc_runlog_rmonico got whats attached. The xxxx tasks/annotations were obfuscated.

I ran valgrind_test.sh, its output is attached too. If I can do some other test I am at disposal.

Thanks a lot!

.tasknc_runlog_rmonico.log
valgrind_errors.txt

tasknc can not start if there are no tasks

I tried to run tasknc before using 'task' command and it took too long. I could start tasknc when at least one task was added via 'task add Some stuff', which is not that bad, but still, could be improved...

ERROR: tasknc ended abnormally.

Using the tasknc and trying to delete (d key) some (not yet deleted and displayed) task makes the app freeze.
I've look at the /tmp/.tasknc_runlog_m3nda and i see:

[2017-04-24 17:18:53] ERROR: source: file "/home/m3nda/.config/tasknc/config" could not be opened
[2017-04-24 17:19:04] ERROR: SEGFAULT
[2017-04-24 17:19:04] ERROR: segmentation fault, exiting

Shouldn't be created automatically?

Tasks deleted (prepended by a space " " on the list can be deleted at the view, but if you close it and reopen everything is like before, no changes.

I made the the ~/.config/tasknc/config file, but still complaining that it can found, and of course is empty because i just touch it to make it avail for tasknc.

Regards.

No copyright & license information

The package does not contain any copyright & license information. Lack of these means it is difficult to make it to Debian. Please help to provide these information to codebase, thanks.

can't redraw screen

Whenever I try to use ^L to redraw the screen, I get

[2016-11-16 12:28:37] ERROR: SEGFAULT
[2016-11-16 12:28:37] ERROR: segmentation fault, exiting

Taskwarrior.org thinks I'm now the maintainer of tasknc

As linked on http://taskwarrior.org/tools/, my fork.

This is completely fine with me. I feel bad unilaterally (and passive-aggressively, it would seem) taking over maintenance of someone else's project, so to give mjheagle8 a sort of vaguely fair chance at ownership of this project I'm going to wait one week from the date of this issue being opened, and then the following will happen:

  • I will consider myself the owner of the project and (for some indefinite time) respond to issues opened here with a redirect to my fork.
  • I will respond in online fora I notice as if I'm responsible for this project.
  • I will try to respond to PRs and bug reports submitted to my fork.
  • I will cease opening pull requests against the repository for bugfixes and new featrues
  • I will begin making merge-breaking changes such as replacement of cmake with an easier to maintain build setup.
  • I will continue to credit mjheagle8 as the original creator of tasknc.

Tagged task causes task list loading fail

If there is a pending task with a tag, tasknc will refuse to start, saying in the log:

ERROR: it appears that your task list is empty. tasknc does not yet support empty task lists.

It looks like from the debug log that it is failing to read the task list, and stopping when it hits the tagged task, which it doesn't look like it's parsing correctly:

[2012-09-01 10:03:28] DEBUG: field: tags
[2012-09-01 10:03:28] DEBUG: string: "email"],"uuid":"2e7d6a5c-fe36-4864-b798-4cd6f26d15ce
[2012-09-01 10:03:28] DEBUG: field: urgency
[2012-09-01 10:03:28] DEBUG: field: 0.721917
[2012-09-01 10:03:28] DEBUG: 0 tasks loaded
[2012-09-01 10:03:28] DEBUG: rows: 39, columns: 125
[2012-09-01 10:03:28] ERROR: it appears that your task list is empty. tasknc does not yet support empty task lists.

filters do not work

Using tasknc version: v0.8-31-g022f918

Starting with:
./tasknc --filter project:myproject
does not filter tasks. Status line reads: 'filter=status.pending'

filtering in the task list results in the programming exiting. Message in runlog is
"ERROR: it appears that your task list is empty. tasknc does not yet support empty task lists"
However, I do have a task list and it displays correctly.

Hanging on Configuring

tasknc seems to be hanging whenever I try to run it. I noticed another issue where a commenter stated that adding some tasks to Task Warrior would prevent this issue from happening however that does not seem to the the case.

$ task --version
2.2.0
$ tasknc
tasknc v0.8
configuring...

Segfault if run by a different user and message logged

When I tried to run tasknc as a different user, it failed, and tried to write a log message, and then segfaulted.

After I removed /tmp/.tasknc_runlog, it logged the error and shut down cleanly as expected.

I guess the problem is that tasknc can't open that file when run as the second user, because (if it still exists and hasn't been cleaned up by tmpwatch) it is owned by the first user.

Deleted tasks

It is the common behavior to show deleted tasks?
No other tool (task, tasksh) shows them, making my experience with tasknc so much different.

Cleanup the codebase, please!

This code is a mess.

First of all, you guys use different syntax styles.

if (foo)
    bar
if (another foo)
{
    bar;
    bla;
}

or

if (foo)
    do_somthing;
else 
{
    bar;
}

This looks like a mess.

Sencondly, there are functions in files, grouped with code they don't belong to.
Example: there is a eval_rules() function in the colors.c file. I don't think
this function does something with colors, when reading the prototype. If it does
belong to the colors stuff, why is no documentation (or just so little) there?

This leads me to the third point: documentation! There is no documentation in
the code (or very little). Why don't you use a documentation generator like
(which I recommend) doxygen? It would automatically clean up your code as you would have to write comments after a given styleguide!

Other code style "issues":

Well, code style is a much of personal taste. But look:

char foo = 42, *bar, *bla = NULL;
int a = 2, b, *c, d = 12;
double some = 2.23, other, dbl = 1.0;

looks much less nice than:

char        foo;
char        *bar;
char        *bla;
int           a;
int           b;
int           *c;
int           d;
double     some;
double     other;
double     dbl;

I know it is much longer, but it's also very much easier to read.

Function length is another point. I know C programmers love long functions. But
long functions are not that readable. Think about static helper functions when
function length is more than 50 lines, especially if there are several (nested?)
loops in the function!

Notice the 80-characters convention!

Another point: Think about compile-constants for messages which get printed to
the log or stdout/stderr. This makes the code more readable!


All this stuff keeps me away from contributing! Don't get me wrong: I want to
contribute, but that messy code keeps me away, as I don't get an overview that
easy!

I would love to contribute code-style commits! But just if I know, you would
like to merge them. If not, I don't want to put that much effort into the code!
Well, I think I'm not able to write commits for documentation, but I could
embellish the codebase what code style concerns.

segfault, cannot open config file

Thanks mjheagle8 for bulinding this.

It segfaults on my box, though:

$ make
gcc -Wall -g -Wextra tasknc.c -o tasknc -lncurses
(acme)quesada@hplappy:/coding/tasknc $ tasknc
bash: tasknc: command not found
(acme)quesada@hplappy:
/coding/tasknc $ ./tasknc
task version: 2.0.0
config file could not be opened
Segmentation fault

$ cat config

tasknc config file

# by mjheagle
########

# time for ncurses cmds (getch) to expire (in ms)
# this is visible in the time that the window takes to refresh on resize
# but will consume more cpu with a lower time
nc_timeout = 500

# time for statusbar messages to expire (in s)
statusbar_timeout = 3

# default sort mode
# d: due date
# n: index
# p: project
# r: priority
sortmode = d

# boolean to determine if filters should persist until they are cleared
filter_persist = 1

# boolean to determine if filters should cascade
filter_cascade = 1

Any idea why?

Tasks containing " characters are truncated

If you create, using tasknc, a task whose description is:

Report "text after quotation mark goes missing" bug

then the description in the tasklist is truncated - it doesn't include the first " character or anything after it.

filter doesn't like parentheses

tasknc -f 'status:pending or status:waiting'

works fine. However,

tasknc -f '(status:pending or status:waiting)'

generates some kind of syntax error that disappears to quickly for me to read/copy, and then the screen drawing is messed up.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.