Skip to content

Woche is a collection of shell scripts designed to help manage weekly tasks in a Markdown file. It allows you to create a file to the current week and add tasks to specific days. The project is developed using TDD and CI/CD.

License

0jonjo/woche

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Woche

Woche is a collection of Bash scripts that assist in managing weekly tasks. It enables the creation of a new Markdown file for the current week and the addition of tasks to specific days. Woche, meaning 'week' in German, uses German day names (Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, and Sonntag) for educational purposes. You can choose between options with the names of the days in English or German.

Features

  • Generates a new Markdown file for the current week, including headers for each day.
  • Allows the addition, editing and delete of tasks to a specific day of the week or line of the file.
  • Provides usage tips.

Usage

  1. Create a new Markdown file for the current week (starting on Monday):
./woche.sh create

This command creates a file using the YYMMDD format.

  1. Add a task to a specific day:
./woche.sh <day> "<task>"

Replace with the day of the week (in German: mon, die, mit, don, frei, sam, son) and with the task description.

  1. Display the tasks of the current week:
./woche.sh show

This command prints the Markdown file with the tasks for the entire week.

  1. Edit a task of the current week:
./woche.sh edit 9 "That task"

This command edit the line 9 of Markdown file with the tasks.

  1. Delete a task of the current week:
./woche.sh delete 3

This command edit the line 3 of Markdown file.

  1. Access instructions:
./woche.sh help

Customization Tips

  • Change the file creation path by modifying the path variable in the variables.sh file.
  • Switch to English day names by replacing woche_array with week_array in the same file.
  • Alter the date format of the Markdown file by adjusting the start_day_of_week method in functions.sh.

Testing

The test.sh script tests the functionality of woche.sh, checking both correct and incorrect user inputs. This test is mandatory for pull requests to the main branch and should be included in the GitHub Actions pipeline for automated testing.

To run the tests:

./test.sh

License

This project is licensed under the GNU License. See the LICENSE file for details.

About

Woche is a collection of shell scripts designed to help manage weekly tasks in a Markdown file. It allows you to create a file to the current week and add tasks to specific days. The project is developed using TDD and CI/CD.

Topics

Resources

License

Stars

Watchers

Forks

Languages