Viewing or Modifying the keyboard shortcuts
XChat defines many (but not all) of its keyboard shortcuts via a GUI window which is available by navigating to Settings -> Advanced -> Keyboard Shortcuts....
XChat's default keyboard shortcuts
- Existing shortcuts list
- Add button
- Delete button
- Main Keyboard Key
- Field Data 1: a parameter used by many actions
- Field Data 2: a parameter used in a few actions
- Keyboard modifier selection
- Action type drop down
- Description of Action
Adding a new shortcut
In this example, we will create a keyboard shortcut similar to the default Ctrl+Page Down shortcut which goes to the next tab in your channel list. However, instead of moving only one tab away, this shortcut will be "super" and move three tabs away. Since this will be the "super" version, we will use the shortcut Ctrl+Alt+Page Down (Ctrl+Shift+Page Down is already used for modifying the tab order).
- Select the Add Button.
- Scroll to the bottom of the existing shortcuts list. New items are always added to the bottom, but they get moved after you leave the Keyboard Shortcuts window.
- Select the row that is filled with <none> <none> <none> <none>
- Change the action type dropdown to Change Page
- Note that at this point, the Description of Action field will change to a description of the "Change Page" action
- The default value for the action dropdown is Run Command, but this isn't the default value for the action itself. The action itself defaults to <none>, so if you wish the command to be Run Command, select the dropdown with either mouse or space bar, and then either click the row, hit enter, or the space bar.
- Tab to or use the cursor to select the main keyboard key field
- Press the Page Down button on your keyboard
- Using the mouse, select the Data 1 field. You must use the mouse to change fields, because if you press tab, the key field will be replaced with "Tab" and the cursor will be moved to the next field anyway
- From the action description, we see that Data 1 is which page to switch to, and if Data 2 is set to anything, the page we switch to is relative, so type 3 in the field and press Enter.
- Tab or cursor to the Data 2 field and set the value to relative and press Enter.
The value of Data 2 could be anything, but "relative" makes it obvious what we intend the value to mean.
- Check the Ctrl and Alt keyboard modifier boxes
You can now close out of this window and test your newly created shortcut. The same process could be used with Page Up and -3 to go 3 tabs in the opposite direction.
Creating ctrl+u for underline
By default, XChat doesn't have a ctrl+u for underline, but using Keyboard Shortcuts, you can specify it yourself.
- Right click in the input area, select Insert Attribute or Character Code -> Underline
- ctrl+a to select everything in the input area. Even if you can't see something there, the underline is
- Open the Keyboard Shortcuts window and select Add New
- Scroll down to the end of the list and select the new item
- Change the drop down to Insert in Buffer
- Select the key field, and press "u"
- In the Data 1 field, ctrl+v to paste what is in the main input area and press Enter
- Check the Ctrl keyboard modifier box
- Close!
You could also use ctrl+shift+u+1f in order to create the underline character rather than using the right click method.
Modifying an existing shortcut
After you have found the shortcut you wish to modify, select it from the list and make the changes as explained in the New Shortcut section. If you modify either Data 1 or Data 2, remember to hit the Enter key after making your change.
Deleting an existing shortcut
Find the shortcut, select it, press the Delete button. So simple, it shouldn't even need its own section.
Default Keyboard Shortcuts in XChat which can be modified
| Ctrl+PgUp | Change Page Up/Left 1 |
| Ctrl+PgDown | Change Page Down/Right 1 |
| Alt+1-9 | Change Page to the respective tab number (Alt+3 will send you to the 3rd tab in the XChat list) |
| Ctrl+O | Insert the character for Original Text formating in the input box |
| Ctrl+B | Insert the character for Bold Text formating in the input box (will unbold if a previous bold character is in the line) |
| Ctrl+K | Insert the character for Color Text formating in the input box (will negate all color codes if not followed by a number, or a comma followed by a number) |
| Shift+PgUp | Scroll Up through the matches in nick auto complete |
| Shift+PgDown | Scroll Down through the matches in nick auto complete |
| PgUp | Scroll Up one screen in Text Area (as long as the nick list is not selected) |
| PgDown | Scroll Down one screen in Text Area (as long as the nick list is not selected) |
| Shift+Up | Scroll Up one line in Text Area (as long as the nick list is not selected) |
| Shift+Down | Scroll Down one line in Text Area (as long as the nick list is not selected) |
| Up | Change inbut box to previously typed command/line (as long as the nick list is not selected) |
| Down | Change inbut box to next typed command/line (as long as the nick list is not selected) |
Space Return Enter | Check for Auto Replace? |
| Ctrl+Tab | Same as Tab (attempt to complete the nick/command in the input box) |
| Alt+Left | Move front tab Left (Tab view) or Up (Tree view) |
| Alt+Right | Move front tab Right (Tab view) or Down (Tree view) |
| Ctrl+Shift+PgUp | Tab view: Move tab family Left Tree view: Move tab family up if parent tab is selected Tree view: Move tab up in list if not parent tab |
| Ctrl+Shift+PgDown | Tab view: Move tab family Right Tree view: Move tab family down if parent tab is selected Tree view: Move tab down in list if not parent tab |
| F9 | Toggle if the Menu bar should be shown or hidden |
Default Keyboard Shortcuts in XChat which cannot be modified
| Ctrl+S | Open network list |
| Ctrl+T | Create new server tab |
| Ctrl+I | Detach or Re-attach tab |
| Ctrl+W | Close tab |
| Ctrl+Q | Quit |
Ctrl+F7 -or- F7 | Toggle User List view (which one is used depends on GTK settings) |
Ctrl+F9 -or- F9 | Toggle menu bar (which one is used depends on GTK settings) |
| Alt+A | Mark as away/back |
| Ctrl+M | Reset marker line |
| Ctrl+L | Clear Text |
| Ctrl+F | Search Text |
| F1 | Open up XChat Documentation in browser |