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 @@

Plugin API Documentation

Using SendMessage with External Applications

-

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.

Query

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 @@
  • Deprecated bangs
  • -

    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.

    +

    Command Line Arguments

    + +

    Bangs can also be used from the Windows command line as a parameter to the Rainmeter.exe executable. Examples:

    + + +

    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.

    + +

    Operating System bangs

    !SetClip Parameter: String
    @@ -97,7 +106,9 @@

    Application bangs

    !Quit
    - Quits Rainmeter. + Quits Rainmeter.
    +
    + Note: This becomes the only bang that can be executed from the command line when Game Mode and Unload all skins is turned on.
    Play Parameter: SoundFile
    @@ -158,9 +169,11 @@

    Option and Variable bangs

  • 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#.

  • Example: !WriteKeyValue Variables MyFontName Arial "#@#Variables.inc" + +

    * Note: This option is required when executing the bang from the command line.

    @@ -914,7 +927,7 @@

    Skin group bangs

    Deprecated bangs

    -
    +
    !Execute
    The !Execute bang, used both to indicate multiple bangs in one statement and to execute external applications has been made optional. Do not use it in new skins. diff --git a/source/manual/getting-started/customizing.html b/source/manual/getting-started/customizing.html index 5b2afe120..e2be89680 100644 --- a/source/manual/getting-started/customizing.html +++ b/source/manual/getting-started/customizing.html @@ -15,9 +15,14 @@

    Finding Skins

  • 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.

  • + 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. Note: An account is needed to download skins.

    +
  • GitHub
    + Skins can be found under the rainmeter,rainmeter-skin,rmskin tags.

  • + +

    Other places where Rainmeter skins/suites/desktops/inspiration can be found:

    +

    Malware

    diff --git a/source/manual/getting-started/setting-up.html b/source/manual/getting-started/setting-up.html index 7387d2cd7..8d1473d4a 100644 --- a/source/manual/getting-started/setting-up.html +++ b/source/manual/getting-started/setting-up.html @@ -11,20 +11,20 @@

    System Requirements

    Rainmeter is not available for non-Windows systems, including Mac OS and Linux, and there are no plans to support these operating systems.

    Download

    - -

    Start by downloading the Rainmeter installer from Rainmeter.net.

    -
    +

    Start by downloading the Rainmeter installer from Rainmeter.net.

    + + +

    Install

    +

    Installing Rainmeter is mostly automatic.

    -

    Install

    -

    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 @@

    Options

    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:

    • The string value Best, which will automatically detect the active interface.
    • @@ -47,6 +47,8 @@

      Options

      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
    diff --git a/source/manual/measures/nowplaying.html b/source/manual/measures/nowplaying.html index 2d54b706a..08deb6a16 100644 --- a/source/manual/measures/nowplaying.html +++ b/source/manual/measures/nowplaying.html @@ -109,6 +109,7 @@

    Bangs

  • 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.

    Fully supported players

    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 @@

    Time Zone values

    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:

    • The string value Best, which will automatically detect the active interface. If not specified, this is the default.
    • -
    • The description (name) of the network interface controller. For example, Qualcomm Wireless Network Adapter.
    • +
    • The name of the network interface controller. For example, Qualcomm AR938x Wireless Network Adapter.
    • The alias of the network interface. For example, Ethernet or Wi-Fi 3.
    • The index number of the network interface controller. This number can be found by starting Rainmeter with Debug turned on, but be aware that these numbers can change during normal usage of Windows.

    +

    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.

    diff --git a/source/manual/meters/general-options/image-options.html b/source/manual/meters/general-options/image-options.html index 2a9c5815a..d0072bc3b 100644 --- a/source/manual/meters/general-options/image-options.html +++ b/source/manual/meters/general-options/image-options.html @@ -5,7 +5,7 @@ ---

    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.

    Options

    diff --git a/source/manual/meters/image.html b/source/manual/meters/image.html index eef433e18..3960812e0 100644 --- a/source/manual/meters/image.html +++ b/source/manual/meters/image.html @@ -5,9 +5,7 @@ ---

    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.

    Options

    diff --git a/source/manual/skins/option-types.html b/source/manual/skins/option-types.html index d49e22927..ff95139c6 100644 --- a/source/manual/skins/option-types.html +++ b/source/manual/skins/option-types.html @@ -114,6 +114,8 @@

    Action options

    LeftMouseUpAction=[!SetWallpaper "#ImageFile#"] ``` +

    External Windows Commands

    +

    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.

    ``` ini diff --git a/source/manual/user-interface/context-menus.html b/source/manual/user-interface/context-menus.html index 096ac8772..c76d8c2db 100644 --- a/source/manual/user-interface/context-menus.html +++ b/source/manual/user-interface/context-menus.html @@ -56,7 +56,7 @@

    Skin context menus

    -

    ___________
    +



    Note for skin authors: Custom skin context menu items can be added using Context options in a skin. Details and examples here.

    Skin settings submenu

    diff --git a/source/tips/finding-your-network-interface-for-sysInfo-and-net.html b/source/tips/finding-your-network-interface-for-sysInfo-and-net.html new file mode 100644 index 000000000..8ab49e5f1 --- /dev/null +++ b/source/tips/finding-your-network-interface-for-sysInfo-and-net.html @@ -0,0 +1,188 @@ +layout: docs +permalink: tips/finding-your-network-interface-for-sysInfo-and-net/ +title: 'Finding your Network Interface for SysInfo and Net' +--- +

    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

    + +```ini +[MeasureLAN] +Measure=SysInfo +SysInfoType=IP_ADDRESS +SysInfoData=Best +DynamicVariables=1 +``` + +

    For Net measures:

    +

    Use: Interface=Best

    + +```ini +[MeasureNetIn] +Measure=NetIn +Interface=Best +DynamicVariables=1 +``` + +

    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:

    +
      +
    1. Turn on Debug mode and Log to file in the Settings panel in Rainmeter, and restart the application.
    2. + +

      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 +``` + +
    3. Perhaps a bit less cumbersome a way is to open a PowerShell (Windows Terminal) window and enter the following Get-NetAdapter command:
    4. +
      +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...

    diff --git a/source/tips/img/notepad-alternatives/VSCode.png b/source/tips/img/notepad-alternatives/VSCode.png new file mode 100644 index 000000000..24bcf4ce0 Binary files /dev/null and b/source/tips/img/notepad-alternatives/VSCode.png differ diff --git a/source/tips/index.html b/source/tips/index.html index 0f41650ba..2c9a11ca7 100644 --- a/source/tips/index.html +++ b/source/tips/index.html @@ -24,6 +24,7 @@

    Good To Know

  • ColorMatrix Guide
  • Counters Guide
  • Dynamic Cheat Sheet
  • +
  • Finding your Network Interface for SysInfo and Net
  • Font Typography Features
  • @include Guide
  • Radians Guide
  • diff --git a/source/tips/launching-windows-special-folders.html b/source/tips/launching-windows-special-folders.html index e3a841f23..6ed2b4d4f 100644 --- a/source/tips/launching-windows-special-folders.html +++ b/source/tips/launching-windows-special-folders.html @@ -3,8 +3,9 @@ permalink: tips/launching-windows-special-folders/ title: 'Launching Windows Special Folders' --- -

    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.

    +

    Windows Shell: commands

    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.

    ``` txt @@ -268,8 +269,9 @@ H=38 LeftMouseDownAction=["Shell:My Pictures"] ``` + +

    General Shortcut Commands

    Another way to access certain special Windows folders and functions is by knowing and using some commands Windows supports:

    -

    General Shortcut Commands:

    • My Computer with C drive selected
      explorer.exe /select,c
    • @@ -313,8 +315,51 @@ ``` ini LeftMouseUpAction=[shell:Desktop] ``` -

      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"] ``` + +

      Windows UWP Apps Commands

      +

      Launching UWP "apps"

      +

      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:

      +
        +
      • The Folder name
      • +
          +
        • Found by opening the "C:\Users\YourName\AppData\Local\Packages" folder
        • +
        +
      • The Shortcut name
      • +
          +
        • Found by opening the 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.
        • +
        • Note: The majority of the time, the Shortcut name will be App, there are exceptions however, like for the Calendar app.
        • +
        +
      + +

      +

      So, to get the necesary info you will have to:

      +
        +
      • Open the folder "C:\Users\YourName\AppData\Local\Packages"
      • +
      • Find the application you want, and copy that "folder"'s name.
      • +
      • Inside the folder, copy the name of the "shortcut" (usually "App" with applications included with Windows)
      • +
      • Put the two on a shell command of Shell:AppsFolder\FolderName!ShortCutName
      • +
      +

      An example for the Camera app would be:

      +
        +
      • The folder name is "Microsoft.WindowsCamera_8wekyb3d8bbwe"
      • +
      • The shortcut name inside the folder is "App"
      • +
      +``` ini +LeftMouseUpAction=["Shell:AppsFolder\Microsoft.WindowsCamera_8wekyb3d8bbwe!App"] +``` + +

      Lunching Windows Settings app

      +

      To launch the Settings app and tabs within it, use the ms-settings: URI scheme. All the URIs can be found here.

      +``` ini +LeftMouseUpAction=[ms-settings:] +LeftMouseUpAction=[ms-settings:bluetooth] +``` \ No newline at end of file diff --git a/source/tips/notepad-alternatives.html b/source/tips/notepad-alternatives.html index f421e5e6a..d23e70dd0 100644 --- a/source/tips/notepad-alternatives.html +++ b/source/tips/notepad-alternatives.html @@ -44,6 +44,19 @@

      Sublime Text

      +

      Visual Studio Code

      + +
      + +
      + +
      +

      Visual Studio Code, commonly referred to as VS Code, developed by Microsoft, is yet another source-code editor available at https://code.visualstudio.com/.

      +

      We recommend that after you install the latest Visual Studio Code, you get the Rainmeter Support extension by will-shaw, which will add custom color coding for Rainmeter skins and a few snippets for quick creation. +

      + +
      +

      Associating skin files with your desired editor

      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 @@ +
    • + + + + +