Customize Keyboard Shortcuts
You can customize the keyboard shortcuts for your YouTrack server. All of the keyboard commands, tips, and shortcut help pages are updated for all users. You can select a pre-configured keyboard shortcut scheme or install your own. The following pre-configured shortcut schemes are available:
Shortcut Scheme | Description | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | This is the default shortcut scheme for YouTrack. For a list of keyboard shortcuts, see Customize Keyboard Shortcuts. | |||||||||||||||||||||
Scheme for Slavic Layouts | This scheme differs from the default in the following ways:
|
Enable a Shortcut Scheme
You can select a default default set of keyboard shortcuts to use in YouTrack.
To select one of the default shortcut schemes:
Open the
page.In the Keyboard Shortcuts section, select the desired scheme from the drop-down list.
Click the Save button at the bottom of the page.
Press F5 to refresh the page and apply the new shortcut scheme.
Create Your Own Shortcut Scheme
If you prefer to use your own set of keyboard shortcuts, you can edit a default shortcut scheme and upload it to YouTrack.
To create and apply your own shortcut scheme:
Open the
page.In the Keyboard Shortcuts section, click the Export Selected Shortcuts link. The definitions for the selected scheme are exported as a JSON file.
Modify the JSON file.
When done, upload the file to your YouTrack server: Click the Import Shortcuts button and select the updated file.
Verify that the updated scheme is set as the current scheme.
Click the Save button at the bottom of the page.
Shortcut Scheme Syntax
When you download the JSON file for the current shortcuts scheme, you only need to change a few values to modify the keys used for each coommand. The syntax of the file is pretty straight-forward, however there are some points to consider. Here is an example of a shortcut definition:
{
"name" : "IncreaseIssueVisibility",
"variants" : [ {
"keyStroke" : {
"alt" : true,
"ctrl" : true,
"meta" : false,
"shift" : false,
"keyCode" : 61,
"name" : "=",
"macName" : "="
},
"browser" : [ "firefox" ]
}, {
"keyStroke" : {
"alt" : true,
"ctrl" : true,
"meta" : false,
"shift" : false,
"keyCode" : 187,
"name" : "»",
"macName" : "»"
},
"os" : [ "windows" ],
"browser" : [ "opera" ]
}, {
"keyStroke" : {
"alt" : true,
"ctrl" : true,
"meta" : false,
"shift" : false,
"keyCode" : 107,
"name" : "k",
"macName" : "k"
},
"os" : [ "linux" ],
"browser" : [ "opera" ]
}, {
"keyStroke" : {
"alt" : false,
"ctrl" : true,
"meta" : true,
"shift" : false,
"keyCode" : 61,
"name" : "=",
"macName" : "="
},
"os" : [ "macintosh" ],
"browser" : [ "opera" ]
}, {
"keyStroke" : {
"alt" : true,
"ctrl" : true,
"meta" : false,
"shift" : false,
"keyCode" : 187,
"name" : "=",
"macName" : "="
}
} ]
}
Every shortcut is represented by its name, which should not be changed, and an array of keystrokes.
In most situations, there is just one keystroke is the array, which represents the shortcut for all browsers and operating systems (like the last one in this example).
Sometimes you need to make special shortcuts for specific browsers and/or operating systems. In this case, list browser- and OS-specific shortcuts before the generic shortcuts. The more specific the shortcut, the higher it is listed in keyStrokes array.
The
os
andbrowser
attributes contain the arrays of strings, representing the appropriate operating systems and browses. All possible variations are presented in the example.The
keyCode
attribute is required, and is equal to the ASCII code of the character.The
name
andmacName
attributes are optional. These values are used in help and tooltips. If absent, their value is derived from thekeyCode
.