Giter Site home page Giter Site logo

cognifloyd / cognifire.filefish Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 380 KB

This used to be called "BuilderFoundation". A generic file editing framework designed to allow semantic file editing especially within "packages". The basic process is: Stuff gets copied from a boilerplate package into a derivative package. In the process, the files in the derivative package may be modified through this semantic editing framework.

Home Page: cognifloyd.blogspot.com

PHP 100.00%

cognifire.filefish's People

Contributors

cognifloyd avatar

Watchers

 avatar  avatar  avatar

cognifire.filefish's Issues

Add EditorContext parsing

Make the EditorContext parse the files into a DOMDocument or DOMDocumentFragment

HTML/Fluid Files might need two passes: HTML5-PHP and Fluid Parser (for namespaces and inline fluid)

Add a way to edit fluid files

I want to make editing/creating TYPO3.Fluid files scriptable in a semantic fashion. I do not want line based editing. It's got to be able to insert elements (html, fluid, etc) at particular positions without mangling the syntax/semantics and spacing of the file.

This is my design for the "script" on the backend:

Once I've got this down, then I'll extend my app to edit other filetypes, including php, typoscript, stylesheets (css, sass, less, etc), javascript, yaml, and whatever else people might want to edit. All they have to do is add a library that understands the semantics of the filetype and provides a fluent interface (or at least uses method chaining) for searching/editing the file in a jquery-like manner. It'll use the same DSL (FlowQuery in Eel in YAML). Hopefully, I'll be able to jump from editing one kind of document to editing another, as different documenttypes are embedded in each other (eg SVG, MathML, CSS, and JavaScript are all easily embedded in HTML)

Test existing functionality.

Convert my testing command controller into unit, functional, behat tests.

This is what exists:

  • I can select all of the files in a given package of a particular mediatype.
  • I can copy a set of files from one boilerplate package to a derivatie package.
    • Derivative Packages are extensible. For now, I have only implemented the Flow package type, however I have a stub for a TYPO3 CMS Extension, and I can imagine adding symfony package type or whatever.
    • Packages of a particular package type are managed by a packageManager class that understands how to find and work with that package type (again like the domain object principle).
  • I have wired up FlowQuery with my EditorContext so that FlowQuery can pass the operations into the context.
  • Delete the command controller that I used to test a lot of this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.