<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>teamzone.ch &#187; Tools</title>
	<atom:link href="http://teamzone.ch/category/tools/feed/" rel="self" type="application/rss+xml" />
	<link>http://teamzone.ch</link>
	<description>Welcome to the Joint-Venture Blog from Fabio Cortesi and Stefan Jäger.</description>
	<lastBuildDate>Sat, 05 Jun 2010 13:23:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Compare different search engines</title>
		<link>http://teamzone.ch/2009/06/09/compare-different-search-engines/</link>
		<comments>http://teamzone.ch/2009/06/09/compare-different-search-engines/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 08:01:09 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[search engines]]></category>

		<guid isPermaLink="false">http://teamzone.ch/?p=389</guid>
		<description><![CDATA[Use http://blindsearch.fejus.com/ to compare different search engines. After you see the results, you can choose, which one is the best and you will see, which search engine (Google, Yahoo or Bing) provided which search result.

]]></description>
			<content:encoded><![CDATA[<p>Use http://blindsearch.fejus.com/ to compare different search engines. After you see the results, you can choose, which one is the best and you will see, which search engine (Google, Yahoo or Bing) provided which search result.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2009/06/blindsearch.png"  rel="lightbox[roadtrip]"><img class="aligncenter size-medium wp-image-390" title="blindsearch" src="http://teamzone.ch/wp-content/uploads/2009/06/blindsearch-300x221.png" alt="blindsearch" width="300" height="221" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2009/06/09/compare-different-search-engines/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Expressions in Eclipse Debugger</title>
		<link>http://teamzone.ch/2008/12/12/expressions-in-eclipse-debugger/</link>
		<comments>http://teamzone.ch/2008/12/12/expressions-in-eclipse-debugger/#comments</comments>
		<pubDate>Fri, 12 Dec 2008 21:28:38 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/12/12/expressions-in-eclipse-debugger/</guid>
		<description><![CDATA[Today, I encountered a very helpful feature in Eclipse. When I am debugging code, I sometimes want to know, what’s the result of a method is. If the result it’s not assigned to a variable, it gets complicated. Take a look to this example: what is the result of add(17,19)? 

public class DemoApplication &#123;
&#160;
  [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I encountered a very helpful feature in Eclipse. When I am debugging code, I sometimes want to know, what’s the result of a method is. If the result it’s not assigned to a variable, it gets complicated. Take a look to this example: what is the result of add(17,19)? </p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> DemoApplication <span style="color: #009900;">&#123;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> args<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span>
        DemoApplication calc <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> DemoApplication<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #003399;">System</span>.<span style="color: #006633;">out</span>.<span style="color: #006633;">println</span><span style="color: #009900;">&#40;</span>calc.<span style="color: #006633;">divide</span><span style="color: #009900;">&#40;</span>calc.<span style="color: #006633;">add</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">17</span>, <span style="color: #cc66cc;">19</span><span style="color: #009900;">&#41;</span>, <span style="color: #cc66cc;">2</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> add<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i, <span style="color: #000066; font-weight: bold;">int</span> j<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> i <span style="color: #339933;">+</span> j<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">int</span> divide<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">int</span> i, <span style="color: #000066; font-weight: bold;">int</span> j<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">return</span> i <span style="color: #339933;">/</span> j<span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>In earlier times, I stepped one step further to get into the method divide. Then I got the result of add(17,19) in my parameter. </p>
<p>&#160;</p>
<p><span id="more-263"></span></p>
<p>But Eclipse is offering a better solution. In the Debugging Perspective, there is a view called Expressions. Just add a new expression add(17,19) and the Debugger is printing out the result.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/12/image35.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="259" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/12/image-thumb35.png" width="404" border="0" /></a> </p>
<p>The result is directly printed out:</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/12/image36.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="214" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/12/image-thumb36.png" width="489" border="0" /></a> </p>
<p>&#160;</p>
<p>A simple, but helpful feature in Eclipse!</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/12/12/expressions-in-eclipse-debugger/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Batti for Windows Mobile</title>
		<link>http://teamzone.ch/2008/10/11/batti-for-windows-mobile/</link>
		<comments>http://teamzone.ch/2008/10/11/batti-for-windows-mobile/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 09:25:29 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[Windows Mobile]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/10/11/batti-for-windows-mobile/</guid>
		<description><![CDATA[The standard way to read out the battery life on a Windows Mobile smartphone is a small icon on the top, which has 3 indicators to show, how the battery life is: 
 
&#160;
This is not really a helpful information. Today, I found a small, simple but incredible program (open source), which is the best [...]]]></description>
			<content:encoded><![CDATA[<p>The standard way to read out the battery life on a Windows Mobile smartphone is a small icon on the top, which has 3 indicators to show, how the battery life is: </p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/10/image30.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="29" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/10/image-thumb30.png" width="95" border="0" /></a> </p>
<p>&#160;</p>
<p>This is not really a helpful information. Today, I found a small, simple but incredible program (open source), which is the best battery program I’ve seen so far. It’s called Batti and it’s hosted on Google (<a title="http://code.google.com/p/batti/" href="http://code.google.com/p/batti/">http://code.google.com/p/batti/</a>).</p>
<p>&#160;</p>
<p>This program adds a 2-3 pixel deep line at the top. The line is coloured and has a gradient. With this line, I see know always, how many battery I’ve left. This is just nice.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/10/image31.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="30" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/10/image-thumb31.png" width="244" border="0" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/10/11/batti-for-windows-mobile/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Feed Sifter</title>
		<link>http://teamzone.ch/2008/10/07/feed-sifter/</link>
		<comments>http://teamzone.ch/2008/10/07/feed-sifter/#comments</comments>
		<pubDate>Tue, 07 Oct 2008 17:35:05 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/10/07/feed-sifter/</guid>
		<description><![CDATA[I have some blogs, where I only read blog entries, if their headline contains some specific words. Today, I found a nice and really easy tool called Feed Sifter. This tool filters RSS feeds, which you can subscribe on.
&#160;

 
&#160;
Try it out!
]]></description>
			<content:encoded><![CDATA[<p>I have some blogs, where I only read blog entries, if their headline contains some specific words. Today, I found a nice and really easy tool called <a href="http://feedsifter.com/">Feed Sifter</a>. This tool filters RSS feeds, which you can subscribe on.</p>
<p>&#160;</p>
</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/10/image28.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="340" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/10/image-thumb28.png" width="450" border="0" /></a> </p>
<p>&#160;</p>
<p>Try it out!</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/10/07/feed-sifter/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dependency Analyzer</title>
		<link>http://teamzone.ch/2008/09/25/dependency-analyzer/</link>
		<comments>http://teamzone.ch/2008/09/25/dependency-analyzer/#comments</comments>
		<pubDate>Thu, 25 Sep 2008 16:38:37 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/09/25/dependency-analyzer/</guid>
		<description><![CDATA[
In a software project, Software Engineers need to ensure, that the source code meets the architectural rules. One of a usual architecture rule are the dependencies between the layer and packages. There are a lot of tools, which can be used to ensure, that no class breaks this rules.
If you know, that there are some [...]]]></description>
			<content:encoded><![CDATA[</p>
<p>In a software project, Software Engineers need to ensure, that the source code meets the architectural rules. One of a usual architecture rule are the dependencies between the layer and packages. There are a lot of tools, which can be used to ensure, that no class breaks this rules.</p>
<p>If you know, that there are some specific classes, which do not meet these rules, a dependency code analysis is needed. Therefore, I found a free tool called CDA (<a href="http://www.dependency-analyzer.org/">http://www.dependency-analyzer.org/</a>), which is very helpful in such a situation. It can also be used for repeated check to ensure architecture compatibility, but in this blog entry, I will focus on code analysis.</p>
<p>First of all, just install this tool as described on the website (<a href="http://www.dependency-analyzer.org/#Installation">http://www.dependency-analyzer.org/#Installation</a>). CDA doesn&#8217;t need any installation (just unzip the compressed file) and can be run with Java 1.5.</p>
<p>After finishing the installation procedure, you need to create for every project a Workset. A Workset can contain different code sources, which are analysed together. First, define a Name. After that, go to the Classpath register. The easiest way to use CDA is to analyse a JAR file. Add all JAR files, which you want to analyse.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image003.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image003" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="323" alt="clip_image003" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image003-thumb.jpg" width="442" border="0" /></a></p>
<p>If you are finished, save the Workset. CDA will load now all classes from the JAR files into a tree. With CTRL + F you can search for a specific class or you can navigate with the package name to a specific class. With right click, you can analyse all dependencies (on which classes/packages does the class depends on) or you can analyse all dependants (which classes/packages depends on the currently selected class). </p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image005.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image005" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="401" alt="clip_image005" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image005-thumb.jpg" width="439" border="0" /></a></p>
<p>If you are analysing the dependencies, you can show the classes or packages, on which the specified class depends on. Furthermore, you will see all third-party libraries, on which the class depends on. If you do not want to see some specific packages, you can apply a filter (button “edit filter”), on which you can define excluded packages.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image006.gif"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image006" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="234" alt="clip_image006" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image006-thumb.gif" width="443" border="0" /></a></p>
<p>The generated graph looks like following. It is almost the same as the textual dependency view, with the exception, that no third-party libraries are shown. </p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image008.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image008" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="309" alt="clip_image008" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image008-thumb.jpg" width="437" border="0" /></a></p>
<p>This tool is user friendly. If you are using this tool, you will very fast get to work with it. I use this tool to find dependants on a class and to draw simple UML diagrams of a class (very useful if you want to draw a UML diagram from just one class with all it dependencies).</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/09/25/dependency-analyzer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Login Macros with Putty Connection Manager</title>
		<link>http://teamzone.ch/2008/09/06/login-macros-with-putty-connection-manager/</link>
		<comments>http://teamzone.ch/2008/09/06/login-macros-with-putty-connection-manager/#comments</comments>
		<pubDate>Sat, 06 Sep 2008 19:53:00 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/09/06/login-macros-with-putty-connection-manager/</guid>
		<description><![CDATA[In a previous post I mentioned the Putty Connection Manager. I found this week a very nice feature. In the Putty Connection Manager, it is possible to create Login Macros. A Login Macro is based on some shell commands, which are send after the login. Now, you can just open a log file with one [...]]]></description>
			<content:encoded><![CDATA[<p>In a previous post I mentioned the <a href="http://puttycm.free.fr/">Putty Connection Manager</a>. I found this week a very nice feature. In the Putty Connection Manager, it is possible to create Login Macros. A Login Macro is based on some shell commands, which are send after the login. Now, you can just open a log file with one double click.</p>
<ol>
<li>As first step, you have to create a new Putty Connection Manager Database (File &#8211; New &#8211; Database). In this database, you can store connections. Unlike the Putty sessions, you can add to this connections some Login Macros.      <br />&#160;</li>
<li>Now, define a name and a host for the connection. Also enable the Login Macro mode     <br /><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image0024.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image002" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="376" alt="clip_image002" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image002-thumb4.jpg" width="381" border="0" /></a>      <br />&#160;</li>
<li>Define your macro. You can just define some steps like cd … and less …, to open a log file directly.     <br /><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image0041.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image004" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="377" alt="clip_image004" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image004-thumb1.jpg" width="382" border="0" /></a>      <br />&#160;</li>
<li>As last step you have to link the connection with a putty connection.      <br /><a href="http://teamzone.ch/wp-content/uploads/2008/09/clip-image0061.jpg"  rel="lightbox" rel="lightbox[roadtrip]"><img title="clip_image006" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="375" alt="clip_image006" src="http://teamzone.ch/wp-content/uploads/2008/09/clip-image006-thumb1.jpg" width="380" border="0" /></a>      <br />&#160;</li>
</ol>
<p>This is it. Now, you can just open a log file with one double click from the &quot;Connection Manager&quot; panel. This feature is time saver if you have to observe a lot of logfiles.</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/09/06/login-macros-with-putty-connection-manager/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>VMRCPlus for Virtual Server 2005 R2</title>
		<link>http://teamzone.ch/2008/07/17/vmrcplus-for-virtual-server-2005-r2/</link>
		<comments>http://teamzone.ch/2008/07/17/vmrcplus-for-virtual-server-2005-r2/#comments</comments>
		<pubDate>Thu, 17 Jul 2008 13:41:29 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/07/17/vmrcplus-for-virtual-server-2005-r2/</guid>
		<description><![CDATA[For those of you running Virtual Server 2005, try out the tool VMRCPlus. You can download it here. With this tool, you got everything you need out of the box, the administration access over IIS is not needed anymore.
 
 
Source
]]></description>
			<content:encoded><![CDATA[<p>For those of you running Virtual Server 2005, try out the tool VMRCPlus. You can download it <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=80adc08c-bfc6-4c3a-b4f1-772f550ae791&amp;DisplayLang=en">here</a>. With this tool, you got everything you need out of the box, the administration access over IIS is not needed anymore.</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/07/image23.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="486" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/07/image-thumb23.png" width="490" border="0" /></a> </p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/07/image24.png"  rel="lightbox" rel="lightbox[roadtrip]"><img title="image" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="554" alt="image" src="http://teamzone.ch/wp-content/uploads/2008/07/image-thumb24.png" width="423" border="0" /></a> </p>
<p><a href="http://blogs.technet.com/matthts/archive/2007/06/29/vmrcplus-is-here.aspx">Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/07/17/vmrcplus-for-virtual-server-2005-r2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some Regular Expressions Examples in Programmer&#8217;s Notepad</title>
		<link>http://teamzone.ch/2008/04/27/some-regular-expressions-examples-in-programmers-notepad/</link>
		<comments>http://teamzone.ch/2008/04/27/some-regular-expressions-examples-in-programmers-notepad/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 16:04:44 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/04/27/some-regular-expressions-examples-in-programmers-notepad/</guid>
		<description><![CDATA[As mentioned on the Programmer&#8217;s Notepad help site (http://pnotepad.org/docs/RegularExpressions), Regular Expressions are supported. But what are the benefit of Regular Expressions? In this blog entry, I will show two examples, how to use Regular Expression in Programmer&#8217;s Notepad.
If you have to replace a specific word (e.g. %test%) with another word (e.g. Hello), Regex doesn&#8217;t really [...]]]></description>
			<content:encoded><![CDATA[<p>As mentioned on the Programmer&#8217;s Notepad help site (<a title="http://pnotepad.org/docs/RegularExpressions" href="http://pnotepad.org/docs/RegularExpressions">http://pnotepad.org/docs/RegularExpressions</a>), Regular Expressions are supported. But what are the benefit of Regular Expressions? In this blog entry, I will show two examples, how to use Regular Expression in Programmer&#8217;s Notepad.</p>
<p>If you have to replace a specific word (e.g. %test%) with another word (e.g. Hello), Regex doesn&#8217;t really make sense. Just use the regular search &amp; replace window.<br />
<a href="http://teamzone.ch/wp-content/uploads/2008/04/image11.png"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/image-thumb11.png" border="0" alt="image" width="354" height="199" /></a></p>
<p>But what, if you have several entries like ?1, ?2, ?3, &#8230; and you want to replace them with {1}, {2}, {3}, &#8230;? With the regular search &amp; replace window, you have to replace ?1 with {1}, ?2 with {2}, and so on. Furthermore, there are some problems with ?10, which gets replaced with {1}0 if you start replacing ?1 with {1}. In this situation, Regular Expressions is the solution.</p>
<p>Regular Expression always works char by char (not by a word). Inside the brackets [], there can be defined, which chars are allowed, e.g. [0-9] means, the numbers 0,1,2,3,4,5,6,7,8,9 are allowed. To select a year, just write [0-9][0-9][0-9][0-9]. To select any number, just write [0-9]+. The + means, at least one ore more occurrences.</p>
<p>Our search pattern for the previous described example should search for a question mark, followed by numbers. There can be a single number ore more numbers. Last but not least, the number should be extracted and surrounded by {} in the replacement.</p>
<ol>
<li>? could also be a Regular Expression (zero or one occurrences, unfortunately not supported by Programmer&#8217;s Notepad), so we have to escape it with a backslash. &#8211;&gt; \?</li>
<li>The following number(s) should be extracted and surrounded with (). In the Programmer&#8217;s Notepad syntax, you have to use \(\) to declare, that something should be extracted. Everything found between this to brackets are later accessible with \1, \2, &#8230;</li>
<li>We allow any number from 0 to 9 &#8211;&gt; [0-9]</li>
<li>This number appears at least once or more &#8211;&gt; [0-9]+</li>
<li>Combined, the search pattern is \?\([0-9]+\)</li>
<li>The replace pattern is simpler. The expression found between the \(\) get&#8217;s stored into \1. Now use this placeholder between the curly brackets {\1}.</li>
</ol>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/04/image12.png"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/image-thumb12.png" border="0" alt="image" width="368" height="207" /></a> </p>
<p>This replaces following examples with just one click. It&#8217;s easy, not?<br />
?1 &#8211;&gt; {1}<br />
?10 &#8211;&gt; {10}<br />
?2 &#8211;&gt; {2}<br />
?3 &#8211;&gt; {3}</p>
<p> </p>
<p>The second example is a little bit more advanced. I got the result of a SQL query, separated by spaces, which I needed surround with some other words and in another order. The SQL result, which I had, was something like:<br />
<span style="font-family: Courier New;">1       Monday      9       No description<br />
1       Monday      3       Fish and meat<br />
1       Monday      4       Vegetables and fruits<br />
2       Thusday     10      No details</span></p>
<p>As result, I wanted:<br />
Day &#8220;Monday&#8221; (id 1), Desc &#8220;No description&#8221; (id 9)<br />
Day &#8220;Monday&#8221; (id 1), Desc &#8220;Fish and meat&#8221; (id 3)<br />
Day &#8220;Monday&#8221; (id 1), Desc &#8220;Vegetables and fruits&#8221; (id 4)<br />
Day &#8220;Thusday&#8221; (id 2), Desc &#8220;No details&#8221; (id 10)</p>
<ol>
<li>First, there is a number (once or more times), which should also be extracted &#8211;&gt; \([0-9]+\)</li>
<li>After that, there are some spaces, but they should not be extracted &#8211;&gt; [ ]+</li>
<li>Followed by a text (to be extracted) &#8211;&gt; \([A-Za-z]+\)</li>
<li>Again some spaces &#8211;&gt; [ ]+</li>
<li>Again some numbers &#8211;&gt; \([0-9]+\)</li>
<li>At the end text with spaces &#8211;&gt; \([A-Za-z ]+\)</li>
<li>The result is the string <strong>\([0-9]+\)[ ]+\([A-Za-z]+\)[ ]+\([0-9]+\)[ ]+\([A-Za-z ]+\)</strong></li>
<li>this should be replaced into <strong>Day &#8220;\2&#8243; (id \1), Desc &#8220;\4&#8243; (id \3)</strong></li>
</ol>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/04/image13.png"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/image-thumb13.png" border="0" alt="image" width="357" height="201" /></a></p>
<p>That&#8217;s working. Easy, heh?</p>
<p>Didn&#8217;t understand any word about Regular Expressions? Check out <a title="http://pnotepad.org/docs/RegularExpressions" href="http://pnotepad.org/docs/RegularExpressions">http://pnotepad.org/docs/RegularExpressions</a> or <a title="http://www.regular-expressions.info/" href="http://www.regular-expressions.info/">http://www.regular-expressions.info/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/04/27/some-regular-expressions-examples-in-programmers-notepad/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CCTray</title>
		<link>http://teamzone.ch/2008/04/16/cctray/</link>
		<comments>http://teamzone.ch/2008/04/16/cctray/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 16:59:46 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/04/16/cctray/</guid>
		<description><![CDATA[In team project, CruiseControl is often in use to maintain a continuous build process. It is a Java program and it was first designed for Java development process. But as a successfully project, there is also a .NET implementation, called CruiseControl.NET. With this .NET implementation, Windows users can now benefit from a tiny tool called [...]]]></description>
			<content:encoded><![CDATA[<p>In team project, <a href="http://cruisecontrol.sourceforge.net/">CruiseControl</a> is often in use to maintain a continuous build process. It is a Java program and it was first designed for Java development process. But as a successfully project, there is also a .NET implementation, called CruiseControl.NET. With this .NET implementation, Windows users can now benefit from a tiny tool called <a href="http://confluence.public.thoughtworks.org/display/CCNET/CCTray">CCTray</a>. </p>
<p>CCTray monitors the build process and informs a Windows user, if a build is successfully or if it has failed. This is done with a tiny balloon tip:</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0022.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="155" alt="clip_image002" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image002-thumb2.jpg" width="417" border="0"></a></p>
<p>&nbsp;</p>
<p>To use CCTray, download it from the <a href="http://sourceforge.net/project/showfiles.php?group_id=71179">Sourceforge project page</a>. After the installation you can add your CruiseControl instance. Because we use a Java CruiseControl instance, you have to define the XML path. The Java CruiseControl provieds a XML servlet, which is accessible from http:// cruisecontrol/xml. After adding your Server, you can choose the projects, which should be monitored.<br /><a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0025.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="288" alt="clip_image002[5]" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0025-thumb.jpg" width="450" border="0"></a></p>
<p>CCTray helps you to maintain the build process and is a tiny, but very helpful tool. </p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/04/16/cctray/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WinSCP</title>
		<link>http://teamzone.ch/2008/04/15/winscp/</link>
		<comments>http://teamzone.ch/2008/04/15/winscp/#comments</comments>
		<pubDate>Tue, 15 Apr 2008 16:50:22 +0000</pubDate>
		<dc:creator>Stefan Jäger</dc:creator>
				<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://blog.stefanjaeger.ch/2008/04/15/winscp/</guid>
		<description><![CDATA[Today, I encountered an interesting tool. Usually, Putty fulfills most of my needs to a SSH client. Only if I want to transfer files with Putty, I had to use another tool. Until now, I used Filezilla. But today I saw a cool tool on the computer of a teammate. It&#8217;s called WinSCP and works [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I encountered an interesting tool. Usually, Putty fulfills most of my needs to a SSH client. Only if I want to transfer files with Putty, I had to use another tool. Until now, I used Filezilla. But today I saw a cool tool on the computer of a teammate. It&#8217;s called <a href="http://winscp.net/">WinSCP</a> and works very well with Putty.</p>
<p>First of all, you have to define the location of the Putty executable.<a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0021.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image002-thumb1.jpg" border="0" alt="clip_image002" width="394" height="329" /></a></p>
<p>After that, you can import all Putty connections into the connection window:</p>
<p><a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0027.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0027-thumb.jpg" border="0" alt="clip_image002[7]" width="386" height="267" /></a></p>
<p>If you have an open WinSCP connection, you are now able to open a Putty windows with just hitting CTRL + P. And after this fast setup, you can use WinSCP as your file transfer client.</p>
<p>Furthermore, for people who don&#8217;t know how to use vim (that&#8217;s not me <img src='http://teamzone.ch/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> , there is another nice feature with WinSCP: it let&#8217;s you edit all files directly in your favourite editor. Just double click at a file and edit the file. People reading this blog knows, that my favourite editor is Programmer&#8217;s Notepad.</p>
<p>To define Programmer&#8217;s Notepad as your primary notepad in WinSCP, just open the preference window and add a new editor:<br />
<a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0029.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image0029-thumb.jpg" border="0" alt="clip_image002[9]" width="395" height="331" /></a></p>
<p>Active the option &#8220;External editor opens multiple files in one window (process)&#8221; and save it with pressing okay. To use Programmer&#8217;s Notepad as your primary editor, just move the new entry &#8220;Pn&#8221; at the top of the editor list.<br />
<a href="http://teamzone.ch/wp-content/uploads/2008/04/clip-image00211.jpg"  rel="lightbox[roadtrip]"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" src="http://teamzone.ch/wp-content/uploads/2008/04/clip-image00211-thumb.jpg" border="0" alt="clip_image002[11]" width="391" height="326" /></a></p>
<p>That&#8217;s it. Now you can edit every file on the host system with just a double-click. Enjoy it!</p>
]]></content:encoded>
			<wfw:commentRss>http://teamzone.ch/2008/04/15/winscp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
