GithubHelp home page GithubHelp logo

bro3886 / gtasks Goto Github PK

View Code? Open in Web Editor NEW
89.0 3.0 8.0 1.19 MB

A CLI client for Google Tasks, written in Go

Home Page: https://gtasks.sidv.dev/

License: Apache License 2.0

Go 94.91% Makefile 5.09%
cli golang go google-tasks tasklist hacktoberfest

gtasks's Introduction

Hey! I am @BRO3886 (Siddhartha Varma) ๐Ÿ‘‹

I'm a software dev from Delhi, India. ๐Ÿ‡ฎ๐Ÿ‡ณ

Currently working on search tech, dish tech @Zomato (@sidv-z) .

Previously @groww ๐ŸŒŽ

website ย  โ€ข ย  twitter ย  โ€ข ย  linkedin ย  โ€ข ย  telegram

gtasks's People

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

Watchers

 avatar  avatar  avatar

gtasks's Issues

Tasks view command showing completed tasks

Hi!

When I run the tasks view command with the -c flag I get all tasks, even the ones with status: completed.

Terminal output

gtasks tasks view -c=false


Tasks in i2a:
[1] Test
    Description: 
    Status: completed
    No Due Date
[2] Add http -> https rule for DC
    Description: 
    Status: completed
    No Due Date
[3] Sjekke om vi trenger databehandler avtale og send til Tommy Lund
    Description: 
    Status: completed
    No Due Date
[4] Send refusjon om apple utvikler lisens til Vemun
    Description: 
    Status: needsAction
    No Due Date
[5] Update xplore doc with mqtt implementation
    Description: 
    Status: completed
    No Due Date

URLs not included in output

When using Share With... to the Tasks app in Android, a task is created with a URL associated with it. The URL does not appear in the output from gtasks tasks -l Inbox view.

image

image

README.md Discrepancy

This is minor however the instruction to cd into the google-tasks-cli directory after cloning was overlooked, I think it would be nice if it was implemented in case novices ran into that misunderstanding while installing.

Option for auto selecting a tasks list

It would be very convenient to have a way to auto select a list for all tasks commands either through an command line option or environmental variable:

Examples

gtasks tasks view --list=worklist
gtasks tasks rm --list=personallist

Tasks and tasklists create/add commands are inconsistent

I was going to do a pull request to update the documentation for tasks, to swap 'create' for 'add' to match the command but looking at tasklists, I see that the command for a new one is 'create'.

Perhaps not the biggest issue, I realize, but having the same command for new tasks and tasklists would be good for new users (it'll be easier to remember).

I don't know go, so I don't want to muck around in the code, but I could help with updating the documentation, if you'd like.

Add flag to filter only completed tasks

  • there might be a situation where a user might only want to see completed tasks.
  • Add a flag for that, which, if passed, should ONLY show the completed tasks to a user.

New token not being refreshed

Hello,
first of all thank you for your tool !

I was wondering if the token not being refreshed was a normal behavior ?
I have to frequently logout, then relogin manually to refresh the token.json even though this token contains a refresh_token.

Create new task without prompt.

Hi!
I'd like to create a new task without prompt.

Maybe you could add some flags, for example:

gtasks tasks add --tasklist "my list" --title "my title" --note "my notes" --due "2021-09-15"

CLI interface updates

  • The current one looks kinda ugly:

Terminal Output

gtasks tasks view -c
Choose a Tasklist:
โœ” To watch
Tasks in To watch:

[1] Notting hill
    Description: Movie
    Status: completed
    No Due Date


[2] The good place
    Description: Series
    Status: completed
    No Due Date


[3] Fresh off the boat
    Description: Sitcom
    Status: completed
    No Due Date


[4] Blade runner both
    Description: Movie
    Status: completed
    No Due Date
  • The CLI interface needs a more compact update. Perhaps a table format to utilise the width of the display. Something like this:
    image
    Image from Himalaya, an email client written in Rust

Pass task number to complete or remove task

It would be convenient to pass the task number to a gtasks tasks done|rm. Thanks for serving my issue requests, your application has now become an integral part of my workflow :)

gtasks tasks view

Output

| NO |             TITLE              | DESCRIPTION | STATUS |     DUE     |
|----|--------------------------------|-------------|--------|-------------|
|  1 | Do we need AWS shadow device?  |             | โœ–      | No Due Date |
|    | What are the benefits?         |             |        |             |
|  2 | Following up on status of      |             | โœ–      | No Due Date |
|    | ESP32 developer                |             |        |             |
|  3 | Review developer CVs           |             | โœ–      | No Due Date |

tasks in a tasklist are limited to 20 items

Can't leverage gtasks to its usefulness due to the limit of 20 tasks per tasklist.
If this is an API limitation maybe it could be bypassed by making multiple requestes per tasklist or by increasing the default limit, if it is the case.

Google Tasks to CSV

First of all, awesome job but I was wondering if there was any way these google tasks could be exported to a comma separated value file. Here is my attempt to do this in bash for a single tasklist

#!/usr/bin/env bash

gtasks tasks --tasklist General view | sed 's/|//g' | \
while read i
do
    if [[ $i =~ [0-9] ]];then
        echo "$i" | sed -e 's/ \{2,\}/,/g'
    fi
done

Here is code for all tasklists:

#!/usr/bin/env bash

for i in $(gtasks tasklists view); do
    if [[ ! $i =~ [0-9] ]];then
        gtasks tasks --tasklist "$i" view | sed 's/|//g' | \
        while read i
        do
            if [[ $i =~ [0-9] ]];then
                echo "$i" | sed -e 's/ \{2,\}/,/g'
            fi
        done
    fi
done

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.