I'm new to this forum and using VC in emacs so if this question has been answered or is just very basic, I apologize. At my employer we use a Version Control system that is not one of the systems supported by emacs. I was hoping there was a way to add a new mode. Presently I have all the commands as aliases in my .cshrc but would like to know if there is a way to integrate the system with emacs.

  • 1
    Your question is very vague to give an answer. What's the name of your version control system? – theldoria Dec 4 '16 at 0:51
  • Yes, you can. Read the commentary in vc.el. There are, of course, many supported backend libraries which you can read to learn implementation details. – phils Dec 4 '16 at 3:25
  • Hi theldoria, thanks for the response. I didn't mention the VC system but I guess I should have. It is called DesignSync(forgot the manufacture name) and commonly used with Cadence design tools for semiconductor design. We have started using it with our code as well. – MBW Dec 4 '16 at 22:11
  • Thanks phils! I didn't know which file to look at. I was original looking at something called version.el and that wasn't helping. :-) Off to read the correct file. – MBW Dec 4 '16 at 22:17

Yes, VC is structured so as to be easy to add new backends. The main code is in vc.el, and then each backend has a vc-<backend>.el file. Check all the vc-<backend>.el provided with Emacs to see what is needed. Basically, you'll want to start by defining a vc-<backend>-registered function which returns non-nil if the file is under control of <backend>. And you'll want to add your <backend> to vc-handled-backends. Then errors will popup whenever a vc-<backend>-<operation> function is needed. And that <operation> is described at the beginning of vc.el.

|improve this answer|||||
  • Thanks Stefan! More good information. Since I used to use CVS I'll start by reading that vc-cvs.el and see if I can mimic the same functions. Appreciate the pointer to the backend files! – MBW Dec 4 '16 at 22:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.