Many word processors are capable to tracking and displaying changes made to a document. Those changes are typically displayed in special markup supported by the editor. E.g.

enter image description here

But when using a plain text editor (like Microsoft's Notepad), is there a useful markup technique that editors can use to suggest changes, without losing any of the original text?

  • Interesting question. Knowing the type of project would probably help us give you a better answer. Commented Dec 21, 2012 at 22:18
  • 2
    @NeilFein I was a copy editor a billion years ago when you took pen to paper with various squiggles and symbols to conveyed changes needed. I was wondering if editors adopted a way to collaborate electronically in plain text. It seems to come up often. It could be an email draft or a simple text document where we don't have advanced-tracking capabilities. I was wondering if there was perhaps some old-school technique of suggesting (possibly extensive) corrections and copy changes without overwriting the original draft (something used before word processors and such had those feature built in). Commented Dec 21, 2012 at 22:57
  • 2
    Since text files, by definition, don't use styling, the choices boil down to explicit tagging/markup ("NEW:.../ENDNEW" etc) or diff. Diff is built into any source-control system worth using, or you can do the low-tech version of saving multiple versions. I don't think there's a magic bullet or standard. Good luck! Commented Dec 24, 2012 at 21:55

9 Answers 9


I kind of doubt that there is a standard for it, at least. You might get away with using some marker that isn't used anywhere else, like ###, to indicate a changed passage, but I'm not sure if that really qualifies as markup. In any case, it would have to be an agreement between the people involved which marker(s) to use and what they mean. Something like this:

Tracked changes look like ###this[WAS: these]###.

That said, depending on the technical inclination of the author(s) and editor(s), you might get away with something like setting up a GitHub account and uploading the text file there. Source control systems tend to be somewhat more geared toward programmers, but they solve your problem quite nicely: they allow multiple persons to work on a single text file (even simultaneously), tracking changes over time, displaying the differences between arbitrary versions, going back and forward between versions, and selectively rolling back any changes made.

It may take a little getting used to for someone who isn't technically inclined, but if you are serious about doing this with only plain text files, it's a reasonably easy way forward once you get over the initial learning curve. And for writing, there's likely no need to deal with the more complex issues such as branching/merging and such; a linear history will likely work well enough.

  • Maybe I overemphasized the need for a standard. I'm really looking for something I can use internally — something that favors readability; a technique of showing someone your edit suggestions without losing any of the original text. I updated my question. Commented Dec 21, 2012 at 22:03
  • 1
    +1 to answer for sticking to required needs and suggesting version control. Commented Jan 20, 2013 at 8:06
  • +1 for suggesting a simple markup and version control. I use [^MultiMarkdownFootnotes] to annotate my own text. I type the footnotes as seen here, then publish to Marked/HTML and look over the footnotes as I read. Then I go back in and make changes (or don't). <br> [^MultiMarkdownFootnotes]: This is a footnote. Commented Jan 21, 2013 at 9:40

It's been a few years since the above question was posed. Now, there is at least one system, CriticMarkup, designed to give plain text writers functionality that is similar to Microsoft Word's "track changes" feature.


  • Hello Duncan. Are you affiliated with this system? If so that's fine, but in that case we require disclosure. Thank you. Commented Jan 20, 2016 at 0:20
  • 1
    No I'm not affiliated with this system at all. The OP asked a question I've also wondered about. I do a lot of work in plain text, and the lack of any standard for inserting editorial marks is an ongoing problem in a publishing workflow. The "criticmarkup" syntax (criticmarkup.com/users-guide.php) strikes me as a consistent, sensible way to mark up text documents. It duplicates many of the "track changes" features in MS Word, and can be implemented at no cost in common text processors. The main thing it misses is the ability to assign attributions to a change. Commented Jan 20, 2016 at 16:39

This is a good question. Unfortunately, outside of the programming realm, there's no system for tracking changes at the character level that I'm aware of. (If there is one, I'd love to know about it!) I suspect there are many, many such systems that have been cobbled together by individuals, however.

This comes up often when blogging: Do we use Word files with their awesome change tracking features and then deal with all the garbage they produce before posting (possibly introducing errors)? Or do we work in plain text from the start, cobbling together some sort of change system like the one Michael suggests?

If you absolutely need something like this, I recommend using marks that are catch the eye. [[[triple brackets]]] or ***lots of asterisks*** or ###other such signs###. (If you're working on source code or HTML, this could cause problems later. And, as you can see, sometimes lots of asterisks render as bold-italic text, indicating yet another problem.)

Rather than embedding changes in the text itself, is it possible you could simply use versioning and the name of the person? For example, SampleFile_EditorNF_v1.0.1.txt may have meaning if you and your colleagues have agreed on a system. You could then use the compare revisions of a robust editor (such as BBEdit) to compare versions and see the changes.

Another option is to use commenting to describe the changes.


Personally, I would use a simple version control system like mercurial: there's no need for a server, you just pack up the entire directory (which contains the repository with all the version history), and trade it back and forth in email, for instance.

You could also use a simple text-comparison tool, like diff: save your original file and have your editor make all of their changes and save that to a different file. Then you can just run diff to compare the two versions and see what changed. The nice thing about this is that your editor could run diff and save the comparison to a patch file, and then add comments directly to the patch file to explain each change that was made.


If you want to mark-up a text then the obvious solution is to use a mark-up language. The best known example today is HTML but the power of XML is that you can create your own tags (and share them with your collaborators through a DTD).

You can <suggest>track </suggest> follow changes such as removing redundant <replaced> unnecessary extra</replaced> words.

Note that Markdown interprets invented tags as mark-up even when it does not know what to do with them. To get the paragraph above to appear correctly, I have used the tick character as an escape on the eginning and end of tags.


The earliest/simplest I had known and the one that survives to-date with enough support is the classic was: -- (it's already been mentioned in the passing by @Michael Kjörling in his answer).

I do not know much beyond the near-horizon (spatially and temporally) what people did or are doing, but I still use it in config files and the sort.

CheckJobMonitor=ON [was: OFF]  

Suggested changes similarly are indicated by a "query":

PDL_NAME=devNAME  [? portNAME]

I'm not sure. You could save the file as an html document and use the <!-- Hello --> tags to denote suggested changes. When I worked at a freebie weekly, we used the comment function in Windows Word to suggest changes. The changes were then added in using red text and strike through's.


I've never used Notepad, but can it create PDFs? Or at least print to PDF?

Because Acrobat Pro has a dandy set of markup tools which I use all the time for proofreading emails:

  • Highlights
  • Sticky notes
  • Callouts (with arrows, lines, squares, circles, clouds, text cross-outs, polygon)
  • I think there's even a freehand pencil tool.
  • 3
    Thanks, but no. The gist of the question is for situations where you don't have those built-in capabilities. It could just as easily be an email draft or other non-wordprocessing app. Commented Dec 21, 2012 at 22:53
  • -1 to answer, +1 to comment. The question clearly specifies text editor options are required. Commented Jan 20, 2013 at 8:03
  • @ZayneSHalsall And I use Acrobat for "suggesting changes, without losing any of the original text" on a daily basis, as the question clearly specifies. I am unhappy that you would downvote a response which does, in fact, explicitly answer the question. You may not have used Acrobat that way, but it's a valid workflow. Commented Jan 20, 2013 at 14:58
  • FWIW I'd remove the downvote (if I could, "7 hours?") given your massive contribution to Writers, though under mild protest. My reasoning for downvoting was to drop the answer to the bottom, as all the other answers were also zero-rated but actually answered according to the OP's question and comments - "...when using a plain text editor ... editors can use to suggest changes...", "...a way to collaborate electronically in plain text...", "...a simple text document where we don't have advanced-tracking capabilities..." (emphasis mine). Commented Jan 20, 2013 at 15:37
  • @ZayneSHalsall Thank you for the consideration. I acknowledge that a PDF is not "plain text" in the sense of Notepad or TextEdit. I was providing another suggestion which the OP might not have considered if he was focused on working in a particular program, and/or some other future reader of the question might find useful. Commented Jan 20, 2013 at 16:56

Instead of trying to find a markup standard you should stick to the methods utilised by the tool. They wouldn't deviate too much from general markup standards and most of the time they hide the markup from the editor and just display it when needed. There are gazillions of text editing tools out there. I'm using at least 3 or 4 different tools with probably different markup and/or versioning methods. I don't care for the details and just benefit from the output.

In addition to the tools suggested by the commentators (criticmarkup, acrobat pro, xml etc) I can get down the tools I'm currently using or did use in the past which all are capable of marking, commenting, drafting and/or versioning content.

Draftin is an online tool for just writing plain text in a collaborative setup and has a few extra markup features above the basic feature set.

Currently I'm creating service and end user documentation in Confluence which has many powerful collaboration, markup, versioning etc features.

In the past I've used Redmine which again had many built-in (or extendable with addons) powerful markup and versioning features.

I'm also using Microsoft's and Google's online word processing and spreadsheeting tools which have almost every feature for collaboration, versioning, commenting, or marking up content.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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