Git Product home page Git Product logo

Comments (7)

chelh avatar chelh commented on May 25, 2024

I'll first work on providing hooks so that users can execute batch scripts against their entire VBA project:

  • A BeforePublish hook to run immediately before all code gets published to the Office file
  • An AfterExtract hook to run immediately after any files are extracted to the version control folder

How's your C#/VBScript? This would go much faster with me working on the VBASync portion, and someone more familiar with GistThat working on a separate .exe/.vbs to do the GistThat update.

from vbasync.

hectorticoli avatar hectorticoli commented on May 25, 2024

Hello vdubya, chelh,

Could you describe a use-case for this feature? That would help me to understand, and maybe improve the french translation as well.
Specifically, "Macros" refers in my mind to "VBA code" when dealing with Office files, but I assume this refers to something else here.

Thank you for any detail you could add :-)

from vbasync.

vdubya avatar vdubya commented on May 25, 2024

@chelh, I might be able to code it but the limiting factor is time. Given that it is already implemented, in VBA, maybe that simplifies the problem, we'll see. I like your approach of putting the before/after hooks as that will enable a lot of different integrations.

@hectorticoli, the use case still pertains to VBA Code. GistThat provides a way to share code with other VBA users with some neat features to check to see if code that you are reusing has been updated so you can update your project files. @chelh was referring to C#/VBScript for writing the code in VBASync to do the GistThat functionality of checking the GitHub Gist repository and downloading and updating the local code.

The link below has some good information if you are interested in learning more.
http://ramblings.mcpher.com/Home/excelquirks/gitthat

from vbasync.

brucemcpherson avatar brucemcpherson commented on May 25, 2024

from vbasync.

vdubya avatar vdubya commented on May 25, 2024

Hey @brucemcpherson, thanks for the update. I didn't quite realize that it had been superseded with VBAGit since I still saw GistThat references in some of the VbaGit code. Either way, the thing I was drawn to with VBASync was that it didn't require changing the trust settings which are unfortunately locked down in my environment, so whether it is gist or git based I still really like the concept and approach you developed and was hoping to see if it could be implemented in VBASync so I could use it.

from vbasync.

chelh avatar chelh commented on May 25, 2024

@vdubya I am done trying to read the GistThat/vbaGit code. If you still want this integration, I can help you write the parts that modify VBASync files, but will not directly interface with the GistThat/vbaGit parts.

from vbasync.

chelh avatar chelh commented on May 25, 2024

@hectorticoli Sorry for neglecting your message for so long; I've been busy with work.

The basic idea behind hooks is to provide a way for users to modify their VBA code using external executables before VBA Sync does work on it. This enables one to have VBA code in slightly different formats depending on whether it's inside the Office file or in the version-control repository. If I understand correctly, @vdubya wants the code inside the Office file to have a fully fleshed-out and up-to-date version of a VBA module that is stored online, while the code in the version-control repository just has a placeholder. For a completely different example, one simple application could make the code inside the Office file have auto-generated line numbers, while the code in the version-control repository has no line numbers.

Note that this would not have worked if hooks were to work as I originally described, so I changed how they work a little bit – instead of the AfterExtract hook running after VBA Sync has already compared all the VBA modules, it now runs before the comparison, and even before the modules' case is fixed.

from vbasync.

Related Issues (20)

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.