<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
Ahoy me TextMateys,<div><span class="Apple-tab-span" style="white-space:pre"> </span>I just had a kindof a neat idea.</div><div><br class="webkit-block-placeholder"></div><div style="font-size: 15px; "><b>TextMateHistoryManagement</b></div><div><br class="webkit-block-placeholder"></div><div>Currently, when you do a thousand changes in textmate and then close your document, all your changes are totally lost :(</div><div><br class="webkit-block-placeholder"></div><div>What if every time you saved your document, I caught that action, backed up your original version and the new one and then archived it away in a magical forrest for safekeeping. Then when you open that document up again you have the option to undo every previous save you've ever made to the document? And you can even see how many changes were made every time you saved with a timestamp and a full diff and all kinds of crazy stuff?</div><div><br class="webkit-block-placeholder"></div><div>I know tons of people use some kind of SCM like subversion or mercurial or something, but you normally only commit working changes and projects that you're working on. Instead, this TextMateHistoryManagement would keep track of every single change you make to every single document you ever save, good changes or bad ones, who cares, just everything.</div><div><br class="webkit-block-placeholder"></div><div>Personally, I think this would be stinking awesome to the power of infinity -1 squared! (aka, it'd be nifty)</div><div><br></div><div>So, as far as UI goes…</div><div><br class="webkit-block-placeholder"></div><div>I want a new history to be saved every time I save the document.</div><div>I want to have a nice GUI palette like photoshop to see a list of changes.</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>That list shows the filename, hide-able full file path, timestamp and the number of lines added, removed or changed in that version.<br class="webkit-block-placeholder"></div><div>There should be a hide-able diff drawer or area with a tabbed safari-esque view with tabs for each diff available. Diff that version to it's parent, the selected items to eachother, or the selected item with your open version.</div><div><br class="webkit-block-placeholder"></div><div>There are some obvious technical hurdles to leap, but it's all totally doable. The purpose of this poll is to see if anyone would be interested in this from a fronend user interface level. I already know how I'm likely going to actually build this thing, and we can talk more about that later.</div><div><br class="webkit-block-placeholder"></div><div>What I'm most interested in is workflow.</div><div>I'd like us all to come up with the best and most genericly usable workflow for everyone. Maybe some advanced stuff for the nerds, but I want this as mostly a noob feature and for people who don't want to have to care about version control or whatever.</div><div><br class="webkit-block-placeholder"></div><div>For example, with the implementation that I just suggested, you could do this…</div><div><br class="webkit-block-placeholder"></div><div>You're working on a version of some random webpage, then someone emails you a changed version. You could just replace your current file with that one and open it up and check your history palette to see the changes. (assuming you had opened and saved the original file in textmate at some point)</div><div><br class="webkit-block-placeholder"></div><div>You'd never had to install or configure or set up anything. It should all just work™</div><div><br class="webkit-block-placeholder"></div><div style="font-size: 15px; "><b>Thoughts?</b></div><div><br><div> <span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; font-size: 10px; "><span class="Apple-tab-span" style="white-space: pre; "> </span>thomas Aylott<span class="Apple-converted-space"> </span>— </span><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; font-size: 10px; "><b style="font-weight: bold; "><span class="Apple-style-span" style="font-weight: bold; "><span class="Apple-style-span" style="font-weight: bold; "><span class="Apple-style-span" style="font-weight: bold; "><span class="Apple-style-span" style="font-weight: bold; "><span class="Apple-style-span" style="font-weight: bold; ">subtleGradient </span></span></span></span></span></b></span><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; font-size: 10px; ">— </span><span class="Apple-style-span" style="border-collapse: separate; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; -webkit-text-decorations-in-effect: none; text-indent: 0px; -webkit-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><span class="Apple-style-span" style="font-size: 10px; ">CrazyEgg — bundleForge</span><br class="Apple-interchange-newline"></span></span></span></span></span></div></span></div></span> </div><br></div></body></html>