- fix bug where not all tags would be added to the database and therefore
query --tagresults would have been incomplete - fix bug where
sync --updatewould keep old links and tags, even if they changed or were removed - fix panics in
settle sync --renamecaused by trying to rename a file that didn't exist - fix overwrites in
settle sync --renamewhen there was a Zettel with the new title on the filesystem but didn't have an entry in the database query --graph json: specify"ghost"as edge weight if the target link does not existvizk:- make nonexistent Zettel slightly darker in color and less opaque, to distinguish them from those that do exist
- make drag distance detection dependent on node size, so that there isn't a visible mismatch between large nodes and their selection radii
- change default parameters so that the notes don't cluster in the center when opening the visualisation
- fix bug where link force greatly affected link distance at lower values for the former
- add button to toggle displaying arrows at the end of each link
settle compl: add completion forNushell(throughnu,nushellarguments)- change
queryandls: always print output alphabetically sorted - change: don't enforce having an
inboxproject, since the user should have control over this
query: change--graphto take a single value insteaed of printing a DOT graph:- specifying
dotas an argument prints the DOT graph - specifying
jsonas an argument prints the JSON string of the graph - specifying
vizkas an argument returns HTML code usingd3.jsunder the hood, through which the Zettelkasten can be interactively visualised
- specifying
- fix: make
sync --renametake precisely two arguments instead of a variable amount - fix: get default configuration file variables at runtime instead of compile time
- add: make configuration file location flexible by allowing using the
SETTLE_CONFIGenvironment option - fix: check for environment variables at runtime, not at compile time
- fix: don't use environment variables if they are set but empty
- change: make titles be unique globally, i.e. a single unique title per Zettelkasten, instead of having them be unique per-project basis.
- refactor: rework the database architecture entirely, but keep (roughly) the same functionality
- fix: make finding backlinks just as fast as finding forward links
- fix: make
sync --createreturn the proper error - fix: prevent
complfrom creating configuration files - fix: make
complrecognise its input properly - fix: prevent
queryfrom returning a capacity overflow error when using the--textoption. - fix: don't insert duplicate links into the database
- fix: include more information in I/O panics, to make debugging easier
- fix: automatically rename Zettel with multiple consecutive whitespace, so that words in them may be separated only by a single space character
- fix
query: return backlinks properly, instead of just a subset, or none (!) - clarify documentation
- update dependencies to latest versions
- add
mainas an alias for the main Zettelkasten project, i.e. the empty string project, for all commands that may reference it - fix
settle sync --move: use regular regex instead of SQL regex to match notes
settle query: fix bad output of--graphcommand, which (due to the v0.39.6 update) printed not only its intended output, but also the regular query output.
settle query: add%aformat flag, which, when used in combination with the--textoption, prints the patterns matched by the latter option. This is especially useful for giving context to a search, since enclosing it with a.*at the start and end (such as.*search.*) returns an entire line.
- add
--exactoption tosettle query, for disabling regex and at the same time avoiding any possible [internal] errors due to regex-specific characters in Zettel titles - re-write documentation entirely, add a bunch of files to
doc/and link to them in the README.md "Overview" section
- fix:
settle sync --createno longer permits empty titles and titles starting with a dot (which would be, as per regular Unix behaviour, hidden files) - fix:
settle sync --generatenow ignores files starting with a dot, and likewise, empty titles - fix:
settle sync --updateno longer panics when given certain relative paths, notably when the current working directory is the main Zettelkasten directory - fix:
settle sync --updatereturns an error on files that are not in the Zettelkasten - fix: if the database file doesn't exist or the database hasn't been
initialised,
settleno longer panics complaining that it can't find SQL tables
- fix: detected tags must be delimited by whitespace on both sides, so that for
example it doesn't think that a reference in a link is a tag (e.g.
https://example.com/hello#About; formerly, it would take#Aboutas a tag) - fix:
query --tag <TAG>also returns the subtags of<TAG> - fix:
sync --renamewould never work since it never found the correct title
- add
--graphoption toquery, for making a graph out of the results
- add to
query:- add
--formatoption, which supports printing the title, the project, the path, the links and the backlinks for any Zettel. - add
--link_sepoption, which specifies how both links and backlinks should be separated in formatting
- add
- remove groff/man document inside
doc/
- change command line interface entirely:
- remove all listing-related commands
- add
querycommand for querying the database, with the ability to to apply several filter parameters, at your choice - remove all commands that were related to changing the database
- add
synccommand, which deals with everything related to changing the database - replace misc commands (like
zk,tags) withls
- [internal] instead of using SQL queries to get stuff, load the entire database into memory and then apply various filters
- fix panics on a completely fresh environment (credit: irandms)
- add
isolatedcommand, for returning all Zettel that have no links pointing to or from them
- fix: when moving a note from a project to another, create the project directory if it doesn't exist
- remove
db_fileas a configuration option - add a 'core principles' section to the README
- briefly describe the project's history in the README
- add
mvcommand, for moving Zettel between projects - add
renamecommand, for renaming Zettel obviously- after a file is renamed, all links to it are updated
- fix: properly recognise links spanning multiple lines
- fix: print things synchronously instead of asynchronously to stdout
- reformulate a vague section in the README file
- fix: don't panic when compiling if
XDG_CONFIG_HOMEisn't set
- add the 'projects' command for listing existing projects
- add
buildman.shindocs/, a script that builds the man documentation automatically
- add a readable manual in markdown (which works on e.g. GitHub)
- use backticks in the 'Wildcards' section in the markdown manual
- update the markdown manual's formatting
- move a paragraph to its proper position in the manuals
- add a section on how to actually take notes with it
- process projects in parallel
- use the latest versions of dependencies
- implement projects (subdirectories within the main Zettelkasten) to hold notes
- add
${DATE}placeholder
- rename all commands: use at most one word
- follow XDG base specifications for configuration files
- add a proper man page that uses groff
- add command to generate autocompletion files on the go