# Global Options

Here you can choose what items to include and how the program should work. Some of these options will be disabled depending on what rename mode you are currently in.

- Files
- Files will be renamed.
- Folders
- Folders will be renamed.
- Subfolders
- All files and/or folders underneath the "base path" will be included. (A warning here: Listing large folder structures can take a while list, so only use this when you know what you want.)
- Include Filter
- Optional filter that can include or exclude certain files. Read more below.

- Process Name - The filename will be included in the rename operation. The filename is everything except the file extension.
- Process Extension - The file extension will be included in the rename operation. The extension is everything from the last period (".") and to the end of the name.
- Pre-Processor - Advanced users can use this optional filter to pinpoint parts of filenames to be affected by rename function. Read more below.

- Setup Counter - This is where you setup the `<counter>` tag. Read more below.
- Setup Parts - This is where you setup the `<%1>` to `<%9>` tags. Read more about parts here.

# Counter Setup

This is where you decide what your counter should look like, either when using the "Add Counter" function above, or when using the `<counter>` tag in another function.

Click on the "link" to open the Setup Counter window:

- Start Value - Select the initial value that the sequence will have. Usually 0 or 1.
  - Running counter - If you enable this the start value will automatically be updated after each rename operation. The new value will be the number that would have been next in line if the counter had continued the renaming process. This is useful when e.g. handling large catalogs of files that you rename in different sessions.
  - Reset each folder - The number sequence will restart from the "start value" each time the folder changes during a rename operation.
  - Reset on base name change - The number sequence will restart from the "start value" each time the base filename changes. The base filename is simply the filename without any numbers.
  - Reset at - The number sequence will restart from the "start value" each time it goes past the specified value (which will be the last number in the sequence).
- Step - Usually each number in the sequence is increased by 1, but this can be changed by modofying this value.
- Zero Padding - It can often be useful to add zeros to the beginning of the numbers. For example this will make the numbers sort correctly when viewing in lists (such as Windows Explorer). The number you enter here is the number of digits you want the final numbers to have. For example 3 digits would result in "001", "010" and "100". Set zero padding to 0 if you don't want any zeros.
  - Auto - This will cause the program to automatically add the necessary amount of zeros to the numbers. I recommend using this.

# Include Filter

The include filter tests each filename before renaming, to determine if it is to be renamed or not. This allows you to process only some files based on very specific rules:

- Whole Path / Extension - The include filter will always test matches against the filename, but you can also tell it to test again the whole path and/or filename extension.

- Include only files matching / containing - This is where the magic occurs. The string you enter here is tested against each filename to see if they match. Only matching files will be processed by rename function.

  If you only enter a normal string (eg "hello") then files that contain this string are matched. You can also enter a wildcard string (eg "hello*") for more advanced matches. The following wildcards are allowed:

  - `*` matches zero or more characters.
  - `:` matches one or more characters.
  - `?` matches exactly one character.
- Regular Expression - Regular Expressions allows for very advanced matchings. Read more about Regular Expressions here. Note that when using RegExp you can no longer use the ordinary wildcards.

- Exclude files matching / containg - This is the oppositve of the include filter above. You can run it alone or together with the include filter. If run together, it is applied after the include filter, so you can tell the program to first include a certain file set, and then from this set exclude some of the files.

  Note: When you create presets, the include filters are saved together with each preset item. Different items can have different include filters. The filename is tested for inclusion at the moment that item is running. Preset items running before can thus modify the filename in a way the the include filter in the next preset item reacts upon. You can override this behaviour by using the option below the preset list at the "run preset" page.

  # Pre-Processor

  The pre-processor filters out a section of the filename. Only this section is then processed by the actual rename function. This way you can pinpoint what parts of the filenames to rename! Here is an example:

  Say that we have a string: `Flash Renamer is fantastic!`. We feel strongly about this statement, so we want to scream it out in capital letters! But Flash Renamer is a name, so it should still be in title case. Problem is that the set case function always processes the whole filename. The solution is to tell the pre-processor to skip the first 14 characters in the filename so that only `is fantastic!` is sent to the rename function. The result would be `Flash Renamer IS FANTASTIC!`.
  All options you see below are processed from top to bottom. So if one options alters a filename, the next option will get this processed filename instead of the original.

- Offset beginning - This allows you skip part of the beginning of the filename.
  - Skip the first n characters - Skips the first n number of letters in the filename. If n is larger than the total number of letters in the filename, it will not be renamed at all.

  - Skip until string is found - The program will search for the string you enter. If it is found, everything up until this string begins is skipped. If it is not found, the whole filename is skipped, meaning it will not be rename at all.
- Limit length - This allows you to skip part of the end of the filename.
  - Include up to n characters - Only n number of characters will be renamed. After n characters have been included, the rest of the filename is skipped. If n is larger than the remaining number of characters, all are included.

  - Cut if string is found - This will make the program search for a certain string. If it is found, the part of the filename after that will be skipped. If it is not found, everything is included.
- Advanced filter - This allows you to match a specific section of the filename using wildcards. Only this section is kept. For example, searching for `is*` in `Flash Renamer is fantastic!` will find `is fantastic!`. The following wildcards are allowed:

  - `*` matches zero or more characters.
  - `:` matches one or more characters.
  - `?` matches exactly one character.

  - Regular Expression - Regular Expressions allows for very advanced matchings. Read more about RegExp here. Note that when using RegExp you can no longer use the ordinary wildcards.

  Notes:

  - Only the filename (ie not the extension) is processed by the pre-processor.

  - The rename function will only see the section you filter our using the pre-processor. So if you for example skip a bit of the beginning of the filename using the pre-processor, and then use the add function to add something to the beginning of the filename, this will be added at the beginning of the processed section, which is actually located in the middle of the filename. Everything is completely logical, but it can be tricky to foresee the exact results if you don't think things through.

  - When you create presets, the pre-processor is saved together with each preset item. Different items can have different include filters. You can override this behaviour by using the option below the preset list at the "run preset" page.