Handling tab depth and "list" content was painful. If I want to add additional features to this extension, I'm going to have to bite the bullet and write this as an actual document editing program and will need to implement an FSM to track my current cursor state throughout the program.
Writing it this way will produce a much more extensible product than trying to end up with a crappy parser and a bunch of bad logical branches.
This is probably a related issue to #3 and should be done with a more robust document object model that I can manage internally.
Handling tab depth and "list" content was painful. If I want to add additional features to this extension, I'm going to have to bite the bullet and write this as an actual document editing program and will need to implement an FSM to track my current cursor state throughout the program.
Writing it this way will produce a much more extensible product than trying to end up with a crappy parser and a bunch of bad logical branches.
This is probably a related issue to #3 and should be done with a more robust document object model that I can manage internally.