Rainmeter Editor's Review
One of the areas where Windows 7 noticeably improves things as opposed to Windows XP (and Vista) is the visual customization. But what if, instead of the default widgets, you want to try something else. Let’s say a third party software that is focused on managing desktop gadgets, skins and even themes. Rainmeter is the perfect example for such a demand and its latest version 2.1 proves one more time its detailed and comprehensive approach towards dektop customization.
Rainmeter comes with a variety of handy applets that can provide useful information such as weather, RSS feeds, calendar, e-mail, news, notes, clock, and much more. Moreover, you can view stats of your computer components such as CPU usage, download and upload speed, hard-drive condition, RAM usage and much more. With version 2.1 comes also the option to control your audio player directly from the Now Playing tool which can be activated and located on any Rainmeter layer. It support any player including the popular AIMP, Foobar2000, iTunes, MediaMonkey, MusicBee, Winamp, VLC Media Player, or Windows Media Player.
Rainmeter comes with a default theme called "Illusto" and optionally, three other different (recommended) theme suites, "Enigma", "Gnometer" and "APB". All list themes are gorgeous and highly customizable. However, for those who aren't crazy about these themes, there is a wide variety of themes around the Internet thanks to the enthusiastic community of fans. Features also vary from theme to theme but they can be reconfigured in many ways, as each individual module can be dragged and dropped anywhere wherever you want on the screen.
If you're using Rainmeter for the first time, you should install the Recommended themes: Enigma, Gnometer and APB. To change between these themes, right click Rainmeter's system tray icon and go to themes. In there, you should see all the installed themes. To add, remove or configure a gadget of your current theme, right-click on the Rainmeter skin and from there, you can change the skin, edit skin parameters, change skin position, add other widgets (such as clock, disk, feeds, network, weather, Facebook, Twitter, etc) and much more.
Pluses: Free; open-source skins; enthusiastic community; highly customizable;
Drawbacks / flaws: Quite hard to understand and configure. You'll have to spend some time reading the documentation if you want to use this program at full power.
In conclusion: Rainmeter is a highly customizable desktop platform that allows you to add and drag around sidebar gadgets that can offer you all the information that you need: feeds, tweets, Facebook, calendar, mail, network, notes, system and much more.
version reviewed: 2.1
RELEASE OF RAINMETER 2.1
Fixed that using '!Execute [""]' opens program folder (results in no action now)
NowPlayingPlugin: Fixed a bug with "SetVolume=100" and Winamp
September 11, 2011
Manage Skins: Load order can now be changed.
Errors that used to pop up messagebox are now logged and shown in the About Log dialog.
Added #CURRENTFILE# variable.
This will return the file name of the currently loaded .ini file. Path is not included, but can be obtained with #CURRENTPATH##CURRENTFILE#.
NowPlayingPlugin: Added SHUFFLE and REPEAT types and accompanying SetShuffle and SetRepeat bangs.
Read manual entry for usage instructions. VLC users should install the libcad_plugin 1.0.1 update and foobar2000 users should install the foo_rainmeter.dll 1.0.3 update.
September 4, 2011
Added the ability to use Ctrl Key to override mouse actions on skin or in Rainmeter.ini.
Bug fixes and additional functionality for Manager and About.
August 28, 2011
Added new "Manager" functionality,
Changes to the "About" dialog.
Changes to "Metadata" fields.
DEBUG messages from plugins are now only logged if Debug= is set on the skin or Rainmeter.
Details are Here.
August 21, 2011
Added a new Magic Quote feature, consisting of three quotes """. This will allow you to "escape" quotes you need to send in a bang to Rainmeter.
WebParser: Errors and warnings are now logged as errors and warnings (instead of as debug).
NowPlayingPlugin: Minor changes, fix to "current track functionality".
August 14, 2011
Changed print() function in Lua to allow printing tables in to log columns.
Fix for "On Desktop" to better work with "Show Desktop" in Windows.
Changes Rainstaller, RainThemes, RainBrowser and RainBackup to correct an issue where %APPDATA% was not being found consistently.
Fix for Rainstaller to correct a UAC issue on some user's systems.
August 7, 2011
Several minor bug fixes for Lua scripting functionality.
Tweak to performance when writing network statistics.
Fix for Cumulative=1 on Net/xx measures not working correctly.
July 31, 2011
Added new !SetOption / !SetOptionGroup bangs.
Allows changing most "settings" on a measure or meter via a bang. Note that DynamicVariables=1 is NOT required to use this functionality.
!SetOption [Meter] [Option] [Value] (Config)
!SetOption [Measure] [Option] [Value] (Config)
!SetOptionGroup [Group] [Option] [Value] (Config)
!SetOption "MeterOne" "FontSize" 11
!SetOption "MeasureOne" "Formula" "((MeasureTwo * 4)/10)"
Added new Meter:GetOption() / Measure:GetOption() functions to Lua scipting.
Allows a Lua script to retrieve most "settings" from any measure or meter in a skin.
MyMeter = SKIN:GetMeter("MeterOne")
MyMeasure = SKIN:GetMeter("MeasureOne")
Added support for Regular Expressions in Substitute on all measures.
Allows using Regular Expressions to replace values returned by a measure.
Requires RegExpSubstitute=1 on the measure. See Manual Page for details
Added ability to "escape" real variables and measures as follows: #*RealVar*# / [*RealMeasure*]
This allows a "literal" #VarName# or [MeasureName] to be used without Rainmeter resolving them to their values.
A case where this would be useful is to use the new !SetOption to set a meter's "FontColor" to literally #SomeOtherColor#, which is defined in [Variables] instead of having what is set resolved to the current value of #SomeOtherColor#.
Script: Fixed Lua crash on refresh when Update() in the script has an error.
Script: Fixed that the value of the Script measure is not reset when an error occurs.
Script: Fixed that AutoScale/Scale/Percentual/NumOfDecimals were not applied for MeasureName=ScriptMeasure
Fixed that the OpenPlayer bang didn't work correctly since r848
Fixed that the "SetPosition +n" bang didn't work correctly
OpenPlayer bang with foobar2000 now opens foobar2000 maximized regardless of previous state
Fixed that Rainmeter crashes when  is in bang. E.g. !SetVariable test "blaa"
July 24, 2011
Several improvements to the NowPlaying plugin:
Track title was not updating when playing a radio stream with Winamp.
foobar2000: Added support for the SetPosition bang (foo_rainmeter.dll 1.0.1 required)
foobar2000: Fixed that TITLE/ARTIST/ALBUM was a space when empty (i.e. " " instead of "")
July 17, 2011
FolderInfo: Fixed an issue that InfoType=FolderSize would not return a value larger than 4GB.
Many minor improvements to internal Rainmeter code addressing performance and reliability.
July 10, 2011
Optimized some internal Rainmeter code to reduce processing time on startup and on refreshing.
NowPlaying: Fixed Play/Pause issue with MusicBee.
Improved performance when reading network statistics from Rainmeter.stats.
Removed SkinAuthor method from PluginBridge. Plugin authors should read author from [Rainmeter] instead.
Added !CommandMeasure bang.
This replaces !PluginBang, which is being depreciated and should not be used in new skins. The reason for this change is that !CommandMeasure can be used to both send a bang to a plugin as !PluginBang did before, but can also be used to send a bang to any measure that can accept it. As of now, only the Measure=Script (Lua) measures can make use of this, but this may change over time.
The syntax is slightly different from !PluginBang as it is:
!CommandMeasure "MeasureName" "Arguments"
!PluginBang "MeasureName Arguments'
Changes to Lua with Rainmeter.
We are actively working to evolve the interface between Rainmeter and Lua to make it easier to use, more flexible, and to position the code for big improvements and additions coming soon! More details and examples are available HERE. The first round changes are:
Eliminated the need to use the complicated tolua.cast method of initializing a string meter in order to manipulate its value with SetText().
MyMeterStringValue = tolua.cast(SKIN:GetMeter("SomeMeter"), "CMeterString")
has been depreciated by allowing for just:
MyMeter = SKIN:GetMeter("ExampleStringMeter")
Which will allow you to perform any supported action on any type of meter, including SetText().
Depreciated the GetValue() and GetStringValue() functions used to "return" values to the Script measure in the skin.
You will now return values from the script to the measure in the skin by including a "return" statement in the Update() function of the script. You may return either a number or string value as needed:
Returns both the number 99 and the string "99"
Returns both the string "99" and the number 99
return "Hello World"
Returns the string "Hello World"
This does not effect the use of GetValue() and GetStringValue() functions to retrieve the current value of a measure in the skin. Using these functions is still the correct way to do that.
Added new GetVariable() function.
This is an somewhat easier to understand variant of the current ReplaceVariables() used now to retrieve the current value of a variable from the skin. If you want to "get" a single variable value from the skin, use GetVariable("varname"). If you want to "replace" multiple variables in a string or function in your Lua code with the values from the skin, use ReplaceVariables("Currently my vars are: "..#var1#.." and "..#var2#.." and "..#var3#)
ScriptFile= may now be a relative or fully described path in the script measure in the skin.
July 3, 2011
WebParser: Added UTF-16LE support using CodePage=1200.
Rainstaller: Fixed an issue with SkinPath not being correctly read with portable installs.
Changes to NowPlaying plugin:
Support added for VLC media player. Check installation instructions at manual page.
Fixed: TITLE was empty when listening to radio stations with Winamp.
Fixed: Metadata may not be updated until full refresh after closing one of multiple NowPlaying based skins.
Removed trailing zeros from calculated numbers.
Rainmeter will no longer automatically add zeros to a calculated number to force a constant 5 decimal places. The amount of "precision" will be only that required to support the value, up to 5 decimal places. This will eliminate the need to use Substitute=".00000":"" to strip the unneeded precision off of integer values returned by a Calc and used in other measures or meters as a string.
1.00000 -> 1
1.01000 -> 1.01
1.01001 -> 1.01001
Made "Rainmeter" optional in the name of a bang.
For example, !RainmeterShowMeter and !ShowMeter are now treated equally.
Changed the illustro suite of skins to use new "!Rainmeter"-less bangs.
Note: If you have directly edited the illustro skins to change them, your changed .ini files will be saved in \Backup in \Skins.
June 26, 2011
Fixed a display issue when a skin is dragged to the top of the virtual screen.
Fixed the problem where skins would "flicker" when set to "On Desktop" and the Windows "Show Desktop" feature is used.
Updated the installer to add the installation of VC++ 2010 SP1 libraries if needed on a user's system.
Changes to NowPlaying plugin:
Added PlayerType=STATUS (returns 1 when player is open, 0 when closed)
Winamp interface: Fixed that file paths over about 100 chars did not display all metadata
CAD interface: Added workaround for issue caused by Rainmeter running as elevated and player running as normal process (Windows Vista+)
June 19, 2011
Corrected the issue that PlayerName=, TrackChangeAction=, and DisableLeadingZero= were shared with all running skins, making it impossible to have multiple player skins at once.
June 12, 2011
Added SetPosition and Pause bangs to NowPlaying plugin.
NowPlayingPlugin: Added interface to receive MSN/Windows Live Messenger 'Listening to' notifications sent by various players. (e.g. Media Player Classic, Zune) and fixed crash when using the WinAmp interface in multiple skins.
June 5, 2011
Minor tweaks to NowPlaying plugin
Fixed an issue with FinishAction on a WebParser measure not working correctly if #CURRENTCONFIG# was not specified.
Changes to Uptime measure to work better on Vista/Win7 systems.
May 29, 2011
Added support for MusicBee and MediaMonkey to NowPlaying plugin.
See NowPlaying documentation for details.
Improved image caching when image scaling is not required, to reduce resource usage.
May 22, 2011
Added NowPlaying media plugin as noted above.
Fix to Rainstaller when a full restore of a .rmskin made with RainBackup is done containing the "Backup" folder from \Skins.
May 15, 2011
Fixed an issue with Rainstaller that was preventing it from restoring full backup .rmskins made with RainBackup.
Changes to the Rainmeter source build process to better support those using Visual Studio in both 32 and 64 bit architectures.
May 8, 2011
Fixed a bug with Measure=Registry returning invalid DWORD values.
Improved fix in r800 that correctly handles SkinPath in Rainmeter.ini for portable installations.
April 17, 2011
Change to how network statistics are stored.
The network statistics are now stored in a separate Rainmeter.stats file in the %APPDATA%\Rainmeter folder, the same folder where Rainmeter.ini is kept. This will now allow for resetting the statistics by either the current bang !RainmeterResetStats, or by simply deleting this new file. This also resolves issues with using RainThemes or installing a suite with a theme in a .rmskin replacing a user's statistics.
Fixed an issue with the Rainmeter icon on the System Tray/Notification Area disappearing when Explorer was restarted.
Fixed an issue that Roundline "Shift" parameters were not working when Solid=0 was set on the meter.
Fixed a problem where SkinPath was read from Rainmeter.ini in portable installations.
This would cause an issue if you renamed or moved the folder in which Rainmeter was installed in portable mode. Bug found by our user 'calav3ra the great'.
April 10, 2011
Added the NowPlaying media player plugin by developer and overall Rainmeter superstar poiru.
This is a new plugin to support multiple media players, with full support for AIMP, Foobar2000, MediaMonkey, MusicBee, iTunes, VLC, WinAmp, and WMP, and more! Partial support is also provided a bunch of other players such as Spotify. See the documentation at NowPlaying Plugin for details and usage instructions.
Added support for Aero Glass "blur" effects on skins!
This will allow you to have the Windows Aero effect, where your desktop background is "blurred" behind your skins or parts of skins. Windows Vista or Windows 7 is required or the new settings are ignored by Rainmeter. See Aero Blur for details and an example skin.
Improvements to FolderInfo plugin.
FolderInfo now returns size in bytes. If using InfoType=FolderSizeStr, (which until now autoscaled the value internally) AutoScale=1 should be added to the meter(s). While this does change the behavior, it allows for the use of Scale, NumOfDecimals, etc. that weren't possible prior to this change without an extra Calc measure.
Fixes InputText plugin failing if a "config name" folder had a space in it.
Fix for the CoreTemp plugin to address a mutex handle leak.
Added image caching system to the internal Rainmeter code.
Reduces memory resources when a single image is used repeatedly in a skin. For example, you might create a single image with multiple areas, and use ImageCrop to display some area based on the value of a measure. Rainmeter will no longer load the image multiple times in memory.
New option for Uptime meter
Setting added to disable the addition of days to hours when days (%4) is not specified in the Format= setting. Use AddDaysToHours=1/0 to control this option.
Some bug fixes and improvements to VirtualDesktops plugin from Patrick at Dexpot
"Silent" installation of Rainmeter now available.
Instructions and settings available at Rainmeter Installation.
Rainmeter development environment updated to Visual C++ 2010.
Rainmeter now requires WinXP SP2 / Win2003 SP1 / WinVista or Win7.
Support for Win2k (Windows 2000) is not provided in the new VC++ 2010 development environment.
Look for Similar Items by Category