-
Notifications
You must be signed in to change notification settings - Fork 39
Things for Next Release
With v0.32 out now, I expect tomboy-ng release cycles to be a little longer. Given that basic functionality is almost all there now, we can afford the luxury of a beta release cycle before formal release, the extra testing period will ensue a quality release and avoid bugs that sometimes creep in that require an unexpected (to me) combination to demonstrate.
So, please see the github release page, v0.32i is there as a pre-release packages, https://github.com/tomboy-notes/tomboy-ng/releases/tag/v0.32
Any, all or even none of these may make it into v0.33.
In the calculator, many countries use the comma instead of a period as a decimal separator.
When adding a file as a note in the repo, from the command line, we should be able to notify the existing instance that it should reindex ?
This will deliver two advantages :
- Will be less obtrusive to a user busily typing away, may help with some existing issues.
- By taking save out of a critical timing loop, I can do a better job of saving, in particular, make the xml pretty.
I have already made the Normalising code from commonmark a separate unit. So, the current SaveNote unit will just scan the kmemo putting appropriate content into a TStringList and returning that to editBox. That will still be done in the main thread, has to as its accessing KMemo. But once that is done, we fork a new thread and it will tidy up the xml, add header and footer to TStringList and save it.
Will avoid a few seconds of non responsiveness, particularly at startup.
Speeds up initial index for users with large note collections and good hardware. Is, however a bit slower for systems with only one core. Done and tested.
Seems people really want undo/redo.
Progress Report : I now have a working. It acts key press by key press (or paste, cut) and I am considering 25 steps back. It is not smart enough to group together a series of similar keystrokes like some Undo systems do. That would be too invasive to keystroke processing, slowing down system for fast typists. Fully tested.
When focus is on the Search Window, seems that a Ctrl-N can go to a number of controls with being acted on, that is, a new note please. Done in v0.32b - confirm this, I don't think its working ???
Hmm, just alphabetical I guess ? Done in v0.32b (target 0.33)
Better to use the CommonMark markdown exporter I wrote for the NextCloud experiments (done in v.32b), nice to be able to export a Notebook full of notes too.
0.32i uses same commonmark unit as TT, additionally, it now converts lines (paragraphs) that are all monospaced to the MD block mode, sequential lines are all, now, part of same block.
Makes sense to tidy up Tomboy Tools for this purpose, much of whats needed is already there. While it has a clunky interface, that can be improved over time too. Still need to escape the new titles while importing. TT now moved to its own repo, https://github.com/davidbannon/TomboyTools
At present, tomboy-ng will implicitly import a text or (limited) RTF file if provided on command line, the note is left, as a single note, in the directory it was imported from, a change is required to trigger a save. The --save-exit will cause the new note to be moved to the -ng repo and app to exit. Pretty clunky. New plan (target v0.34) -
- Command line switches, --txt-note=, --md-note= will convert nominated file to a note, default adding it to repo.
- adding --to-dir= will send it to a nominated directory.
- adding --title-line will force use of first line as title instead of file name.
- in every case, note will be imported and app exits.
- do we want another switch that opens the note after importing ?
- the use of a filename on the commandline without switches will be limited to note format only ?
- We must check to see if another instance of -ng is running, if so, it will have to be told to re-index.
- This is pretty easy, I will use the import_notes module I made for NextCloud sync.
This is intend as a one note at a time model and is probably only appealing to Linux users, how to cater to Windows and Mac ? , Linux user will also be able to do a shell for loop and process a directory. Might be workable under PowerShell. Technically workable under bash on MacOS but who knows what Apple has put in our way ? TT is still the answer for bulk imports/exports.
Aim for a 'release' of TomboyTools about same time as v0.33 of tomboy-ng.
I am still unconvinced that their API is suitable. So, this one is likely to be on hold. https://github.com/nextcloud/notes/issues/627 It may well be looked at in he future. Once the Nextcloud API is stable.
While working nicely for Linux user (who don't have too many notes), would be good to extend to Windows.
Useful if we could associate (each separate) sync with a Notebook. Especially so now that we have a function (for Linux) users Tomdroid sync. That way, a user can declare a sync only involves certain notes. Need to model this a bit to ensure its safe.
It would be nice to be able to manage the Help Notes via the .po system. This would make maintaining them a lot simpler for translators. But there are some issues. While a start has been made, did not make it it to 0.32.
- Add an export in .po format.
- Add an import from .po format.
- Add an export to man page, html.....
- But must have some means of merging existing translated content with new content, ie what happens to *.es.po when *.po is overwritten ? That is starting to sound like an implementation of POEdit. Can we find a way to use POEdit to do that syncing ?
It appears msgmerge, part of gettext, might do it all. So, I propose a workflow to make / manage help notes like this -
- I add a dumb .po import/export capability.
- create a (disposable) tomboy note, either from scratch or by importing the appropriate (English) .po file.
- edit as required.
- Export that content from tomboy-ng to a .po or .pot file containing a limited sub set of common mark. This file becomes part of git distro.
- Use msgmerge to generate new *.XX.po files for each supported language. Normally, little will have changed, most of existing translations will be valid. New content will be, of course, by default in English.
- Translators will, at some stage, pull down their .po file, edit some or all and return it.
- At package time, I 'import' (cli desirable) each *.XX.po file generating a regular Tomboy format help note to distribute in the package.
- Man pages, pdf, html can be generated in the same way, to broaden appeal. Maybe ??
Progress Report : I have added (to TomboyTools) the ability to export a note in a sort of .pot file. It still has the xml markup in there so is quite hard to read IMHO. aguador is looking at some other tools that might be more suited to flowing, marked up text than poedit.
All seems a lot of work, and may end up too complicated to use anyway......