Skip to content

Latest commit

 

History

History
42 lines (42 loc) · 2.26 KB

TODO.md

File metadata and controls

42 lines (42 loc) · 2.26 KB

TODO

  • detect rectangles
  • detect whether used as text or used as graphs (if any of the 8 has no get character then it is used as text)
  • complete the specs
  • Make the string literal escape work multiline Impractical
  • Make a swap out interface. - useful for detecting broken lines such as - - - and replace it with ~~~~~. This way it will be easier to process by the fragment emitter
    • Fix broken line implementation
  • Group traced elements together, then reduce as needed
  • Add # as square start marker for lines
  • Support for geometric shapes https://en.wikipedia.org/wiki/Geometric_Shapes
  • Add enhance circle, detect circles then enhance it.
  • Add test cases
  • Re-implement the escape string with double quotes.
  • Use perfect hashmap phf to efficiently build the maps(unicode_map, circle_map, ascii_map) at compile time.
  • Fix the double arrow issue When there is 2 arrows in the middle of a line ---->>------- or ----<<----
  • Clean the project enforce deny warnings.
  • [~] Fix a bug where an escaped text has whitespaces, the whitespaces are gone.
    • This is a rendering bug in the browser where spaces are compressed into narrow widths
  • Revise calculation of Circle and Arc center by basing on the number of chars/width
  • Add more circle art, dynamically created
    • use ito-canvas
  • [~] Enhance quarter arc to be able to merge 2 or 3 quarters to form bigger arcs
    • Quarter circle arcs
    • Half circle arcs
    • 3/4 circle arcs
  • Support for pills, elongated ovals
  • Update to library to latest version
    • nalgebra
    • ncollide2d -> parry2d
  • Make the top-level directory a workspace and put svgbob and cli into packages/
  • Make a trait for the merging algorithms
    • merge_recursive
    • first_pass_merge
    • second_pass_merge
  • Try again to endorse the span of the grouped fragments that are in the same span but not reduces into a single shape
  • Move the modules into flat structure as possible rather than deep
  • Make use of dot canvas for circles that are larger than radius 10.
  • Use jss and json syntax for the legen to allow more flexibility with layered class names.