0

As most of us, I work on several development projects. I have few copies of these source code, for different customers/processes etc.

I am looking for a file based note taking in Notepad++ or any other source code editor. The picture below explains what I am looking for.

enter image description here

Why am I requesting this when I can have version control?

  • It makes it easy to track some local changes.
  • It will help you when in future, you are looking at the customer specific file, of the changes that you made previously (history).
  • There is no additional version control etc needed. Its just a flat file that is associated with each of your source code file.
  • It loads the changes in the side bar and can be edited or new notes can be added.

I understand that all of the above can be done using a good version control system. But it is an overkill for what I am trying. And it just becomes an constant overhead for what I am trying to achieve.

Hope, I conveyed what I am looking for. Thank you for reading.

NotepadPlusPlus PRO
  • 1,489
  • 6
  • 19
  • 35
  • Why not put it in comments at the top of the document? You can copy a file to the other view, so that you essentially have the file open twice in split screen, then you keep one at the top to see your notes, and the other one you can scroll to work on the document. – LPChip Feb 12 '19 at 20:27
  • @LPChip thanks. Good idea. But it would be nice to automate it, wouldn't it? – NotepadPlusPlus PRO Feb 12 '19 at 20:31
  • 1
    If version control is overkill, why did you include git/svn tags? BTW: in my experience, if you are ever going to make a change to a piece of code, version control is not overkill. – PeterCJ Feb 12 '19 at 21:11
  • "...copies of these source code, for different customers/processes etc.": Even stronger reason for using version control. With `svn`, make each separate customer a branch; when you make changes in the trunk, you could [keep branches in sync](http://svnbook.red-bean.com/en/1.8/svn.branchmerge.basicmerging.html#svn.branchmerge.basicmerging.stayinsync) to make sure changes to the common get propagated to all (or [reintegrate](http://svnbook.red-bean.com/en/1.8/svn.branchmerge.basicmerging.html#svn.branchmerge.basicmerging.reintegrate) back into the trunk from a branc) – PeterCJ Feb 12 '19 at 21:20
  • @PeterCJ Thank you for your comments. I am sorry that I added the git svn tags, I thought it is something that developers face everyday. – NotepadPlusPlus PRO Feb 12 '19 at 21:28
  • Well, asking for a Software Recommendation is considered Off-Topic on SuperUser. That's why I mentioned an alternative. – LPChip Feb 12 '19 at 21:38
  • @LPChip hopefully, I am not asking for software recommendation, I am asking for a way to do that in NPP. – NotepadPlusPlus PRO Feb 12 '19 at 21:49
  • 1
    You are asking for a plugin, which is software. So basically you ask for a software recommendation. The way that does not require software is what I gave you. ;) – LPChip Feb 12 '19 at 22:00
  • Quick though, see if there's a [`ci`](https://linux.die.net/man/1/ci) that you can run from Windows. Maybe worth some research for something as simple as that I would think. – Vomit IT - Chunky Mess Style Feb 13 '19 at 13:59
  • @PimpJuiceIT I will definitely look into that. Thank you. – NotepadPlusPlus PRO Feb 13 '19 at 14:21
  • Maybe something like http://gnuwin32.sourceforge.net/packages/rcs.htm or something that will work with Windows 10 assuming that's what you will run it on. – Vomit IT - Chunky Mess Style Feb 13 '19 at 15:07
  • A version control is exactly the way to go, having source code that's not on version control is a very very bad idea. Install git add it to your path, navigate to your source code folder and `git init` and voila you have version control! – Shekhar Feb 13 '19 at 21:40
  • @Shekhar I already have svn for our team development. This is more of custom development for variety of customers. I really want a simpler solution. Thanks. – NotepadPlusPlus PRO Feb 13 '19 at 22:10

1 Answers1

1

As far as I know, no such keep-metadata-in-separate-but-associated-file plugin exists for Notepad++. Such could be written, using either a flat file or a database for tracking the changes. But really, that's re-implementing a simple version control software; why not use the subversion or git already available and well-established and industry-standard?

That said, using the PythonScript plugin, you could probably automate things -- when you open files that match a certain extension (like .c), you could have the script also open the associated .notes file in the "other view" tab. You could have it auto-save the .notes when you save the .c.

I have NppExec plugin scripts that I've added to my right-click context menu that pop up a input window to ask for the commit message, then call svn commit on the current file or current directory, which automates my usage of svn as the version control for this. It could, in theory, be bound to the buffer-save event or the buffer-close event, so that you always commit (and thus include a change message) on every save / or whenver you close that file.

PeterCJ
  • 660
  • 1
  • 5
  • 12