This allows you to be modify the tags from the NoteEditor. Related to
#114. We still need to add some way to filter the notes by tag. Also,
the current tag editor doesn't show the tags from the other notes.
This adds a '+' button to the NoteEditor which allows you to add an
image from either the Gallery or Take a photo. It then accordingly adds
updates markdown.
The file is added in the same directory as the note for now.
Related to #10
Fixes#19
This is experimental as it changes the whole concept of a Note - We have
till now always assumed that a Note can have attached metadata. With
this, there is no longer any metadata. So other parts of the application
need to start reacting accordingly. For example the Mardkown Editor
should not allow you to modify the title.
This also makes it easier to implement '.txt' file support.
Save it after it is done once. This should result in a significant
performance boost - over 22% while showing the list view. Also, now with
the addition of a few more animations, this is even more important.
Notes should no longer have a default comparison method. Since sorting
will soon be configurable (and is currently disabled), lets just remove
this method.
* We no longer have a separate editing and browsing view - This does
mean we loose the ability to quick flip between notes by swiping.
However, this is more how a note editor would behave. I do later want to
add that capability back.
* We have 2 editors for now - Markdown and Raw. By default we use the
Markdown editor which can be toggled between Preview / Edit mode.
I later want to add a rich text editor and a todo editor as well.
If that title already exists add an _Num at the end.
This won't change the default for existing users, as our settings system
saves the default value and will just load it the next time. This really
needs to be improved.
Possible Options - modified, mod, lastModified, lastMod, lastmodified or
lastmod. When read the the note we will figure out which one is being
used and accordingly write back that value.
This makes it easier to use GitJournal for editing Hugo websites as they
usually use the 'lastmod' field to indicate when the post was last modified.
This is so that we can start configuring what the yaml metadata keys
should be called, and not have them hardcoded.
This also allows the note.created to be null. Earlier we were always
setting it to some value. That's doesn't seem right.
Otherwise people can put # or : or something else in the title and that
will result in invalid YAML.
Also escape any existing '. YAML is weird that the method of escaping a
' is by specifying it twice. It's sad that there is no dart YAML
serializer, and I'm surely missing some other edge cases. The YAML
specification is quite long.
It's no longer a simple JournalListing and instead we also show the
title. The main problem is with what to do when the title is not there.
Just leaving it blank seems to feel weird, specially when the note is
too small.
Maybe it's time to change it such that each row size is not the same.
We're effectively wasting whitespace right now for very small notes.