Ran across this useful utility since I’m loading a ton of fonts on my XP laptop (Windows 7 already has this kind of thing built-in). It adds a context menu entry to load/unload or install/uninstall fonts when you right-click font filetypes. Nifty.
Warning, though. It installs the fonts in-place, rather than moving them to the Windows fonts directory. This means two things: put them in their own folder, like My Documents\Fonts, and don’t delete them.
I only realized that after I installed them, so I moved the files then edited the registry key HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Fonts to repoint the file locations.
It also supports adding a register/unregister dll context menu entry, something I’ve done with manual registry hacks before. That’s cool.
Just a quick note. I've been trying to find a tool to tweak google sitemaps and did an off-the-cuff (read, not thorough) comparison of several free sitemap generators.
The best one seems to be GSiteMapper. It is fairly sophisticated about what it includes and doesn't include, checking with Google for what is already indexed, respects robots.txt, handles session IDs, etc, etc. Note it must run as administrator under Windows 7 or else it just sits there doing nothing while it is trying to crawl your site.
Ok, well, this isn't the most likely thing you'll need to do today, but I needed to put a four-place version number on an executable built with VB6. Unfortunately, VB6 only used three of the four place-numbers for versions. I've been looking for a solution to this for a while, and thought I had one when I came across vbAdvance, but unfortunately vbAdvance only seems to work while you are in the IDE. Invoking the IDE to make from the command line won't load and use vbAdvance's versioning, even when you tick the optional "command-line" box in the add-in page.
There are a number of resource editors out there that will change executable properties after the compilation step, but they are either commercial, complicated or not command-line.
I finally ran across a simple command-line freeware tool to do just this one thing, called stampver. You can find it discussed at http://www.codeguru.com/tools/standalonetools/article.php/c1403. It seems to be doing the trick perfectly, so far. I'm a little anxious about fussing with a file after compilation, but I don't have any other good options at the moment.
The two things to note about stampver: First, it stamps the file and product version attributes separately, so I've had to run it twice on each file, one for each. Second, the version stamped can be no more places than the string already compiled into the executable. This means you need to set extra places in a three-place version if you want space for four places after it has been compiled. I did this by setting all three places to '9999'.
One of the great things about Python is exploratory programming, the ability to “dry run” your logic and even design it while working within the interactive interpreter.
The usual Python console is fine for this, although some amenities are missing such as code completion suggestions. Many more sophisticated options exist as well, such as the excellent IPython, which is basically an interactive console session on steroids.
Don’t get me wrong, IPython is fantastic, however, I’m a bit more GUI in my old age and I like having a variable list available in some corner window of my session. I’ve always had a dissatisfaction with the GUI Python environments, however. My former favorite was PyCrust, which is packaged along with the also-excellent wxPython. It is nothing more than an interactive shell with a couple of those amenities like a variable list. However, if you don’t do GUI programming much, wxPython is a heavy piece of software to install simply for the shell.
So I’ve tooled along with the interactive interpreter in Pydev, which is itself another piece of software I can heartily recommend. As an IDE, while I am not entirely satisfied with the cobbled feel of it, Eclipse+Pydev is the best free option for a solid Python development environment that I’ve found. Again, it’s pretty heavy for just a shell, but since that’s not what it’s primarily used for, you get the shell for free.
Unfortunately, Pydev’s interactive console functionality lags its other features, and it doesn’t have live watches in another pane of the IDE. That’s ok, though, because there is a great alternative.
Whenever I need to do some Python development in a new environment, I don’t go through all the hassle of setting up Eclipse+Pydev. Believe me, it takes a while. There is a fantastic lightweight Python IDE that, as luck would have it, makes a great interactive console environment as well. That’s PyScripter. It’s developed in Delphi, meaning it’s fast and the GUI is very functional, while still having a small footprint and packing a lot of power. If I didn’t like Pydev’s integration with source control and Pylint so much, I’d be using PyScripter (PyScripter also has Pylint integration, but it’s not automated). While there are a lot of other good free Python IDE’s, and if were earning money with Python software development I might be willing to purchase ActiveState Komodo, PyScripter is a welcome balance of power and ease.
A note on setup. PyScripter allows different layouts via drag-and-drop. I put an interactive pane side-by-side with the editor pane by dragging the Python Interpreter tab up from the multi-tabbed pane. You also want to use the Remote Python Interpreter configuration, which requires an older version of the Rpyc library. That library is available in the downloads section of the PyScripter website. Just unzip it and put it in Python’s lib\site-packages directory. Finally, the wiki portion of the PyScripter website has themes you can download, if you don’t like the available UI looks. I like the Vista Blue download.
I recently converted my work machine to Windows 7, which is so far a good experience and one I’m happy with. In the process, I gained a few new software tools and shed some old ones. Here’s the list of what I consider the essentials for my environment on Windows 7 (not including those from Microsoft Update):
If this were a home machine, MozyHome Free would also be on the list. I also have some tools, such as Visual Studio, installed on a separate machine, so those don’t make the list.
One interesting thing I learned during this experience is to not use the download links provided by Google when searching for a product. More than one site had an old download link listed by Google, while visiting the main site search result and drilling to the downloads from there provided the most recent version. Caveat emptor.
Another pleasant surprise was CubicExplorer. While it lacks the dual-pane feature I like, it is otherwise a fine Windows Explorer substitute. I have used several other programs, most recently UltraExplorer and before that xplorer2, but have always become frustrated with some lack of polish in this area. CubicExplorer is simple and it works, while offering some nifty conveniences such as bookmarks that are simple to manage and, my new personal favorite, the ability to show the sort headers in any view style, details or not. Nice.