Rainmeter 3.1 review: Customize your desktop with “smarter” skins
By Andy Patrizio
At a Glance
Skins are now actionable
New commands will make skins computational and not just display modules
Continued migration from GDI+ to 2D means more attractive skins
Documentation remains newbie-unfriendly
The learning curve to create skins is still pretty steep
A great tool for creating interactive desktop customizations.
You may have heard of Rainmeter, the desktop customization tool that lets you display all kinds of information on your PC desktop in a much smoother and more elegant manner than Windows 8 ever did. The problem was that Rainmeter wasn’t really interactive in the way Windows 8 apps are. Well, that’s about to change.
The group behind Rainmeter, all volunteers who work on the app through an open source project on SourceForge, have released version 3.1, and for a point release it’s got some major updates. Rainmeter is going from mere display to a more computational app and that will change the face of your desktop in multiple ways.
According to Jeff Morley, one of its developers, Rainmeter is a simple idea: It “measures” things—time, CPU usage, temperature, drive space, network activity, unread emails, the current weather, and more. It displays the results, using very customizable string, image, bar, histogram, and other “meters.” But new features are set to expand on the tool’s capabilities.
With 3.1, Rainmeter is getting smarter. Chief among its new features is the IfConditions functionality, a partner to IfActions. You can use these two features to create “if this then x action, else then y action” constructs. A simple example might be if the current CPU usage is lower than 10 percent, set the display font color to green. If it is between 11 and 50 percent, set the font color to yellow. If it is greater than 51 percent, set the font color to red. You can have as many of these IFConditions and IfTrue/IfFalse actions as you want on a single measure.
Skins can also check the day of the week and display different information. For example, if you have a weekly event every Tuesday, IfConditions can check the day of the week, and if it’s Tuesday, your calendar skin can remind you of your weekly event. If it’s Saturday or Sunday, then you can set a skin to take a different action for the weekend than it would during the week.
Another string, a sister to IfConditions, is IfMatchAction. It can be thought of as IfConditions for strings. Where IfCondition evaluates a mathematical test as “true” or “false,” IfMatchAction does exactly the same thing for textual strings. Again, you can take actions, and as many as you want, based on the string match being true or false.
While it can be a simple checking to see if the string value of a measure equals “‘Wednesday,” the real power of IfMatchAction is that it uses Perl Compatible Regular Expressions to do the comparisons. This gives Rainmeter a lot more versatility of use. It can extract information from any web page or local file and act on that information in a multitude of ways, from merely displaying it to performing actions based on what it finds to finding text within strings. There is also a matched IfNoMatchAction, which handles a case where a string or text is not found.
Between IfConditions and IfMatchAction, Rainmeter skins will be more interactive with users and more computational. Right now, Rainmeter does one thing: display information. It displays either PC information—CPU usage, network traffic, disk space available—or information it downloads, like weather, from Internet sources. All that’s left now is for skin designers to learn how to use these new features.
LAN_CONNECTIVITY and INTERNET_CONNECTIVITY are new features of the SysInfo plugin, which extracts all of the hardware and software information about your system. This basically checks that you have a LAN and Internet connection and uses the same methods that Windows does to control the little network icon displayed in the system notification area.
You can then use IfConditions or IfActions on the measure to have a skin react to the network and/or Internet connectivity status to pop up a window saying LAN or Internet has been lost. This is a lot better than that little yellow triangle in the system tray on the lower right.
There are a few minor features new to 3.1 as well. The IDLE_TIME SysInfoType in a SysInfo plugin that will return the number of seconds since the last user input (mouse or keyboard) to the operating system. The !SkinCustomMenu bang will display user-defined context menu items instead of the normal skin context menu. Finally, 3.1 adds support for opening the Windows properties or context menu dialogs for file or folder objects using the FileView plugin.
Skins using the new functionality are still in the works as developers slowly learn how they work. The Rainmeter forums host a variety of skins you can use, plus there are a number of third-party sites where skins can be found, chief among them Deviant Art. If you need help, there is documentation on the Rainmeter site, the forum is quite helpful, and we have our own guide to setting up the software on your system.