Programmer's File Editor With Change Tracking?
passionfingers writes "My business users regularly have to tweak large (>32MB text) data files manually. Overlords charged with verifying the aforementioned changes have requested that the little people be provided with a new file editor that will track changes made to a file (as a word processor does). I have scouted around online for such an animal, but to no avail — even commercial offerings like UltraEdit32 don't offer such a feature. Likewise on the OSS side of the fence, where I expected a Notepad++ plugin or the like, it appears that the requirements to a) open a file containing a large volume of text data and b) track changes to the data, are mutually exclusive. Does anyone in the Slashdot community already have such a beast in their menagerie? Perhaps there is there a commercial offering I've missed, or could someone possibly point me to their favorite (stable) OSS project that might measure up?"
You don't solve that by changing editors. You solve that by standardizing on a version control system and using it. For example, you could stick a Subversion server somehwere on your network, then install TortoiseSVN on your client machines. When you edit the file, you commit it with a log message of why you made the changes.
This is infinitely preferable to forcing all of your developers to use one specific editor (which is the universal holy war among programmers), when all of them will be half-assed at best when compared to real version control.
Dewey, what part of this looks like authorities should be involved?
I understand you want an all-in-one, however I believe that most "programming" editors can hook into some sort of change management program. I use one locally with my AutoIT3 scripts and the SCiTE editor, every time I compile it asks me for a "changes/reason" and enters that into my own local source management.
SCiTE
SCiTE for AutoIT with screenshots
CVS/SVN wrapper for SCiTE with screenshots and instructions
Jonah HEX
Horror & SciFi Erotic Nudes
if your business users have to edit 32MB text files by hand, someone is a moron.
Someone didn't know what they were doing in the first place.
Change the process to make sense.
Perhaps those "files" should actually be in a database. SQL makes automatic manipulation quite easy.
They're using their grammar skills there.
I'll echo the same sentiments as everybody else... use source control. In addition, you're asking for the impossible. Word Processors can do "change tracking" within a file because the file contains more stuff than simply the text that you type in. Based on your description, the file you're talking about is simple text data, and has no provisions for storing "previous versions" directly within the text file. Where were you expecting this additional information to reside? And if it's in the same file, you would also have to change whatever tools you're using to process that file to be aware of all of this new (and to that tool, useless) information within the file.
I just wrote one for you, and it is even using your favorite editor:
cp $1 $1.bak
`$EDITOR $1`
diff $1.bak $1
When you don't know how to do something, where do you go? I usually got to Google first and look around. Sometimes I find something, sometimes I don't. When I can't find anything via Google, where then do you turn? A co-worker? A friend? Maybe an online community of people who would know? The latter sounds like the most promising to me.
A company isn't concerned with how you find the answer (provided you come by it legally), they just want an answer as soon as possible. The faster, the cheaper the solution man-hours-wise.
I wouldn't be surprised if you've posted for help on an online forum or asked a friend for help with something. It's no different. It's all part of research.
Automatic file versioning built right into the file system! Problem solved! Next!
Monstar L
I seem to recall Eclipse saves your edit history
I don't know the meaning of the word 'don't' - J
--- You are in a little twisty maze of comments, all different.
1) Obviously never heard of version control like (CVS, SVN, etc.). This is excusable, as setting up and keeping with your very own SVN repo isn't the top of people's lists, and it's entirely possible to not have heard of such a beast.
2) Accepting the commandment of "thou shalt manually wade through gobs of data in a text file means he's no programmer. This is also perfectly fine, but means he's not the right person to be changing this file anyway.
3) Is under the impression that revision history could conceivably be hidden within said plain text file, implying the OP doesn't understand basic file formats, which confirms that he is not merely the wrong person but absolutely the last person you want manually mucking with your data files.
Therefore...
My suggestion: Forward the request to your IT department (or rent a geek).