fuzzyworld

template / windows / files / config.go

Branch windows · default branch · all branches

config.go

Commits that changed this file, newest first · file

2022-11-159573ca0Adding tests, getting code coverage to be reasonable for most files (main.go is at 0%), and might be there for a bit.Pavel Safronov
2022-11-01ae89a42Lots of small-ish changes: - Added support for user template files. This setting is exposed through a new parameter that has a default value of "~/.template.user.yaml". This file is combined with the "global" config: same-name profiles in user config replace profiles in global config. That's the merge. - Added more config validation in more places. - Standardized the name of the error variable to `err` across the project - Added a `make all` target that builds, runs tests, then installs the project locally - Added more information when a profile doesn't work on the current system - Postscript output is now captured and logged - Removed the no longer used (and "overloaded") findProfile functionPavel Safronov
2022-10-264ded421Removing TemplatePath. File templates are now loaded only from the config. Also made some simplifications and refactored where we calculate the full config path. Added a `reset` command (`template reset`) that will reset the config file to be the default config that's in the code.Pavel Safronov
2022-10-21b058643Starting work on creating files inside a templated folder. This commit gets all tests working as well.Pavel Safronov
2022-10-1174f1d4fA few small changes: - moved default config to its own file - added extras error logic to handle cases when extras file doesn't exist - removed "--default-config" switch from VSCode launch tasks (doesn't seem to play well with others)Pavel Safronov
2022-10-0605f9e8eAdded more tests.Pavel Safronov
2022-10-05763c260Adding a makefile and more tests.Pavel Safronov
2022-10-0555c36f6Got extras working: - added support for "extra" template data being available from YAML - added tests for extras - added a flag to use the default config (this is a test-only setting) - added VSCode launch task to debug testsPavel Safronov
2022-10-042c2e124Adding script execution type and other changes: - added a git profile - added a test profilePavel Safronov
2022-09-301540cf7A few small changes: - updated "note" profile to write to Dropbox, don't think there's too much benefit to having "note" create files anywhere, one location is more appropriate for "note" profile - fixed some linting issues - slight reorder of cleanup logicPavel Safronov
2022-09-260ec42a7Mostly readme updates.Pavel Safronov
2022-09-25fe139e4Added support for file template strings, instead of needing to have a file template.Pavel Safronov
2022-09-24d1bc130Fixed issue with post script needing to be split up. Now everything works as expected. Changes: - added "slices" package to do basic array checks (contains in this case) - made all post scripts []string, instead of [][]string - lowercased errors, because that's apparently the style - added Description to each profile - Description gets displayed when "template list" is run - started forbidding profile names that clash with actionsPavel Safronov
2022-09-244a7759dChanged a few things: - added folder profile, which creates a versioned folder in current location - added "create-react-app" profile, that creates a versioned folder in current locaiton and installs "create-react-app" there - added ability to have multiple script executions - added "template list" method: it lists the known profiles - added "template get XYZ" method: it shows XYZ profile as YAMLPavel Safronov
2022-09-23b65fb5eAdded some more profile validations: - profiles must have names - profiles must have script shell if postscript is set - treating OS="" as "All"Pavel Safronov
2022-09-230e962bbSome simplification and minor fixes: - removed some unnecessary functions - added tests for version presence - added logging for postscript execution - added postscript fixes for handling spaces in project namePavel Safronov
2022-09-2371bdf57Adding file templates support: - file profiles can specify a file template - template is templated with name, time, and project name - added install script that copies the templates to user directory - removed extraneous tasks and launch configs, no just using a single launch config to reinstall everything - added a good starting template for blog postsPavel Safronov
2022-09-2355d96f9Added tests for findProfile, as well as: - profiles are no longer stored as a map, it's a list now, and we can have multiple profiles with the same name - started adding basic config validation - still trying to figure out how to do installation stuff, might need to start using Make or somethingPavel Safronov
2022-09-23da15cf4Adding tests and a few small changes: - added basic tests for func createNewName - Path is now optional for profiles, new objects are created in cwd - added profile "note" that creates a note in cwd - removed all instances of "name", using explicit projectName and profileName nowPavel Safronov
2022-09-232bc4bd6Added support of labeling profiles with a particular OS.Pavel Safronov
2022-09-231bfa421Using pwsh for executing post script and some VSCode stuff.Pavel Safronov
2022-09-22ea896f4Added support for unique indexes. This is done by defining a special function, and checking if this function gets called. Other changes: - slight reformat - slight cleanup - added helpful VSCode tasks, like installing the app and removing its configPavel Safronov
2022-09-22319b8b3Got basic patterns working: - made IsDefault into a boolean property on the profiles. - if "extra" args are specified, use them as such: first arg is profileName, second arg is ProjectName - added some tasks to VSCode, including a cleanup taskPavel Safronov
2022-09-21230da3bGetting closer to working patterns.Pavel Safronov
2022-09-21d026838Starting work on patterns and generating new file/folder names.Pavel Safronov
2022-09-214a7361bAdded config type to the app, using this for creating a config file or reading a created one.Pavel Safronov