KeePass   KeePass Help Center Home KeePass Home | Package Downloads | Flag Translations | Blocks Plugins | Donate Donate  
Home Help Center Home | People Forums | Award Awards | Link Links | Search Search  







Placeholder Icon

Placeholders


KeePass supports various placeholders.

In many places in KeePass (auto-type, URL field, triggers, ...), placeholders can be used.


KeePass 1.x Only
Placeholders are case-sensitive.

KeePass 2.x Only
Placeholders are case-insensitive.


Placeholder  Entry Field Placeholders


PlaceholderField
{TITLE}Title
{USERNAME}User name
{URL}URL
{PASSWORD}Password
{NOTES}Notes

KeePass 2.x Only
Custom strings can be referenced using {S:Name}. For example, if you have a custom string named "eMail", you can use the placeholder {S:eMail}.

KeePass 2.x Only
PlaceholderIs Replaced By
{URL:RMVSCM}Entry URL without scheme name.
{URL:SCM}Scheme name of the entry URL.
{URL:HOST}Host component of the entry URL.
{URL:PORT}Port number of the entry URL.
{URL:PATH}Path component of the entry URL.
{URL:QUERY}Query information of the entry URL.


Placeholder  Entry Field References

Fields of other entries can be inserted using Field References.


Placeholder  Paths and Date/Time Placeholders


PlaceholderIs Replaced By
{INTERNETEXPLORER}Path of Internet Explorer, if installed.
{FIREFOX}Path of Mozilla Firefox, if installed.
{OPERA}Path of Opera, if installed.
{GOOGLECHROME}Path of Google Chrome (or Chromium on Unix-like systems), if installed.
{SAFARI}Path of Safari, if installed.

PlaceholderIs Replaced By
{APPDIR}KeePass application directory path.

