Giter VIP home page Giter VIP logo

timetrack's People

Contributors

lambdara avatar

Watchers

 avatar  avatar

timetrack's Issues

Add `remove` command

This remove command should remove a file or directory in the ~/.timetrack directory. It should have autocompletion and commit changes to Git if a repository is initialized in the ~/.timetrack directory.

Add `insert` command

The insert command should allow a user to track an event that has already passed. The insert command should take two timestamps as argument (at least unix time should be supported, but extra formats should be nice), and if valid it should add a new file (with the current unix time as filename) which contains the unix time of the start on the first line and the unix time of the end on the second line.

Add autocomplete for bash

Autocomplete should at least do the following:

  • Autocomplete the primary command, such as start, stop and summarize.
  • Autocomplete the command to start and summarize to an existing entry.

Add useful info to the `help` command.

It should explain usage, as well as print a copyright notice. It should also be possible to generate the message by using either the --help or the -h flag.

The `status` command should give human-readable output

The current output of status is just Unix time (meaning: in seconds). This should be something which can be read by a human, like 2018-03-03 22:12:30. It would be nice but not necessary that if it's on the current day that it would omit the date.

Implement Git for version control

The application should allow for version control through Git, where changes made to .timetrack through the track command are automatically committed. The repo can be kept in .timetrack/.git. The application should also allow for normal Git commands where the working directory is set to .timetrack, so that the version history can be shared between devices using such commands as track git push and track git pull, as well as track git remote add my_server:my/timetrack/repo.

Input validation

Input isn't validated at all; for some commands this could have weird side-effects with improper usage.

Add `edit` command

There should be an edit command that allows one to easily change the start time or end time of a recorded event. It should warn the user when this makes the start come after the end, and it should have autocompletion.

This could be implemented in various ways, but a combination of the flags --start, --end, --earlier, --later, --hours n, --minutes n, --seconds n and a path to the file to be changed could do.

The filename, even though it is a timestamp itself, should not be changed.

Add flag to `start` to track an event that has already started

I should allow the start time in the file to be earlier than the current unix time. There should be a flag for this, perhaps --earlier or --has-started or --started. This could then get time in the 9001h13m37s to specify the difference, or perhaps it could allow the user to use one or more of the following flags: --hours n, --minutes n, --seconds n.

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.