<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='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'><id>tag:blogger.com,1999:blog-8157833</id><updated>2012-01-27T10:39:59.282Z</updated><title type='text'>Philoxenic: The Hidden Help Files</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8157833.post-116942080591010195</id><published>2007-01-21T23:06:00.001Z</published><updated>2007-01-21T23:10:14.120Z</updated><title type='text'>Netiquette book published</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;Just a quick announcement. My new book – &lt;em&gt;Netiquette: Internet etiquette in the age of the blog&lt;/em&gt; – has been published. You can see all the details on the Software Reference website (&lt;a href="http://www.swref.com"&gt;http://www.swref.com&lt;/a&gt;). &lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-116942080591010195?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/116942080591010195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=116942080591010195' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116942080591010195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116942080591010195'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2007/01/netiquette-book-published_116942080591010195.html' title='Netiquette book published'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-116515473485450042</id><published>2006-12-03T14:05:00.000Z</published><updated>2006-12-03T19:10:56.293Z</updated><title type='text'>Installing PHP5 and its dependencies on a Godaddy virtual dedicated server</title><content type='html'>I have recently developed the first version of a book price comparison website, &lt;a href="www.booksmarts.co.uk"&gt;booksmarts.co.uk&lt;/a&gt;. It's fairly simple, but it does depend on the simple XML parser built into PHP5.&lt;br /&gt;&lt;br /&gt;I wasn't sure what version of PHP was already running on my server, so I was hoping that I would just be able to drop the PHP files in and they would work straight away. As is often the case, things turned out to be more complicated than they first appeared to be. This blog entry explains what I did to upgrade PHP and its dependencies. It is primarily a record for myself, but might prove to be useful to other people trying to achieve something similar.&lt;br /&gt;&lt;br /&gt;(Note that what follows is the order that the steps actually need to be carried out in, not the 'try it, find unexpected dependency, install that first' route I actually took!)&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;binutils&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;This step might not be necessary after all, but I did do it and it shouldn't hurt.&lt;br /&gt;Get the latest version of &lt;tt&gt;binutils&lt;/tt&gt;, needed to build the C++ compiler.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;su -&lt;br /&gt;mkdir archive &lt;i&gt;(or whatever)&lt;/i&gt;&lt;br /&gt;cd archive&lt;br /&gt;wget ftp://ftp.gnu.org/binutils/binutils-2.17.tar.gz&lt;br /&gt;tar -zxvf binutils-2.17.tar.gz&lt;br /&gt;cd binutils-2.17&lt;br /&gt;./configure&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;gcc/C++&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;wget ftp://mirrors.laffreycomputer.com/pub/gcc.gnu.org/gcc/releases/gcc-4.1.1/gcc-&lt;b&gt;core&lt;/b&gt;-4.1.1.tar.bz2&lt;br /&gt;wget ftp://mirrors.laffreycomputer.com/pub/gcc.gnu.org/gcc/releases/gcc-4.1.1/gcc-&lt;b&gt;g++&lt;/b&gt;-4.1.1.tar.bz2&lt;br /&gt;tar -jxvf gcc-core-4.1.1.tar.bz2&lt;br /&gt;tar -jxvf gcc-g++-4.1.1.tar.bz2&lt;br /&gt;cd gcc-4.1.1&lt;br /&gt;export CFLAGS=-O0 &lt;i&gt;(turn off optimisation to save memory -- try building without this first)&lt;/i&gt;&lt;br /&gt;./configure&lt;br /&gt;make &lt;i&gt;(had to shut down tomcat, which was still running, to free up enough memory for the compilation)&lt;/i&gt;&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;flex&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cd ~/archive&lt;br /&gt;wget http://prdownloads.sourceforge.net/flex/flex-2.5.33.tar.gz?use_mirror=superb-west&lt;br /&gt;tar -zxvf flex-2.5.33.tar.gz&lt;br /&gt;cd flex-2.5.33&lt;br /&gt;./configure&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;apache&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;PHP5 requires apache &gt; 0.0.44, so build latest 2.0.* one [.so extensions aren't compatible with later ones and I don't want to rebuild these [in retrospect, I had to do this anyway, so might have been better off with a more recent apache]].&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;wget http://mirrors.dedipower.com/ftp.apache.org/httpd/httpd-2.0.59.tar.gz&lt;br /&gt;tar -zxvf httpd-2.0.59.tar.gz&lt;br /&gt;cd httpd-2.0.59&lt;br /&gt;./configure --enable-rule=SHARED_CORE&lt;br /&gt;            --enable-so&lt;br /&gt;            --enable-suexec&lt;br /&gt;            --with-suexec-docroot=/home/httpd/vhosts&lt;br /&gt;            --with-suexec-caller=apache&lt;br /&gt;            --enable-rewrite&lt;br /&gt;            --enable-cgi&lt;br /&gt;make&lt;br /&gt;/usr/local/apache2/bin/apachectl stop&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;libxml&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cd ~/archive&lt;br /&gt;wget ftp://ftp.xmlsoft.org/libxml2/libxml2-2.6.27.tar.gz&lt;br /&gt;tar -zxvf libxml2-2.6.27.tar.gz&lt;br /&gt;cd libxml2-2.6.27&lt;br /&gt;./configure&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;ldconfig&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;PHP (finally!)&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cd ~/archive&lt;br /&gt;wget http://uk2.php.net/get/php-5.2.0.tar.gz/from/www.php.net/mirror&lt;br /&gt;tar -zxvf php-5.2.0.tar.gz&lt;br /&gt;cd php-5.2.0&lt;br /&gt;&lt;i&gt;(./configure --help to see options)&lt;/i&gt;&lt;br /&gt;./configure --with apxs2=/usr/local/apache2/bin/apxs&lt;br /&gt;            --enable-force-cgi-redirect&lt;br /&gt;            --enable-discard-path&lt;br /&gt;            --with-mysql&lt;br /&gt;            --with-pear&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;ldconfig &lt;i&gt;(may not be necessary)&lt;/i&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;edit &lt;code&gt;/usr/local/apache2/conf/httpd.conf&lt;/code&gt; to use PHP5 instead of PHP4.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Mail, etc. for PHP (i.e. PEAR)&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cd ~/archive&lt;br /&gt;lynx -source http://go-pear.org/ | php&lt;br /&gt;pear install --alldeps Mail&lt;br /&gt;[Hack &amp;ndash; not the correct way to do this]&lt;br /&gt;mv /usr/local/lib/php /usr/local/lib/php.old&lt;br /&gt;ln -s /usr/share/pear /usr/local/lib/php&lt;br /&gt;[/Hack]&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;mod_perl&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Other sites on the same server use a small amount of perl, so need to update mod_perl.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;cd ~/archive&lt;br /&gt;wget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz&lt;br /&gt;tar -zxvf mod_perl-2.0-current.tar.gz&lt;br /&gt;cd mod_perl-2.0.3&lt;br /&gt;perl Makefile.PL MP_APXS=/usr/local/apache2/bin/apxs&lt;br /&gt;make&lt;br /&gt;make install&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-116515473485450042?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/116515473485450042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=116515473485450042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116515473485450042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116515473485450042'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/12/installing-php5-and-its-dependencies.html' title='Installing PHP5 and its dependencies on a Godaddy virtual dedicated server'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-116341653222545519</id><published>2006-11-13T11:05:00.000Z</published><updated>2006-11-13T11:15:33.600Z</updated><title type='text'>Fixing FreeMind on Suse 10.1</title><content type='html'>I've been a keen user of &lt;a href="http://http://freemind.sourceforge.net/wiki/index.php/Main_Page"&gt;FreeMind&lt;/a&gt;, a tool for creating mind maps, both on Windows and on Linux. For some reason, it was broken on my Suse 10.1 linux desktop.&lt;br /&gt;&lt;br /&gt;When running &lt;code&gt;freemind&lt;/code&gt; at a command prompt, I was getting the following error:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Exception in thread "main" java.lang.Error: can't load com.birosoft.liquid.LiquidLookAndFeel&lt;br /&gt;        at javax.swing.UIManager.initializeDefaultLAF(UIManager.java:1176)&lt;br /&gt;        at javax.swing.UIManager.initialize(UIManager.java:1257)&lt;br /&gt;        at javax.swing.UIManager.maybeInitialize(UIManager.java:1245)&lt;br /&gt;        at javax.swing.UIManager.getUI(UIManager.java:851)&lt;br /&gt;        at javax.swing.JPanel.updateUI(JPanel.java:104)&lt;br /&gt;        at javax.swing.JPanel.&lt;init&gt;(JPanel.java:64)&lt;br /&gt;        at javax.swing.JPanel.&lt;init&gt;(JPanel.java:87)&lt;br /&gt;        at javax.swing.JPanel.&lt;init&gt;(JPanel.java:95)&lt;br /&gt;        at javax.swing.JRootPane.createGlassPane(JRootPane.java:482)&lt;br /&gt;        at javax.swing.JRootPane.&lt;init&gt;(JRootPane.java:313)&lt;br /&gt;        at javax.swing.JFrame.createRootPane(JFrame.java:247)&lt;br /&gt;        at javax.swing.JFrame.frameInit(JFrame.java:228)&lt;br /&gt;        at javax.swing.JFrame.&lt;init&gt;(JFrame.java:195)&lt;br /&gt;        at freemind.main.FreeMind.&lt;init&gt;(FreeMind.java:107)&lt;br /&gt;        at freemind.main.FreeMind.main(FreeMind.java:647)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There is a &lt;code&gt;liquidlnf.jar&lt;/code&gt; in &lt;code&gt;/usr/share/java&lt;/code&gt;, but it wasn't being picked up in the &lt;code&gt;CLASSPATH&lt;/code&gt;. Therefore, as root, I edited &lt;code&gt;/usr/share/freemind/freemind.sh&lt;/code&gt;, adding the highlighted line:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;CLASSPATH="${ADD_JARS}:${CLASSPATH}:${freedir}/lib/freemind.jar:${freedir}/lib/ant/lib/jaxb-api.jar:${freedir}/lib/ant/lib/jaxb-impl.jar:${freedir}/lib/ant/lib/jaxb-libs.jar:${freedir}/lib/ant/lib/namespace.jar:/usr/share/java/relaxngDatatype.jar:/usr/share/java/xsdlib.jar:${freedir}/lib/ant/lib/jax-qname.jar:${freedir}/lib/ant/lib/sax.jar:${freedir}/lib/ant/lib/dom.jar:${freedir}/lib/forms-1.0.5.jar:/usr/share/java/commons-lang-2.1.jar:&lt;b&gt;/usr/share/java/liquidlnf.jar:\&lt;/b&gt;&lt;br /&gt;${freedir}"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;After this, everything seemed to work OK.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-116341653222545519?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/116341653222545519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=116341653222545519' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116341653222545519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/116341653222545519'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/11/fixing-freemind-on-suse-101.html' title='Fixing FreeMind on Suse 10.1'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-115133958131706253</id><published>2006-06-26T17:32:00.000+01:00</published><updated>2006-06-26T17:38:13.566+01:00</updated><title type='text'>MS Office Bug/Feature #13: Autocorrect to dashes</title><content type='html'>Microsoft Word uses autocorrect to change a double hyphen into a dash. There are two types of dash: a short &lt;span style="font-weight:bold;"&gt;en dash&lt;/span&gt; (&amp;ndash;) and the longer &lt;span style="font-weight:bold;"&gt;em dash&lt;/span&gt; (&amp;mdash;).&lt;br /&gt;&lt;br /&gt;Traditionally, unspaced em dashes were used to separate paranthetical remarks&amp;mdash;such as this one&amp;mdash;from the rest of a sentence. Nowadays, it's more common to use spaced en dashes &amp;ndash; like this &amp;ndash; for the same purpose. Because of this, when you are typing, if you key in &lt;tt&gt;--&lt;/tt&gt; then Word will replace these two characters by an em dash if they were not preceded by a space, or by an en dash if they were.&lt;br /&gt;&lt;br /&gt;The problem arises when you want to type number ranges. These should use unspaced en dashes, such as 33&amp;ndash;45. However, if you type &lt;tt&gt;33--45&lt;/tt&gt; then this will be converted to 33&amp;mdash;45, which is not what you want.&lt;br /&gt;&lt;br /&gt;At present there are two alternatives:&lt;ul&gt;&lt;br /&gt;&lt;li&gt;type the following long-winded sequence of keystrokes&lt;br&gt;&lt;br /&gt;    &lt;tt&gt;33 -- 45[left][left][backdel][left][backdel]&lt;br&gt;[right][right][right]&lt;/tt&gt;&lt;br /&gt;&lt;li&gt;use the keyboard shortcut for an en dash (Ctrl+Number_pad_-).&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="www.openoffice.org"&gt;OpenOffice.org&lt;/a&gt; has inherited the same behaviour. It would be useful if the autocorrect could detect the numbers and use en dashes instead.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-115133958131706253?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/115133958131706253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=115133958131706253' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/115133958131706253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/115133958131706253'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/06/ms-office-bugfeature-13-autocorrect-to.html' title='MS Office Bug/Feature #13: Autocorrect to dashes'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-115064779686344626</id><published>2006-06-18T17:19:00.000+01:00</published><updated>2006-06-18T17:23:17.160+01:00</updated><title type='text'>MS Office Bug/Feature #12: Relationships in Access</title><content type='html'>When you create a table without a primary key, Access displays the following message:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Although a primary key isn't required, it's highly recommended. &lt;span style="font-weight:bold;"&gt;A table must have a primary key for you to define a relationship between this table and the other tables in the database.&lt;/span&gt; Do you want to create a primary key now?&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The text I have emboldened is simply incorrect. Primary keys are required if referential integrity is to be turned on, but Access is happy to create an indeterminate relationship between fields in tables without primary keys. Primary keys are necessary if referential integrity is to be turned on, but that's not necessary (or even desirable) for all relationships.&lt;br /&gt;&lt;br /&gt;Of course, primary keys are generally A Good Thing, but that's no excuse for misinformation. I suspect that it was true once upon a time, and Microsoft never got around to changing it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-115064779686344626?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/115064779686344626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=115064779686344626' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/115064779686344626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/115064779686344626'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/06/ms-office-bugfeature-12-relationships.html' title='MS Office Bug/Feature #12: Relationships in Access'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114980794121868069</id><published>2006-06-09T00:05:00.000+01:00</published><updated>2006-06-09T00:05:41.790+01:00</updated><title type='text'>Skweezing the web onto your mobile phone</title><content type='html'>I've recently set up the website &lt;a href="http://www.predictionleague.co.uk/PredictionLeague/"&gt;predictionleague.co.uk&lt;/a&gt; for the forthcoming &lt;em&gt;FIFA World Cup 2006&lt;/em&gt;. People can create accounts and predict the results of the matches, competing against one another to come top of the league!&lt;br /&gt;&lt;br /&gt;The downside is that I have to manually enter the results of each game. It would be nice if I could do this soon after the end of each match, but I won't always be in front of my PC. In fact, I'll probably be in the pub for some of these.&lt;br /&gt;&lt;br /&gt;I can access the Internet through my mobile phone (some ancient Motorola model), but it bombs out on any pages over a certain size (say about 50K). I tried calling Orange for advice, but they didn't really know what the answer was. I thought that perhaps it was an account setting to protect me against high mobile phone bills, but I guess it's just built into the phone (presumably the size of the cache). Incedentaly, Motorola's site gives instructions about how to find out the model number of your phone &amp;ndash; they didn't work on my model, which just goes to show how old it is.&lt;br /&gt;&lt;br /&gt;Anyway, to cut to the chase, I've found the website &lt;a href="http://www.skweezer.net"&gt;skweezer.net&lt;/a&gt; which will, free of charge, chop up any website into manageable chunks. Furthermore, it will strip out the images as well. It seems to work very well.&lt;br /&gt;&lt;br /&gt;☺ A service so good that, if it didn't already exist, I'd have to invent it ☺&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114980794121868069?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114980794121868069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114980794121868069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114980794121868069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114980794121868069'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/06/skweezing-web-onto-your-mobile-phone.html' title='Skweezing the web onto your mobile phone'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114955198712705247</id><published>2006-06-06T00:30:00.000+01:00</published><updated>2006-06-06T00:59:51.450+01:00</updated><title type='text'>Errors on external USB drive</title><content type='html'>On my new Ubuntu Linux machine, I was having difficulty writing to my external FAT32 Buffalo USB hard disk. Although my pen drive was mounting read-write, the larger Buffalo drive was mounted read-only. Since I use this for backups, it wasn't much good.&lt;br /&gt;&lt;br /&gt;Unfortunately, I didn't make a note of the errors at the time to be able to include them here. Part of it was a disk panic, which caused the switch to read-only. After much faffing about with Eventually I figured that there might be an error on the disk (although most of the other people reporting similar things seemed to be having problems connecting their ipods).&lt;br /&gt;&lt;br /&gt;I tried to run fsck.vfat, but that crashed out with a segmentation fault every time I tried it. So instead I connected the disk to my XP laptop and ran a thorough scandisk on it. This seems to have done the trick. I've now used the Simple Backup tool to create a backup, and it went without a hitch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114955198712705247?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114955198712705247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114955198712705247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114955198712705247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114955198712705247'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/06/errors-on-external-usb-drive.html' title='Errors on external USB drive'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114909456648958024</id><published>2006-05-31T17:55:00.000+01:00</published><updated>2006-05-31T17:56:36.680+01:00</updated><title type='text'>Creating an XP SP2 virtual machine in VMWare Player</title><content type='html'>Although I've moved to Ubuntu Linux, it would still be useful to be able to run certain Windows applications. Sometimes Wine doesn't quite cut it, so I decided to install a new OEM XP Home SP2 into a virtual machine. There are various instructions on the web explaining how to do this, but I've had to mix and match. Here is the technique I used, which does include installation of the VMWare tools.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;1. Install qemu.&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;There is an Ubuntu package for this, so just use Synaptic package installer. (Other instructions say to get the Windows version.) [You need at least version 0.7.1. When I did this, the Ubuntu standard was 0.7.0, which doesn't support writing vmdk files, so I added the following (temporarily) to my &lt;code&gt;/etc/apt/sources.list&lt;/code&gt; and then did an &lt;code&gt;apt-get install qemu&lt;/code&gt;).&lt;br /&gt;&lt;br /&gt;&lt;code&gt;deb-src http://ftp.uk.debian.org/debian testing main contrib non-free&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;2. Create virtual disk&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Change to the directory where you want to create your VM and do&lt;br /&gt;&lt;br /&gt;&lt;code&gt;qemu-img create -f vmdk WindowsXPHome.vmdk 4G&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;This creates a disk that can expand up to 4GB (the initial file is &lt;300K). Specify a smaller maximum size if you're short of disk space.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;3. Create the config file&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;In the same directory, create the file &lt;code&gt;WindowsXPHome.vmx&lt;/code&gt;:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;config.version = "8"&lt;br /&gt;virtualHW.version = "3"&lt;br /&gt;ide0:0.present = "TRUE"&lt;br /&gt;ide0:0.filename = "WindowsXPHome.vmdk"&lt;br /&gt;memsize = "768"&lt;br /&gt;MemAllowAutoScaleDown = "FALSE"&lt;br /&gt;ide1:0.present = "TRUE"&lt;br /&gt;ide1:0.fileName = "auto detect"&lt;br /&gt;ide1:0.deviceType = "cdrom-raw"&lt;br /&gt;ide1:0.autodetect = "TRUE"&lt;br /&gt;floppy0.present = "FALSE"&lt;br /&gt;ethernet0.present = "TRUE"&lt;br /&gt;usb.present = "TRUE"&lt;br /&gt;sound.present = "TRUE"&lt;br /&gt;sound.virtualDev = "es1371"&lt;br /&gt;displayName = "Windows XP Home"&lt;br /&gt;guestOS = "winXPHome"&lt;br /&gt;nvram = "WindowsXPHome.nvram"&lt;br /&gt;MemTrimRate = "-1"&lt;br /&gt;&lt;br /&gt;ide0:0.redo = ""&lt;br /&gt;ethernet0.addressType = "generated"&lt;br /&gt;&lt;br /&gt;# Unique ID for the virtual machine will be created&lt;br /&gt;# Most instructions on the web specify uuid.location and&lt;br /&gt;# uuid.bios explicitly, which must be A Bad Thing.&lt;br /&gt;uuid.action = "create"&lt;br /&gt;&lt;br /&gt;ethernet0.generatedAddress = "00:0c:29:7e:06:58"&lt;br /&gt;ethernet0.generatedAddressOffset = "0"&lt;br /&gt;&lt;br /&gt;tools.syncTime = "TRUE"&lt;br /&gt;ide1:0.startConnected = "TRUE"&lt;br /&gt;&lt;br /&gt;checkpoint.vmState = ""&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Set &lt;code&gt;memsize&lt;/code&gt; lower unless you've got lots of RAM (I've got 2GB, so can spare 768MB for the VM). Also remove the bottom line unless you've got a machine with two real or virtual CPUs.&lt;br /&gt;&lt;br /&gt;You might prefer to use &lt;a href="http://www.easyvmx.com"&gt;EasyVMX&lt;/a&gt; to generate this file.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;4. Insert the Windows CD and boot the virtual machine.&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;[At this stage I got an error about the disk being corrupt. I grabbed a replacement from &lt;a href="http://www.blankstare.net/blank.zip"&gt;http://www.blankstare.net/blank.zip&lt;/a&gt; instead. I've kept the original instructions in place because they &lt;em&gt;should&lt;/em&gt; work; presumably it's a bug in &lt;code&gt;qemu-img&lt;/code&gt; and will get fixed in later versions (I used ).&lt;br /&gt;&lt;br /&gt;Go through the normal Windows installation procedure.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;5. Install VMWare tools&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Follow &lt;a href="http://www.brandonhutchinson.com/Installing_VMware_Tools_with_VMware_Player.html"&gt;these instructions&lt;/a&gt; to install the VMWare tools.&lt;br /&gt;&lt;br /&gt;For some reason, although the tool service does start with Windows, the icon in the notification area doesn't recognise this. Therefore I downloaded the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd&amp;displaylang=en"&gt;resource kit&lt;/a&gt; from Microsoft, and added the following simple script to my desktop:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;-- Requires that the Windows resource kit has been installed&lt;br /&gt;&lt;br /&gt;sc stop "VMTools"&lt;br /&gt;sleep 5&lt;br /&gt;sc start "VMTools"&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;---&lt;br /&gt;&lt;br /&gt;Resources used:&lt;br /&gt;http://johnbokma.com/mexit/2005/10/26/vmware-player-windows-xp.html&lt;br /&gt;http://www.easyvmx.com&lt;br /&gt;http://www.brandonhutchinson.com/Installing_VMware_Tools_with_VMware_Player.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114909456648958024?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114909456648958024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114909456648958024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114909456648958024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114909456648958024'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/05/creating-xp-sp2-virtual-machine-in.html' title='Creating an XP SP2 virtual machine in VMWare Player'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114886866460358746</id><published>2006-05-29T03:06:00.000+01:00</published><updated>2006-05-29T03:20:21.643+01:00</updated><title type='text'>What's on TV now and next?</title><content type='html'>I've recently installed MythTV on my linux box. (This was a painful experience, but I notice that there's a Google Summer of Code project for automating a lot of the installation, so things might improve soon.)&lt;br /&gt;&lt;br /&gt;Since the TV listings are automatically downloaded into MySQL, I thought I'd write a little script to show what was on 'now and next'.&lt;br /&gt;&lt;br /&gt;&lt;H3&gt;The SQL&lt;/H3&gt;&lt;br /&gt;&lt;br /&gt;I've saved the following as &lt;code&gt;nowandnext.mysql&lt;/code&gt; in my home directory.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;-- Now&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;select&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;'ON NOW'&lt;/font&gt; &lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;''&lt;/font&gt;;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;select&lt;/b&gt;&lt;/font&gt; name &lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt; Station,&lt;br /&gt;       &lt;font color="#008b8b"&gt;concat(time_format(starttime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%h:%i'&lt;/font&gt;&lt;font color="#008b8b"&gt;),&lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#008b8b"&gt;,time_format(endtime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%h:%i'&lt;/font&gt;&lt;font color="#008b8b"&gt;)) &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt;,&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;       title &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; Programme&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;from&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; program, channel&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;where&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; starttime &amp;lt; NOW() &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;and&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;      endtime &amp;gt; NOW() &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;and&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;      program.chanid = channel.chanid;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;-- Next&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;select&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;'ON NEXT'&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;''&lt;/font&gt;&lt;font color="#008b8b"&gt;;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;select&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; name &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; Station,&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;       concat(time_format(starttime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%h:%i'&lt;/font&gt;&lt;font color="#008b8b"&gt;),&lt;/font&gt;&lt;font color="#ff00ff"&gt;'-'&lt;/font&gt;&lt;font color="#008b8b"&gt;,time_format(endtime, &lt;/font&gt;&lt;font color="#ff00ff"&gt;'%h:%i'&lt;/font&gt;&lt;font color="#008b8b"&gt;)) &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt;,&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;       title &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;as&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; Programme&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;from&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; program, channel&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;where&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt; starttime &amp;gt; NOW() &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;and&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;      starttime &amp;lt; (NOW() + INTERVAL &lt;/font&gt;&lt;font color="#ff00ff"&gt;1&lt;/font&gt;&lt;font color="#008b8b"&gt; &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;HOUR&lt;/b&gt;&lt;/font&gt;&lt;font color="#008b8b"&gt;) &lt;/font&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;and&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#008b8b"&gt;      program.chanid = channel.chanid;&lt;/font&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;H3&gt;Running it&lt;/H3&gt;&lt;br /&gt;&lt;br /&gt;I've added the following line to my &lt;code&gt;.bashrc&lt;/code&gt; file:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;alias nowandnext='mysql -u mythtv --password=&lt;i&gt;addpasswordhere&lt;/i&gt; -D mythconverg &lt; ~/nowandnext.mysql'&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;The result&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;The result is something like this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;ON NOW&lt;br /&gt;Station Time    Programme&lt;br /&gt;BBC1 East       02:20-03:20     Sign Zone:The Line of Beauty&lt;br /&gt;BBC2 East       03:00-04:00     Adult Learners Week: Books&lt;br /&gt;Channel 4       02:25-04:25     Big Brother Live&lt;br /&gt;Five    12:25-04:05     Major League Baseball Live&lt;br /&gt;ITV1 Anglia     01:25-04:10     ITV Play: Quizmania&lt;br /&gt;&lt;br /&gt;ON NEXT&lt;br /&gt;Station Time    Programme&lt;br /&gt;BBC1 East       03:20-03:50     Sign Zone:The Armstrongs&lt;br /&gt;BBC1 East       03:50-04:20     Sign Zone:A Seaside Parish&lt;br /&gt;BBC2 East       04:00-05:00     Adult Learners Week: Diversity&lt;br /&gt;Five    04:05-05:35     UEFA Under-21s Championship&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;There's some tidying up to do:&lt;ul&gt;&lt;br /&gt;&lt;li&gt;it would be nice if the tabs lined up properly&lt;/li&gt;&lt;br /&gt;&lt;li&gt;the 'next' section is a bit of a fudge, 'cos it's getting late.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114886866460358746?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114886866460358746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114886866460358746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114886866460358746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114886866460358746'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/05/whats-on-tv-now-and-next.html' title='What&apos;s on TV now and next?'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114842184230061048</id><published>2006-05-23T22:57:00.000+01:00</published><updated>2006-05-23T23:04:02.406+01:00</updated><title type='text'>Configuring a Matrox P750 on Ubuntu Linux</title><content type='html'>It took ages to get my multi-head graphics card working on my new Linux distro. It supports three monitors, but I'm only using two. I'm using Ubunto Breezy Badger (5.10). I didn't have to recomile the kernel. I'm using the latest driver from Matrox themselves (although there are also unofficial ones). I hope that the following may be of use to others trying to do the same thing.&lt;br /&gt;&lt;br /&gt;&lt;H3&gt;Here is my xorg.conf file&lt;/H3&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# /etc/X11/xorg.conf (xorg X Window System server configuration file)&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;#&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# This file was generated by dexconf, the Debian X Configuration tool, using&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# values from the debconf database.&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;#&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# Edit this file with caution, and see the /etc/X11/xorg.conf manual page.&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# (Type &amp;quot;man /etc/X11/xorg.conf&amp;quot; at the shell prompt.)&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;#&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# This file is automatically updated on xserver-xorg package upgrades *only*&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# if it has not been modified since the last upgrade of the xserver-xorg&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# package.&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;#&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# If you have edited this file but would like it to be automatically updated&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# again, run the following command:&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;#   sudo dpkg-reconfigure -phigh xserver-xorg&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Files&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/misc&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/cyrillic&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/100dpi/:unscaled&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/75dpi/:unscaled&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/Type1&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/CID&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/100dpi&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/usr/share/X11/fonts/75dpi&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#0000ff"&gt;# paths to defoma fonts&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;FontPath&lt;/b&gt;&lt;/font&gt;        &lt;font color="#ff00ff"&gt;&amp;quot;/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Module&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;GLcore&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;i2c&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;bitmap&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;ddc&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;dri&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;extmod&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;freetype&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;glx&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;int10&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;type1&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Load&lt;/b&gt;&lt;/font&gt;    &lt;font color="#ff00ff"&gt;&amp;quot;vbe&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# Enable multi-head support (Xinerama)&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;ServerFlags&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;Xinerama&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6a5acd"&gt;true&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;InputDevice&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt;      &lt;font color="#ff00ff"&gt;&amp;quot;Generic Keyboard&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Driver&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;kbd&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;CoreKeyboard&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;XkbRules&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;      &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;xorg&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;XkbModel&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;      &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;pc105&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;XkbLayout&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;     &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;gb&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;InputDevice&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt;      &lt;font color="#ff00ff"&gt;&amp;quot;Configured Mouse&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Driver&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;mouse&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;CorePointer&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;Device&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;                &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;/dev/input/mice&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;Protocol&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;              &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;ImPS/2&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;Emulate3Buttons&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;       &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6a5acd"&gt;true&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;ZAxisMapping&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt;          &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;4 5&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Device&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Matrox P750 1&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Driver&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;mtx&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;BusID&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;PCI:1:0:0&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Screen&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;0&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Device&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Matrox P750 2&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Driver&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;mtx&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;BusID&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;PCI:1:0:0&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#2e8b57"&gt;&lt;b&gt;Screen&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;1&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# HorizSync is given in kHz&lt;/font&gt;&lt;br /&gt;&lt;font color="#0000ff"&gt;# VertRefresh is given in Hz&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Monitor&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt;      &lt;font color="#ff00ff"&gt;&amp;quot;Iiyama 17&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;DPMS&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;HorizSync&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;       &lt;/font&gt;&lt;font color="#ff00ff"&gt;60&lt;/font&gt;&lt;font color="#ff00ff"&gt;-&lt;/font&gt;&lt;font color="#ff00ff"&gt;86&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;VertRefresh&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;     &lt;/font&gt;&lt;font color="#ff00ff"&gt;60&lt;/font&gt;&lt;font color="#ff00ff"&gt;-&lt;/font&gt;&lt;font color="#ff00ff"&gt;85&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Monitor&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt;      &lt;font color="#ff00ff"&gt;&amp;quot;Generic 15&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt;          &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;DPMS&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;HorizSync&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;       &lt;/font&gt;&lt;font color="#ff00ff"&gt;28&lt;/font&gt;&lt;font color="#ff00ff"&gt;-&lt;/font&gt;&lt;font color="#ff00ff"&gt;64&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;VertRefresh&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;     &lt;/font&gt;&lt;font color="#ff00ff"&gt;43&lt;/font&gt;&lt;font color="#ff00ff"&gt;-&lt;/font&gt;&lt;font color="#ff00ff"&gt;60&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Screen&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Screen0&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Device&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Matrox P750 1&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Monitor&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Iiyama 17&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;DefaultDepth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;24&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;8&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;15&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;16&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;24&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;Screen&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Screen1&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Device&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Matrox P750 2&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Monitor&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;Generic 15&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;DefaultDepth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;24&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;8&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;15&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;16&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        SubSection &amp;quot;Display&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Depth&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;24&lt;/font&gt;&lt;br /&gt;                &lt;font color="#2e8b57"&gt;&lt;b&gt;Modes&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;           &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1280x1024&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;1024x768&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;832x624&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;800x600&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;720x400&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;640x480&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;        EndSubSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;ServerLayout&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Identifier&lt;/b&gt;&lt;/font&gt;      &lt;font color="#ff00ff"&gt;&amp;quot;Default Layout&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Screen&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;0&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Screen0&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#6a5acd"&gt;LeftOf&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Screen1&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Screen&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;1&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Screen1&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;0&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;0&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;InputDevice&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;     &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Generic Keyboard&amp;quot;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;InputDevice&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;     &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;Configured Mouse&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Option&lt;/b&gt;&lt;/font&gt; &lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#008b8b"&gt;Xinerama&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#ff00ff"&gt; &lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;font color="#6a5acd"&gt;on&lt;/font&gt;&lt;font color="#ff00ff"&gt;&amp;quot;&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;Section &amp;quot;DRI&amp;quot;&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;        &lt;font color="#2e8b57"&gt;&lt;b&gt;Mode&lt;/b&gt;&lt;/font&gt;&lt;font color="#ff00ff"&gt;    &lt;/font&gt;&lt;font color="#ff00ff"&gt;0666&lt;/font&gt;&lt;br /&gt;&lt;font color="#a52a2a"&gt;&lt;b&gt;EndSection&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114842184230061048?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114842184230061048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114842184230061048' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114842184230061048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114842184230061048'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/05/configuring-matrox-p750-on-ubuntu.html' title='Configuring a Matrox P750 on Ubuntu Linux'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114743273948941810</id><published>2006-05-12T11:51:00.000+01:00</published><updated>2006-05-12T12:26:20.550+01:00</updated><title type='text'>Sending email from a GoDaddy virtual dedicated server</title><content type='html'>It took me a while to figure this out. It might be a non-optimal solution, but seems to work.&lt;br /&gt;&lt;br /&gt;If you have a &lt;a href="http://www.godaddy.com"&gt;GoDaddy&lt;/a&gt; (virtual) dedicated server, and want to send out emails, there are several gotchas.&lt;br /&gt;&lt;br /&gt;First, you need to create an email user in Plesk. This sets up a user name and password pair. If you already have the server set up as a catch-all, you don't need to create a directory for the user in Plesk or allow it to access webmail.&lt;br /&gt;&lt;br /&gt;You can now use the SMTP server mail.example.com (where &lt;i&gt;example.com&lt;/i&gt; is your domain name) to send outgoing emails, BUT you must send your user name and password. This is a good thing; otherwise the spammers will use it as an open relay for sending as many messages as they can pump through.&lt;br /&gt;&lt;br /&gt;If you're using PHP, there is a problem though. The &lt;tt&gt;mail()&lt;/tt&gt; command is all set up and ready to go (!) but doesn't support authentication. Therefore, every email you try to send from PHP will just fail silently. The trick is to switch to PEAR &lt;tt&gt;Mail.php&lt;/tt&gt; instead.&lt;br /&gt;&lt;br /&gt;The PEAR files are already installed on GoDaddy servers (twice!), but you won't be able to run them from your domain. Some files are installed under &lt;tt&gt;/usr/share/pear/&lt;/tt&gt; and some more are under &lt;tt&gt;/home/httpd/vhosts/webmail/horde/pear/&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;The files under &lt;tt&gt;/usr/share/pear/&lt;/tt&gt; don't include all of the files (in particular &lt;tt&gt;Socket.php&lt;/tt&gt;). The correct solution is probably to install an updated version of PEAR to this area. The way I did it was to piggy-back the webmail files that were already installed, as follows:&lt;br /&gt;&lt;br /&gt;1. Create a file &lt;tt&gt;conf/vhost.conf&lt;/tt&gt; under the specific domain, containing the following:&lt;br /&gt;&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;&amp;lt;Directory /home/httpd/vhosts/&lt;i&gt;example.com&lt;/i&gt;/httpdocs&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;IfModule sapi_apache2.c&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;php_admin_value include_path "/home/httpd/vhosts/webmail/horde/pear/"&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;php_admin_value open_basedir "/home/httpd/vhosts/example.com/httpdocs:&lt;br&gt;&lt;br /&gt;/tmp:/home/httpd/vhosts/webmail/horde/pear/"&lt;br&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/IfModule&amp;gt;&lt;br&gt;&lt;br /&gt;&amp;lt;/Directory&amp;gt;&lt;br&gt;&lt;br /&gt;&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;2. Run the following command:&lt;br /&gt;&lt;br /&gt;&lt;tt&gt;/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=&lt;i&gt;example.com&lt;/i&gt;&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;(this regenerates &lt;tt&gt;httpd.include&lt;/tt&gt; under &lt;tt&gt;&lt;i&gt;example.com&lt;/i&gt;&lt;/tt&gt; to include the new &lt;tt&gt;vhost.conf&lt;/tt&gt;)&lt;br /&gt;&lt;br /&gt;3. Restart apache:&lt;br /&gt;&lt;br /&gt;&lt;tt&gt;apachectl graceful&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;Now you should be able to send email from PHP using a script along the following lines (copied from a comment in &lt;a href="http://uk.php.net/manual/en/ref.mail.php"&gt;the PHP manual&lt;/a&gt;):&lt;br /&gt;&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;&amp;lt;?&lt;br /&gt;include("Mail.php");&lt;br /&gt;$recipients = "mail_to@domain.mail";&lt;br /&gt;$headers["From"]    = "mail_from@domain.mail";&lt;br /&gt;$headers["To"]      = "mail_to@domain.mail";&lt;br /&gt;$headers["Subject"] = "Test message";&lt;br /&gt;$body = "TEST MESSAGE!!!";&lt;br /&gt;$params["host"] = "smtp.server";&lt;br /&gt;$params["port"] = "25";&lt;br /&gt;$params["auth"] = true;&lt;br /&gt;$params["username"] = "user";&lt;br /&gt;$params["password"] = "password";&lt;br /&gt;// Create the mail object using the Mail::factory method&lt;br /&gt;$mail_object =&amp; Mail::factory("smtp", $params);&lt;br /&gt;$mail_object-&gt;send($recipients, $headers, $body);&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/tt&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114743273948941810?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114743273948941810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114743273948941810' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114743273948941810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114743273948941810'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/05/sending-email-from-godaddy-virtual.html' title='Sending email from a GoDaddy virtual dedicated server'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114316845427760244</id><published>2006-03-24T02:05:00.000Z</published><updated>2006-03-24T02:47:34.336Z</updated><title type='text'>Setting up a Psion emulator</title><content type='html'>My trusty Psion 5mx recently gave up the ghost. It suffered the infamous cracked video cable that causes horizontal lines across the screen unless you almost close the case, where the picture springs back to life.&lt;br /&gt;&lt;br /&gt;I actually bought a replacement video cable, but my soldering skills weren't up to the job. I didn't tend to take my Psion with me anyway, as it's a bit bulky, so I wondered whether I could just set up an emulator on my PC. I only really used two apps anyway: Contacts (built-in) for names and addresses and &lt;a href="http://website.leidenuniv.nl/~linthorsthjm/exabetal/index.html?codesafe.html&amp;2"&gt;CodeSafe&lt;/a&gt; for passwords.&lt;br /&gt;&lt;br /&gt;Symbian produced an EPOC emulator, but setting it up to get CodeSafe to work was a little bit tricky. Here's what I did:&lt;br /&gt;&lt;br /&gt;1. Download the emulator by going to &lt;a href="http://www.psionteklogix.com/teknet/pdk/netpad-pdk/epoc_downloads.htm"&gt;the Psion Teklogix download page&lt;/a&gt; and downloading &lt;i&gt;Symbian OS V5 OPL SDK&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;2. Install the OPL SDK, which includes the emulator.&lt;br /&gt;&lt;br /&gt;3. If you've got a backup of your Psion, copy it to &lt;tt&gt;C:\Epoc32\Wins\C\&lt;/tt&gt;, but take care not to overwrite the OPX files in &lt;tt&gt;C:\Epoc32\Wins\C\System\Opx&lt;/tt&gt;. OPX files are extensions to the OPL programming language, and are written in C++ and compiled for a specific platform. The OPX files on your Psion will not work on the emulator.&lt;br /&gt;&lt;br /&gt;4. CodeSafe needs a third-party OPX called cliptext.opx. This was developed by &lt;a href="http://www.emccsoft.com"&gt;EMCC&lt;/a&gt;, but doesn't seem to be downloadable from their website any longer. You can download it from &lt;a href="http://www.funet.fi/pub/misc/psion/s5/dev/opl/cliptext.zip"&gt;here&lt;/a&gt; instead.&lt;br /&gt;&lt;br /&gt;5. Extract the file &lt;tt&gt;cliptews.sis&lt;/tt&gt; to anywhere under &lt;tt&gt;C:\Epoc32\Wins\C\&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;6. Start the Psion emulator (should be under &lt;b&gt;Start&lt;/b&gt;, &lt;b&gt;All Programs&lt;/b&gt;, &lt;b&gt;Epoc Software&lt;/b&gt;). In the emulator, naviagate to the directory where your saved &lt;tt&gt;cliptews.sis&lt;/tt&gt; and run it.&lt;br /&gt;&lt;br /&gt;7. This should install &lt;tt&gt;cliptext.opx&lt;/tt&gt; in &lt;tt&gt;C:\Epoc32\Wins\C\System\Opx&lt;/tt&gt; on your Windows machine. Make this read-only.&lt;br /&gt;&lt;br /&gt;8. I had to follow a similar procedure to install the latest version of CodeSafe into the emulator. I think I was using an old version of CodeSafe, which wasn't compatible with the latest cliptext.&lt;br /&gt;&lt;br /&gt;9. I also updated the other OPX files in &lt;tt&gt;C:\Epoc32\Wins\C\System\Opx&lt;/tt&gt; with Windows versions (these are generally built with debugging turned on, and are larger than the native EPOC versions). There are a whole load of these on the &lt;a href="http://www.symbian.com/developer/downloads/files/"&gt;Symbian&lt;/a&gt; website. You might not need to do this, but I had overwritten the &lt;tt&gt;C:\Epoc32\Wins\C\System\Opx&lt;/tt&gt; directory with the copy from my Psion backup, so it seemed like a good idea to refresh these.&lt;br /&gt;&lt;br /&gt;10. The important final stage is to run the release build of the emulator, not the debug build. The debug build, which is linked to from the Start menu entries, crashes whenever you close one of CodeSafe's dialogue boxes (e.g. cancelling viewing a password or closing the program). The release build works OK though. I suspect it might be that the debug build throws an assertion due to a perceived memory leak, but that's just a guess. Either way, add a shortcut to &lt;tt&gt;C:\Epoc32\Release\Wins\Rel\EPOC.exe&lt;/tt&gt; to your Start menu and use this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114316845427760244?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114316845427760244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114316845427760244' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114316845427760244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114316845427760244'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/03/setting-up-psion-emulator.html' title='Setting up a Psion emulator'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114239538708571589</id><published>2006-03-15T03:46:00.000Z</published><updated>2006-03-15T04:03:07.116Z</updated><title type='text'>MS Office Bug/Feature #11: Naming AutoShapes in PowerPoint</title><content type='html'>The &lt;em&gt;Custom Animation&lt;/em&gt; task pane in PowerPoint lists the names of all of the objects to which animation effects have been added. In the case of AutoShapes, their names are rather cryptic: things like &lt;code&gt;Oval 13&lt;/code&gt;. It would be useful to be able to change these to something more meaningful.&lt;br /&gt;&lt;br /&gt;Unfortunately, you can't! There's no means of changing the object names via a properties dialogue in PowerPoint. You &lt;i&gt;can&lt;/i&gt; change the &lt;code&gt;Name&lt;/code&gt; property of the relevant &lt;code&gt;Shape&lt;/code&gt; object using VBA, but this doesn't have any effect on the &lt;em&gt;Custom Animation&lt;/em&gt; task pane, which carries on using the original name! PowerPoint then complains if you try to change the &lt;code&gt;Name&lt;/code&gt; property back to its original value!!&lt;br /&gt;&lt;br /&gt;The best you can do is to add invisible text to the shapes, which will appear after the shape &lt;i&gt;names&lt;/i&gt; in the &lt;em&gt;Custom Animation&lt;/em&gt; task pane.&lt;br /&gt;&lt;br /&gt;It would be nice if &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbapp11/html/ppproName1_HV05193091.asp"&gt;Microsoft's help&lt;/a&gt; mentioned some of this. Ah well, only another couple of hours wasted because Office doesn't work the way I expected it to.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114239538708571589?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114239538708571589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114239538708571589' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114239538708571589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114239538708571589'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/03/ms-office-bugfeature-11-naming.html' title='MS Office Bug/Feature #11: Naming AutoShapes in PowerPoint'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-114012236614478921</id><published>2006-02-16T20:13:00.000Z</published><updated>2006-02-16T20:39:26.196Z</updated><title type='text'>Fireworks 8/Dreamweaver 8 issues</title><content type='html'>The &lt;a href="http://www.amazon.co.uk/exec/obidos/redirect?link_code=ur2&amp;tag=alldotnocomcom&amp;camp=1634&amp;creative=6738&amp;path=ASIN%2F1904467679%2Fqid%3D1140121094%2Fsr%3D8-2%2Fref%3Dsr_8_xs_ap_i2_xgl"&gt;latest book&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=alldotnocomcom&amp;amp;l=ur2&amp;amp;o=2" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; I've copy edited highlighted a few 'features' of Fireworks and Dreamweaver.&lt;br /&gt;&lt;br /&gt;If you export a PNG file with a pop-up menu as HTML from Fireworks, and have the CSS option turned on, then, when you import it into Dreamweaver, Dreamweaver will not recognise some of the Fireworks-generated JavaScript functions. This means you can't edit the pop-up menu from inside Dreamweaver...&lt;br /&gt;&lt;br /&gt;...not that you'd want to, because, if you do, any edits will be lost if you later decide to edit the PNG containing the pop-up menu in Fireworks.&lt;br /&gt;&lt;br /&gt;Even if you do round-trip your pop-up menu edits (from Dreamweaver to Fireworks and back) as &lt;a href="http://www.macromedia.com/cfusion/knowledgebase/index.cfm?event=view&amp;id=KC.39824592&amp;extid=39824592&amp;dialogID=25119411&amp;iterationID=1&amp;sessionID=963039f42909397a5d97&amp;stateID=0+0+25125021&amp;mode=simple"&gt;Macromedia recommends&lt;/a&gt;, sometimes there's a problem: Dreamweaver doesn't always delete the old menu JavaScript; it just inserts the new one first in the document. Therefore your HTML document ends up with two &lt;code&gt;mmLoadMenus()&lt;/code&gt; function definitions. Since the new one gets inserted first, it is ignored in favour of the second one.&lt;br /&gt;&lt;br /&gt;The general advice, from those in the know on Usenet, seems to be to avoid using Fireworks/Dreamweaver pop-up menus altogether.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-114012236614478921?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/114012236614478921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=114012236614478921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114012236614478921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/114012236614478921'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/02/fireworks-8dreamweaver-8-issues.html' title='Fireworks 8/Dreamweaver 8 issues'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-113847937324688751</id><published>2006-01-28T19:52:00.000Z</published><updated>2006-01-28T20:16:13.296Z</updated><title type='text'>More realistic previews when creating Blogger posts</title><content type='html'>It's great that you can preview your post in Blogger. However (unless I've missed something) there's no way of changing the CSS style that the preview uses. Therefore, the post is likely to look very different by the time it appears on your blog (particularly for blogs that have black backgrounds, like this one).&lt;br /&gt;&lt;br /&gt;Luckily, I've worked out how to get around this limitation. &lt;a href="http://www.getfirefox.com"&gt;Firefox&lt;/a&gt; allows you to create custom style sheets and apply them on a site-by-site basis. The method for getting your Blogger preview to look more realistic is as follows.&lt;br /&gt;&lt;br /&gt;Edit the file &lt;tt&gt;userContent.css&lt;/tt&gt; (empty by default, unless you've already added your own overrides) to include the following:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;@-moz-document url-prefix(&lt;font color="#ffa0a0"&gt;&amp;quot;http://www.blogger.com/post-&amp;quot&lt;/font&gt;)&lt;br /&gt;&lt;font color="#40ffff"&gt;{&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;This will apply any formatting rules inside the &lt;tt&gt;{ }&lt;/tt&gt; to the blogger site's &lt;tt&gt;post-create&lt;/tt&gt; and &lt;tt&gt;post-edit&lt;/tt&gt; pages.&lt;br /&gt;&lt;br /&gt;Add whatever formatting you wish to apply (it's probably necessary to cut and paste from a sample page of your blog). Add whatever formatting you require, adding &lt;code&gt;#previewbody&lt;/code&gt; at the start (this is the &lt;tt&gt;DIV&lt;/tt&gt; containing the preview) and &lt;code&gt;!important&lt;/code&gt; at the end (to force an override of any blogger-imposed styles).&lt;br /&gt;&lt;br /&gt;A simple example might look something like this:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;@-moz-document url-prefix(&lt;font color="#ffa0a0"&gt;&amp;quot;http://www.blogger.com/post-&amp;quot&lt;/font&gt;)&lt;br /&gt;&lt;font color="#40ffff"&gt;{&lt;/font&gt;&lt;br /&gt;   #previewbody {&lt;br /&gt;      &lt;font color="#60ff60"&gt;background&lt;/font&gt;:&lt;font color="#ffa0a0"&gt;#000&lt;/font&gt; &lt;font color="#ffa500"&gt;!important&lt;/font&gt;;&lt;br /&gt;      &lt;font color="#60ff60"&gt;font&lt;/font&gt;: Verdana,&lt;font color="#60ff60"&gt;Sans-Serif&lt;/font&gt; &lt;font color="#ffa500"&gt;!important&lt;/font&gt;;&lt;br /&gt;   &lt;font color="#40ffff"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;   &lt;font color="#40ffff"&gt;#previewbody&lt;/font&gt; &lt;font color="#ffff60"&gt;code&lt;/font&gt; &lt;font color="#40ffff"&gt;{&lt;/font&gt;&lt;br /&gt;      &lt;font color="#60ff60"&gt;color&lt;/font&gt;: cornflowerblue &lt;font color="#ffa500"&gt;!important&lt;/font&gt;;&lt;br /&gt;   &lt;font color="#40ffff"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;}&lt;/font&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Save the file and close and restart Firefox for the change to take effect.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-113847937324688751?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/113847937324688751/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=113847937324688751' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113847937324688751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113847937324688751'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/01/more-realistic-previews-when-creating.html' title='More realistic previews when creating Blogger posts'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-113847211187243881</id><published>2006-01-28T17:19:00.000Z</published><updated>2006-01-28T19:50:18.586Z</updated><title type='text'>Showing elapsed time in DOS batch files</title><content type='html'>I recently bought a new 250GB external hard disk (a &lt;a href="http://www.amazon.co.uk/exec/obidos/redirect?link_code=as2&amp;path=ASIN/B0007R6CGC&amp;tag=alldotnocomcom&amp;camp=1634&amp;creative=6738"&gt;Buffalo HD-HB250U2-1 USB 2.0 Drivestation 250gb External Hard Drive&lt;/a&gt;&lt;img src="http://www.assoc-amazon.co.uk/e/ir?t=alldotnocomcom&amp;l=as2&amp;o=2&amp;a=B0007R6CGC" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;) &amp;ndash; it seems very quiet and fast. I decided to create a DOS batch file to do backups (I've never found a graphical backup program that I like and trust).&lt;br /&gt;&lt;br /&gt;The copying itself is pretty straightforward &amp;ndash; just use &lt;em&gt;xcopy&lt;/em&gt;, supplying it with flags to copy file attributes and only to back up files that are newer than the existing backed-up versions.&lt;br /&gt;&lt;br /&gt;The tricky bit was that I wanted to display the elapsed time. For example, if I choose to run the script automatically in the middle of the night, I'd like to know how long it took. Printing the current time at any point (e.g. at the start) is straightforward: &lt;code&gt;ECHO %TIME%&lt;/code&gt; would do. However, I'm too lazy to work out the difference between two times by hand, and figured that it must be easy to get the batch file to do this automatically. Well, it wasn't as easy as I thought, but after much faffing around with poorly documented DOS commands that don't work the way I expected, I present the following method for displaying the elapsed time (note that I've used underscores at the end of lines where they are too wide to fit here). Enjoy.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;pre&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: Set START_TIMESTAMP as the number of&lt;br /&gt;:: minutes so far today&lt;/font&gt;&lt;br /&gt;&lt;font color="#ffff60"&gt;FOR&lt;/font&gt; &lt;font color="#ffa500"&gt;/F&lt;/font&gt; &lt;font color="#ffa0a0"&gt;&amp;quot;tokens=&lt;/font&gt;&lt;font color="#ffa0a0"&gt;1&lt;/font&gt;&lt;font color="#ffa0a0"&gt;,2 delims=:&amp;quot;&lt;/font&gt; &lt;font color="#40ffff"&gt;%%t&lt;/font&gt; in (&lt;font color="#ff80ff"&gt;'&lt;/font&gt;&lt;font color="#40ffff"&gt;time&lt;/font&gt;&lt;font color="#ff80ff"&gt;/t'&lt;/font&gt;) do &lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt; _&lt;br /&gt;      &lt;font color="#40ffff"&gt;START_TIMESTAMP&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%%t&lt;/font&gt;&lt;font color="#ffff60"&gt; * &lt;/font&gt;&lt;font color="#ffa0a0"&gt;60&lt;/font&gt;&lt;font color="#ffff60"&gt; + &lt;/font&gt;&lt;font color="#40ffff"&gt;%%u&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: ........................................&lt;/font&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: ... do time-consuming processes here ...&lt;/font&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: ........................................&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: Work out the elapsed time expressed in minutes&lt;/font&gt;&lt;br /&gt;&lt;font color="#ffff60"&gt;FOR&lt;/font&gt; &lt;font color="#ffa500"&gt;/F&lt;/font&gt; &lt;font color="#ffa0a0"&gt;&amp;quot;tokens=&lt;/font&gt;&lt;font color="#ffa0a0"&gt;1&lt;/font&gt;&lt;font color="#ffa0a0"&gt;,2 delims=:&amp;quot;&lt;/font&gt; &lt;font color="#40ffff"&gt;%%t&lt;/font&gt; in (&lt;font color="#ff80ff"&gt;'&lt;/font&gt;&lt;font color="#40ffff"&gt;time&lt;/font&gt;&lt;font color="#ff80ff"&gt;/t'&lt;/font&gt;) do &lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt; _&lt;br /&gt;      &lt;font color="#40ffff"&gt;END_TIMESTAMP&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%%t&lt;/font&gt;&lt;font color="#ffff60"&gt; * &lt;/font&gt;&lt;font color="#ffa0a0"&gt;60&lt;/font&gt;&lt;font color="#ffff60"&gt; + &lt;/font&gt;&lt;font color="#40ffff"&gt;%%u&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: Do the correct calculation to account for roll-over&lt;/font&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: (assumes the whole elapsed time is always less than&lt;br /&gt;:: 24 hours)&lt;/font&gt;&lt;br /&gt;&lt;font color="#ffff60"&gt;IF&lt;/font&gt;&lt;font color="#ffff60"&gt; &lt;/font&gt;&lt;font color="#40ffff"&gt;%END_TIMESTAMP%&lt;/font&gt; &lt;font color="#ffff60"&gt;GEQ&lt;/font&gt; &lt;font color="#40ffff"&gt;%START_TIMESTAMP%&lt;/font&gt; (&lt;br /&gt;   &lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt;&lt;font color="#40ffff"&gt; ELAPSED_TIME&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%END_TIMESTAMP%&lt;/font&gt;&lt;font color="#ffff60"&gt; - &lt;/font&gt;&lt;font color="#40ffff"&gt;%START_TIMESTAMP%&lt;/font&gt;&lt;br /&gt;)&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: ELSE&lt;/font&gt;&lt;br /&gt;&lt;font color="#ffff60"&gt;IF&lt;/font&gt;&lt;font color="#ffff60"&gt; &lt;/font&gt;&lt;font color="#40ffff"&gt;%END_TIMESTAMP%&lt;/font&gt; &lt;font color="#ffff60"&gt;LSS&lt;/font&gt; &lt;font color="#40ffff"&gt;%START_TIMESTAMP%&lt;/font&gt; (&lt;br /&gt;   &lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt;&lt;font color="#40ffff"&gt; ELAPSED_TIME&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%END_TIMESTAMP%&lt;/font&gt;&lt;font color="#ffff60"&gt; + &lt;/font&gt;&lt;font color="#ffa0a0"&gt;1440&lt;/font&gt;&lt;font color="#ffff60"&gt; - _&lt;br /&gt;         &lt;/font&gt;&lt;font color="#40ffff"&gt;%START_TIMESTAMP%&lt;/font&gt;&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: Split elapsed time into hours and minutes&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt;&lt;font color="#40ffff"&gt; ELAPSED_HOURS&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%ELAPSED_TIME%&lt;/font&gt;&lt;font color="#ffff60"&gt; / &lt;/font&gt;&lt;font color="#ffa0a0"&gt;60&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt; &lt;font color="#ffa500"&gt;/a&lt;/font&gt;&lt;font color="#40ffff"&gt; ELAPSED_MINUTES&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;font color="#40ffff"&gt;%ELAPSED_TIME%&lt;/font&gt;&lt;font color="#ffff60"&gt; - _&lt;br /&gt;      &lt;/font&gt;(&lt;font color="#40ffff"&gt;%ELAPSED_HOURS%&lt;/font&gt;&lt;font color="#ffff60"&gt; * &lt;/font&gt;&lt;font color="#ffa0a0"&gt;60&lt;/font&gt;)&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: The following could be piped to a log file, if required&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;ECHO&lt;/font&gt;&lt;font color="#ffa0a0"&gt; Backup took &lt;/font&gt;&lt;font color="#40ffff"&gt;%ELAPSED_HOURS%&lt;/font&gt;&lt;font color="#ffa0a0"&gt; hours and _&lt;br /&gt;      &lt;/font&gt;&lt;font color="#40ffff"&gt;%ELAPSED_MINUTES%&lt;/font&gt;&lt;font color="#ffa0a0"&gt; minutes.&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color="#80a0ff"&gt;:: Tidy up&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt;&lt;font color="#40ffff"&gt; START_TIMESTAMP&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt;&lt;font color="#40ffff"&gt; END_TIMESTAMP&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt;&lt;font color="#40ffff"&gt; ELASPED_TIME&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt;&lt;font color="#40ffff"&gt; ELASPED_HOURS&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;br /&gt;&lt;font color="#40ffff"&gt;SET&lt;/font&gt;&lt;font color="#40ffff"&gt; ELASPED_MINUTES&lt;/font&gt;&lt;font color="#ffff60"&gt;=&lt;/font&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;[Syntax colouring done using &lt;a href="www.vim.org"&gt;Vim&lt;/a&gt;]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-113847211187243881?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/113847211187243881/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=113847211187243881' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113847211187243881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113847211187243881'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/01/showing-elapsed-time-in-dos-batch.html' title='Showing elapsed time in DOS batch files'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-113837424787195232</id><published>2006-01-27T14:54:00.000Z</published><updated>2006-01-27T15:04:07.916Z</updated><title type='text'>MS Office Bug/Feature #10: Unable to reset AutoShape style to default in PowerPoint</title><content type='html'>PowerPoint has a useful feature called &lt;em&gt;Set AutoShape Defaults&lt;/em&gt;. If you want all of the AutoShapes in a presentation to have the same style &amp;ndash; for example, a blue body and a thick red border &amp;ndash; then you can create any AutoShape, set it to have this style, and then select &lt;em&gt;Set AutoShape Defaults&lt;/em&gt; from the right-click menu. After this point, any new shapes you create will have the same style.&lt;br /&gt;&lt;br /&gt;However, there doesn't seem to be any easy way to reset the style used for AutoShapes to the factory defaults. If you want to make sure that a group of users are all starting from the same point (for example, when running a training course) there is no menu option&lt;sup&gt;*&lt;/sup&gt; that you can get them to select. Sure, you could create a macro to do this, but given how easy it is for users to select this command by accident, I would expect for there to be another menu option to reset the style.&lt;br /&gt;&lt;br /&gt;&lt;small&gt;&lt;sup&gt;*&lt;/sup&gt;Unless you know of something that I've missed. Either way, I certainly couldn't find it myself in the options or by searching the online help.&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-113837424787195232?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/113837424787195232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=113837424787195232' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113837424787195232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/113837424787195232'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2006/01/ms-office-bugfeature-10-unable-to.html' title='MS Office Bug/Feature #10: Unable to reset AutoShape style to default in PowerPoint'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112998488127636361</id><published>2005-10-22T13:31:00.000+01:00</published><updated>2005-10-22T13:41:21.763+01:00</updated><title type='text'>MS Office Bug/Feature #9: Missing vertical scroll bar in style list in Word 2003 (minor)</title><content type='html'>OK, this is barely worth mentioning, but I won't let that stop me!&lt;br /&gt;&lt;br /&gt;If you hold down &lt;em&gt;Shift&lt;/em&gt; while you click the arrow to the right of the list of styles in the &lt;em&gt;Formatting&lt;/em&gt; toolbar, it displays a list of all styles instead of the usual list of available styles (which you get if you don't hold down &lt;em&gt;Shift&lt;/em&gt;).&lt;br /&gt;&lt;br /&gt;However, there is a slight bug, which can be reproduced as follows:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Click anywhere in the document.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Click the arrow to open the style list.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Click the arrow to compress the style list again.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Now Shift-click the arrow.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;The list of all styles appears, but the vertical scroll bar is missing. You can use the arrow keys to select a style, and the list scrolls as you would expect, but you cannot use the mouse to achieve the same thing. Using the scroll wheel on my mouse at this point causes the list to jump to the beginning, but other than that it doesn't control the scrolling.&lt;br /&gt;&lt;br /&gt;As I said, this is a very minor thing. Everything works fine if you go straight from Step 1 to Step 4.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112998488127636361?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112998488127636361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112998488127636361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112998488127636361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112998488127636361'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/10/ms-office-bugfeature-9-missing.html' title='MS Office Bug/Feature #9: Missing vertical scroll bar in style list in Word 2003 (minor)'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112920608613758256</id><published>2005-10-13T12:58:00.000+01:00</published><updated>2005-10-13T13:21:26.193+01:00</updated><title type='text'>MS Office Bug/Feature #8: Inconsistent 'extend selection' mode</title><content type='html'>Both Word and Excel have an &lt;em&gt;extend selection&lt;/em&gt; mode. This works as follows: position the text insertion point somewhere in the document (or select a cell), turn on extend selection mode, click at another point in the document, turn off extend selection mode. Everything between the first and last locations is selected. This is a useful feature if you have only one hand or if you need to select a very long section of the document. (Actually, in Word you can type a character to extend the selection to the next occurrence of that character; for example, &lt;em&gt;F8&lt;/em&gt;, &lt;em&gt;.&lt;/em&gt;, &lt;em&gt;Esc&lt;/em&gt; will extend the selection to the end of the current sentence).&lt;br /&gt;&lt;br /&gt;However, Word and Excel enable this feature in different ways, and I can't think why they shouldn't be the same.&lt;br /&gt;&lt;br /&gt;In Excel you must press &lt;em&gt;F8&lt;/em&gt; to toggle this mode on and off. An &lt;em&gt;EXT&lt;/em&gt; indicator appears in the status bar, but is for display only.&lt;br /&gt;&lt;br /&gt;In Word, the easiest way to toggle this mode on and off is to double-click the &lt;em&gt;EXT&lt;/em&gt; area in the status bar (which is grey when extend selection mode is inactive and black when it is active). You can press &lt;em&gt;F8&lt;/em&gt; to enter extend selection mode, but &lt;u&gt;not&lt;/u&gt; to get out of it again (although &lt;em&gt;Esc&lt;/em&gt; works for this!&lt;br /&gt;&lt;br /&gt;I think that both packages should combine Word's status bar clicking with Excel's use of the &lt;em&gt;F8&lt;/em&gt; key.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112920608613758256?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112920608613758256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112920608613758256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112920608613758256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112920608613758256'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/10/ms-office-bugfeature-8-inconsistent.html' title='MS Office Bug/Feature #8: Inconsistent &apos;extend selection&apos; mode'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112902301698448243</id><published>2005-10-11T10:22:00.000+01:00</published><updated>2005-10-13T14:36:25.656+01:00</updated><title type='text'>Excel 2003 automatic formatting quirks</title><content type='html'>Excel tries to be helpful by setting the cell format automatically based on what you type in the cell; for example, if you type &lt;code&gt;2 2/3&lt;/code&gt; then the cell's value is set to &lt;em&gt;2.66666666666667&lt;/em&gt; and its format is changed to show as a fraction.&lt;br /&gt;&lt;br /&gt;There are a few quirks worth noting.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Functions&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;If you use a built-in function that returns a percentage then the cell will be automatically formatted as a percentage. For example, &lt;code&gt;=RATE(12,-10,100)&lt;/code&gt; is converted to a percentage and displayed as &lt;em&gt;3%&lt;/em&gt;. However, &lt;code&gt;=RATE(12,-10,100)*2&lt;/code&gt; is not converted, so displays as &lt;em&gt;0.058457082&lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;Other functions are more forgiving; for example &lt;code&gt;=TODAY()+1&lt;/code&gt; is automatically formatted as a date.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Currency&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;If you type a currency string that is recognised as such by Excel then it is converted automatically. This depends on what your regional settings are set to in Windows.&lt;br /&gt;&lt;br /&gt;With British settings &lt;code&gt;£3&lt;/code&gt; and &lt;code&gt;€4&lt;/code&gt; are both converted to currencies, but &lt;code&gt;$5&lt;/code&gt; remains as a string. With US settings, only &lt;code&gt;$5&lt;/code&gt; is converted.&lt;br /&gt;&lt;br /&gt;My guess is that the reason that all currencies are not converted automatically, regardless of the regional options, is that some symbols are used for more than one country and Excel needs to pick a particular variant.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Dates&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;Date strings are automatically converted, but again (and this is a good thing) depend on the regional options.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Get to the point...&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;The main point of this posting is to state that if you are writing instructions for Excel users you must make sure that their regional options are the same as yours unless you want strange things to happen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112902301698448243?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112902301698448243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112902301698448243' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112902301698448243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112902301698448243'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/10/excel-2003-automatic-formatting-quirks.html' title='Excel 2003 automatic formatting quirks'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112653752559082853</id><published>2005-09-12T15:53:00.000+01:00</published><updated>2005-09-12T16:05:25.596+01:00</updated><title type='text'>Hiding formatting changes in Word 2003</title><content type='html'>Just a quick note about how to hide formatting changes in revision tracking in Word. Perhaps this will redress the balance of this blog slightly &amp;ndash; a useful tip rather than an annoying feature &amp;#x263A;!&lt;br /&gt;&lt;br /&gt;&lt;OL&gt;&lt;br /&gt;&lt;LI&gt;In the &lt;strong&gt;Reviewing&lt;/strong&gt; toolbar, click &lt;strong&gt;Show&lt;/strong&gt; and deselect everything other than &lt;strong&gt;Formatting&lt;/strong&gt;.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Click the arrow to the right of the &lt;strong&gt;Accept Change&lt;/strong&gt; button and choose &lt;strong&gt;Accept All Changes Shown&lt;/strong&gt; from the menu that appears. All of the formatting changes are accepted.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Re-enable the options you want to view in the &lt;strong&gt;Show&lt;/strong&gt; menu.&lt;/LI&gt;&lt;br /&gt;&lt;/OL&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112653752559082853?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112653752559082853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112653752559082853' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112653752559082853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112653752559082853'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/09/hiding-formatting-changes-in-word-2003.html' title='Hiding formatting changes in Word 2003'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112430679115902217</id><published>2005-08-17T20:19:00.000+01:00</published><updated>2005-08-17T20:26:31.166+01:00</updated><title type='text'>Setting the date on a wristwatch the safe way</title><content type='html'>My watch shows the date number and day of the week, however it seemed to be fairly random. Each day of the week has English (&lt;small&gt;MON&lt;/small&gt;, &lt;small&gt;TUE&lt;/small&gt;, &lt;small&gt;WED&lt;/small&gt;, ...) and French (&lt;small&gt;LUN&lt;/small&gt;, &lt;small&gt;MAR&lt;/small&gt;, &lt;small&gt;MER&lt;/small&gt;, ...) variants. Until recently I didn't trust it, because half the time the day number was wrong and the day of the week was in Franch!&lt;br /&gt;&lt;br /&gt;That is until I did a Google to try to find some instructions. It turns out that there's a simple method of setting a date, and I thought I'd share it here:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;Set the time to 6 o'clock.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Set the day and date to yesterday's day and date.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Wind the time on so that it clicks past midnight (changing the date) and set to the current time, taking into account whether it is morning or afternoon.&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Simple! And it's been working fine ever since! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112430679115902217?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112430679115902217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112430679115902217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112430679115902217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112430679115902217'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/08/setting-date-on-wristwatch-safe-way.html' title='Setting the date on a wristwatch the safe way'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112135563694308321</id><published>2005-07-14T14:46:00.000+01:00</published><updated>2005-07-14T16:41:56.860+01:00</updated><title type='text'>Converting DWG files to TIFF images</title><content type='html'>For a recent book I copy edited, I needed to turn a set of AutoCAD DWG drawings into high-resolution TIFFs. I tried various tools for this, but most of them couldn't handle the resolution necessary for printing (for some images it was necessary to get 600dpi, for example where the resultant image is to be cropped and blown up).&lt;br /&gt;&lt;br /&gt;The best of the half-a-dozen tools I tried was &lt;a href="www.print-driver.com"&gt;Universal Document Converter&lt;/a&gt;, which installs as a printer driver. It costs $69 for businesses to buy (or $44.95 for home users). The important feature, taken from their website, is&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;save images to TIFF, JPEG, BMP, PNG, GIF, PCX or DCX files with resolutions up to 1200 DPI.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Another advantage over some of the other programs that can only do DWG to TIF conversion is that you can now convert and document type to a TIFF as long as you can open it in a program that can print.&lt;br /&gt;&lt;br /&gt;The other similar program I use a lot is &lt;a href="www.cutepdf.com"&gt;Cute PDF Writer&lt;/a&gt;, which lets you print directly to PDF documents. I use the free version, but there is a commercial offering too with more bells and whistles.&lt;br /&gt;&lt;br /&gt;Other than being a satisfied customer, I have no links to these companies. Hopefully you too will find that these tools save you some time and frustration.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112135563694308321?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112135563694308321/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112135563694308321' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112135563694308321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112135563694308321'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/07/converting-dwg-files-to-tiff-images.html' title='Converting DWG files to TIFF images'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112133859891330554</id><published>2005-07-14T10:33:00.000+01:00</published><updated>2005-07-14T11:56:38.923+01:00</updated><title type='text'>Setting up Tomcat</title><content type='html'>&lt;h2&gt;Introduction&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;The original idea of these &lt;em&gt;Hidden Help Files&lt;/em&gt; was to record how to do things that ought to have been simple, but which were hampered by a lack of documentation. Since it's taken me several days' graft to get &lt;a href="http://jakarta.apache.org/tomcat/"&gt;Tomcat&lt;/a&gt; working on my &lt;a href="https://www.godaddy.com/gdshop/hosting/build.asp?se=%2B&amp;ci=178&amp;display=virtual"&gt;Godaddy virtual shared server&lt;/a&gt;, this is a good candidate. I'll try to remember all the steps involved.&lt;br /&gt;&lt;br /&gt;Tomcat lets you run Java&amp;trade; servlets and JSP pages. For largely historical reasons, my main work website is all written as JSP (I probably would have saved myself a lot of bother if I'd used PHP instead &amp;mdash; I'm not doing anything complicated). Anyway, I'm in the process of moving from a &lt;a href="http://www.positive-internet.com/zhosting.html"&gt;Positive Internet shared server&lt;/a&gt; to a &lt;a href="https://www.godaddy.com/gdshop/hosting/build.asp?se=%2B&amp;ci=178&amp;display=virtual"&gt;Godaddy virtual shared server&lt;/a&gt;, so I get root access and full control over what I install and how it runs. The down-side is that I have to take responsibility for setting everything up correctly.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;The Architecture&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;The Go Daddy server comes with Red Hat Linux 9. This is rather old, but at least it ties in with the &lt;i&gt;Red Hat Linux 9 Bible&lt;/i&gt; book I've got. Mine was running Apache 2.0.40. You can find out your current Apache version by typing&lt;br /&gt;&lt;code&gt;apachectl -v&lt;/code&gt;.&lt;br /&gt;&lt;br /&gt;What needs to happen is that when a request comes in for a JSP page (or a servlet), Apache hands it over to Tomcat for processing. The mechanism for this hand-over is &lt;a href="http://jakarta.apache.org/tomcat/faq/connectors.html"&gt;JK&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;JK vs. JK2&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;JK is a bit confusing. From &lt;a href="http://home.chandlerfamily.org.uk/archive/21/taking-the-java-plunge---setting-up-apache-and-tomcat"&gt;what I've read&lt;/a&gt;, a new refactored version of JK, called JK2, was developed but then went a bit stale. Meanwhile, development of the original JK continued apace, and this is now the recommended mechanism to use. Because of this, there are all sorts of contradictory instructions on the Web for setting up one or the other of these things.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Component version&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;I set up the following versions of the various components:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Apache 2.0.40 (rebuilt with &lt;tt&gt;./configure --enable-so --enable-rule=SHARED_CORE&lt;/tt&gt;)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Tomcat 5.5.9&lt;/li&gt;&lt;br /&gt;&lt;li&gt;jakarta-tomcat-connectors-1.2.13 (i.e. JK, built against the reconfigured Apache).&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;You may find it useful to know that these things play nicely together!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Configuration files&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Once everything is installed, you should be able to use Apache and Tomcat independently.&lt;br /&gt;&lt;br /&gt;If you create an &lt;tt&gt;index.html&lt;/tt&gt; page in your domain's &lt;tt&gt;httpdocs&lt;/tt&gt; directory then&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;tt&gt;http://www.mydomain.com&lt;/tt&gt; should cause Apache to serve up your static &lt;tt&gt;index.hmtl&lt;/tt&gt; page&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;tt&gt;http://www.mydomain.com:8080&lt;/tt&gt; should cause Tomcat to generate and display a default page.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Directory structure&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;At first I intended to put all my JSP files directly into &lt;tt&gt;httpdocs&lt;/tt&gt;. However, if you do this and the tomcat service breaks then Apache may well serve these pages up as plain text; this doesn't seem very secure. Instead I decided to put all my JSP files in a parallel directory called &lt;tt&gt;jsp&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;httpd.conf&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;First, a word of warning. The Apache on the original server was scattered all over, but when I rebuilt it I put it all in one place. This meant that there were two versions of Apache on the machine. Make sure that the correct one is running (&lt;tt&gt;which httpd&lt;/tt&gt; and &lt;tt&gt;which apachectl&lt;/tt&gt; &amp;mdash; you may want to remap these). It's no good changing the config files if the old executable is running and picking up its config files from a different place!&lt;br /&gt;&lt;br /&gt;Append &lt;tt&gt;index.jsp&lt;/tt&gt; to the &lt;tt&gt;DirectoryIndex&lt;/tt&gt; entry, and then add the following block to the end:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;&lt;br /&gt;  LoadModule    jk_module  /usr/local/apache2/modules/mod_jk.so&lt;br /&gt;  JkWorkersFile /usr/local/apache2/conf/workers.properties&lt;br /&gt;  JkLogFile     /var/log/httpd/mod_jk.log&lt;br /&gt;  JkLogLevel    error&lt;br /&gt;  JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "&lt;br /&gt;  JkOptions     +ForwardKeySize +ForwardURICompat -ForwardDirectories&lt;br /&gt;  JkRequestLogFormat     "%w %V %T"&lt;br /&gt;  JkMount  /*.jsp ajp13&lt;br /&gt;  JkMount  /about/*.jsp ajp13&lt;br /&gt;  JkMount  /contact/*.jsp ajp13&lt;br /&gt;  JkMount  /editing/*.jsp ajp13&lt;br /&gt;  JkMount  /references/*.jsp ajp13&lt;br /&gt;  JkMount  /software/*.jsp ajp13&lt;br /&gt;  JkMount  /writing/*.jsp ajp13&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;workers.properties&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;This should be in the same directory as &lt;tt&gt;httpd.conf&lt;/tt&gt;. This defines a single worker called &lt;tt&gt;ajp13&lt;/tt&gt;.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;&lt;br /&gt;workers.tomcat_home=/usr/local/jakarta-tomcat-5&lt;br /&gt;workers.java_home=/usr/java/jdk1.5.0_04&lt;br /&gt;ps=/&lt;br /&gt;worker.list=ajp13&lt;br /&gt;worker.ajp13.port=8009&lt;br /&gt;worker.ajp13.host=localhost&lt;br /&gt;worker.ajp13.type=ajp13&lt;br /&gt;worker.ajp13.lbfactor=1&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;server.xml&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;We need to modify this so that Tomcat listens to mod_jk.so.&lt;br /&gt;&lt;br /&gt;Add this inside the main &lt;tt&gt;&amp;lt;Service ...&amp;gt;&lt;/tt&gt; tag:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;Connector port="8009"&lt;br /&gt;       enableLookups="false" redirectPort="8443" debug="0"&lt;br /&gt;       protocol="AJP/1.3" /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;Listener&lt;br /&gt;       className="org.apache.jk.config.ApacheConfig"&lt;br /&gt;       configHome="/usr/local/jakarta-tomcat-5/"&lt;br /&gt;       modJk="/usr/local/apache2/modules/mod_jk.so"&lt;br /&gt;       jkWorker="ajp13"&lt;br /&gt;       forwardAll="False"&lt;br /&gt;       jkLog="/usr/local/jakarta-tomcat-5/logs/jk-tomcat5.log"&lt;br /&gt;       jkDebug="debug"&lt;br /&gt;       noRoot="False"&lt;br /&gt;       workersConfig="/usr/local/apache2/conf/workers.properties" /&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;and this within the main &lt;tt&gt;&amp;lt;Engine ...&amp;gt;&lt;/tt&gt;:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;Host name="www.myhostname.com"&amp;gt;&lt;br /&gt;    &amp;lt;Context path="" docBase="/home/httpd/vhosts/myhostname.com/jsp" debug="1" reloadable="true"/&amp;gt;&lt;br /&gt;&amp;lt;/Host&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;This sets the document base to the &lt;tt&gt;jsp&lt;/tt&gt; parallel subdirectory.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Final thoughts&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;With this parallel directory scheme, for every subdirectory that you want to use you need to&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;add a &lt;tt&gt;JkMount&lt;/tt&gt; to &lt;tt&gt;httpd.conf&lt;/tt&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;add the directory and its file(s) to &lt;tt&gt;jsp&lt;/tt&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;(if you want automatic mapping to index.jsp) create an empty directory of the same name within &lt;tt&gt;httpdocs&lt;/tt&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;This third point is probably a good idea anyway, since you will need somewhere to put any static content that you want Apache to serve up directly.&lt;br /&gt;&lt;br /&gt;&lt;hr&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Achnowledgements&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I'd like to thank &lt;a href="http://ill-conditioned.stanford.edu/JSPWiki/Wiki.jsp?page=Paul"&gt;Paul Constantine&lt;/a&gt; and &lt;a href="http://home.chandlerfamily.org.uk/"&gt;Alan Chandler&lt;/a&gt; for replying to my frantic post to the &lt;a href="http://jakarta.apache.org/site/mail2.html#Tomcat"&gt;jakarta-tomcat-user&lt;/a&gt; mailing list. Paul's &lt;a href="http://ill-conditioned.stanford.edu/JSPWiki/Wiki.jsp?page=Fedora"&gt;blog entry&lt;/a&gt; helped me over the final hurdle.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112133859891330554?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112133859891330554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112133859891330554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112133859891330554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112133859891330554'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/07/setting-up-tomcat.html' title='Setting up Tomcat'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-112061152297436696</id><published>2005-07-06T01:34:00.000+01:00</published><updated>2005-07-06T02:09:00.536+01:00</updated><title type='text'>Installing Tomcat on a Virtual Dedicated Server</title><content type='html'>I've just installed Tomcat (for running Java) on my &lt;a href="http://www.godaddy.com"&gt;Godaddy&lt;/a&gt; virtual dedicated server.&lt;br /&gt;&lt;br /&gt;There is a &lt;a href="http://www.reliablepenguin.com/clients/misc/tomcat/"&gt;good set of instructions at Reliable Penguin&lt;/a&gt;. Note that the more up-to-date packages are available, so take a look on the web to get the version numbers first.&lt;br /&gt;&lt;br /&gt;There were a couple of extra steps I needed to do.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;1. autoconf&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;Install &lt;a href="http://www.gnu.org/software/autoconf"&gt;autoconf&lt;/a&gt;, which wasn't on the server.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;2. Getting java to work on the virtual server&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;Java didn't want to play. Running &lt;tt&gt;java&lt;/tt&gt; or &lt;tt&gt;javac&lt;/tt&gt; was causing 'Out of memory' errors. This is due to the way memory management works on the virtual shared server.&lt;br /&gt;&lt;br /&gt;The trick is to rename the executables and to create scripts in their place:&lt;br /&gt;&lt;br /&gt;&lt;H3&gt;java&lt;/H3&gt;&lt;br /&gt;&lt;tt&gt;$JAVA_HOME/bin/java.exe -Xms64M -Xmx512M $1 $2 $3 $4 $5 $6 $7 $8 $9&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;&lt;H3&gt;javac&lt;/H3&gt;&lt;br /&gt;&lt;tt&gt;$JAVA_HOME/bin/javac.exe -J-mx512m $1 $2 $3 $4 $5 $6 $7 $8 $9&lt;/tt&gt;&lt;br /&gt;&lt;br /&gt;It would be nice if there was an environment variable (such as &lt;tt&gt;JAVA_FLAGS&lt;/tt&gt;) you could set to do this. Thankfully, this approach seems to work.&lt;br /&gt;&lt;br /&gt;(Tip: You can do a similar thing on Windows by renaming &lt;tt&gt;notepad.exe&lt;/tt&gt; and creating a &lt;tt&gt;notepad.bat&lt;/tt&gt; that loads the editor of your choice &amp;mdash; such as &lt;a href="www.vim.org"&gt;Vim&lt;/a&gt;. Then, when you do a &lt;b&gt;View&lt;/b&gt;, &lt;b&gt;Source&lt;/b&gt; in IE you get your editor instead of Notepad.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-112061152297436696?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/112061152297436696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=112061152297436696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112061152297436696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/112061152297436696'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/07/installing-tomcat-on-virtual-dedicated.html' title='Installing Tomcat on a Virtual Dedicated Server'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111921870118186263</id><published>2005-06-19T22:44:00.000+01:00</published><updated>2005-07-14T12:25:39.053+01:00</updated><title type='text'>MS Office Bug/Feature #7: Style Gallery preview stops working</title><content type='html'>In Word 2003 you can import styles from a template using the Style Gallery. You can access it via &lt;span style="font-weight:bold;"&gt;Format&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Theme&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Style Gallery&lt;/span&gt; (or &lt;span style="font-weight:bold;"&gt;Format&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;AutoFormat&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Autoformat and review each change&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Style Gallery&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;The Style Gallery has a preview area that is supposed to update as you choose different templates from the list on the left. However, this preview was broken on my version of Word &amp;ndash; the preview didn't reflect the template, and &lt;span style="font-weight:bold;"&gt;Example&lt;/span&gt; and &lt;span style="font-weight:bold;"&gt;Style sample&lt;/span&gt; options just gave a message that the selected template didn't have such things available. Even though the preview didn't work, selecting a template and pressing &lt;span style="font-weight:bold;"&gt;OK&lt;/span&gt; did import the correct styles.&lt;br /&gt;&lt;br /&gt;In trying to track down the problem I've seen a few newsgroup posts from people with the same problem, but no solutions.&lt;br /&gt;&lt;br /&gt;I've finally worked out how to fix the problem (although not why it happened &amp;mdash; look like it might be a bug). Basically it's the setting for the user templates directory (&lt;span style="font-weight:bold;"&gt;Tools&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;Options&lt;/span&gt;, &lt;span style="font-weight:bold;"&gt;File locations&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;When this was set to &lt;code&gt;C:\Documents and Settings\[User Name]\Application Data\Microsoft\Templates&lt;/code&gt; the preview didn't work. When I changed it to &lt;code&gt;C:\Program Files\Microsoft Office\Templates&lt;/code&gt; it started working. Since the location of user templates shouldn't affect where Word thinks the standard templates are stored, I'm not sure why this works. But it seems to fix the problem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111921870118186263?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111921870118186263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111921870118186263' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111921870118186263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111921870118186263'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/06/ms-office-bugfeature-7-style-gallery.html' title='MS Office Bug/Feature #7: Style Gallery preview stops working'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111772941099790464</id><published>2005-06-02T17:17:00.000+01:00</published><updated>2005-06-02T17:37:02.116+01:00</updated><title type='text'>MS Office Bug/Feature #6: Changing the page number format for multiple sections</title><content type='html'>It can be handy to use Insert-&gt;Page Numbers to quickly add page numbers to a document.&lt;br /&gt;&lt;br /&gt;Once you have added page numbers, you can use Insert-&gt;Page Numbers again to change the format (for example to i, ii, iii, ... for front matter).&lt;br /&gt;&lt;BLOCKQUOTE&gt;&lt;br /&gt;&lt;OL&gt;&lt;br /&gt;&lt;LI&gt;If your document is divided into sections (section: A portion of a document in which you set certain page formatting options. You create a new section when you want to change such properties as line numbering, number of columns, or headers and footers.), click in a section &lt;B&gt;or select multiple sections&lt;/B&gt; in which you want to change the page number format. &lt;br /&gt;&lt;LI&gt;On the Insert menu, click Page Numbers. &lt;br /&gt;&lt;LI&gt;Click Format. &lt;br /&gt;&lt;LI&gt;In the Number format box, click the format you want. &lt;br /&gt;&lt;/OL&gt;&lt;br /&gt;&lt;/BLOCKQUOTE&gt;&lt;br /&gt;The online help suggests that you can select multiple sections and apply the change to all of them together. In practice, it seems that only the section at the end of the selection has the change applied.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111772941099790464?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111772941099790464/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111772941099790464' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111772941099790464'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111772941099790464'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/06/ms-office-bugfeature-6-changing-page.html' title='MS Office Bug/Feature #6: Changing the page number format for multiple sections'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111490900264399838</id><published>2005-05-01T01:30:00.000+01:00</published><updated>2005-05-01T01:56:42.646+01:00</updated><title type='text'>MS Office Bug/Feature #5: Cumulative toolbars in Excel</title><content type='html'>When you create a custom toolbar in Word, you specify its scope at that point. In other words, where do you want to save it? &lt;code&gt;Normal.dot&lt;/code&gt;, &lt;code&gt;some_other.dot&lt;/code&gt;, &lt;code&gt;this_document.doc&lt;/code&gt;?&lt;br /&gt;&lt;br /&gt;In Excel, things work slightly differently.&lt;br /&gt;&lt;br /&gt;Suppose you create a custom toolbar with some fairly obscure macro buttons on it. These might be of no use outside of a particular workbook, so you want the toolbar to appear when this specific workbook is opened, and to disappear again when the workbook is closed. &lt;br /&gt;&lt;br /&gt;When you create a new toolbar in Excel, it becomes part of Excel's workspace by default. If you want it to live inside a particular workbook you must attach it to that workbook, and you can then delete it from the Excel workspace. OK, sounds good.&lt;br /&gt;&lt;br /&gt;What happens is that when you open this workbook the toolbar appears. Cool. You then close the workbook. The toolbar hangs around. Er, not cool.&lt;br /&gt;&lt;br /&gt;As explained here &lt;A HREF="http://www.microsoft.com/exceldev/articles/toolbatt.htm"&gt;http://www.microsoft.com/exceldev/articles/toolbatt.htm&lt;/A&gt;, if you want to change an embedded toolbar you have to unlink, change, and link again, otherwise you are likely to lose your changes.&lt;br /&gt;&lt;br /&gt;The summary is as follows:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;Remember that if you want a custom toolbar to be available only to your custom workbook or to a workbook based on your custom template, you must delete the toolbar each time the workbook is closed.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;That's not very realistic, now, is it!&lt;br /&gt;&lt;br /&gt;You could probably write a macro that is activated onClose for your workbook and deletes the toolbar from the workspace in an attempt to tidy up after itself. This doesn't sound very safe to me.&lt;br /&gt;&lt;br /&gt;All in all, this isn't a show-stopper of a problem. However, if you're trying to train people how to create toolbars in Excel, things are likely to get messy: the trainees are much more likely to run into toolbars that already exist with the same name as the toolbar they are trying to create, put there by previous trainees running through the same course.&lt;br /&gt;&lt;br /&gt;In any case, anyone who has to deal with lots of spreadsheets from various sources is just going to find that the accumulate unknown and unwanted toolbars over time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111490900264399838?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111490900264399838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111490900264399838' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111490900264399838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111490900264399838'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/05/ms-office-bugfeature-5-cumulative.html' title='MS Office Bug/Feature #5: Cumulative toolbars in Excel'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111281942742937194</id><published>2005-04-06T21:25:00.000+01:00</published><updated>2005-04-06T21:30:27.430+01:00</updated><title type='text'>MS Office Bug/Feature #4: Excel pie chart size</title><content type='html'>Excel lets you resize pie charts, but limits their minimum size. Why, I don't really know, unless they could otherwise disappear to a single dot that would be difficult to bring back.&lt;br /&gt;&lt;br /&gt;Anyway, here is a 'slight hack' that lets you shrink a pie chart that little bit further (for example, if you have an interesting background image that you don't want to have obscured):&lt;br /&gt;&lt;br /&gt;&lt;UL&gt;&lt;br /&gt;&lt;LI&gt;Add a corner legend. This automatically shrinks the pie.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Delete the legend. This leaves the pie chart at the size to which it was automatically shrunk.&lt;/LI&gt;&lt;br /&gt;&lt;/UL&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111281942742937194?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111281942742937194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111281942742937194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111281942742937194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111281942742937194'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/04/ms-office-bugfeature-4-excel-pie-chart.html' title='MS Office Bug/Feature #4: Excel pie chart size'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111139829286774712</id><published>2005-03-21T08:48:00.000Z</published><updated>2005-03-21T09:44:52.870Z</updated><title type='text'>Thunderbird vs. Pegasus Mail</title><content type='html'>Since I've just bought a new PC, and I'll have to go through the process of reinstalling my software, I thought I'd have a look at the Thunderbird email client to see if it was worth switching away from Pegasus Mail. This blog lists a few reasons why I won't be making the switch just yet.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Why was I thinking of switching?&lt;/H2&gt;&lt;br /&gt;Pegasus feels a bit old fashioned these days. It's fair enough, given its long heritage, but I wondered if this new tool (which people have been raving about) had more to offer.&lt;br /&gt;&lt;br /&gt;Also, I use Demon's Web-mail reader. It would be useful if I could get my email client to update the 'read' flag of new messages according to whether they have been read on the server. Demon has a home-grown facility to suppport this (basically, you have to query the server for each email and ask if it has been read). Pretty straightforward, but something I'll have to write myself unless some kind soul has done so already. I thought that this might only be possible with an open source email client.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Things that Pegasus does and Thunderbird doesn't (yet)&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;&lt;UL&gt;&lt;br /&gt;&lt;LI&gt;Colouring email headings according to rules. Outlook doesn't (or didn't, last time I checked) allow this either, but it's useful. You can use flags, but I prefer colours.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Filtering messages. Pegasus can't be beaten on this: you can perform pretty much any action either when you first download email or when you close the new mail folder.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Custom reply templates.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;The ability to look at the email headers before choosing which, if any, to download.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;I don't want auto-preview. I couldn't see a way to turn this off in Thunderbird.&lt;/LI&gt;&lt;br /&gt;&lt;/UL&gt;&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Things I did like about Thunderbird&lt;/H2&gt;&lt;br /&gt;&lt;UL&gt;&lt;br /&gt;&lt;LI&gt;Using coloured vertical lines to show quoted text levels. There is also an extension that allows these to be compressed as a tree.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;Built-in news reader.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;It has a Bayesian spam filter, which looks promising.&lt;/LI&gt;&lt;br /&gt;&lt;/UL&gt;&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Migration path&lt;/H2&gt;&lt;br /&gt;It's also worth noting that the migration path from Pegasus to Thunderbird may not be straightforward. I think you would have to export from Pegasus to Eudora format, using a separate utility (&lt;A href="http://www.dendarii.co.uk/FAQs/pmail-addons.html"&gt;ECONV&lt;/A&gt;), and then import that into Thunderbird.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Conclusion&lt;/H2&gt;&lt;br /&gt;I would expect Thunderbird to continue to get better, and to improve at a faster rate than Pegasus Mail. However, it has a lot of catching up to do. Whether I ever make the switch will probably be determined by the Thunderbird features available as plug-ins, rather than the core functionality &amp;mdash; as a power user, some of the things I find very important are a bit obscure for most users.&lt;br /&gt;&lt;br /&gt;There is a development kit available for people wanting to write Pegasus Mail plug-ins, so I'll have to look into whether that allows me to write the 'read' flag toggler I want.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111139829286774712?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111139829286774712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111139829286774712' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111139829286774712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111139829286774712'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/03/thunderbird-vs-pegasus-mail.html' title='Thunderbird vs. Pegasus Mail'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-111054480864013527</id><published>2005-03-11T12:32:00.000Z</published><updated>2005-03-11T12:40:08.640Z</updated><title type='text'>MS Office Bug/Feature #3: Absolute vs. relative hyperlinks</title><content type='html'>If you create two documents in the same folder, and add hyperlinks between them (just by browsing to the file each time, not by adding a full URL), then:&lt;br /&gt;&lt;br /&gt;&lt;UL&gt;&lt;br /&gt;&lt;LI&gt;If you save the files as .mht (web page complete) then the hyperlinks will be &lt;strong&gt;absolute&lt;/strong&gt;. If you rename the directory containing the files, the links will stop working.&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;If you save the files as .htm (web page) then the hyperlinks will be &lt;strong&gt;relative&lt;/strong&gt;. This is surely what you want.&lt;br /&gt;&lt;/UL&gt;&lt;br /&gt;&lt;br /&gt;I doubt that this is a bug, but I don't understand the rationale behind how it works. The sensible default, and the one used when saving as htm, is to make all of the local links relative. If you need to override this, you can type in the full path name instead of just selecting the file.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-111054480864013527?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/111054480864013527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=111054480864013527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111054480864013527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/111054480864013527'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/03/ms-office-bugfeature-3-absolute-vs.html' title='MS Office Bug/Feature #3: Absolute vs. relative hyperlinks'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-110937218718579679</id><published>2005-02-25T22:43:00.000Z</published><updated>2005-02-25T22:56:27.186Z</updated><title type='text'>MS Office Bug/Feature #2: Styles in headers and footers</title><content type='html'>In Word, it's useful to be able to rationalise the styles that a document uses by deleting unused styles.&lt;br /&gt;&lt;br /&gt;In the Styles and Formatting task pane, if you open the drop-down list associated with a style then it will say either &lt;B&gt;Select All 3 Instance(s)&lt;/B&gt; or &lt;B&gt;Select All: Not Currently Used&lt;/B&gt;.&lt;br /&gt;&lt;br /&gt;The problem is, Word doesn't count styles used in headers and footers. You can understand why, since it couldn't select all of those instances, but it is rather misleading to say certain styles aren't used when they might actually be used in the header or footer. Of course, if you delete such a style, believing that it isn't used, then the formatting in the header/footer will be lost.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-110937218718579679?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/110937218718579679/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=110937218718579679' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/110937218718579679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/110937218718579679'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/02/ms-office-bugfeature-2-styles-in.html' title='MS Office Bug/Feature #2: Styles in headers and footers'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-110934266448720350</id><published>2005-02-25T14:33:00.000Z</published><updated>2005-02-25T14:44:24.490Z</updated><title type='text'>MS Office Bug/Feature #1: AutoShapes</title><content type='html'>If you set the fill colour of an AutoShape to No Fill then you can no longer select that shape by clicking on its body area; instead, you have to click its outline.&lt;br /&gt;&lt;br /&gt;If you additionally make the line colour No Line then you still have to click the line (even though you can't see it) to select the shape. It might have been better in those circumstances to revert the behaviour so that you can click anywhere in the shape.&lt;br /&gt;&lt;br /&gt;It's not too bad if the invisible shape does not fall within the bounds of an object with a fill colour, since the mouse pointer changes to a four-headed arrow as you move it over the inner shape's border; however, if it is bounded, then the four-headed arrow appears over the whole area of the outer shape.&lt;br /&gt;&lt;br /&gt;You might wonder what the point is of having a shape with no line and no fill. One example situation where this is useful is to create a clickable area over an image in PowerPoint that acts as a link to elsewhere in the presentation.&lt;br /&gt;&lt;br /&gt;The only ways that I know of to select the inner shape are (1) trial and error, trying to click on its border, and (2) selecting everything and then deselecting everything else, which can be long-winded if there are lots of shapes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-110934266448720350?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/110934266448720350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=110934266448720350' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/110934266448720350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/110934266448720350'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2005/02/ms-office-bugfeature-1-autoshapes.html' title='MS Office Bug/Feature #1: AutoShapes'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-109655342106615021</id><published>2004-09-30T14:51:00.000+01:00</published><updated>2004-09-30T15:10:49.120+01:00</updated><title type='text'>Nominet and .co.uk domains—some notes</title><content type='html'>&lt;h1&gt;Registering Multiple Domains&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;If you register multiple .co.uk (.org.uk, ...) domains at the same time, you will most likely hear nothing from Nominet for at least 18 months. You will then receive a slew of A4 envelopes in the post, one per domain, containing certificates and paperwork that you need to fill in and return to them.&lt;br /&gt;&lt;br /&gt;If you have lots of domains to register at the same time, this form-filling will get very repetitive and annoying. I'm working on an InDesign template that will allow you to print out your details directly onto the form.&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;Transferring Domains&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;When you receive the certificate for a domain, you get a transfer form with it. There are two aspects to domain name ownership in the UK: (1) administration access to the domain name, held with a domain name registrar, which allows you to control the web space and email day-to-day running of the domain, and (2) the Nominet record of who owns the domain. If the &lt;code&gt;whois&lt;/code&gt; record of a domain and the information held by Nominet disagree then it is very likely that the Nominet information takes precedence. The purpose of the transfer form is to update the records held by Nominet.&lt;br /&gt;&lt;br /&gt;What is not clear in advance is that there is a charge for this service&amp;mdash;currently £35.25 (inc. VAT). This seems fair enough if the domain name is worth having, and you want to protect yourself in case the original owner later disputes the transfer.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Warning&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Be sure that the domain has plenty of time left to run before it expires. You can renew a domain for about £5 for two years through many different registration agents; however, if you renew the domain via Nominet at the same time as the transfer it will cost you £129.25&amp;nbsp;&amp;ndash;&amp;nbsp;£35.25&amp;nbsp;=&amp;nbsp;£94. Your choice :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-109655342106615021?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/109655342106615021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=109655342106615021' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/109655342106615021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/109655342106615021'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2004/09/nominet-and-couk-domainssome-notes.html' title='Nominet and .co.uk domains&amp;mdash;some notes'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8157833.post-109404083644439993</id><published>2004-09-01T13:02:00.000+01:00</published><updated>2004-09-01T14:55:21.930+01:00</updated><title type='text'>Evaluating ClearCase UCM</title><content type='html'>I recently had to load evaluation versions of Rational ClearCase and ClearQuest in order to prepare some training material on how to use them.&lt;br /&gt;&lt;br /&gt;Although a full deployment of these CM tools would generally be client-server based, for evaluation purposes I wanted to load both ClearCase and ClearQuest onto a single stand-alone machine, and have them communicate. There were some stumbling blocks, which I present below.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Feature #1&lt;/b&gt;: ClearCase asks &lt;em&gt;only once&lt;/em&gt; for details about the ClearQuest database with which it should integrate. If you get this wrong, or need to change it, you have to &lt;a href="http://www-1.ibm.com/support/docview.wss?uid=swg21135368"&gt;mess about in the registry&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Feature #2&lt;/b&gt;: ClearCase suddenly stops being able to communicate with ClearQuest, for no apparent reason. For example, when doing a rebase operation, you get the error message "&lt;i&gt;An error occurred during the Rebase operation. Unable to connect the integration activity to ClearQuest&lt;/i&gt;" or "&lt;i&gt;Unable to logon to ClearQuest user database '...'. Unable to connect the integration activity to ClearQuest. Unable to create integration activity. Unable to perform integration.&lt;/i&gt;". It turns out that the problem is due to an unwanted dialog box appearing when you start ClearQuest, because the evaluation licence is close to expiring! The solution is to &lt;a href="http://www-1.ibm.com/support/docview.wss?rs=984&amp;context=SSSH27&amp;q1=138323244&amp;uid=swg21130562&amp;loc=en_US&amp;cs=utf-8&amp;lang=en"&gt;turn off this warning dialog box&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Books&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;There are two main books, both published by Addison Wesley, that provide some assistance:&lt;br /&gt;&lt;br /&gt;&lt;OL&gt;&lt;br /&gt;&lt;br /&gt;&lt;LI&gt;&lt;A HREF="http://www.amazon.co.uk/exec/obidos/ASIN/0201604787/alldotnocomcom"&gt;Software Configuration Management Strategies and Rational ClearCase: a practical introduction&lt;/A&gt; by Brian A. White&lt;br /&gt;&lt;br /&gt;&lt;LI&gt;&lt;A HREF="http://www.amazon.co.uk/exec/obidos/ASIN/0321262204/alldotnocomcom"&gt;The Art of Clearcase Deployment: the secrets to successful implementation&lt;/A&gt; by Christian D. Buckley and Darren W. Pulsipher&lt;br /&gt;&lt;br /&gt;&lt;/OL&gt;&lt;br /&gt;&lt;br /&gt;The main problem with these books is that they (understandably) cover all bases: 'basic' Clearcase vs. ClearCase UCM, Windows vs. Unix. In my case, I was interested in only ClearCase UCM under Windows, so a lot of the information was not of interest, and some of it was downright confusing.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;In Conclusion...&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I happily admit that I don't like Rational tools (apart from RequisitePro, which is a little gem); ClearCase and ClearQuest seem to come from the same stable as Rational Rose, where you can probably do anything you need to do, but have to go right round the houses to get there! This software has a distinct "not finished" feel to it. It's only worth evaluating if you need the features that set ClearCase apart from other CM tools (distributed development, dynamic views), and are going to be able to afford to buy plenty of support.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8157833-109404083644439993?l=philoxenic.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://philoxenic.blogspot.com/feeds/109404083644439993/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8157833&amp;postID=109404083644439993' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/109404083644439993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8157833/posts/default/109404083644439993'/><link rel='alternate' type='text/html' href='http://philoxenic.blogspot.com/2004/09/evaluating-clearcase-ucm.html' title='Evaluating ClearCase UCM'/><author><name>philoxenic.com</name><uri>http://www.blogger.com/profile/13721619629401201675</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