KeePass 2.x Only
PlaceholderIs Replaced By
{GROUP}Name of the entry's parent group.
{GROUPPATH}Full group path of the entry.
{DB_PATH}Full path of the current database.
{DB_DIR}Directory of the current database.
{DB_NAME}File name (including extension) of the current database.
{DB_BASENAME}File name (excluding extension) of the current database.
{DB_EXT}File name extension of the current database.
{ENV_DIRSEP}Directory separator ('\' on Windows, '/' on Unix).
{ENV_PROGRAMFILES_X86}This is %ProgramFiles(x86)%, if it exists, otherwise %ProgramFiles%.

PlaceholderIs Replaced By
{DT_SIMPLE}Current local date/time as a simple, sortable string. For example, for 2012-07-25 17:05:34 the value is 20120725170534.
{DT_YEAR}Year component of the current local date/time.
{DT_MONTH}Month component of the current local date/time.
{DT_DAY}Day component of the current local date/time.
{DT_HOUR}Hour component of the current local date/time.
{DT_MINUTE}Minute component of the current local date/time.
{DT_SECOND}Seconds component of the current local date/time.
{DT_UTC_SIMPLE}Current UTC date/time as a simple, sortable string.
{DT_UTC_YEAR}Year component of the current UTC date/time.
{DT_UTC_MONTH}Month component of the current UTC date/time.
{DT_UTC_DAY}Day component of the current UTC date/time.
{DT_UTC_HOUR}Hour component of the current UTC date/time.
{DT_UTC_MINUTE}Minute component of the current UTC date/time.
{DT_UTC_SECOND}Seconds component of the current UTC date/time.


Placeholder  Environment Variables

System environment variables are supported. The name of the variable must be enclosed in '%' characters. For example %TEMP% is replaced by the user's temporary path.


Text  Text Transformations


KeePass 2.x Only
PlaceholderAction
{T-REPLACE-RX:/Text/Search/Replace/} Searches the regular expression Search in Text and replaces all matches by Replace. See below.
{T-CONV:/Text/Type/} Convert Text to Type. See below.


KeePass 2.x Only
{T-REPLACE-RX:/Text/Search/Replace/} – Replace Using Regular Expression:
This placeholder searches the regular expression Search in Text and replaces all matches by Replace.

All parameters are Spr-compiled, i.e. placeholders can be used within them.

The first character after the first ':' specifies the separator character. Any character except '}' can be used as separator character. It must not appear within the parameters. For example, {T-REPLACE-RX:/A/B/C/} and {T-REPLACE-RX:!A!B!C!} are equivalent. The last separator character (before the '}') is required.

Usage example. Let the user name field contain the e-mail address 'myname@myprovider.net' and the URL field '{T-REPLACE-RX:!{USERNAME}!.*@(.*)!http://$1!}'. When running the URL field, KeePass opens 'http://myprovider.net'.


KeePass 2.x Only
{T-CONV:/Text/Type/} – Convert:
This placeholder converts Text to Type.

All parameters are Spr-compiled, i.e. placeholders can be used within them.

Supported types are:
  • Upper or U:
    Upper-case.
  • Lower or L:
    Lower-case.
  • Base64:
    The Base64 encoding of the UTF-8 representation of the text.
  • Hex:
    The Hex encoding of the UTF-8 representation of the text.
  • Uri:
    The URI-escaped representation of the text.
Usage example. Let the user name field contain 'Bob' and the URL field 'http://myprovider.net/?user={T-CONV:/{USERNAME}/L/}'. When running the URL field, KeePass opens 'http://myprovider.net/?user=bob'.


Placeholder  Other Placeholders


KeePass 2.x Only
PlaceholderAction
{PICKCHARS}
{PICKCHARS:Fld:Opt}
Shows a dialog to pick certain characters from an entry string. See below.
{NEWPASSWORD}Generates a new password. See below.
{PASSWORD_ENC}Password in encrypted form. See below.
{HMACOTP}Generates a one-time password. See below.
{C:Comment}Comment; is removed.


KeePass 2.x Only
{PICKCHARS} – Picking Characters:
Character Picking Dialog The {PICKCHARS} placeholder shows a dialog, in which you can pick characters of an entry string (like the password) at certain positions.

{PICKCHARS} without any parameters lets you pick an arbitrary amount of characters from the password of the entry. A different entry string can be specified by appending a ':' and the name of the field; e.g. {PICKCHARS:UserName}. The names of the standard fields are Title, UserName (without a space), Password, URL and Notes. A custom entry string can be referenced by its name (without an S: prefix).

Additionally, the placeholder supports various (optional!) options. Options are appended after the field name, separated by a ':'. If you want to specify multiple options, separate them by a comma ','. Options are key-value pairs, separated by a '='. The following options are supported:
  • ID: Specifies an alphanumeric ID for the placeholder (see below).
  • C or Count: Specifies the number of characters to pick from the string. When enough characters have been picked, the dialog closes automatically (i.e. you don't need to manually click [OK] anymore).
  • Hide: If set to False, the picked characters in the dialog are shown as plain text by default, i.e. not hidden by asterisks. By default, KeePass uses the hiding setting of passwords in the main window.
  • Conv: Specifies how to convert the picked characters. When this parameter is omitted, no conversion is performed, i.e. the selected characters are auto-typed directly. The option supports the following values:
    • D: Convert the picked characters to down arrow keypresses; e.g. '2', 'c' and 'C' are converted to 2 down arrow keypresses.

      A fixed number of down arrow keypresses can be added by specifying them using the Conv-Offset option. For example, if you specify Conv=D, Conv-Offset=1, then '2', 'c' and 'C' are converted to 3 down arrow keypresses.

      By using the Conv-Fmt option, you can specify the layout of comboboxes. By default, KeePass assumes a combobox containing values from 0 to 9 or from A to Z. If the combobox contains values 0-9A-Z (i.e. first all ten digits, immediately followed by all characters from A to Z), specify Conv=D, Conv-Fmt=0A. Similarly, if it contains values A-Z0-9, specify Conv=D, Conv-Fmt=A0. If digits start with 1 instead of 0 (i.e. the 0 appears after the 9), use 1A and A1 instead of 0A and A0.
If you want to show the character picking dialog multiple times within one sequence, assign different IDs to the placeholders. If an ID is specified multiple times (or no ID is specified and the placeholders are the same), KeePass shows the character picking dialog once and reuses the picked characters in all following placeholders with the same ID.

Usage examples:

{USERNAME}{TAB}{PICKCHARS:Password:C=5}{ENTER}
First a dialog is shown in which the user can pick exactly 5 characters from the entry password. Afterwards KeePass types the user name into the target window, presses Tab, types the 5 picked characters and presses Enter.

ComboBox Form {S:Memorable}{TAB}{PICKCHARS:Password:ID=1, C=1, Conv=D, Conv-Offset=1}{TAB}{PICKCHARS:Password:ID=2, C=1, Conv=D, Conv-Offset=1}{TAB}{PICKCHARS:Password:ID=3, C=1, Conv=D, Conv-Offset=1}{ENTER}
First the character picking dialog is shown three times and each time the user can pick exactly one character from the entry password. Afterwards the auto-type process starts: KeePass types the contents of a custom entry string named "Memorable" into the target window. The focus is switched to the next control by pressing Tab, and the first previously picked character is converted to down arrow keypresses (with one additional keypress; e.g. a '1' is converted to two down arrow keypresses). This is repeated two more times with the other picked characters, and finally Enter is pressed.

Note this is not equivalent to picking three characters at once. If you'd use {S:Memorable}{TAB}{PICKCHARS:Password:C=3, Conv=D, Conv-Offset=1}, all the down arrow keypresses are sent to the same, currently active control.

In some browsers (e.g. Opera), setting the focus to a combobox can be slow. If you experience auto-type failures, consider slowing down the focus changes, e.g. by adding {DELAY 250} after each {TAB}, or slowing down the whole sequence, e.g. by prepending {DELAY=150}.


KeePass 2.x Only
{NEWPASSWORD} – Generating New Passwords:
The {NEWPASSWORD} placeholder generates a new password for the current entry, based on the "Automatically generated passwords for new entries" generator profile.

This placeholder is replaced once in an auto-type process, i.e. for a typical 'Old Password'-'New Password'-'Repeat New Password' dialog you can use {PASSWORD}{TAB}{NEWPASSWORD}{TAB}{NEWPASSWORD}{ENTER} as auto-type sequence.


KeePass 2.x Only
{PASSWORD_ENC} – Encrypting Passwords:
The {PASSWORD_ENC} placeholder is replaced by the password of the current entry in encrypted form. The password is encrypted using credentials of the current Windows user. The encrypted password should not be stored and only works for the current user.

It is intended to be used in conjunction with the -pw-enc command line parameter (see the URL Field Capabilities page for an example how to define an URL to open an additional KeePass database). The placeholder cannot be used to transfer passwords to other applications (except KeePass), because the target applications don't know how to decrypt encrypted passwords generated by {PASSWORD_ENC}.


KeePass 2.x Only
{HMACOTP} – Generating One-Time Passwords:
The {HMACOTP} placeholder generates a HMAC-based one-time password as specified in RFC 4226. The shared secret is the UTF-8 representation of the value of the 'HmacOtp-Secret' custom entry string field (case-sensitive), and the counter is stored in decimal form in the 'HmacOtp-Counter' field.

Usage example. Create a new entry, set its password to the {HMACOTP} placeholder, switch to the 'Advanced' tab, add a string named HmacOtp-Secret with value 12345678901234567890, and add a string named HmacOtp-Counter with value 0. When you now double-click onto the password cell of the entry in the entry list of the main window, an OTP is copied to the clipboard. When auto-typing, an OTP is sent as password. Each time you perform such an action, KeePass updates the counter value. With the secret key and counter values above, the following OTPs are generated: 755224, 287082, 359152, 969429, 338314, ... (more generated OTPs can be found in the example in RFC 4226).








Valid XHTML 1.0 Transitional Document

Get KeePass

Flattr this


KeePass is OSI Certified Open Source Software
Copyright © 2003-2014
Dominik Reichl, [Legal Contact / Imprint] [Disclaimer] [Acknowledgements] [Donate], Downloads hosted at

Get KeePass Password Safe at
SourceForge.net. Fast, secure and Free Open Source software downloads