Skip to main content

exclock is a cui extended timer.

Project description

https://gitlab.com/yassu/exclock/badges/master/pipeline.svg https://gitlab.com/yassu/exclock/badges/master/coverage.svg

exclock is a cui extended timer.

Required

  • vlc

  • notify-py for

    • Windows 10

    • MaxOS 10 >= 10.10

    • Linux with libnotify

Usage

$ exclock [options] {clock-filename}

Features

  • Sound an alarm at a specified time.

  • Sound the alarm after the specified time has elapsed.

  • You can flexibly set the alarm.

Options

  • –version: show program’s version number and exit

  • -h, –help: show this help message and exit

  • -l, –list: show clock names in your PC and exit

  • -t, –time: Time which spends until or to specified

How to sound an alarm at a specified time

Enter

$ exclock -t {time}

format command.

Where time is given in the %H:%m or %H:%m:%S format.

Ex.

$ exclock -t "1:00"
$ exclock -t "1:00:20"

How to sound the alarm after the specified time has elapsed

Enter

$ exclock -t {time}

format command.

Where time is given in the %S, %Ss, %mm or %mm%ss.

Ex.

$ exclock -t 3
$ exclock -t 3s
$ exclock -t 2m
$ exclock -t 2m3s

How to flexibly set the alarm

Enter

$ exclock {clock-filename}

format command. Although {clock-filename} can be omitted as descrived below.

clock-file should be a file in json5 format.

Official page for json5 format is Here.

clock file format

{
  "title": "title(optional)",
  "sounds": {
    "time1": {
      "message": "message1",
      "sound_filename": "sound_filename1",
    },
    "time2":{
    "message": "message2",
    "sound_filename": "sound_filename2",
    },
    ...
  },
  "loop": loop_number
}
  • title: string which be used for notification. This is the optional option. Then the property is computed from clock-filename.

  • sounds: dictionary from time to dictionary which includes message and sound_filename.

    • time format is “{sec}”, “{sec}s”, “{min}m” or “{min}m{sec}s” format.

    • message is a string which be used for notification and terminal output.

    • sound_filename is a string which be used for play the sound.

  • loop: number of iterations for above clock timer. If this is nil, this means repeatation a number of times.

There are sample files in sample dir in gitlab.

How to omit clock filename

Clock filename can be omitted for some case.

Rules are

  • If extension of clock filename is .json5, extension can be omitted(ex: pomodoro.json5 => pomodoro).

  • If dir is in the specified directory(~/.exclock/clock/), dir is omitted (ex: ~/.exclock/clock/abc.json5 => abc).

  • Buitin clock file can be accessed. There are in sample dir in gitlab (ex: 3m or pomodoro).

How to omit sound filename

Sound filename can be omitted for some case.

Rules are

  • If dir is in the specified directory(~/.exclock/sound/), dir is omitted (ex: ~/.exclock/sound/abc.mp3 => abc.mp3).

  • Buitin sound file can be accessed. There are in sample sound dir in gitlab (ex: silent.mp3 or warning.mp3).

LICENSE

Apache 2.0

Todo

  • Icon作成

    • [ ] アイコン作成

    • [ ] プロジェクトのアイコンをそれにする

    • [ ] notifyのデフォルトのアイコンもそれにして 変更できるようにする

  • [x] 環境にあるclock一覧を表示するコマンドを追加

  • Exception対応

    • [x] ‘Error: No available formula with the name “vlc“‘対応

  • [x] 指定された時間になったらタイマーを発火させるコマンドを追加

  • [x] 0病後にSoundが指定されていた場合 そのSoundのとき tqdmを使わない

  • [x] プログレスバーの出力をいい感じにする

  • [ ] Add n variable

  • [x] secの変数名を_secというようにする

  • [x] KeyboardInteraptのエラー処理を書く

  • [x] 🐛 二つ同じ名前がなくても一つしか表示されないようにする

  • [x] 🎨 main関数のテストを追加

  • [-] is_bgm flag

  • [ ] poetry導入

  • [ ] warningの音を設定できるような項目を追加する

  • [x] setup.pyでPipenvのpackagesを使うようにする

  • [x] 真面目にdocumentを書く

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exclock-0.1.8.5.tar.gz (74.3 kB view details)

Uploaded Source

Built Distribution

exclock-0.1.8.5-py3-none-any.whl (156.3 kB view details)

Uploaded Python 3

File details

Details for the file exclock-0.1.8.5.tar.gz.

File metadata

  • Download URL: exclock-0.1.8.5.tar.gz
  • Upload date:
  • Size: 74.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for exclock-0.1.8.5.tar.gz
Algorithm Hash digest
SHA256 7d0ba34b3663ac83e8a791556191e7bcbeb0c3e9715f8a489390131b36efc303
MD5 f56dd3933ecc6150cc8e5f339ac8b382
BLAKE2b-256 4ee98731bdc0f5ea4a8071fb53c0f2266780945ad86cd06848e888598c596292

See more details on using hashes here.

File details

Details for the file exclock-0.1.8.5-py3-none-any.whl.

File metadata

  • Download URL: exclock-0.1.8.5-py3-none-any.whl
  • Upload date:
  • Size: 156.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.3

File hashes

Hashes for exclock-0.1.8.5-py3-none-any.whl
Algorithm Hash digest
SHA256 92a1fd6c752e02bbea83017a7848b0210c3fa0a4a476bbeb2d24acdab66ea822
MD5 3f33608fbbb4fee9d1ab7367bfd257f7
BLAKE2b-256 d3cfb4a3aeb9c7ca60b4f87b857db907f33a6ece3b7d1ca3a42ad05065e9e46f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page