spences10 / VBA-IDE-Code-Export

Export & Import VBA code for use with Git (or any VCS)
MIT License
119 stars 34 forks source link

Command line interface #56

Open mattpalermo opened 7 years ago

mattpalermo commented 7 years ago

A command line interface for CodeExport could be useful to build and open a workbook straight from the command line with a few keystrokes. For example, in your working directory, you may be able to type a command:

xlbuild MyWorkbook.xlsm

which would open the workbook and run the CodeExport import command. This would allows for a much faster workflow, especially if there is actions that need to be taken before opening and after closing MyWorkbook.xlsm. This will be crucial for implementing issue #55 and the OoXmlUnpack functionality since these functions will (may) operate on the MyWorkbook.xlsm before and after Excel has opened it.

spences10 commented 7 years ago

I'm currently looking at:

  1. Change file extension
  2. Save as .zip
  3. Unzip file
  4. make unicorns!
  5. Zip
  6. Re-packed Excel with ribbon UI

I found this ribboneditor that generates the XML you need to create a ribbon item

Is this CLI going to circumvent this work? I have done steps 1-3 currently

mattpalermo commented 7 years ago

I'm currently looking at:

...

Nice, I look forward to it seeing how it goes.

I found this ribboneditor that generates the XML you need to create a ribbon item

Nice, seems like a convenient way to generate the xml.

Is this CLI going to circumvent this work? I have done steps 1-3 currently

I imagine the CLI to serve a few different purposes. In many cases it will simply be another 'interface' from which the existing CodeExport functionality will be called. So, as long as your solution solves its target problem in a user friendly way, I don't think there is a problem.

I am curious about how you are going to achieve step 4 (make unicorns). Are you going to modify the XML itself or are you going to use a library to achieve this?

mattpalermo commented 7 years ago

It seems your current work will help with issues #57 and #55.