code-formation
v0.7.4
Published
context-free text manipulator using line-oriented DSL for easy embedding to existing source code
Downloads
19
Readme
npm publish --access public // "publish": "npm publish --access public"
- [ ] slots for in-source code gen => example 2: C# class to list constraints
- [ ] use basic snippets to mirror example 1's README to main README file with variable for links (RELATIVE_FILE_PATH)
- [ ] -- %&: @=: ADD_tests="" OBJADD_tests="[]" CAPTURE_constraints = "([.+][.+])" => _constraints=[ ["[dbo].[...]"] ]
- [ ] LINE_SELECT="\s*//(.*)"
- [ ] USING="plugins/xmldoc" ARGS="--target md"
/* .... :constraint_constants <%= _constraints.join(",\r\n") %> */ // &<:constraint_constants // &>
You can even use EJS template to generate CFL which can produces EJS, and that opens a higher level of meta, which probably will be :)
Make migration scripts for arbitrary script files according to marker lines
Name ideas:
- code-formation
- cftk
- cft.js
;;; (defvar x 5) ;;; (begin a) ;;; (end a) ;;; (snippet begin a) ;;; (snippet end a)
;;; (template begin )
[ ] configurable prefix $$$ %%%
[x] include chalk, pretty print
[ ] scan variables: |: _x=5 ||: _x=5
[ ] scan snippets: $< or $@<
$> or $@>
[ ] inject snippet: $!:abc
[ ] scan plugs: %< or %@<
%> or %@>
[ ] scan slots: &< or &@<
&> or &@>
- [ ] export evaluation includes EJS template render
- [ ] capture evaluation
- [ ] snippet evaluation at the end
- [x] command line arguments
- [ ] variable syntax: {CURRENT_FILE} "${CURRENT_FILE}"
- [ ] inline syntax that allows regex search/replace: --
-- $<:delete_object_if_exists type="default_type" a=_abc b="[abc]" prefix=" "
delete <%= type %> <%= name %>
-- $>