contrapunctus
da1f2ed329
Fix more errors
2021-09-04 19:29:24 +05:30
contrapunctus
a948fb4632
backend protocol - create count-record generic
2021-09-04 18:23:06 +05:30
contrapunctus
88d06da043
backend protocol - create migration generics
2021-09-04 18:08:06 +05:30
contrapunctus
b218a835f7
plist backend - correct errors
2021-09-04 18:01:56 +05:30
contrapunctus
297f288130
Correct docstring
2021-09-04 17:29:34 +05:30
contrapunctus
3f30eadbb0
Create method for list-tasks
2021-09-04 17:26:10 +05:30
contrapunctus
af286f2d5d
Create method for replace-last
2021-09-04 14:49:18 +05:30
contrapunctus
dee921244b
Create method for insert
2021-09-04 14:21:44 +05:30
contrapunctus
4e6243b3e3
Update call sites for create-file
2021-09-04 14:14:47 +05:30
contrapunctus
2b6ee13b96
Create method for create-file
2021-09-04 14:10:25 +05:30
contrapunctus
622914397e
Create method for latest-record
2021-09-04 14:01:22 +05:30
contrapunctus
445614e9aa
backend - add file slot
2021-09-04 13:55:26 +05:30
contrapunctus
260aafaebb
Make edit-file method for plist backend
2021-09-04 08:45:56 +05:30
contrapunctus
0d612f28b5
Update current-task call sites
2021-09-04 08:43:32 +05:30
contrapunctus
7bb023caf5
Rethink custom interface
2021-09-04 08:11:57 +05:30
contrapunctus
7c55a19e1f
feat: create generic backend protocol
2021-09-04 00:28:33 +05:30
contrapunctus
ba9e8dfa9c
fix: correct docstring; indent code
2021-09-02 21:05:30 +05:30
contrapunctus
73e6d98612
doc: bump versions
2021-07-08 03:17:55 +05:30
contrapunctus
58f0fdf0ba
feat: add menu entry and keybinding for force-restart-timer
2021-07-08 03:15:47 +05:30
contrapunctus
61eb311d0a
feat(details): create new buffer for each range
2021-07-06 23:38:00 +05:30
contrapunctus
224a7fec3f
cleanup: remove iso-date-to-ts, rename iso-timestamp-to-ts -> iso-to-ts
2021-07-03 10:59:22 +05:30
contrapunctus
26e3dd5c5d
feat(details): implement timestamp ranges
2021-07-03 10:51:36 +05:30
contrapunctus
7976b53d91
fix(details): flatten key-values, remove keywords
2021-07-03 06:20:10 +05:30
contrapunctus
1931e88c85
feat(details): support begin/end in ranges
2021-07-03 00:23:56 +05:30
contrapunctus
883f813615
Merge branch 'doc' into details-view
2021-07-01 07:29:13 +05:30
contrapunctus
0f68ab4f38
feat(details): add more menu items
2021-07-01 07:24:58 +05:30
contrapunctus
f7f2349004
fix(details): set history variables
2021-07-01 07:24:26 +05:30
contrapunctus
a04ca1fd28
fix(details): correct error
2021-06-28 07:50:19 +05:30
contrapunctus
cc77b18797
fix(details): use read-from-minibuffer for filter
2021-06-28 06:53:35 +05:30
contrapunctus
fd468a9ed5
feat(details): implement filter; refactor `rows`
2021-06-28 06:08:45 +05:30
contrapunctus
b774700450
feat(details): create prompt, menu
2021-06-27 22:24:37 +05:30
contrapunctus
c4b94be941
feat(details): implement custom ranges
2021-06-27 22:24:28 +05:30
contrapunctus
9f8e455e01
feat(details): create state variables for custom ranges and filters
2021-06-27 20:57:38 +05:30
contrapunctus
3f3567903b
Merge branch 'dev' into doc
2021-06-27 03:38:47 +05:30
contrapunctus
2f8d136bf6
doc: shorten docstring
2021-06-26 09:09:11 +05:30
contrapunctus
37afe58cd9
fix: move menu after keymap
2021-06-22 06:14:27 +05:30
contrapunctus
e57a244519
feat: change menu text; add keybinding for details view
2021-06-17 22:32:50 +05:30
contrapunctus
e4b4dc277b
feat(chronometrist-menu): add more entries; remove keybind printing
2021-06-16 05:35:55 +05:30
contrapunctus
50b2b03036
feat(chronometrist): create menu
2021-06-15 22:05:24 +05:30
contrapunctus
dc3692270d
cleanup: create commands-to-print-alist
2021-06-15 10:14:19 +05:30
contrapunctus
2f26ef0a60
feat: add missing keybindings
2021-06-14 23:42:33 +05:30
contrapunctus
1ad4a92ebf
cleanup: remove chronometrist-command-helper
...
It was neither shorter nor particularly easier to read... 🤔
2021-06-14 23:41:47 +05:30
contrapunctus
8141b6604c
feat[restart/extend]: fail with message rather than silently
2021-06-14 15:01:50 +05:30
contrapunctus
34fa77a173
refactor: use chronometrist-command-helper
2021-06-14 14:48:03 +05:30
contrapunctus
69f2b1d5c4
refactor: create chronometrist-command-helper
2021-06-14 14:45:16 +05:30
contrapunctus
a3144050e4
doc(chronometrist-restart-task): clarify docstring
2021-06-12 21:12:55 +05:30
contrapunctus
b0367023ef
feat: new command chronometrist-extend-task
2021-06-12 21:12:37 +05:30
contrapunctus
de41c158b5
feat: new command `chronometrist-restart-task`
2021-06-12 01:52:32 +05:30
contrapunctus
29c8939a7d
rename: task-active? -> task-active-p
2021-06-12 01:25:01 +05:30
contrapunctus
89afc959e9
Merge branch 'sparkline' into dev
2021-06-08 11:15:19 +05:30
contrapunctus
8a2c4c0b54
refactor: format-duration-long + create tests
2021-06-07 23:13:38 +05:30
contrapunctus
343a08665f
fix(details): do not display user keywords if using format string
2021-06-05 15:18:12 +05:30
contrapunctus
2f1ea5fd1f
Merge branch 'dev' into doc
2021-06-05 10:06:17 +05:30
contrapunctus
0e22c725db
doc(docstring): update argument name in docstring
2021-06-05 10:05:37 +05:30
contrapunctus
5c5b7fc5e7
fix: address linter complaints
2021-06-03 22:26:59 +05:30
contrapunctus
e1f6121230
fix: tangle tests to separate files
2021-06-03 02:12:04 +05:30
contrapunctus
753e8115cc
Merge branch 'doc' into dev
2021-06-03 01:43:01 +05:30
contrapunctus
529cd544d0
fix: address byte compilation warnings
2021-06-03 01:26:19 +05:30
contrapunctus
7e2d531bcf
doc: remove root heading, demote all child headings
2021-06-02 03:56:27 +05:30
contrapunctus
3c8be625ce
fix: on-save tangling setup; -let instead of -let* in spark
2021-06-01 18:37:29 +05:30
contrapunctus
a6c02aaf80
fix(distribution): ship Elisp file; remove literate-elisp dependency
2021-06-01 17:35:01 +05:30
contrapunctus
0d9c7a2fd4
Run package-lint; update links
2021-05-31 01:07:33 +05:30
contrapunctus
d0d065a7d9
Bump versions
2021-05-18 15:21:19 +05:30
contrapunctus
81b12053bc
Bump versions
2021-05-07 14:53:16 +05:30
contrapunctus
c33b3ae3fe
[literate] add literate-elisp dependency; remove tangling setup
2021-04-12 08:33:46 +05:30
contrapunctus
129c7f7d78
test: make test.sexp before running tests
...
This does away with the whole issue of discovering the test.sexp file accurately.
It's also the point where I have increasing misgivings about shipping
the Org file itself. The tests, explanation docs, and now test
data...might be a "lot of" extra bytes to download, for something most
users have no need of.
2021-02-23 06:42:08 +05:30
contrapunctus
f6082aeb1e
[fix] void variable error in chronometrist-report-entries
2021-02-22 18:03:32 +05:30
contrapunctus
3ea6df7f20
[tests] moved tests to Org files
...
Upside - no more jumping between definitions and tests
Downside - if we ship the Org file, users will have to download some more bytes
2021-02-22 18:02:39 +05:30
contrapunctus
36e17fb4d7
[bugfix] incorrectly split plists in chronometrist-events
2021-02-22 17:59:16 +05:30
contrapunctus
8b09562aca
[WIP] [bugfix] incorrectly split plists in chronometrist-events
2021-02-22 02:11:45 +05:30
contrapunctus
3fe5260972
Style and documentation changes
2021-02-21 22:09:00 +05:30
contrapunctus
83bbe0bd6a
[data structures] add reset command
2021-02-18 15:52:26 +05:30
contrapunctus
665705f1b5
[literate] tag functions according to their...function
...
Shorten file-empty-p
Merge `events->ts-pairs` and `ts-pairs->durations` into `events-to-durations` - they were only used in two places, both times with the results of the former being passed to the latter, and it didn't seem to me that they'd ever be used separately.
Rename all functions using the Scheme-like "foo->bar" naming scheme to the Elispy "foo-to-bar".
Move many docstrings out of source blocks into Org text and TODO items.
Remove unused chronometrist-report-date
Used `with` instead of `let` in chronometrist-report-entries
Use `loop` instead of `maphash` in `chronometrist-statistics-count-average-time-spent`
2021-02-16 13:11:30 +05:30
contrapunctus
fbbfd1eeec
[literate] checkdoc and package-lint changes
2021-02-15 05:31:34 +05:30
contrapunctus
3fb016cd75
[literate migration] add missing function
2021-02-11 15:48:26 +05:30
contrapunctus
2b02967dc9
[Literate migration] Add missing function
2021-02-11 14:52:50 +05:30
contrapunctus
d87997a0cd
Remove dependencies on anaphora and s
2021-02-11 13:37:36 +05:30
contrapunctus
203838aa49
Merge branch 'dev' into literate
2021-02-11 12:08:50 +05:30
contrapunctus
d1b42bbf0d
Bump versions
2021-02-11 11:31:05 +05:30
contrapunctus
fd376c7cf1
iso-date->ts - use pattern matching
2021-02-09 01:38:17 +05:30
contrapunctus
aab2590e98
count-active-days - rewrite using cl-loop
2021-02-09 01:30:36 +05:30
contrapunctus
9f94250d94
Move task-list function to backend
2021-02-09 01:17:22 +05:30
contrapunctus
5cd9c9db47
"Hash table" -> "Data structures", move task list and related functions
2021-02-09 00:35:29 +05:30
contrapunctus
9e1358dac9
Remove unnecessary variable whitespace-re
2021-02-09 00:20:59 +05:30
contrapunctus
4a7988e46d
Remove blank lines
2021-02-09 00:04:48 +05:30
contrapunctus
39e66829e5
Update auto-tangle sed script
2021-02-08 14:40:28 +05:30
contrapunctus
3bed912dcc
Emit newlines in tangled source
2021-02-08 01:05:21 +05:30
contrapunctus
cb1293b6cd
Move definitions from chronometrist-timer.el to chronometrist.org
2021-02-07 23:20:56 +05:30
contrapunctus
f32f81844a
Move definitions from chronometrist-time.el to chronometrist.org
2021-02-07 21:52:53 +05:30
contrapunctus
d7ec8906f4
Move definitions from chronometrist-queries.el to chronometrist.org
2021-02-07 21:42:50 +05:30
contrapunctus
9bdf9fe47b
Move definitions from chronometrist-migrate.el to chronometrist.org
2021-02-07 21:41:54 +05:30
contrapunctus
018fcdd858
Address some corner cases for task list updates
2021-02-05 17:11:28 +05:30
contrapunctus
e11ac89359
Tangle chronometrist.org
2021-02-05 16:15:29 +05:30
contrapunctus
a7b70b5a3e
chronometrist.el - move definitions to chronometrist.org
2021-02-04 08:58:21 +05:30
contrapunctus
8be5eb1ccb
refresh-file - add some more checks
2021-02-03 18:02:40 +05:30
contrapunctus
1d4d5591a1
file-change-type - clean up comments and indentation
2021-02-03 17:55:05 +05:30
contrapunctus
5da1912f17
Refactor refresh-file; create chronometrist-sexp-mode for sexp file
2021-02-02 18:48:54 +05:30
contrapunctus
09a5d127a1
(WIP) try to handle vanished/replaced file; unify partial update functions
2021-01-30 12:08:57 +05:30
contrapunctus
22ea8b4e99
Bump versions
2021-01-27 21:29:04 +05:30
contrapunctus
9a47f624bb
Remove unnecessary refresh-file call
...
It is already called at the end of `chronometrist-in`
2021-01-27 21:26:38 +05:30
contrapunctus
b8271bdd81
Update task list on file changes
2021-01-27 21:24:23 +05:30
contrapunctus
c63ca7a552
Use pcase instead of cond
2021-01-27 13:46:43 +05:30
contrapunctus
3d898e6dd8
Remove unused variable
2021-01-27 13:46:02 +05:30
contrapunctus
0bcd711bdc
Fix error when running emacs with `-q`
2021-01-27 12:41:01 +05:30
contrapunctus
f664297378
Update versions and changelog
2021-01-19 13:23:24 +05:30
contrapunctus
cef185de5c
Bump versions, update CHANGELOG
2021-01-07 03:17:30 +05:30
contrapunctus
1b13db776b
Comment out debugging `message` call; bump versions
2021-01-04 10:56:36 +05:30
contrapunctus
e95ad1d6e2
Bump versions, update changelog
2021-01-04 08:55:52 +05:30
contrapunctus
0189c89a9b
Remove dependency for transformers
2021-01-04 08:44:48 +05:30
contrapunctus
7204050f7f
Create loop wrapper macro, remove mapcar-file/mapc-file
2021-01-04 00:43:48 +05:30
contrapunctus
682d801457
Update file-hash call sites, reinstate number/marker arguments
2021-01-03 22:08:29 +05:30
contrapunctus
4b451004a5
Remove unused hash of last sexp
2021-01-03 13:31:13 +05:30
contrapunctus
f73169dcb7
Remove plist from hash table when :remove detected
2021-01-03 13:13:48 +05:30
contrapunctus
d3095d4377
Detect removal of last s-expression
2021-01-03 13:13:35 +05:30
contrapunctus
c7131e69e6
Correct tag generation behavior/max eval depth error
2021-01-03 08:51:07 +05:30
contrapunctus
ba27ee8a2e
Clean up code
2021-01-02 23:34:50 +05:30
contrapunctus
aacc109b88
Update file hashes unconditionally
2021-01-02 23:29:39 +05:30
contrapunctus
5fce2aae60
Fix undefined variable errors; parse full file if hashes not defined
2021-01-02 23:12:47 +05:30
contrapunctus
8ddcabb2c2
Use file change type for partial updates of memory layer
...
What was a few-second-long wait is now barely perceptible.
Optimization successful, I guess, barring any bugs.
2021-01-02 23:06:58 +05:30
contrapunctus
4288b10a2c
Fix file change type code
2021-01-02 22:11:33 +05:30
contrapunctus
a974c6a905
Merge branch 'dev' into optimize-by-hashing
2021-01-02 18:36:26 +05:30
contrapunctus
ebbed71fcb
Generate value history from file, just before prompt
2021-01-02 12:41:54 +05:30
contrapunctus
796626904e
Fill key history per-task, before prompt
2021-01-01 00:58:07 +05:30
contrapunctus
3d9debf989
Fill tag history per-task, before prompt
2020-12-31 06:06:14 +05:30
contrapunctus
eaf0d7feec
Merge branch 'master' into dev
2020-12-22 20:45:41 +05:30
contrapunctus
551a750cae
Bump versions and changelog, add idea for customizable field widths
2020-12-22 20:30:09 +05:30
contrapunctus
f83b9a783f
Use text properties to get the task at point
2020-12-22 20:29:22 +05:30
contrapunctus
e5281ffe52
Remove `require` forms for deleted custom definition files
2020-11-26 01:59:49 +05:30
contrapunctus
7e9341d6da
Remove dedicated files for custom variables
2020-11-18 14:20:06 +05:30
contrapunctus
551a9825b2
file-change-type - make code clearer
2020-11-01 16:58:49 +05:30
contrapunctus
49dce9fede
Rename call-transformers -> run-transformers
2020-09-08 11:30:52 +05:30
contrapunctus
17dbe4babc
Use chronometrist-mode-hook and transformers for chronometrist-goal
...
The idea is for chronometrist to not need know about extensions.
2020-09-07 08:40:50 +05:30
contrapunctus
faf48ad526
Add two transformer lists, call-transformers dependency
2020-09-06 19:00:11 +05:30
contrapunctus
54ba0be8da
Format code to be denser
2020-09-06 14:05:24 +05:30
contrapunctus
15ff136980
TODO - add items for Magit integration and alist pretty-printing
2020-09-05 21:47:58 +05:30
contrapunctus
a98a04d52a
Reformat code to make it denser
2020-09-02 19:25:55 +05:30
contrapunctus
18d5289072
file-change-type - use pattern matching
2020-08-31 11:42:53 +05:30
contrapunctus
2568380d19
file-change-type - handle shrinking file, correct :append logic
2020-08-31 11:36:38 +05:30
contrapunctus
7e292717e2
Add functions to detect type of changes made to chronometrist-file
2020-08-31 01:23:43 +05:30
contrapunctus
94e1133cd4
Use format instead of concat, reindent code to be denser
2020-08-30 12:05:01 +05:30
contrapunctus
7a2b491a3c
key-history-populate - change signature
...
Move description of key-history from the docstring of
key-history-populate to that of key-history.
2020-08-29 14:14:58 +05:30
contrapunctus
872825a571
tags-history-populate - change signature, return value; add tests
2020-08-28 19:30:53 +05:30
contrapunctus
029935b55c
in-fn/out-fn -> in-function/out-function
2020-08-12 01:31:22 +05:30
contrapunctus
7fd0606337
Use eval-when-compile; remove TODO items
...
The former seems to be a clearer expression of intent; the latter are
moved to the TODO file
2020-08-12 01:29:34 +05:30
contrapunctus
c32ec6572d
Update comparisons in package description
2020-08-12 01:24:55 +05:30
contrapunctus
cec6c09ad4
Update homepage in source
2020-08-12 00:31:53 +05:30
contrapunctus
3ba94573a6
Bump versions
2020-07-19 18:06:11 +05:30
contrapunctus
446faf253a
Fix bug causing only the latest tag suggestion to be displayed
2020-07-19 18:04:46 +05:30
contrapunctus
e225b4c7c5
Improve nameless.el configuration
...
Finally, I'm able to use the aliases the way I wanted. Shorter
identifiers for all sub-packages, everywhere!
2020-07-18 19:23:14 +05:30
contrapunctus
eaee3f9a17
Move docstring to the right place
2020-07-08 14:22:54 +05:30
contrapunctus
0445b51872
Update call for chronometrist-get-goal -> chronometrist-goal-get
2020-07-06 17:06:57 +05:30
contrapunctus
2e61afbb1b
Reflect rename of chronometrist-goals to chronometrist-goal
...
And also reflect renaming of other definitions
2020-07-06 01:45:10 +05:30
contrapunctus
077f56dce3
Bump versions
2020-07-05 23:48:51 +05:30
contrapunctus
cc45e29e95
Update Commentary with user-relevant information
...
I had no idea package.el used this for the long description of the
package!
2020-07-05 23:46:14 +05:30
contrapunctus
2c898d8fc0
Bump versions
2020-06-30 15:14:21 +05:30
contrapunctus
64772b0cd5
Add missing dependency declaration for ts.el
2020-06-30 14:59:20 +05:30
contrapunctus
faeb0a2040
Merge branch 'dev'
2020-06-30 01:16:01 +05:30
contrapunctus
fb7c4940df
Optimization - reduce use of chronometrist-tags-history-populate
...
We now avoid running chronometrist-tags-history-populate for the
chronometrist-sexp-new and the chronometrist-sexp-replace-last
operations.
Clocking in/out is nearly instant now!
2020-06-26 01:15:51 +05:30
contrapunctus
5ed8111936
Merge branch 'dev' into less-reading-v2
2020-06-25 18:35:03 +05:30
contrapunctus
db25451b06
Fix bug where pushing a button would always trigger the first task
...
(prefix-numeric-value nil) => 1, so we were always going to the
first line.
2020-06-25 18:34:06 +05:30
contrapunctus
dd7ec40da7
Optimization - reduce use of chronometrist-tasks-from-table
...
We now avoid running chronometrist-tasks-from-table for the
chronometrist-sexp-new and the chronometrist-sexp-replace-last
operations.
Hurray. Clocking in/out is tangibly faster now.
2020-06-25 18:14:25 +05:30
contrapunctus
5e4854272e
Optimization - reduce situations in which events-populate is run
...
Namely, don't run it when appending an s-expression to the file, nor
when replacing the last s-expression. Instead, we modify the hash
table itself.
I wanted the code which sets chronometrist--inhibit-read-p to t to
also reset it to nil (ideally via `let`), but file watchers seem to
run _after_ the form modifying the file returns. (i.e. after the scope
of `let` ends and the global bindings are restored)
Still uncertain if this really has sped things up, though.
2020-06-25 14:34:12 +05:30
contrapunctus
868325c4db
Fixed prefix arguments not working if point was on a button
2020-05-24 02:08:40 +05:30
contrapunctus
da552aa6ac
Move source files to elisp/
2020-05-22 01:13:52 +05:30