A combined Stop/Reload button for Firefox 2.0

Firefox 2I can't stand 'desktop clutter' and my Firefox toolbar is one such place that I try to keep as minimalistic as possible. I often wondered why there was a 'Stop' and a 'Reload' button when only one of them is active at a time.

I've been using Firefox for quite some time and found an extension called Stop-or-Reload Button that merged the two buttons together therefore reducing the screen real-estate that the navigation toolbar took up.

I upgraded to Firefox 2.0 this week and found that the extension was disabled as it wasn't compatible. After a little searching on the web I found an old but still valid blog post by Erik Arvidsson entitled "Stop-Reload-Button in Firefox" that not only solves my problem but does so in a very minimalistic way! Ignore his references to IE7 he really means Firefox (he mentions this in the comments).

Now I need to try and get rid of those annoying "GO" buttons from the Address and Search bars...

Technorati Tags: , , ,

How to switch your working copy when the Subversion repository URL has moved

If you followed my previous post on Supporting multiple Subversion (SVN) repositories with Apache you may have noticed that I moved the repositories from:

http://some-url/a
http://some-url/b


to:

http://some-url/svn/team-a
http://some-url/svn/team-b


If you had a working copy checked out of either of these Subversion repositories then you would have received an error when attempting an update due to the repository being moved since you checked out the code.

You need to update your working copy to point to the new repository but maintain any local changes that you might have made - my colleague Guy Francis pointed out that you use the svn switch command to do this.

Here is how you update your working copy's repository URL:

  • Change directory so that you are inside the working copy
  • Run svn switch --relocate http://some-url/a http://some-url/svn/team-a .
This will go through the whole directory structure updating the source URL to point to the new location, the --relocate option forces Subversion to just update the files locally no access to the remote repository is required.

Technorati Tags: , , ,

Supporting multiple Subversion (SVN) repositories with Apache

My previous posts about Subversion on Debian Linux (installing, configuring, backported packages) showed how I installed and configured my local repository that I use for my home projects. I also used these tutorials when installing Subversion at work.

After creating a couple of repositories for different teams (all within the base /svn directory) I noticed that my Apache configuration file was starting to look a little repetitive:

# Subversion - team A
<Location "/a">
DAV svn
SVNPath /svn/team-a
SVNIndexXSLT "/svnindex.xsl"
</Location>

# Subversion - team B
<Location "/b">
DAV svn
SVNPath /svn/team-b
SVNIndexXSLT "/svnindex.xsl"
</Location>
I plan on creating at least two more repositories for other teams and so this was repetition was starting to bother me. A colleague pointed out that SVNParentPath (scroll about 1/4 down) should be the solution.
I rewrote my conf file to be the following:
# Subversion
<Location "/svn">
DAV svn
SVNParentPath /svn
SVNIndexXSLT "/svnindex.xsl"
</Location>

Now any repositories that are created within the parent /svn directory will be available via http://some-url/svn/<repository name>, so my existing repository become:

http://some-url/svn/team-a
http://some-url/svn/team-b

Technorati Tags: , , ,

Decompiling Java .class files using JAD

I gave myself quite a fright today when after having a problem moving some CVS-backed Java source files around, I found that the code that I had written yesterday (and failed to check in) was now nowhere to be found.

Tracked it down to just one missing source file, and luckily I had a compiled class file of the old code. Now all I needed was a tool to resurrect the source file from the ashes...

After 5 minutes of searching around on Google I found what I was looking for, a Java decompiler called JAD. I downloaded the statically linked Intel Linux version, extracted the zip and placed my class file in the extracted directory.

Running JAD was as easy as ./jad IveMessedUp.class which produced the original in double quick time.

JAD was a life-saver (well time-saver at least) and so I wanted to spread the word about this lovely tool.

Technorati Tags: , , , ,

Reduce Firefox's memory usage

This month's CustomPC has a great tip for reducing the amount of memory that Firefox consumes when it's running in the background.

If you've ever watched your process list when firefox is in use you won't be surprised to hear that it can consume vast amounts of memory - multiple open tabs or windows is the major culprit.

To force Firefox to trim it's footprint when minimised do the following:

  • Type "about:config" in the URL address bar
  • Right-click in the window and choose "New" and then "Boolean"
  • Enter "config.trim_on_minimize" as the preference name
  • Select "True" as the default value
  • Restart Firefox
That's it! Now watch the amount of memory it uses rapidly drop when Firefox is minimised...

Technorati Tags: , , ,