diff --git a/source/developers/index.html b/source/developers/index.html index 0a19778cf..38d101ecf 100644 --- a/source/developers/index.html +++ b/source/developers/index.html @@ -82,8 +82,8 @@
The Rainmeter window message API can be used to query or control Rainmeter from external applications. The examples are for C++ and AutoIt, but similar functionality is available from any programming platform that can send window messages to running applications.
- +The Rainmeter window message API can be used to query or control Rainmeter from external applications. Documentation for the available queriese, as well as their definitions, can be found here.
+The examples are for C++ and AutoIt, but similar functionality is available from any programming platform that can send window messages to running applications.
The following sample demonstrates how to retrieve a running skin's window handle based on the skin config name. Note that the returned handle should only be used to check if the skin is active or not -- do not abuse the handle.
diff --git a/source/manual/bangs.html b/source/manual/bangs.html index e18fc155c..17003f93d 100644 --- a/source/manual/bangs.html +++ b/source/manual/bangs.html @@ -16,10 +16,19 @@Bangs can also be used from the Windows command line as a parameter to the Rainmeter.exe executable. Example: "C:\Program Files\Rainmeter\Rainmeter.exe" !RefreshApp
.
Note: Many bangs have a Config
parameter. Unless otherwise specified, valid values are the config name of a currently loaded skin to be acted upon or *
(asterisk) to act on all currently loaded skins. When optional and not supplied, the parameter defaults to the current config. If executing a bang with a "config" parameter from the Windows command line, the parameter is always required.
Bangs can also be used from the Windows command line as a parameter to the Rainmeter.exe executable. Examples:
+ +"C:\Program Files\Rainmeter\Rainmeter.exe" !RefreshApp
"C:\Program Files\Rainmeter\Rainmeter.exe" !SetVariable "textSize" "12" "illustro\Clock"
Note: Any variable of any kind, including Built-In Variables, are not executed when calling Rainmeter from the command line. Likewise, the Config
parameter is always required in places where it is treated as optional.
!SetClip
Parameter: String
!Quit
Unload all skins
is turned on.
Play
Parameter: SoundFile
Section
(required): If the section does not exist in the file, a new section will be written at the end of the file.Key
(required): If the key does not exist under the section, a new key will be written at the end of the section.Value
(required): Value to be written. Any previous value will be overwritten.FilePath
(optional): If not specified, the current skin file is used. The file must exist and must be located under either #SKINSPATH#
or #SETTINGSPATH#
.FilePath
(optional*): If not specified, the current skin file is used. The file must exist and must be located under either #SKINSPATH#
or #SETTINGSPATH#
.!WriteKeyValue Variables MyFontName Arial "#@#Variables.inc"
+
+ * Note: This option is required when executing the bang from the command line.
@@ -914,7 +927,7 @@!Execute
Rainmeter Forum
Other members of the community like to share their creations on the official boards.
DeviantArt
- Probably the biggest and best collection of skins, deviantArt not only has a special Rainmeter category, but also a dedicated Rainmeter Group, which is run by members of the community and features a curated stream of skins, screenshots, tutorials, interviews and more. All skins on deviantArt are checked for malware before they are accepted by the group.
Lifehacker
- Not only is the Lifehacker community full of Rainmeter users, but Lifehacker's editors frequently post featured desktops and how-to guides for popular skins under the Rainmeter tag. Be sure to browse the Lifehacker Desktop Show & Tell pool on Flickr, as well.
GitHub
+ Skins can be found under the rainmeter
,rainmeter-skin
,rmskin
tags.
Other places where Rainmeter skins/suites/desktops/inspiration can be found:
+Lifehacker Desktop Show & Tell & Reddit
+ Be sure to browse the Lifehacker Desktop Show & Tell pool on Flickr, as well as the r/rainmeter and r/desktops subreddit on Reddit for communities full of Rainmeter users.
Rainmeter is not available for non-Windows systems, including Mac OS and Linux, and there are no plans to support these operating systems.
Start by downloading the Rainmeter installer from Rainmeter.net.
- +Start by downloading the Rainmeter installer from Rainmeter.net.
+ + +To install Rainmeter, run the installer program that you downloaded, and follow the instructions. (See Installing Rainmeter if you need more detailed instructions, including steps for installing Rainmeter as a portable application.)
Rainmeter will run automatically after it has been installed.
diff --git a/source/manual/measures/net.html b/source/manual/measures/net.html index f292fde58..f9c8f2a90 100644 --- a/source/manual/measures/net.html +++ b/source/manual/measures/net.html @@ -34,7 +34,7 @@Interface
Default: Best
Identity of the network interface controller (NIC) to measure.
+
Identity of the Network Interface Controller (NIC) to measure.
This can be defined in one of several ways:
Best
, which will automatically detect the active interface.Notes:
When the option is set to Best
, the function will select a "wired" network connection in preference to a "wireless" one, if both are active.
When the option is set to Best
, DynamicVariables=1
must be set on the measure if you want it to automatically react to changes in the active interface. This should be done if for instance you have a laptop or other computer that you switch between wired and wireless connections.
Additional general help with finding your NIC can be found at Finding your Network Interface for SysInfo and Net.
Cumulative
Default: 0
SetRepeat n
: Where n is 1
(repeat on), 0
(repeat off), or -1
(toggle repeat).SetVolume n
: Where n is either an absolute value (SetVolume 50
to set volume to 50%) or a relative value (SetVolume +20
to increase volume by 20% orSetVolume -40
to decrease volume by 40%).Note: On partially supported players, as well as players not listed here, the MediaKey measure can be used to substitute some of the bangs listed above.
The following players are fully supported. All features should work unless stated otherwise.
diff --git a/source/manual/measures/sysinfo.html b/source/manual/measures/sysinfo.html index 24566187f..a2aeba0d7 100644 --- a/source/manual/measures/sysinfo.html +++ b/source/manual/measures/sysinfo.html @@ -128,18 +128,26 @@An additional selector option that can be used to define an instance for some SysInfoType values.
+Network Interface Controller
For SysInfoType
values related to network information, this will identify the network interface controller (NIC) to use.
This can be defined in one of several ways:
Best
, which will automatically detect the active interface. If not specified, this is the default.Qualcomm Wireless Network Adapter
.Qualcomm AR938x Wireless Network Adapter
.Ethernet
or Wi-Fi 3
.Example: SysInfoData=Best
Note: When the option is set to Best
, the function will select a "wired" network connection in preference to a "wireless" one, if both are active.
When the option is set to Best
, DynamicVariables=1
must be set on the measure if you want it to automatically react to changes in the active interface. This should be done if for instance you have a laptop or other computer that you switch between wired and wireless connections, or if you change your connection using a VPN.
Notes:
+When the option is set to Best
, the function will select a "wired" network connection in preference to a "wireless" one, if both are active.
When the option is set to Best
, DynamicVariables=1
must be set on the measure if you want it to automatically react to changes in the active interface. This should be done if for instance you have a laptop or other computer that you switch between wired and wireless connections.
Additional general help with finding your NIC can be found at Finding your Network Interface for SysInfo and Net.
+ +Monitor number
For SysInfoType
values related to monitor information, this will identify the monitor number to use.
Options available for use with all images. These options are to modify the display of an image file, and do not work with square/rectangle Image meters created entirely with SolidColor / SolidColor2, or with any shape created by a Shape meter.
-Note: Valid image file types in Rainmeter are .png, .jpg, .bmp, .gif, .tif and .ico. If no extension is provided on an image file name, .png is assumed.
+Note:Supported image formats are .png, .jpg, .bmp, .gif (no animation supported), .tif, .webP and .ico. If no file extension is included, .png is assumed.
Meter=Image
displays either an image defined by a measure value, or any named image. If W
and/or H
are included in the meter options, the image will be scaled to fit the meter size.
Supported image formats are .png, .jpg, .bmp, .gif (no animation supported), .tif, .webP, and .ico.
- -Note: If no file extension is included, .png is assumed.
+Note:Supported image formats are .png, .jpg, .bmp, .gif (no animation supported), .tif, .webP and .ico. If no file extension is included, .png is assumed.
External Windows commands can be executed by specifying the path to the executable and any parameters. Enclose the command in square brackets []
, and enclose any values with spaces in quotes.
___________
+
Tip by JSMorley
+ +As of Rainmeter 4.5, Rainmeter has changed how the SysInfo measure network options and Net (NetIn/NetOut/NetTotal) measures find the correct network interface / adapter to measure. This was done to make things more logical and consistent between the SysInfo and Net functionality, consolidate some internal coding for network functions, and increase efficiency of the code.
+ +If you simply want to measure information about the currently active network interface on your system, it's very simple:
+ +For SysInfo measures:
+Use: SysInfoData=Best
For Net measures:
+Use: Interface=Best
The option value of "Best" will detect and measure the currently active interface. For almost all cases, this is what you want.
+ +Note: There are cases where the meaning of "Best" can change while the skin is running. Most commonly this will be if you have a system, like a laptop, that has both wired (Ethernet) and wireless (WiFi) connections, and you switch between them. Another common case is if you have VPN software, that creates a "tunnel adapter" when running. In order to have your skin react to these changes, you must set DynamicVariables=1
on the measures.
Setting DynamicVariables=1
on the measures is recommended if you intend to "distribute" your skin, as while you might only have one network adapter, this may not be true of all your end-users.
Note that "Best" is now the default for both SysInfo and Net measures.
+ +If you have two or more network interfaces that can be active at once:
+ +In this case you are going to want to create separate SysInfo and / or Net measures to measure each of the interfaces. You certainly are going to want to at least be specific about which interface to measure. The recommended way to do this is to use the name (Description) of the actual network adapter in the measures.
+ +There are many ways in Windows to find the Description of the network adapters, two ways are:
+Debug mode
and Log to file
in the Settings panel in Rainmeter, and restart the application.The information about all your network interfaces will be in the log that is created. Be sure to turn both of these off when you are done with them.
+ +```txt +DBUG (08:04:32.360) : 46: Name: Intel(R) Dual Band Wireless-AC 7265 +DBUG (08:04:32.361) : Alias: Wi-Fi 3 +DBUG (08:04:32.363) : GUID: {18A8D6A0-64F9-4803-B4C5-329309490987} +DBUG (08:04:32.365) : Type=Wireless(71), Hardware=Yes, Filter=No +DBUG (08:04:32.366) : IfIndex=4, State=Connected, Status=Up(1) +``` + +Just copy and paste that "Name" information for use in the SysInfoData and / or Interface options.
+ +```ini +[MeasureLAN] +Measure=SysInfo +SysInfoType=IP_ADDRESS +SysInfoData=Intel(R) Dual Band Wireless-AC 7265 +``` + +Get-NetAdapter
command: Get-NetAdapter | format-table -property "InterfaceDescription", "InterfaceIndex" -HideTableHeaders
+
+```ps1
+Windows PowerShell
+Copyright (C) Microsoft Corporation. All rights reserved.
+
+PS C:\Users\JSMorley> Get-NetAdapter | format-table -property "InterfaceDescription", "InterfaceIndex" -HideTableHeaders
+
+TAP-NordVPN Windows Adapter V9 20
+Intel(R) I211 Gigabit Network Connection 13
+NordLynx Tunnel 50
+Intel(R) Dual Band Wireless-AC 7265 4
+Bluetooth Device (Personal Area Network) #2 3
+```
+There are other ways to format this PowerShell command to show more or less information as you like:
+ +Get-NetAdapter -Name * -IncludeHidden | format-list -property "Name", "InterfaceDescription", "InterfaceIndex"
+
+```ps1
+Windows PowerShell
+Copyright (C) Microsoft Corporation. All rights reserved.
+
+PS C:\Users\JSMorley> Get-NetAdapter -Name * -IncludeHidden | format-list -property "Name", "InterfaceDescription", "InterfaceIndex"
+
+
+Name : Local Area Connection* 8
+InterfaceDescription : WAN Miniport (IPv6)
+InterfaceIndex : 25
+
+Name : Local Area Connection* 2
+InterfaceDescription : WAN Miniport (SSTP)
+InterfaceIndex : 23
+
+Name : Local Area Connection* 7
+InterfaceDescription : WAN Miniport (IP)
+InterfaceIndex : 22
+
+Name : Ethernet 2
+InterfaceDescription : TAP-NordVPN Windows Adapter V9
+InterfaceIndex : 20
+
+Name : Local Area Connection* 9
+InterfaceDescription : WAN Miniport (Network Monitor)
+InterfaceIndex : 19
+
+Name : Teredo Tunneling Pseudo-Interface
+InterfaceDescription :
+InterfaceIndex : 18
+
+Name : Local Area Connection* 6
+InterfaceDescription : WAN Miniport (PPPOE)
+InterfaceIndex : 17
+
+Name : Local Area Connection* 3
+InterfaceDescription : WAN Miniport (IKEv2)
+InterfaceIndex : 16
+
+Name : Local Area Connection* 10
+InterfaceDescription : Microsoft Wi-Fi Direct Virtual Adapter #2
+InterfaceIndex : 14
+
+Name : Ethernet
+InterfaceDescription : Intel(R) I211 Gigabit Network Connection
+InterfaceIndex : 13
+
+Name : NordLynx
+InterfaceDescription : NordLynx Tunnel
+InterfaceIndex : 50
+
+Name : Local Area Connection* 1
+InterfaceDescription : Microsoft Wi-Fi Direct Virtual Adapter
+InterfaceIndex : 10
+
+Name : Local Area Connection* 4
+InterfaceDescription : WAN Miniport (L2TP)
+InterfaceIndex : 8
+
+Name : Microsoft IP-HTTPS Platform Interface
+InterfaceDescription :
+InterfaceIndex : 7
+
+Name : Local Area Connection* 5
+InterfaceDescription : WAN Miniport (PPTP)
+InterfaceIndex : 6
+
+Name : Ethernet (Kernel Debugger)
+InterfaceDescription : Microsoft Kernel Debug Network Adapter
+InterfaceIndex : 5
+
+Name : Wi-Fi 3
+InterfaceDescription : Intel(R) Dual Band Wireless-AC 7265
+InterfaceIndex : 4
+
+Name : Bluetooth Network Connection 2
+InterfaceDescription : Bluetooth Device (Personal Area Network) #2
+InterfaceIndex : 3
+
+Name : 6to4 Adapter
+InterfaceDescription :
+InterfaceIndex : 2
+```
+Or if you want a full firehose of information about each interface:
+ +Get-NetAdapter -Name * -IncludeHidden | format-list -property *
+
+Using the network interface / adapter "index" number:
+ +There is an interface index number that is created by Windows for each of your network interfaces. You can use this index number in the options for SysInfo and / or Net measures, but caution! These numbers are pretty dynamic in Windows and can change if you enable/disable networks. There is just no certainty that these numbers will remain constant over time.
+ +Getting these numbers is the same as getting the name (Description) shown above, just use the number found as IfIndex
in the Rainmeter log, or InterfaceIndex
in the PowerShell output.
A backwards compatibility concern:
+ +As originally written, the Net (NetIn/NetOut/NetTotal) measures will see an explicit index value of "0" as meaning "all". For systems with only one active interface, this sorta works well enough, and there may be skins out there that have Interface=0 or SysInfoData=0 on them. Those skins should be changed going forward. In most cases, it is recommended that they be changed to Interface=Best
and SysInfoData=Best
. If you have SysInfoData=0 on any measure, Rainmeter is going to automatically change it to "Best", but will bark at you in the log...
Tip by kenz0 and JSMorley
+Tip by kenz0, JSMorley and the community
Windows has many "special folders" like "My Computer" and "Recycle Bin" that are not part of the normal folder system you can specify with a "path" on an action in Rainmeter, or launch differently then they appear in Explorer.
+These folders can be accessed by using the Windows Shell:
command and the CLSID identifier codes that Windows assigns to these folders in the Windows Registry. If you know the codes, you can launch these with ease.
Another way to access certain special Windows folders and functions is by knowing and using some commands Windows supports:
-General Shortcut Commands:
If a space is included, you need to enclose with double quotes. e.g. ["shell:Start Menu"]
+If a space is included, you need to enclose with double quotes. e.g. ["shell:Start Menu"]
You can send multiple commands simultaneously by surrounding each command in brackets.
``` ini LeftMouseUpAction=[shell:Desktop][shell:SendTo]["shell:Start Menu"] ``` + +Note: These commands exist only from Windows 8 onwards.
+Since Windows 8, Microsoft introduced a new software enviourment known as UWP (formerly known as Metro-style apps). These can be run using the Shell:AppsFolder
command, along with special parameters.
The command should take the form of Shell:AppsFolder\FolderName!ShortCutName
.
The necesary info for lunching an app are:
+Shell:AppsFolder
folder (to get there, put that path into Windows Run), creating a Desktop shortcut of the app you want and inspecting its proprieties.App
, there are exceptions however, like for the Calendar app.So, to get the necesary info you will have to:
+Shell:AppsFolder\FolderName!ShortCutName
An example for the Camera app would be:
+To launch the Settings app and tabs within it, use the ms-settings:
URI scheme. All the URIs can be found here.
Once you have decided on and installed a better text editor, you will probably want to associate the common Rainmeter file types of .ini, .inc, and .lua with the application. This can be done in Windows Explorer:
diff --git a/themes/rainmeter-docs/layout/404.ejs b/themes/rainmeter-docs/layout/404.ejs index de8926c64..db55e65e3 100644 --- a/themes/rainmeter-docs/layout/404.ejs +++ b/themes/rainmeter-docs/layout/404.ejs @@ -70,6 +70,12 @@