Aug 052009

i just came accross an unliked but necessary task. Due to a missunderstanding I was required to merge 2 branches. As I was the very lucky external consultant volunteering in absense for this task I didn’t know what changes where made in the versions stored in the vcs. Luckily the other version was available as patch – containing a bit more then 400 files. As there were no tools which would help to merge it automatically i’ve choosed the bloody painful way of manual merging. At the end it took me less than a day and I was quite happy about the environment I’ve setup to make merge easier. Because I’m unbelievably generous I share this setup with you…

For a short while I was considering just setting up a git repository on the original version and applying both change sets to different branches. As the result wasn’t predictable and my current git guru didn’t recommend this way at all for this particular task. I was considering a few more options but none of them did allow an almost automatic merge. Basically there was an additional requirement – the software needed to be compilable at the end ;)

“I’m German, I’m efficient” .. and I’m lazy .. i hate repeating the same steps again and again.. so I configured my working environment a bit to get rid of some of the steps. I’ve used Total Commander with the ShellDetails plugin. I’ve configured ShellDetails to see the revision of a file in the file list to be able to identify which file was already customized and which one not. This allowed my to decide quickly what to replace.

Additionally I’ve installed Examdiff a nice diff tool for Windows. After getting tired by dragging and dropping files into it I’ve also installed AutoHotKey and started writing a small script to call ExamDiff to be started as soon as I have selected 2 files. I’ve basically changed the existing sample to get rid of the use of total commander’s own compare tool. Unfortunately it didn’t work as easy as I expected – I left this part for further investigation. I struggeled when I tried to identify the selected files in the file view. I have no idea how to get their names and paths. When I’ve started to spend too much time on it I’ve just stopped and left it for further investigation.

Any hints are much appreciated :)

Configuring ShellDetails

  • Donwload and install it from the mentioned source. Open the zip in Total Commander it will trigger the plugin install process automatically.
  • Open the ShellDetails.ini (in the same folder as the wincmd.ini) and add the folders containing vcs content.
  • Go back to Total Commander and open Configuration > Options. Select Display > Custom Columns. Click on New and add custom columns for your desired configuration.

That’s all. Now you can choose a different view for the vcs folders.

Configuring ExamDiff

Nothing much to do. I’ve just changed the editor to Ultraedit. So Right Click > View / Edit on a file opens it directly in my favourite text editor.

Configuring AutoHotKey

Install. Write a script. Double click your script. Done.

Popularity: 3% [?]

Tags: , , , , , , ,
Aug 022009

Nach Jahren 1, 2 oder 3 klicken haben ich mir nun die Vollversion des Total Commanders zugelegt. Total Commander ist ein File System Browser, der mittlerweile in der Version 7.50 beta 8 (vor einigen Tagen veroeffentlicht) vorliegt.

Vorteile sind:

  • zwei Dateifenster nebeneinander, und somit einfaches navigieren, kopieren etc. Darueberhinaus koennen noch Tabs eingerichtet werden, die als gesperrte Tabs z. B. auf die am haeufigsten besuchte Verzeichnisse gesetzt sind.
  • Preview – zum anzeigen einer Datei muss nicht das jeweilig zugeordnete Programm geoeffnet werden, sondern diese kann mit Lister in einer Vorschau angezeigt werden.
  • Suche direkt im Dateifenster nach Namen, fuer komplexere Suche koennen viele Konfigurationsmoeglichkeiten und Regex verwendet werden. einfaches browsen und durchsuchen von Archieven (jar, war, zip usw.) ohne zusaetzliche tools
  • Mehrfachumbenenntool – Dateinamen und Erweiterungen koennen ueber Pattern definiert werden
  • FTP client – fuer einfache Uploads und Downloads vollkommen ausreichend
  • die Oberflaeche – einfach, intuitiv und frei konfigurierbar
  • Erweiterbarkeit – viele Plugins sind verfuegbar, es gibt eine lebendige Community, Total Commander wird staendig weiterentwickelt.

Plugins habe ich einige installiert, die nuetzliche sind aus meiner Sicht:

  • SynUs – *das* Lister Plugin, dass syntax highlighting fuer alle gaengigen Sprachen aktiviert
  • SFTP4TC – ein SFTP plugin fuer Total Commander
  • File Info – Lister Plugin, dass umfangreiche Informationen zu Binaerdateien anzeigt.

Sobald ich eine neue Version installiere, nehme ich ueblicherweise ein paar Standardkonfigurationen vor, wie Anpassung der Oberflaeche, Mausverhalten, Schnellsuchoptionen; stelle den Texteditor auf Ultraedit; erlaube nur eine Instanz, die sich ins Systemtray minimiert und installiere fleissig Plugins.

Der Total Commander kann ueber heruntergeladen und auch erworben werden. Mit der Lizenz gibt es auch eine CD mit der aktuell veroeffentlichten Version.

Popularity: 1% [?]

Tags: ,