<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-7123906406701274151</atom:id><lastBuildDate>Mon, 16 Apr 2012 00:26:55 +0000</lastBuildDate><category>ruby</category><category>dev</category><category>python</category><category>blog</category><category>tool</category><title>notebook</title><description></description><link>http://tekidev.repcsi.com/</link><managingEditor>noreply@blogger.com (teki)</managingEditor><generator>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-5372269202871374219</guid><pubDate>Mon, 08 Dec 2008 01:53:00 +0000</pubDate><atom:updated>2008-12-08T12:55:51.760+11:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>python</category><title>Python: changing the class of an instance</title><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;blockquote&gt;So it happens often that i while i’m in ipython, i want to edit the display methods and test them without reloading the data. I tried pickling the data but pickle complained about it for some reason, so my only option was to edit the methods in place and while ipython is great, i prefer my editor, besides i want to store the code in case it, you know, works. So i type reload Module then foo.__class__ = Module.Foo and voila! all the methods change but the instance variables remain the same so i don’t have to reload the data!!&lt;/blockquote&gt;&lt;a href="http://www.philhassey.com/blog/2008/06/11/learning-python-by-reinventing-wheels/#comments" target="_blank"&gt;Source.&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-5372269202871374219?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2008/12/python-changing-class-of-instance.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-3687084518434380684</guid><pubDate>Tue, 18 Mar 2008 04:04:00 +0000</pubDate><atom:updated>2008-03-18T15:04:20.831+11:00</atom:updated><title>print the content of the clipboard as text (Windows)</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;getclip.cpp&lt;br /&gt;&lt;br /&gt;&lt;textarea rows='10' cols='60' class='cpp' name='code'&gt;&lt;br /&gt;#include "Windows.h"&lt;br /&gt;#include "stdio.h"&lt;br /&gt;&lt;br /&gt;#define CB_SUCCESS    0&lt;br /&gt;#define CB_GET_FAILED 1&lt;br /&gt;#define CB_CANT_OPEN  2&lt;br /&gt;&lt;br /&gt;int main(int argc, char* argv[])&lt;br /&gt;{&lt;br /&gt;	if ( !OpenClipboard(NULL) )&lt;br /&gt;		return CB_CANT_OPEN;&lt;br /&gt;&lt;br /&gt;	HANDLE hData;&lt;br /&gt;	if (hData = GetClipboardData( CF_TEXT ))&lt;br /&gt;	{&lt;br /&gt;		printf("%s", (char *)hData);&lt;br /&gt;	}&lt;br /&gt;&lt;br /&gt;	CloseClipboard();&lt;br /&gt;&lt;br /&gt;	return (hData == NULL) ? (CB_GET_FAILED):(CB_SUCCESS);&lt;br /&gt;}&lt;br /&gt;&lt;/textarea&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-3687084518434380684?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2008/03/print-content-of-clipboard-as-text.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-7910446901094197071</guid><pubDate>Thu, 31 Jan 2008 02:22:00 +0000</pubDate><atom:updated>2008-01-31T13:27:01.208+11:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>ruby</category><title>Ruby and VIM</title><description>&lt;a href="http://www.akbarhome.com/2007/6/6/ruby-on-vim"&gt;Article&lt;/a&gt;, &lt;a href="http://vimdoc.sourceforge.net/htmldoc/if_ruby.html#if_ruby.txt"&gt;documentation&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I had only one problem (on Windows). gVim comes with Ruby support, but the included console version of Vi doesn't. The solition is on &lt;a href="http://hasno.info/2008/1/28/windows-vim-7-1-212"&gt;hasno.info&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-7910446901094197071?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2008/01/ruby-and-vim.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-710551049458106969</guid><pubDate>Mon, 23 Apr 2007 01:07:00 +0000</pubDate><atom:updated>2007-04-23T11:07:25.646+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>Windows Freeware Diff/Merge application</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I started a discussion about Diff/Merge tools on &lt;a href='http://programming.reddit.com/info/1je83/comments'&gt;reddit&lt;/a&gt;.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;I collected together the candidates on this list:&lt;br&gt;&lt;/br&gt;&lt;a href='http://www.listible.com/list/windows-freeware-diff2Fmerge-application'&gt;http://www.listible.com/list/windows-freeware-diff2Fmerge-application&lt;/a&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;The only one which was able to handle long lines is the &lt;a href='http://www.componentsoftware.com/Products/CSDiff/index.htm'&gt;CS-Diff&lt;/a&gt;. A few supports word wrapping, but none of them are flawless:&lt;br&gt;&lt;/br&gt;&lt;ul&gt;&lt;li&gt;KDiff3 have the functionality, but breaks the lines randomly, useless.&lt;br&gt;&lt;/br&gt;&lt;/li&gt;&lt;li&gt;WinMerge does the word wrapping good, but turning it on breaks keyboard navigation, and no word wrapping in the DiffPane.&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-710551049458106969?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/04/windows-freeware-diffmerge-application.html</link><author>noreply@blogger.com (teki)</author><thr:total>3</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-3491400239657496485</guid><pubDate>Wed, 18 Apr 2007 01:49:00 +0000</pubDate><atom:updated>2007-04-18T22:26:13.673+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>dev</category><title>Processing Tag files with Ruby</title><description>&lt;textarea name="code" class="ruby" cols="60" rows="10"&gt;&lt;br /&gt;#!/usr/bin/env ruby&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;def proctag(tagline)&lt;br /&gt;  # {tagname}&lt;Tab&gt;{tagfile}&lt;Tab&gt;{tagaddress}[;"&lt;Tab&gt;{tagfield}..]&lt;br /&gt;  # "A tagfield has a name, a colon, and a value: "name:value".&lt;br /&gt;  # The name of the "kind:" field can be omitted.  A program reading the&lt;br /&gt;  # tags file can recognize the "kind:" field by the missing ':'.&lt;br /&gt;&lt;br /&gt;  ret = Array.new&lt;br /&gt;  &lt;br /&gt;  # tagname&lt;br /&gt;  idxb   = 0&lt;br /&gt;  idxe   = tagline.index("\t")&lt;br /&gt;  ret[0] = tagline[idxb..idxe-1]&lt;br /&gt;  &lt;br /&gt;  # tagfile&lt;br /&gt;  idxb   = idxe+1&lt;br /&gt;  idxe   = tagline.index("\t",idxb)&lt;br /&gt;  ret[1] = tagline[idxb..idxe-1]&lt;br /&gt;  &lt;br /&gt;  # tagaddress&lt;br /&gt;  idxb = idxe+1&lt;br /&gt;  idxe = tagline.index(";\"",idxb)&lt;br /&gt;  idxe = -1 if idxe == nil&lt;br /&gt;  ret[2] = tagline[idxb..idxe-1]&lt;br /&gt;  &lt;br /&gt;  # tagfields&lt;br /&gt;  ret[3] = nil&lt;br /&gt;  ret[4] = nil&lt;br /&gt;  if idxe != -1&lt;br /&gt;    fldlst = tagline[idxe+1..-1].strip.split("\t")&lt;br /&gt;    for act in fldlst&lt;br /&gt;      # handle kind&lt;br /&gt;      if !act.include?(':')&lt;br /&gt;        ret[3] = act&lt;br /&gt;      else&lt;br /&gt;        ret[4] = Hash.new if ret[4] == nil&lt;br /&gt;        hm = act.split(':')&lt;br /&gt;        ret[4][hm[0]]=hm[1]&lt;br /&gt;        ret[3] = hm[1] if hm[0] == 'kind'&lt;br /&gt;      end&lt;br /&gt;    end&lt;br /&gt;  end&lt;br /&gt;  return ret&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;while gets&lt;br /&gt;  next if $_[0] == ?!&lt;br /&gt;  m = proctag($_.chomp)&lt;br /&gt;  print m[3]," ",m[0],"\n"&lt;br /&gt;end&lt;br /&gt;&lt;/textarea&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-3491400239657496485?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/04/test.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-7329157206317398328</guid><pubDate>Fri, 02 Mar 2007 04:39:00 +0000</pubDate><atom:updated>2007-04-18T11:20:07.180+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>Mercurial - status produces wrong slashes on Windows</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;If you don't like it, then a quick fix (for 0.9.3):&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;Line 768 in C:\Python24\Lib\site-packages\mercurial\util.py:&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;blockquote&gt;def localpath(path):&lt;br&gt;&lt;/br&gt; return path.replace('/', '\\')&lt;br&gt;&lt;/br&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;/br&gt;Replace it with:&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;blockquote&gt;def localpath(path):&lt;br&gt;&lt;/br&gt; return path&lt;br&gt;&lt;/br&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-7329157206317398328?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/03/mercurial-status-produces-wrong-slashes.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-7684341704105982200</guid><pubDate>Thu, 01 Mar 2007 06:31:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.960+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>Mercurial - kdiff3 - hgmerge</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;b&gt;Context:&lt;/b&gt; Windows, MSYS, Mercurial installed from source&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;b&gt;Problem:&lt;/b&gt; hgmerge will use "merge" to merge even if kdiff3 is present&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;b&gt;Solution:&lt;/b&gt; edit x:/Python24/Scripts/hgmerge and remove the following line (and the corresponding fi should be eliminated too): &lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;if [ -n "$DISPLAY" ]; then&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-7684341704105982200?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/03/mercurial-kdiff3-hgmerge.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-120398332261332731</guid><pubDate>Mon, 19 Feb 2007 01:06:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.961+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>bzrvss</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I am using &lt;a href='http://www.selenic.com/mercurial/wiki/'&gt;Mercurial&lt;/a&gt; since a month, so I abandoned my bzrvss project.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;Mercurial + &lt;a href='http://kdiff3.sourceforge.net/'&gt;kdiff3&lt;/a&gt; + &lt;a href='http://qct.sourceforge.net/'&gt;qct&lt;/a&gt; + some custom python scripts are doing the job for me well enough.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-120398332261332731?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/02/bzrvss.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-7583034837926027959</guid><pubDate>Mon, 19 Feb 2007 01:02:00 +0000</pubDate><atom:updated>2007-04-18T11:20:14.964+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>SPE - python ide download link</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;It's not so easy to find it, so here is the project page's link: &lt;a href='http://developer.berlios.de/projects/python'&gt;http://developer.berlios.de/projects/python&lt;/a&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-7583034837926027959?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/02/spe-python-ide-download-link.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-3346428729824784342</guid><pubDate>Tue, 16 Jan 2007 03:28:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.962+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>bazaar merge plugin: extmerge</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;a href='http://erik.bagfors.nu/bzr-plugins/extmerge/index.html'&gt;http://erik.bagfors.nu/bzr-plugins/extmerge/index.html&lt;/a&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;Makes my life much easier, really cool.&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-3346428729824784342?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/01/bazaar-merge-plugin-extmerge.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-7337315589606436553</guid><pubDate>Mon, 15 Jan 2007 01:25:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.963+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>bazaar, Mercurial, darcs</title><description>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;Update 16/01:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;bazaar: merge problem solved, see the next post.&lt;/li&gt;&lt;li&gt;Mercurial: found a way to query changes.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: center;"&gt;_____________________________________________&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;I played with Mercurial and darcs on the weekend. Environment: win32, python 2.5, &lt;a href="http://sourceforge.net/projects/console/"&gt;console&lt;/a&gt; + sh from MSYS.&lt;br /&gt;&lt;br /&gt;My observations:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://abridgegame.org/darcs/"&gt;darcs&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Pros:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I really liked the interactive style of workflow.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;It gave me enough informations about what I needed.&lt;/li&gt;&lt;li&gt;Merging was easy.&lt;/li&gt;&lt;li&gt;I's really cool.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Cons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;They were too creative during the command naming. Almost totally new command set is not a deal breaker, but uncool.&lt;/li&gt;&lt;li&gt;I's strange that the latest available windows binary is not the latest stable version. However It is possible to download the latest binary from an external site.&lt;/li&gt;&lt;li&gt;Hard to extend.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;i&gt;What makes it totally unusable for me&lt;/i&gt;: &lt;a href="http://darcs.net/DarcsWiki/WindowsConsoles"&gt;WindowsConsoles&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;During the evaluation I got several error messages complaining about my console being out of sync.&lt;br /&gt;I will try to overcome on this somehow. Maybe disabling the interactive features makes it possible to use it, or just use the cmd.exe.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;a href="http://www.selenic.com/mercurial/"&gt;Mercurial&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It is similar to bazaar.&lt;br /&gt;&lt;br /&gt;Pros:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;More fine grained control than in bazaar (pull/update/merge are separate steps).&lt;/li&gt;&lt;li&gt;Merge is more easy than in bazaar (easy to configure external diffs).&lt;/li&gt;&lt;li&gt;Written in python, easy to extend.&lt;/li&gt;&lt;/ul&gt;Cons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Installation from the sources is working well, but the windows binary installer is trying to install the msvcrt71.dll into the windows/system32. This is totally unacceptable.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;i&gt;What makes it totally unusable for me&lt;/i&gt;: &lt;strike&gt;I weren't able to query file status changes between two branches.&lt;/strike&gt; If I would like to see what changes I have made, I have to query the changes from the upstream's repository and specify my working branch in a parameter. It's logical but not practical.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bazaar-vcs.org/"&gt;&lt;b&gt;bazaar&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Pros:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Written in python, easy to extend.&lt;/li&gt;&lt;li&gt;Provides every information what I need. Easy to query changes between branches.&lt;/li&gt;&lt;li&gt;Easy to install, working well with my my console.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Cons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strike&gt;Merging is not too user friendly. On conflict it just put the 3 versions to the filesystem, and you have to do the merging manually. (darcs and mercurial provides nice way to define a merge tool)&lt;/strike&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-7337315589606436553?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2007/01/bazaar-mercurial-darcs.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-405606809007114272</guid><pubDate>Thu, 21 Dec 2006 03:37:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.964+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>bzr-gtk</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;blockquote&gt;I tried out the &lt;b&gt;bzr-gtk&lt;/b&gt; gui for Bazaar, but it took too long time to get it working, and it doesn't do too much. I am thinking on a wxPython based gui for it. I think it would be much more widely usable than a pygtk app.&lt;br&gt;&lt;/br&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;/br&gt;It actually have nice features, but I would prefer to have a wxPython version. It could work on OSX too, and it is much easier to install.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;I used &lt;a href='http://www.wincvs.org/'&gt;WinCvs&lt;/a&gt; for a long time and then &lt;a href='http://www.syntevo.com/'&gt;SmartCVS&lt;/a&gt;. They are really good programs and made my life a lot easier.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;What I miss from bzr-gtk:&lt;br&gt;&lt;/br&gt;&lt;ul&gt;&lt;li&gt;file level informations (I just would like to see the history of a file.)&lt;/li&gt;&lt;li&gt;the file listing window doesn't have a column header, it is not possible to order by status&lt;/li&gt;&lt;li&gt;flat view: view all files recursively in a directory&lt;/li&gt;&lt;li&gt;visual diff (or to be able to use an external one)&lt;/li&gt;&lt;li&gt;I really like the visualization but no it would be nice to show the changed file list too&lt;br&gt;&lt;/br&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-405606809007114272?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2006/12/bzr-gtk.html</link><author>noreply@blogger.com (teki)</author><thr:total>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-2710908590479390819</guid><pubDate>Wed, 20 Dec 2006 05:30:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.965+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>Bazzar in practice, WinMerge patch, bzr-gtk</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I am now using &lt;b&gt;Bazaar&lt;/b&gt; to store my working copy. I didn't have the opportunity to try out the syncing (no commits for today).&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;In the same time I made a little modification on my favorite merge application (&lt;a href='http://winmerge.org/'&gt;WinMerge&lt;/a&gt;) and I used Bazaar to create the patch. It was a good mini learning project. I had only one problem. The &lt;b&gt;diff&lt;/b&gt; on the console looked good, but when I redirected the output to a file there were &lt;b&gt;extra line breaks&lt;/b&gt; in it. I don't know why this happens, I weren't able to avoid it, but I had to remove them with tr.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;I made a &lt;b&gt;mistake&lt;/b&gt;. I created a branch and then moved the directory. It worked well till I tried to do a pull. I got a nice exception. The exception came from a filename converting function, and the filename was empty. I moved on because the merge operation worked, and didn't have time to bother with it, but today I checked the .brv directory for any kind of easy solution, and it was there. There is a file called &lt;b&gt;parent&lt;/b&gt; which contained something like this: &lt;b&gt;../../../.&lt;/b&gt; I moved the directory one level up, so I just had to remove a &lt;b&gt;../&lt;/b&gt; and everything became fine.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;I tried out the &lt;b&gt;bzr-gtk&lt;/b&gt; gui for Bazaar, but it took too long time to get it working, and it doesn't do too much. I am thinking on a wxPython based gui for it. I think it would be much more widely usable than a pygtk app.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-2710908590479390819?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2006/12/bazzar-in-practice-winmerge-patch-bzr.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-8816257087718050478</guid><pubDate>Fri, 08 Dec 2006 05:31:00 +0000</pubDate><atom:updated>2007-04-18T11:20:02.966+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>tool</category><title>VSS -&gt; Bazaar</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I hate MS Visual SourceSafe, but must use it, so it is time to do something.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;b&gt;The idea:&lt;/b&gt; use &lt;a href='http://bazaar-vcs.org/'&gt;bazaar&lt;/a&gt; as a proxy between me and VSS.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;&lt;b&gt;Goals:&lt;/b&gt;&lt;br&gt;&lt;/br&gt;&lt;ul&gt;&lt;li&gt;keep my working source up2date without too much effort&lt;/li&gt;&lt;li&gt;use branches to separate independent tasks and to be able to track them&lt;/li&gt;&lt;li&gt;I don't want to commit into VSS through bazaar, I will merge changes manually back, but I need help to check-out the required files&lt;br&gt;&lt;/br&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;&lt;/br&gt;&lt;b&gt;Workflow:&lt;/b&gt;&lt;br&gt;&lt;/br&gt;&lt;ol&gt;&lt;li&gt;import project from VSS into Bazaar&lt;/li&gt;&lt;li&gt;check-out, create branch, work on it, commit, add new files, remove files ...&lt;/li&gt;&lt;li&gt;if it is needed update from VSS [vss get latest version, commit changes into bazaar]&lt;br&gt;&lt;/br&gt;&lt;/li&gt;&lt;li&gt;merge back manually to VSS [need a good report about the changes, vss check-out, manual merge, compile, commit, update bazaar main branch]&lt;/li&gt;&lt;/ol&gt;The corresponding doc from the bazaar homepage: &lt;a href='http://bazaar-vcs.org/TrackingUpstream'&gt;http://bazaar-vcs.org/TrackingUpstream&lt;/a&gt;&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-8816257087718050478?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2006/12/vss-bazaar.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-7123906406701274151.post-5221939545177639483</guid><pubDate>Wed, 08 Nov 2006 05:36:00 +0000</pubDate><atom:updated>2006-12-08T16:39:04.220+11:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>blog</category><title>Initial post</title><description>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I decided to start an english development blog, mainly because I would like to practice the language.&lt;br&gt;&lt;/br&gt;&lt;br&gt;&lt;/br&gt;My interests: c, c++, python, php, html, js, win, linux&lt;br&gt;&lt;/br&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7123906406701274151-5221939545177639483?l=tekidev.repcsi.com' alt='' /&gt;&lt;/div&gt;</description><link>http://tekidev.repcsi.com/2006/12/initial-post.html</link><author>noreply@blogger.com (teki)</author><thr:total>0</thr:total></item></channel></rss>
