1
0
mirror of https://github.com/RyanGreenup/cadmus.git synced 2025-02-19 20:27:49 +01:00
cadmus/todo.org
2020-07-16 08:32:55 +10:00

4.2 KiB

Cadmus ToDo List

Main Executable

TODO [B] Add support for different configs

Basically I would like to be able to change the note directory to manage seperate knowledge bases, for example:

  • Personal Wiki
  • Static Site
  • Wiki for Project
  • School Project public knowledge base etc.

This should be fed in as a -c option.

Refer to this line here

Main Help

TODO [C] Move Emojis

I should move the emojis to the end so that they don't interfere when using tty

TODO [B] Should interactive elements of scripts be preserved and use the clipboard

As opposed to having no feedback and just operating on STDIN and STDOUT. Could a similar effect be acheived using /tmp or /dev/shm?

TODO [A] Should subscripts be exptected to be relative or absolute?

TODO [A] Should the Notes directory be a global variable or an argument

TODO Should we set the Notes directory in a TOML?

TODO Why do I keep getting Argument has no definition?

Aliases

[B] Readme

Add Recommended Aliases to the readme as well as fish functions.

SubFunctions

TODO Restructure

should I restructure the subfunctions to accept only 1 argument either help or directory and fail in the absence of any given argument?

Pros

  • Much Simpler to implement and maintain

Cons

  • Less clean to pass in functions
  • Less Extensible

HOLD [#A] NoteFind.sh

KeyBindings

TODO [B] Should Implement keybindings for Exports

In the SkimAndGrep function there should be export options for HTML mathml 1 as well as odt2

TODO [C] Should call emacsclient not emacs

I should change the emacs call to open emacsclient instead of emacs

DONE cadmus find Should print help when no arguments

Completed this by calling help and exiting if the arguments are empty in cadmus.

See here

TODO [A] Search

recoll should use seperate config

Recoll should be called with regard to a config, the idea being i could run:

  • cadmus -c personal
  • cadmus -c uni
  • cadmus -c work

and have different note bases

TODO Pipe preview through ripgrep to highlight any occuring words.

Take the command query and change white spaces into | characters, this way search terms will be highlighted in matches.

TODO [A] tags

TODO Standardise

These desperately need to be standardised like search and NoteFind have been

TODO Move the scripts into PATH

Currently all the tag scripts call a relative script, not in the PATH, maybe this is actually OK? it means 0 install…

TODO Add support for WikiJS Tags

WikiJS uses a broken yaml implementation but they can be extracted with some ripgrep, this should represent a further option in FilterNotesByTMSUTag.sh.

rg --pcre2 '(?<=[---\n[\s\S]ags:).*[,\s|:\s][a-z]+' -t markdown -o | sd -s ':' ' ' | sd -s ',' ' ' | sed s/^/tmsu\ tag\ /

TODO [A] tools

Link Markdown Notes

Should this do grep or recoll?

Probably grep just in case recoll ever brakes.

TODO [A] export

TODO [A] convert

TODO [A] misc

TODO [A] publish

TODO [A] preview

Packaging

TODO Make a Package

Use FPM to make multiple packages bundling everything together.

Consider also just using install --help and doing something like this or like this.

Exit Codes

Number Description
3 File not found
4 directory not found
5 unrecognized option
6 Missing Dependency

Exit Code Number ∉ {1, 2, 126, 127, 128, 130, 255}

Footnotes


1

Think for using Thunderbird

2

This could so something like pandoc -o /tmp/myfile.odt; xdg-open /tmp/myfile.odt