zettelgeist icon indicating copy to clipboard operation
zettelgeist copied to clipboard

simplify command line options with configuration files

Open icornelius opened this issue 2 years ago • 1 comments

Command line options for zettel, zimport, and zfind could be simplified by reading default settings from a configuration file located within a .zettelgeist directory, on the model of .git. The file .counter.dat and the database itself could be placed within the same directory. A new command would be required, to create the directory and configuration file: e.g., zettelgeist init.

Defaults for zettel:

  • counter digits (override with --digits)
  • counter path (override with --counter-path)
  • id (override with --id)
  • file path (override with --name-dir)
  • timestamp digits (no current override option)

Defaults for zimport

  • directory from which to import zettels (override with --dir)
  • database name (override with --database)
  • absolute or relative filenames (default to --fullpath)
  • treatment of an existing database (default to --create)

Defaults for zfind

  • database name (override with --database)

icornelius avatar Sep 24 '22 18:09 icornelius

Ideally, we want this to be able to support per-project thinking, much like what .git accomplishes. This would require various Z tools to check the current directory and parents, ultimately leading to the home directory if not found. but I think this is a cool idea.

Main use case for this, is probably --database but there are also situations where you might want common --show options in tools like zfind (i.e. always show the title by default).

gkthiruvathukal avatar Mar 10 '23 17:03 gkthiruvathukal