<?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>Forged Defiance &#187; Software</title>
	<atom:link href="http://xanderx.com/category/computers/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://xanderx.com</link>
	<description>Tempered to the Web</description>
	<lastBuildDate>Fri, 06 Jan 2012 21:39:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<atom:link rel="next" href="http://xanderx.com/category/computers/software/feed/?page=2" />

		<item>
		<title>Searchlight 1.1 released</title>
		<link>http://xanderx.com/2011/08/26/searchlight-1-1-released/</link>
		<comments>http://xanderx.com/2011/08/26/searchlight-1-1-released/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 15:23:25 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Searchlight]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=459</guid>
		<description><![CDATA[<p>Searchlight, my application for lighting up your world (or at least a few metres in front of you) using your Android device&#8217;s LED has been updated to 1.1.</p>
<p>This update brings better behaviour on HTC Sense devices, where the screen is kept on (as this is necessary to keep the device&#8217;s light switched on).  In addition, when the screen is &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>Searchlight, my application for lighting up your world (or at least a few metres in front of you) using your Android device&#8217;s LED has been updated to 1.1.</p>
<p>This update brings better behaviour on HTC Sense devices, where the screen is kept on (as this is necessary to keep the device&#8217;s light switched on).  In addition, when the screen is switched off (manually) and switched on again, it can switch on the light again; previously it didn&#8217;t switch the light back on, yet still ran the service.  Oops.</p>
<p>Get the <a title="Searchlight on web Android Market" href="https://market.android.com/details?id=com.xanderx.android.searchlight">update through the Android Market</a>, or <a title="Searchlight APK hosted locally" href="http://download.xanderx.com/software/android/searchlight/Searchlight_1.1.apk">download the APK right here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2011/08/26/searchlight-1-1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Searchlight: An Android LED torch powered by the Search button</title>
		<link>http://xanderx.com/2011/07/04/searchlight-an-android-led-torch-powered-by-the-search-button/</link>
		<comments>http://xanderx.com/2011/07/04/searchlight-an-android-led-torch-powered-by-the-search-button/#comments</comments>
		<pubDate>Mon, 04 Jul 2011 22:10:24 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Searchlight]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=454</guid>
		<description><![CDATA[Light up your device's LED no matter which app you're in by holding Search.]]></description>
			<content:encoded><![CDATA[<p>In case there aren&#8217;t enough of them out there, I&#8217;ve decided to chip in my own effort on the Android LED torch scene.</p>
<p>In a sort of sequel to my first Android app <a title="View the latest news about Torchure" href="http://xanderx.com/category/software/torchure">Torchure</a>, I have just <a title="Searchlight on Android Market" href="https://market.android.com/details?id=com.xanderx.android.searchlight">released Searchlight on to the Android Market</a>.</p>
<p>The unique thing about this flashlight is that it&#8217;s activated by long-pressing the Search button.  Each time you do this, the LED will toggle on or off.  This means that (nearly) regardless of what app you&#8217;re in, you can toggle the LED.</p>
<p>You can even switch off the screen to save your battery for the LED.  Just note that on most devices the Search button will be disabled while the screen is off, so you&#8217;ll probably have to switch on the screen, unlock it, <em>then</em> hold the Search button.</p>
<p>When you long-press the Search button for the first time, you&#8217;ll probably get a selection of different apps for you to choose from.  Just select Searchlight off the list to toggle the LED.  Check the &#8220;Use by default for this action&#8221; checkbox to make sure that dialog doesn&#8217;t appear in future.</p>
<p>If you want that Search selection to appear again, go to Settings &gt; Applications &gt; Manage applications &gt; Searchlight &gt; &#8220;Clear defaults&#8221; button.  Then hold Search again and make a new selection.  It will also reappear when the list of actions changes, for example you install or uninstall an app that has global search functionality.</p>
<p>There are a couple of caveats.</p>
<ul>
<li>It&#8217;ll only work on devices that implement the standard camera flash interface introduced by Froyo.  If it doesn&#8217;t work on yours, <a title="Contact" href="http://xanderx.com/contact/">contact me</a> and I&#8217;ll see if I can add support for your device or system software.</li>
<li>Don&#8217;t run Searchlight at the same time as another app using the camera, such as Camera, Barcode Scanner or Shopper.  Things will go badly, trust me.</li>
</ul>
<p>It&#8217;s <a title="Searchlight on Android Market" href="https://market.android.com/details?id=com.xanderx.android.searchlight">available on the Android Market</a> for any Android device with a camera and flash running 2.2 (Froyo) and above.  This first version is only a smidge over 11KB and requires no outrageous permissions (just camera for obvious reasons, and wake lock to keep the LED on when the screen is off).</p>
<p>Alternatively, if you prefer not to use the Market, you can <a title="Download Searchlight" href="http://download.xanderx.com/software/android/searchlight/Searchlight_1.0.apk">download it here</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2011/07/04/searchlight-an-android-led-torch-powered-by-the-search-button/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Torchure 1.1.1 Released</title>
		<link>http://xanderx.com/2010/07/21/torchure-1-1-1-released/</link>
		<comments>http://xanderx.com/2010/07/21/torchure-1-1-1-released/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 18:08:39 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Torchure]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=422</guid>
		<description><![CDATA[<p>I&#8217;ve uploaded a minor bugfix release for Torchure to the Android Market, which fixes the buggy systems preference not taking effect.</p>
<p>Don&#8217;t remind me of the irony&#8230;&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve uploaded a minor bugfix release for Torchure to the Android Market, which fixes the buggy systems preference not taking effect.</p>
<p>Don&#8217;t remind me of the irony&#8230;</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/07/21/torchure-1-1-1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Torchure 1.1 Released</title>
		<link>http://xanderx.com/2010/07/18/torchure-1-1-released/</link>
		<comments>http://xanderx.com/2010/07/18/torchure-1-1-released/#comments</comments>
		<pubDate>Sun, 18 Jul 2010 14:43:16 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Torchure]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=419</guid>
		<description><![CDATA[<p>My first Android Market update!  Hope this goes well.</p>
<p>This update includes:</p>
<ul>
<li>A new colour! You can change the screen to red, to help preserve night vision. This makes the torch less effective, mind.
<ul>
<li>To switch colour, either swipe sideways on the screen or use the new menu option!</li>
</ul>
</li>
<li>New preferences have been added to let you choose what colour </li>&#8230;</ul>]]></description>
			<content:encoded><![CDATA[<p>My first Android Market update!  Hope this goes well.</p>
<p>This update includes:</p>
<ul>
<li>A new colour! You can change the screen to red, to help preserve night vision. This makes the torch less effective, mind.
<ul>
<li>To switch colour, either swipe sideways on the screen or use the new menu option!</li>
</ul>
</li>
<li>New preferences have been added to let you choose what colour you want on starting Torchure: white, red, or whatever you last used.</li>
<li>The Lock Brightness preference has been fixed, and now actually works.  (Locking via pressing the trackball or the menu option worked fine)</li>
<li>Added a new Hints &amp; Tips screen, to highlight the little things I can&#8217;t fit anywhere else!</li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/07/18/torchure-1-1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Torchure for Android</title>
		<link>http://xanderx.com/2010/07/14/torchure-for-android/</link>
		<comments>http://xanderx.com/2010/07/14/torchure-for-android/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 11:06:08 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Torchure]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=410</guid>
		<description><![CDATA[<p>Ever found yourself in need of a torch, but only had your phone handy?  Look no further!</p>
<p>Torchure (for Android) is a pretty simple application.  It turns the screen white and, as default, whacks up the backlight to maximum.  I did say simple, didn&#8217;t I?</p>
<p>However, it also lets you change that backlight brightness (useful if, say, you&#8217;ve been to &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>Ever found yourself in need of a torch, but only had your phone handy?  Look no further!</p>
<p>Torchure (for Android) is a pretty simple application.  It turns the screen white and, as default, whacks up the backlight to maximum.  I did say simple, didn&#8217;t I?</p>
<p>However, it also lets you change that backlight brightness (useful if, say, you&#8217;ve been to a particularly wild party and you need to step over some people without waking/blinding them) and lock it so you don&#8217;t go accidentally changing it.  Torchure is designed to work for you, not make you work for it!</p>
<p>It marks my first release on to the Android Market, and it requires no permissions whatsoever &#8212; it is a torch, after all.</p>
<p>Even though <a href="http://developer.android.com/guide/publishing/publishing.html">Google is telling me</a> this link will not work, <a href="market://search?q=pname:com.xanderx.android.torch">go check out Torchure on the market now</a>!</p>
<p>And if you&#8217;re not using an Android handset, <a href="http://www.androidzoom.com/android_applications/tools/torchure_iren.html">AndroidZoom has you covered</a> until Google release their updated Market.</p>
<p>NB: The link <em>does</em> work (on Android 2.2). Guess they forgot to update the documentation.</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/07/14/torchure-for-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Personal Ninite Installer</title>
		<link>http://xanderx.com/2010/05/04/my-personal-ninite-installer/</link>
		<comments>http://xanderx.com/2010/05/04/my-personal-ninite-installer/#comments</comments>
		<pubDate>Tue, 04 May 2010 14:15:45 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Download]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=337</guid>
		<description><![CDATA[<p>This is basically for my own future reference, but the last few Windows installs I&#8217;ve done <a href="http://ninite.com/">I&#8217;ve used Ninite</a> to install most of my favourite software &#8212; easily and quickly!</p>
<p>If you&#8217;ve yet to discover it, <a href="http://ninite.com/">check it out</a>!  Or if you&#8217;d rather just install software other people recommend wihout thinking, <a href="http://ninite.com/installer/56e8bdf7ef1cc6e53255ea9923a58ee034394d4d">you can install my particular favourite software loadout</a>.&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>This is basically for my own future reference, but the last few Windows installs I&#8217;ve done <a href="http://ninite.com/">I&#8217;ve used Ninite</a> to install most of my favourite software &#8212; easily and quickly!</p>
<p>If you&#8217;ve yet to discover it, <a href="http://ninite.com/">check it out</a>!  Or if you&#8217;d rather just install software other people recommend wihout thinking, <a href="http://ninite.com/installer/56e8bdf7ef1cc6e53255ea9923a58ee034394d4d">you can install my particular favourite software loadout</a>.</p>
<p><strong>Update 15:42 UTC+0100:</strong> Just a couple of things that I should mention about the Ninite installer:</p>
<ul>
<li>All programs install with a desktop shortcut, which I don&#8217;t use.
<ul>
<li>They&#8217;re very easy to delete, mind.</li>
</ul>
</li>
<li>Skype is set to start on Windows start up.
<ul>
<li>This is easy to change on Skype&#8217;s log in screen, or using Autoruns below.</li>
</ul>
</li>
<li>Steam is also set to start on Windows start up.
<ul>
<li>Change this by logging in and disabling it in the Interface tab of the Steam &gt; Settings window, or using Autoruns below.</li>
</ul>
</li>
<li>Java constantly runs its update scheduler (jusched.exe).
<ul>
<li>Use Autoruns for this one.</li>
</ul>
</li>
</ul>
<p>The latter three can be easily fixed by <a href="http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx">downloading Autoruns</a> and deleting their start up entries from the list.  Just don&#8217;t go too crazy in Autoruns, as you could cause Windows to stop booting etc. etc.</p>
<p><strong>Update 2010-07-30:</strong> <a href="http://ninite.com/installer/12284470e021b4dec53e956fe669f5392d5b1e50">My new personal Ninite installer</a>, to reflect new software being added to Ninite!</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/05/04/my-personal-ninite-installer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing BitButcher — An Open-Source NDS ROM Trimmer</title>
		<link>http://xanderx.com/2010/01/27/introducing-bitbutcher-an-open-source-nds-rom-trimmer/</link>
		<comments>http://xanderx.com/2010/01/27/introducing-bitbutcher-an-open-source-nds-rom-trimmer/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 22:09:19 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=306</guid>
		<description><![CDATA[<p>I&#8217;ve always wanted to make a software headline like that.  Eee!</p>
<p>Welcome to BitButcher, a small program designed to do one thing and one thing well: trim Nintendo DS ROMs.</p>
<p>I got a bit fed up of the ones already out there, most because they were either closed-source or they had bad <acronym title="Graphical User Interface">GUI</acronym> design combined with clashing backgrounds.  Search as &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always wanted to make a software headline like that.  Eee!</p>
<p>Welcome to BitButcher, a small program designed to do one thing and one thing well: trim Nintendo DS ROMs.</p>
<p>I got a bit fed up of the ones already out there, most because they were either closed-source or they had bad <acronym title="Graphical User Interface">GUI</acronym> design combined with clashing backgrounds.  Search as I may, I couldn&#8217;t find anything that fit my demands.</p>
<p>So I did what any self-respecting programmer would do &#8212; code my own!</p>
<p>This program is rather simple, but it&#8217;s designed to be just that.  Oh, and fast.  Very fast.</p>
<p>Trimming the excess fat off of DS ROMs isn&#8217;t exactly a hardest task in the world, but I figured that people would still be interested in what I have made.  As such, I have made the code entirely open-source under GPLv3.</p>
<p>It&#8217;s coded in Java, meaning I get cross-platform support for free!  It is however command-line only, so don&#8217;t expect any amazing <acronym title="Graphical User Interface">GUI</acronym>.</p>
<p>If you want to get hold of the program, or would like to help contribute to a better trimmer, then just head over to GitHub:</p>
<p><a href="http://github.com/XanderXAJ/BitButcher">http://github.com/XanderXAJ/BitButcher</a></p>
<p>Any help improving the program would be welcome and awesome.  In addition, you can also report any issues you have at GitHub, on the Issues tab.</p>
<p>That&#8217;s it for this time — hope you manage to shave off some bytes!</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/01/27/introducing-bitbutcher-an-open-source-nds-rom-trimmer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Take Control of Your Settings —  Configuring Synaptics Touchpads and Making GNOME Respect Them</title>
		<link>http://xanderx.com/2010/01/18/take-control-of-your-settings-%e2%80%94-configuring-synaptics-touchpads-and-making-gnome-respect-them/</link>
		<comments>http://xanderx.com/2010/01/18/take-control-of-your-settings-%e2%80%94-configuring-synaptics-touchpads-and-making-gnome-respect-them/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 15:05:22 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Hints & Tips]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=299</guid>
		<description><![CDATA[<p><strong>Update 2010-05-28:</strong> If you&#8217;re using Fedora 13, then the configuration for synaptics touchpads is done through what is practically the old xorg.conf method. (This is as udev now handles devices instead of HAL.)  <a href="https://fedoraproject.org/wiki/Input_device_configuration">Check out the Fedora Wiki</a> for more information.</p>
<h2>The Problem</h2>
<p>Today I&#8217;ve been trying to configure the touchpad on my Eee PC 901 to my liking.  It&#8217;s &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p><strong>Update 2010-05-28:</strong> If you&#8217;re using Fedora 13, then the configuration for synaptics touchpads is done through what is practically the old xorg.conf method. (This is as udev now handles devices instead of HAL.)  <a href="https://fedoraproject.org/wiki/Input_device_configuration">Check out the Fedora Wiki</a> for more information.</p>
<h2>The Problem</h2>
<p>Today I&#8217;ve been trying to configure the touchpad on my Eee PC 901 to my liking.  It&#8217;s a Synaptics touchpad, and supports tracking multiple fingers, and I wanted to take more advantage of that.</p>
<p>GNOME does have support for configuring multiple finger gestures out of the box, with <em><strong>gnome-mouse-properties</strong></em> (or <strong>System » Preferences » Mouse</strong>) and then selecting the <strong>Touchpad tab</strong>.  This is all good and works fine — if you&#8217;re satisfied with what GNOME gives you.</p>
<p>Unfortunately I wasn&#8217;t.  When you enable clicking on the touchpad, GNOME sets one finger taps to left-click, two to right, and three to middle.  I tend to use middle-click more often than right-click, thanks to browsing the web and liking making new tabs, plus I already have a dedicated right-click button.</p>
<p>So I set off to change it.  After reading material <a href="http://wiki.archlinux.org/index.php/Touchpad_Synaptics">courteousy of Arch Linux&#8217;s wiki</a>, I found (and remembered from attempting the same thing ages ago) that configuration is done through the HAL using fdi policies, which are just specifically formatted <acronym title="eXtensible Markup Language">XML</acronym> files.  (The old xorg.conf way is deprecated and isn&#8217;t as flexible, not that it matters for configuring the trackpad.)</p>
<p>It sounds scary and involves more typing, but in the end it&#8217;s just as simple a process as it used to be, even if it involves jumping through an extra hoop or two.</p>
<h2>Configuration</h2>
<p>First you have to create a file with the fdi extension in <strong>/etc/hal/fdi/policy/</strong>.  I&#8217;ve named my file 99-synaptics.fdi, following example from <strong>/usr/share/hal/fdi/policy/10osvendor/</strong>, but you can name yours whatever you like.</p>
<pre>sudo gedit /etc/hal/fdi/policy/99-synaptics.fdi
</pre>
<p><strong>Note:</strong> You need root permissions to be able to create and edit this file.  If you run Ubuntu (or are in the <em>/etc/sudoers</em> file), this can be accomplished using the <em>sudo</em> command as shown above. You can use whatever editor you like, too. <em>vi</em>, <em>emacs</em>, <em>nano</em>, <em>kate</em>&#8230;</p>
<p>Once the file is created, it&#8217;s time to get messy!  The fdi file contains a match rule, which tells HAL which device you want to configure, and then a series of merge rules which apply your desired configuration into the HAL.  The easiest way to show this is by example, so here&#8217;s my prospective configuration:</p>
<p><code><br />
&lt;?xml version="1.0" encoding="utf-8"?&gt;<br />
&lt;deviceinfo version="0.2"&gt;<br />
&lt;device&gt;<br />
&lt;match key="info.product" contains="Elantech Touchpad"&gt;<br />
&lt;merge type="string" key="input.x11_driver"&gt;synaptics&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.VertTwoFingerScroll"&gt;true&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.HorizTwoFingerScroll"&gt;true&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.TapButton1"&gt;1&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.TapButton2"&gt;2&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.TapButton3"&gt;3&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.ClickFinger1"&gt;1&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.ClickFinger2"&gt;3&lt;/merge&gt;<br />
&lt;merge type="string" key="input.x11_options.ClickFinger3"&gt;2&lt;/merge&gt;<br />
&lt;/match&gt;<br />
&lt;/device&gt;<br />
&lt;/deviceinfo&gt;<br />
</code><br />
Starting from the top, here&#8217;s a quick description of each part:</p>
<ul>
<li>The <strong>&lt;?xml</strong> part is the <acronym title="eXtensible Markup Language">XML</acronym> declaration required in any valid <acronym title="eXtensible Markup Language">XML</acronym> file.  Nothing interesting here.</li>
<li>The <strong>&lt;deviceinfo&gt;</strong> and <strong>&lt;device</strong>&gt; are just boilerplate code that tell the HAL to expect rules relating to devices. Again, nothing interesting here.</li>
<li>Now things start getting good!  The <strong>&lt;match&gt;</strong> line describes how to find the device you want to configure:
<ul>
<li>Simply put, the HAL searches for the <strong>contains</strong> string inside the <strong>key</strong> field.  Whatever matches that search it&#8217;ll apply the merge rules to.</li>
<li>There are other ways to match aside from <strong>contains</strong>, but this is all you need to know to get things working.</li>
</ul>
</li>
<li>The <strong>&lt;merge&gt;</strong> lines are the meat of the file, describing each and every configuration change you want to make.</li>
</ul>
<p>You&#8217;re probably thinking this is all good and well, but how did I come up with this stuff in the first place?  Well, the answer lies in the HAL itself.</p>
<p>The <em><strong>lshal</strong></em> command lists all the devices the HAL can detect (that&#8217;s &#8220;ls hal&#8221;, get it?).  You might want to pipe the contents to less, to be able to scroll and search through the large amount of text that&#8217;s returned:</p>
<pre>lshal | less
</pre>
<p>In <em>less</em>, <strong>type /synaptics</strong> to search for the string &#8220;synaptics&#8221;.  <em>less</em> should automatically scroll to the point we&#8217;re interested in; your touchpad.  If it cannot be found, you either don&#8217;t have a Synaptics touchpad or the synaptics driver isn&#8217;t being loaded.  Try <strong>searching for Touchpad </strong>or similar words, but anything more than that is beyond the scope of this article.</p>
<p>Once you have found the device on your list, you&#8217;ll be able to see a list of keys and their values.  You want to pick one of these fields that will not change between boots to place as the match rule inside your fdi file.  I chose <strong>info.product</strong>, but you can choose something else like <strong>input.product</strong> if it strikes your fancy.  Either way, fill in the &lt;<strong>match&gt;</strong> line with the key that you chose and the string that&#8217;ll match it.  Ideally this search will <em>only match your touchpad and nothing else.</em></p>
<p>Next is the fun part — configuration. To do this simply open up the man page for synaptics:</p>
<pre>man synaptics
</pre>
<p>This&#8217;ll give a detailed list of everything that can be changed within the synaptics driver.  For each value that you want to change, find its name on the manpage, and add a new merge rule with the appropriate key.  Note that every key in the fdi begins with &#8220;<strong>input.x11_options.</strong>&#8221; followed by the synaptics key you want to change.  (The exception to this in my file is the first merge rule, which just makes sure that the synaptics driver has been loaded for my touchpad.)</p>
<p>If you want to test an option before making it permanent, use the <strong><em>synclient key=value</em></strong> command, filling in <strong>key</strong> and <strong>value</strong> with the option you want to change.</p>
<p>Once you&#8217;ve added all the merge rules you like, close all the tags and save the file.  Now just restart the HAL (or your computer) and your settings will be applied.  Almost.</p>
<h2>GNOME Respect</h2>
<p>Now that you have your configuration all set up, you need to stop GNOME from changing your carefully crafted settings to ones of its choosing.</p>
<p>To do this, simply run the following command:</p>
<pre>gconftool-2 --type bool --set /apps/gnome_settings_daemon/plugins/mouse/active false
</pre>
<p>If you get cold feet and want to enable GNOME&#8217;s control over mouse and trackpad settings, run this command:</p>
<pre>gconftool-2 --type bool --set /apps/gnome_settings_daemon/plugins/mouse/active true
</pre>
<p>That&#8217;s really it.  <a href="http://bbs.archlinux.org/viewtopic.php?pid=642442#p642442">Thanks to jan for finding this value</a>.</p>
<p>I&#8217;ve written this to be as generalised as possible, so it should work for many different distros so long as they are using the latest HAL/Xorg/kernel.  I&#8217;m running Fedora 11 and have added my name to the /etc/sudoers file, allowing me to run sudo.</p>
<p>If you have any questions or just want to say thanks, feel free to leave a comment or <a href="http://xanderx.com/contact">contact me</a>!</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 286px; width: 1px; height: 1px;">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br />
&lt;deviceinfo version=&#8221;0.2&#8243;&gt;<br />
&lt;device&gt;<br />
&lt;match key=&#8221;info.product&#8221; contains=&#8221;Elantech Touchpad&#8221;&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_driver&#8221;&gt;synaptics&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.VertTwoFingerScroll&#8221;&gt;true&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.HorizTwoFingerScroll&#8221;&gt;true&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.TapButton1&#8243;&gt;1&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.TapButton2&#8243;&gt;2&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.TapButton3&#8243;&gt;3&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.ClickFinger1&#8243;&gt;1&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.ClickFinger2&#8243;&gt;3&lt;/merge&gt;<br />
&lt;merge type=&#8221;string&#8221; key=&#8221;input.x11_options.ClickFinger3&#8243;&gt;2&lt;/merge&gt;<br />
&lt;/match&gt;<br />
&lt;/device&gt;<br />
&lt;/deviceinfo&gt;</div>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2010/01/18/take-control-of-your-settings-%e2%80%94-configuring-synaptics-touchpads-and-making-gnome-respect-them/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stop Exact Audio Copy Crashing on Windows 7</title>
		<link>http://xanderx.com/2009/12/18/stop-exact-audio-copy-crashing-on-windows-7/</link>
		<comments>http://xanderx.com/2009/12/18/stop-exact-audio-copy-crashing-on-windows-7/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 17:29:52 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Hints & Tips]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=290</guid>
		<description><![CDATA[<p>When I tried to rip a disc using Exact Audio Copy on Windows 7 x64, I found it kept crashing as soon as the rip tried to start.  Bummer.</p>
<p>Remembering the previous times I&#8217;ve used <acronym title="Exact Audio Copy">EAC</acronym>, when you click a button to start a rip, it asks you where you want to save the ripped files.</p>
<p>Turns out if &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>When I tried to rip a disc using Exact Audio Copy on Windows 7 x64, I found it kept crashing as soon as the rip tried to start.  Bummer.</p>
<p>Remembering the previous times I&#8217;ve used <acronym title="Exact Audio Copy">EAC</acronym>, when you click a button to start a rip, it asks you where you want to save the ripped files.</p>
<p>Turns out if you set <acronym title="Exact Audio Copy">EAC</acronym> to save into a predetermined location instead of asking, <acronym title="Exact Audio Copy">EAC</acronym> manages to rip perfectly fine!</p>
<p>So, here&#8217;s a step-by-step guide to stop it crashing:</p>
<ol>
<li>Open <strong>Exact Audio Copy</strong>.</li>
<li>Go to <strong>File &gt; <acronym title="Exact Audio Copy">EAC</acronym> Options</strong>.</li>
<li>Click the <strong>Directories tab</strong>.</li>
<li>Instead of &#8220;Ask every time&#8221;, choose <strong>Use this Directory</strong>, and pick a directory of your choosing.
<ul>
<li>I personally use:
<pre>C:\Users\&lt;Username&gt;\Music\Extracted</pre>
</li>
</ul>
</li>
<li>Click <strong>OK</strong>.</li>
</ol>
<p>That&#8217;s it!  Good luck.</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2009/12/18/stop-exact-audio-copy-crashing-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Adding your most recent Twitter tweet to your Pidgin status</title>
		<link>http://xanderx.com/2009/11/10/adding-your-most-recent-twitter-tweet-to-your-pidgin-status/</link>
		<comments>http://xanderx.com/2009/11/10/adding-your-most-recent-twitter-tweet-to-your-pidgin-status/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 20:17:30 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Hints & Tips]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=225</guid>
		<description><![CDATA[<p style="text-align: justify;">This guide is intended to be a more up-to-date mirror of the guide you can find at <a href="http://www.techjawa.com/2008/08/15/twitterpidgin-aimim-status-sync-guide/">Tech Jawa</a>.  All credit to them for the original instructions!</p>
<p>Basically nothing changes, but I just like to be comprehensive.</p>
<ol>
<li><a href="http://code.google.com/p/pidgin-twitterstatus/">Download the TwitterStatus plugin</a>.  It&#8217;ll be a file ending in <em>.pl</em>.</li>
<li>Move this file to your Pidgin plugins folder.  If </li>&#8230;</ol>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">This guide is intended to be a more up-to-date mirror of the guide you can find at <a href="http://www.techjawa.com/2008/08/15/twitterpidgin-aimim-status-sync-guide/">Tech Jawa</a>.  All credit to them for the original instructions!</p>
<p>Basically nothing changes, but I just like to be comprehensive.</p>
<ol>
<li><a href="http://code.google.com/p/pidgin-twitterstatus/">Download the TwitterStatus plugin</a>.  It&#8217;ll be a file ending in <em>.pl</em>.</li>
<li>Move this file to your Pidgin plugins folder.  If any folders don&#8217;t exist, create them:
<ul>
<li><strong>Linux:</strong> ~/.purple/plugins/</li>
<li><strong>Windows Vista/7:</strong> C:\Users\&lt;Username&gt;\AppData\Roaming\.purple\plugins</li>
</ul>
</li>
<li>Install Perl:
<ul>
<li><strong>Linux:</strong> It&#8217;s probably already installed.</li>
<li><strong>Windows:</strong> Use the <a href="http://strawberryperl.com/">most recent Strawberry <acronym title="Practical Extraction and Report Language">Perl</acronym> installation:</a></li>
</ul>
</li>
<li>Install  the XML::XPath module into perl:
<ol>
<li>Open a command line.</li>
<li>Run <code>perl -MCPAN -e shell</code>.</li>
<li>Type <code>install XML::XPath</code> and then hit Return.  Wait for the install to finish.</li>
<li>Type <code>quit</code> and hit Return, then close your command line</li>
</ol>
</li>
<li>Start (or restart) Pidgin.</li>
<li>From the contact list, go to <strong>Help &gt; About</strong>.  At the very bottom of the textbox that appears it should say <strong>&#8220;Perl: Enabled&#8221;</strong>.  If it does not, repeat steps 3 and 4.</li>
<li>From the contact list, go to <strong>Tools &gt; Plug-ins</strong>.  Find Twitter Status on the list, <strong>check the checkbox</strong> next to it, and then click <strong>Configure Plug-in.</strong></li>
<li>In the configuration window that appears, <strong>type in your username in the top textbox</strong> (labelled Username, surprise surprise).  Configure anything else you want to your liking.</li>
</ol>
<p>That&#8217;s it!  You do not need to set this up again, it is a one-off set up for the computer.  Of course, you will need to go through this procedure again if you have multiple computers you use Pidgin on, or if you format and reinstall your <acronym title="Operating System">OS</acronym>.</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2009/11/10/adding-your-most-recent-twitter-tweet-to-your-pidgin-status/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ogg Vorbis Encoder for Windows</title>
		<link>http://xanderx.com/2009/11/08/ogg-vorbis-encoder-for-windows/</link>
		<comments>http://xanderx.com/2009/11/08/ogg-vorbis-encoder-for-windows/#comments</comments>
		<pubDate>Sun, 08 Nov 2009 16:18:44 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=389</guid>
		<description><![CDATA[<p>I not so long ago made a post about <a href="http://xanderx.com/2009/09/21/use-ogg-vorbis-for-lag-free-ringtones-on-android/">using  Ogg Vorbis for Ringtones on Android</a>, as it considerably reduces the  lag between getting a phone call and the phone actually playing the  ringtone.  The same goes for music on the device&#8211;it just starts playing  quicker.</p>
<p>Anyway, just now I realised that I didn&#8217;t link to any encoders for  &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>I not so long ago made a post about <a href="http://xanderx.com/2009/09/21/use-ogg-vorbis-for-lag-free-ringtones-on-android/">using  Ogg Vorbis for Ringtones on Android</a>, as it considerably reduces the  lag between getting a phone call and the phone actually playing the  ringtone.  The same goes for music on the device&#8211;it just starts playing  quicker.</p>
<p>Anyway, just now I realised that I didn&#8217;t link to any encoders for  it.  So if anyone wondered what I used to accomplish the task, they&#8217;d be stuck!</p>
<p>So here&#8217;s a quick update to fill in in the gaps:</p>
<p>If you&#8217;re wanting to just convert some files you already have into  Ogg Vorbis, I&#8217;d recommend <a href="http://www.rarewares.org/ogg-oggdropxpd.php">oggdropXPd</a>.   Open the program, right-click on the &#8220;dropbox&#8221; that appears to configure  it, then when it&#8217;s all done, drag and drop the files you want to  convert onto the dropbox, and wait!  It works fine under Windows Vista  (32-bit) and Windows 7 (64-bit).</p>
<p>If you&#8217;re wanting to both edit a music track into a short ringtone  and convert to Ogg Vorbis, <a href="http://audacity.sourceforge.net/">Audacity</a> did the job for me.  It&#8217;s open-source and supports a number of file types (including  MP3 if you download a separate plug-in), so hopefully it&#8217;ll work for you  too.  Again, it works fine in Windows Vista (32-bit) and Windows 7  (64-bit).</p>
<p>The settings I used for the Ogg Vorbis files on my G1 where 128kbps CBR.  You don&#8217;t need much quality because the phone&#8217;s speaker isn&#8217;t  exactly an orchestra, and I used Constant Bitrate under the assumption  it would take less CPU to decode.  If you know otherwise, please let me  know!</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2009/11/08/ogg-vorbis-encoder-for-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I&#8217;ll Modify You in to Next Week.</title>
		<link>http://xanderx.com/2009/07/24/ill-modify-you-in-to-next-week/</link>
		<comments>http://xanderx.com/2009/07/24/ill-modify-you-in-to-next-week/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 10:20:09 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=166</guid>
		<description><![CDATA[<p>A couple of days ago I came across this interesting quirk, and I had to do a double-take before I realised what had happened.</p>
<p>Basically, I recently <a href="http://www.promise.com/product/product_detail.asp?product_id=211">got a NAS</a> and decided that I wanted my router to save its bandwidth usage statistics on it.  That way whenever I perform an upgrade to the firmware on the router I won&#8217;t &#8230;</p>]]></description>
			<content:encoded><![CDATA[<p>A couple of days ago I came across this interesting quirk, and I had to do a double-take before I realised what had happened.</p>
<p>Basically, I recently <a href="http://www.promise.com/product/product_detail.asp?product_id=211">got a NAS</a> and decided that I wanted my router to save its bandwidth usage statistics on it.  That way whenever I perform an upgrade to the firmware on the router I won&#8217;t erase all the stats.  This part is easy, as the firmware has the functionality for this.  (The firmware I keep mentioning is the <a href="http://www.polarcloud.com/tomato">Tomato firmware</a>.  I highly recommend it if you happen to have a compatible Linux router!)</p>
<p>Now, after I set it all up, I went on to the network shares to see if the statistics were being saved properly.  What I saw I didn&#8217;t exactly expect:</p>
<div id="attachment_177" class="wp-caption aligncenter" style="width: 650px"><a href="http://xanderx.com/wp-content/uploads/2009/07/DOpus-Last-Modified.png"><img class="size-large wp-image-177  " title="DOpus Last Modified" src="http://xanderx.com/wp-content/uploads/2009/07/DOpus-Last-Modified-640x487.png" alt="A screenshot of my local network share...  And some interesting modified times" width="640" height="487" /></a><p class="wp-caption-text">A screenshot from Directory Opus of my local network share...  And some interesting modified times</p></div>
<p>Now, nothing may look wrong at first glance.  But take another look at the screenshot, particularly the column titled &#8220;Modified&#8221;.</p>
<p>Got it yet?  You have?  That&#8217;s great!  You haven&#8217;t?  You&#8217;re probably just not as finnicky as I am, don&#8217;t worry.</p>
<p>Anyway, enough suspense: the thing that caught me out was that the modified time for the statistics file was &#8220;<em>tomorrow</em>&#8220;.</p>
<p>&#8220;So what?&#8221; I hear you cry!  &#8220;You probably just had the NAS set to the wrong timezone.&#8221;</p>
<p>Alright, I&#8217;ll give you that &#8212; I had set it to the wrong timezone.  However, that isn&#8217;t the strangest thing!</p>
<p>The strange part is the fact that Windows has provisions for files that have creation/modify/access times in the future.</p>
<p>When you have a file that you have modifed today, it says &#8220;Today&#8221;.  Nice.  If you then leave the file for 24 hours, Windows will say the file was modified &#8220;Yesterday&#8221;.  Again, a nice touch.</p>
<p>But now Windows, in its all-powerful, all-knowing ways, can tell me when a file <em>will</em> be modified, before it&#8217;s even happened!</p>
<p>At least, that&#8217;s the impression it gives me when I think of a developer including &#8220;tomorrow&#8221; on the list of English relative dates.</p>
<p>And before you complain that I wasn&#8217;t using Windows Explorer but rather a replacement called <a href="http://www.gpsoft.com.au/">Directory Opus</a>, here&#8217;s a screen from Explorer demonstrating the same behaviour, but slightly more hidden:</p>
<div id="attachment_179" class="wp-caption aligncenter" style="width: 650px"><a href="http://xanderx.com/wp-content/uploads/2009/07/Explorer-Last-Modified.png"><img class="size-large wp-image-179" title="Explorer Last Modified" src="http://xanderx.com/wp-content/uploads/2009/07/Explorer-Last-Modified-640x487.png" alt="A screenshot from Windows Explorer of my local network share...  With the same interesting modified times" width="640" height="487" /></a><p class="wp-caption-text">A screenshot from Windows Explorer of my local network share...  With the same interesting modified times</p></div>
<p>So there you have it: Some crazy behaviour and me thoroughly confused.  With DOpus and Explorer both &#8220;predicting&#8221; the future for me, I&#8217;m beginning to wonder just how much control I have over these computers&#8230;</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2009/07/24/ill-modify-you-in-to-next-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reset iTunes Dimensions to Fit Resolution</title>
		<link>http://xanderx.com/2009/06/25/reset-itunes-dimensions-to-fit-resolution/</link>
		<comments>http://xanderx.com/2009/06/25/reset-itunes-dimensions-to-fit-resolution/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 18:25:22 +0000</pubDate>
		<dc:creator>XanderX</dc:creator>
				<category><![CDATA[Hints & Tips]]></category>
		<category><![CDATA[iTunes]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://xanderx.com/?p=124</guid>
		<description><![CDATA[<p>Here&#8217;s a handy little feature that I find useful.  If you ever play around with the size or location of the iTunes window and want to make it fit the screen better, simply follow the instructions:</p>
<dl>
<dt>If you&#8217;re on Windows:</dt>
<dd>hold Shift and either double-click the title bar or single-click the maximise button  (The title bar is the small bar </dd>&#8230;</dl>]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a handy little feature that I find useful.  If you ever play around with the size or location of the iTunes window and want to make it fit the screen better, simply follow the instructions:</p>
<dl>
<dt>If you&#8217;re on Windows:</dt>
<dd>hold Shift and either double-click the title bar or single-click the maximise button  (The title bar is the small bar at the top that says &#8220;iTunes&#8221; in the middle.)</dd>
<dt>If you&#8217;re on Mac OS:</dt>
<dd>hold Option and click the Zoom (+) button</dd>
</dl>
<p>This&#8217;ll reset the size and position to its default for your screen resolution.  Assuming you haven&#8217;t changed screen resolution since installing it, it&#8217;ll look just as it did when you first installed it — nearly filling the entire screen, but not quite.  It&#8217;s also a very useful shortcut if you ever change your screen resolution.</p>
<p>Doing the operation a second time will move the iTunes window back to where it was before you started reading this article and messing with it.  Simple!</p>]]></content:encoded>
			<wfw:commentRss>http://xanderx.com/2009/06/25/reset-itunes-dimensions-to-fit-resolution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Served from: xanderx.com @ 2012-02-06 07:34:58 by W3 Total Cache -->
