---
title: Keyboard shortcuts
intro: 'Nearly every page on {% data variables.product.prodname_dotcom %} has a keyboard shortcut to perform actions faster.'
redirect_from:
- /articles/using-keyboard-shortcuts
- /categories/75/articles
- /categories/keyboard-shortcuts
- /articles/keyboard-shortcuts
- /github/getting-started-with-github/keyboard-shortcuts
- /github/getting-started-with-github/using-github/keyboard-shortcuts
versions:
fpt: '*'
ghes: '*'
ghae: '*'
ghec: '*'
---
## About keyboard shortcuts
Typing ? on {% data variables.product.prodname_dotcom %} brings up a dialog box that lists the keyboard shortcuts available for that page. You can use these keyboard shortcuts to perform actions across the site without using your mouse to navigate.
{% ifversion keyboard-shortcut-accessibility-setting %}
You can disable character key shortcuts, while still allowing shortcuts that use modifier keys, in your accessibility settings. For more information, see "[Managing accessibility settings](/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-personal-account-settings/managing-accessibility-settings)."{% endif %}
Below is a list of some of the available keyboard shortcuts.
{% ifversion command-palette %}
The {% data variables.product.prodname_command_palette %} also gives you quick access to a wide range of actions, without the need to remember keyboard shortcuts. For more information, see "[{% data variables.product.prodname_command_palette %}](/get-started/using-github/github-command-palette)."{% endif %}
## Site wide shortcuts
| Keyboard shortcut | Description
|-----------|------------
|S or / | Focus the search bar. For more information, see "[About searching on {% data variables.product.company_short %}](/search-github/getting-started-with-searching-on-github/about-searching-on-github)."
|G N | Go to your notifications. For more information, see "[About notifications](/github/managing-subscriptions-and-notifications-on-github/about-notifications)."
|Esc | When focused on a user, issue, or pull request hovercard, closes the hovercard and refocuses on the element the hovercard is in
{% ifversion command-palette %}|Command+K (Mac) or Ctrl+K (Windows/Linux) | Opens the {% data variables.product.prodname_command_palette %}. If you are editing Markdown text, open the command palette with Command+Option+K or Ctrl+Alt+K. For more information, see "[{% data variables.product.prodname_command_palette %}](/get-started/using-github/github-command-palette)."{% endif %}
## Repositories
| Keyboard shortcut | Description
|-----------|------------
|G C | Go to the **Code** tab
|G I | Go to the **Issues** tab. For more information, see "[About issues](/articles/about-issues)."
|G P | Go to the **Pull requests** tab. For more information, see "[About pull requests](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests)."{% ifversion fpt or ghes or ghec %}
|G A | Go to the **Actions** tab. For more information, see "[About Actions](/actions/getting-started-with-github-actions/about-github-actions)."{% endif %}
|G B | Go to the **Projects** tab. For more information, see "[About project boards](/articles/about-project-boards)."
|G W | Go to the **Wiki** tab. For more information, see "[About wikis](/communities/documenting-your-project-with-wikis/about-wikis)."{% ifversion discussions %}
|G G | Go to the **Discussions** tab. For more information, see "[About discussions](/discussions/collaborating-with-your-community-using-discussions/about-discussions)."{% endif %}
## Source code editing
| Keyboard shortcut | Description
|-----------|------------{% ifversion fpt or ghec %}
|. | Opens a repository or pull request in the web-based editor. For more information, see "[Web-based editor](/codespaces/developing-in-codespaces/web-based-editor)."{% endif %}
|Command+B (Mac) or Ctrl+B (Windows/Linux) | Inserts Markdown formatting for bolding text
|Command+I (Mac) or Ctrl+I (Windows/Linux) | Inserts Markdown formatting for italicizing text
|Command+K (Mac) or Ctrl+K (Windows/Linux) | Inserts Markdown formatting for creating a link{% ifversion fpt or ghec or ghae or ghes > 3.3 %}
|Command+Shift+7 (Mac) or Ctrl+Shift+7 (Windows/Linux) | Inserts Markdown formatting for an ordered list
|Command+Shift+8 (Mac) or Ctrl+Shift+8 (Windows/Linux) | Inserts Markdown formatting for an unordered list
|Command+Shift+. (Mac) or Ctrl+Shift+. (Windows/Linux) | Inserts Markdown formatting for a quote{% endif %}
|E | Open source code file in the **Edit file** tab
|Command+F (Mac) or Ctrl+F (Windows/Linux) | Start searching in file editor
|Command+G (Mac) or Ctrl+G (Windows/Linux) | Find next
|Command+Shift+G (Mac) or Ctrl+Shift+G (Windows/Linux) | Find previous
|Command+Option+F (Mac) or Ctrl+Shift+F (Windows/Linux) | Replace
|Command+Shift+Option+F (Mac) or Ctrl+Shift+R (Windows/Linux) | Replace all
|Alt+G | Jump to line
|Command+Z (Mac) or Ctrl+Z (Windows/Linux) | Undo
|Command+Y (Mac) or Ctrl+Y (Windows/Linux) | Redo
|Command+Shift+P | Toggles between the **Edit file** and **Preview changes** tabs
|Command+S (Mac) or Ctrl+S (Windows/Linux) | Write a commit message
For more keyboard shortcuts, see the [CodeMirror documentation](https://codemirror.net/doc/manual.html#commands).
## Source code browsing
| Keyboard shortcut | Description
|-----------|------------
|T | Activates the file finder
|L | Jump to a line in your code
|W | Switch to a new branch or tag
|Y | Expand a URL to its canonical form. For more information, see "[Getting permanent links to files](/articles/getting-permanent-links-to-files)."
|I | Show or hide comments on diffs. For more information, see "[Commenting on the diff of a pull request](/articles/commenting-on-the-diff-of-a-pull-request)."
|A | Show or hide annotations on diffs
|B | Open blame view. For more information, see "[Tracing changes in a file](/articles/tracing-changes-in-a-file)."
## Comments
| Keyboard shortcut | Description
|-----------|------------
|Command+B (Mac) or Ctrl+B (Windows/Linux) | Inserts Markdown formatting for bolding text
|Command+I (Mac) or Ctrl+I (Windows/Linux) | Inserts Markdown formatting for italicizing text
|Command+E (Mac) or Ctrl+E (Windows/Linux) | Inserts Markdown formatting for code or a command within a line{% ifversion fpt or ghae-issue-5434 or ghes or ghec %}
|Command+K (Mac) or Ctrl+K (Windows/Linux) | Inserts Markdown formatting for creating a link{% endif %}{% ifversion fpt or ghae-issue-7103 or ghes > 3.5 or ghec %}
|Command+V (Mac) or Ctrl+V (Windows/Linux) | Creates a Markdown link when applied over highlighted text{% endif %}
|Command+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux) | Toggles between the **Write** and **Preview** comment tabs{% ifversion fpt or ghae or ghes > 3.4 or ghec %}
|Command+Shift+V (Mac) or Ctrl+Shift+V (Windows/Linux) | Pastes HTML link as plain text{% endif %}{% ifversion fpt or ghae or ghes > 3.2 or ghec %}
|Command+Shift+Opt+V (Mac) or Ctrl+Shift+Alt+V (Windows/Linux) | Pastes HTML link as plain text{% endif %}{% ifversion fpt or ghae or ghes > 3.2 or ghec %}
|Command+Shift+7 (Mac) or Ctrl+Shift+7 (Windows/Linux) | Inserts Markdown formatting for an ordered list
|Command+Shift+8 (Mac) or Ctrl+Shift+8 (Windows/Linux) | Inserts Markdown formatting for an unordered list{% endif %}
|Command+Enter (Mac) or Ctrl+Enter (Windows/Linux) | Submits a comment
|Ctrl+. and then Ctrl+[saved reply number] | Opens saved replies menu and then autofills comment field with a saved reply. For more information, see "[About saved replies](/articles/about-saved-replies)."{% ifversion fpt or ghae or ghes > 3.2 or ghec %}
|Command+Shift+. (Mac) or Ctrl+Shift+. (Windows/Linux) | Inserts Markdown formatting for a quote{% endif %}{% ifversion fpt or ghec %}
|Command+G (Mac) or Ctrl+G (Windows/Linux) | Insert a suggestion. For more information, see "[Reviewing proposed changes in a pull request](/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/reviewing-proposed-changes-in-a-pull-request)." |{% endif %}
|R | Quote the selected text in your reply. For more information, see "[Basic writing and formatting syntax](/articles/basic-writing-and-formatting-syntax#quoting-text)." |
## Issue and pull request lists
| Keyboard shortcut | Description
|-----------|------------
|C | Create an issue
|Command+/ (Mac) or Ctrl+/ (Windows/Linux) | Focus your cursor on the issues or pull requests search bar. For more information, see "[Filtering and searching issues and pull requests](/issues/tracking-your-work-with-issues/filtering-and-searching-issues-and-pull-requests)."||
|U | Filter by author
|L | Filter by or edit labels. For more information, see "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)."
|Alt and click | While filtering by labels, exclude labels. For more information, see "[Filtering issues and pull requests by labels](/articles/filtering-issues-and-pull-requests-by-labels)."
|M | Filter by or edit milestones. For more information, see "[Filtering issues and pull requests by milestone](/articles/filtering-issues-and-pull-requests-by-milestone)."
|A | Filter by or edit assignee. For more information, see "[Filtering issues and pull requests by assignees](/articles/filtering-issues-and-pull-requests-by-assignees)."
|O or Enter | Open issue
## Issues and pull requests
| Keyboard shortcut | Description
|-----------|------------
|Q | Request a reviewer. For more information, see "[Requesting a pull request review](/articles/requesting-a-pull-request-review/)."
|M | Set a milestone. For more information, see "[Associating milestones with issues and pull requests](/articles/associating-milestones-with-issues-and-pull-requests/)."
|L | Apply a label. For more information, see "[Applying labels to issues and pull requests](/articles/applying-labels-to-issues-and-pull-requests/)."
|A | Set an assignee. For more information, see "[Assigning issues and pull requests to other {% data variables.product.company_short %} users](/articles/assigning-issues-and-pull-requests-to-other-github-users/)."
|X | Link an issue or pull request from the same repository. For more information, see "[Linking a pull request to an issue](/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue/)."
|Command+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux) | Toggles between the **Write** and **Preview** tabs{% ifversion fpt or ghec %}
|Alt and click | When creating an issue from a task list, open the new issue form in the current tab by holding Alt and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)."
|Shift and click | When creating an issue from a task list, open the new issue form in a new tab by holding Shift and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)."
|Command and click (Mac) or Ctrl+Shift and click (Windows/Linux) | When creating an issue from a task list, open the new issue form in the new window by holding Command or Ctrl+Shift and clicking the {% octicon "issue-opened" aria-label="The issue opened icon" %} in the upper-right corner of the task. For more information, see "[About task lists](/issues/tracking-your-work-with-issues/creating-issues/about-task-lists)."{% endif %}
## Changes in pull requests
| Keyboard shortcut | Description
|-----------|------------
|C | Open the list of commits in the pull request
|T | Open the list of changed files in the pull request
|J | Move selection down in the list
|K | Move selection up in the list
|Command+Shift+Enter | Add a single comment on a pull request diff |
|Alt and click | Toggle between collapsing and expanding all outdated review comments in a pull request by holding down Alt and clicking **Show outdated** or **Hide outdated**.|
|Click, then Shift and click | Comment on multiple lines of a pull request by clicking a line number, holding Shift, then clicking another line number. For more information, see "[Commenting on a pull request](/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)."|
{% ifversion projects-v2 %}
## {% data variables.projects.projects_v2_caps %}
### Navigating a project
| Keyboard shortcut | Description
|-----------|------------
|⌘+f (Mac) or Ctrl+f (Windows/Linux) | Focus filter field
|← | Move cell focus to the left
|→ | Move cell focus to the right
|↑ | Move cell focus up
|↓ | Move cell focus down
### Manipulating a project
| Keyboard shortcut | Description
|-----------|------------
|Enter | Toggle edit mode for the focused cell
|Escape | Cancel editing for the focused cell
|⌘+Shift+\ (Mac) or Ctrl+Shift+\ (Windows/Linux) | Open row actions menu
|Shift+Space | Select item
|Space | Open selected item
|e | Archive selected items
{% endif %}
## {% data variables.product.prodname_projects_v1_caps %}
### Moving a column
| Keyboard shortcut | Description
|-----------|------------
|Enter or Space | Start moving the focused column
|Esc | Cancel the move in progress
|Enter | Complete the move in progress
|← or H | Move column to the left
|Command+← or Command+H (Mac) or Ctrl+← or Ctrl+H (Windows/Linux) | Move column to the leftmost position
|→ or L | Move column to the right
|Command+→ or Command+L (Mac) or Ctrl+→ or Ctrl+L (Windows/Linux) | Move column to the rightmost position
### Moving a card
| Keyboard shortcut | Description
|-----------|------------
|Enter or Space | Start moving the focused card
|Esc | Cancel the move in progress
|Enter | Complete the move in progress
|↓ or J | Move card down
|Command+↓ or Command+J (Mac) or Ctrl+↓ or Ctrl+J (Windows/Linux) | Move card to the bottom of the column
|↑ or K | Move card up
|Command+↑ or Command+K (Mac) or Ctrl+↑ or Ctrl+K (Windows/Linux) | Move card to the top of the column
|← or H | Move card to the bottom of the column on the left
|Shift+← or Shift+H | Move card to the top of the column on the left
|Command+← or Command+H (Mac) or Ctrl+← or Ctrl+H (Windows/Linux) | Move card to the bottom of the leftmost column
|Command+Shift+← or Command+Shift+H (Mac) or Ctrl+Shift+← or Ctrl+Shift+H (Windows/Linux) | Move card to the top of the leftmost column
|→ | Move card to the bottom of the column on the right
|Shift+→ or Shift+L | Move card to the top of the column on the right
|Command+→ or Command+L (Mac) or Ctrl+→ or Ctrl+L (Windows/Linux) | Move card to the bottom of the rightmost column
|Command+Shift+→ or Command+Shift+L (Mac) or Ctrl+Shift+→ or Ctrl+Shift+L (Windows/Linux) | Move card to the bottom of the rightmost column
### Previewing a card
| Keyboard shortcut | Description
|-----------|------------
|Esc | Close the card preview pane
{% ifversion fpt or ghec %}
## {% data variables.product.prodname_actions %}
| Keyboard shortcut | Description
|-----------|------------
|Command+Space (Mac) or Ctrl+Space (Windows/Linux) | In the workflow editor, get suggestions for your workflow file.
|G F | Go to the workflow file
|Shift+T or T | Toggle timestamps in logs
|Shift+F or F | Toggle full-screen logs
|Esc | Exit full-screen logs
{% endif %}
## Notifications
| Keyboard shortcut | Description
|-----------|------------
|E | Mark as done
|Shift+U| Mark as unread
|Shift+I| Mark as read
|Shift+M | Unsubscribe
## Network graph
| Keyboard shortcut | Description
|-----------|------------
|← or H | Scroll left
|→ or L | Scroll right
|↑ or K | Scroll up
|↓ or J | Scroll down
|Shift+← (Mac) or Shift+H (Windows/Linux) | Scroll all the way left
|Shift+→ (Mac) or Shift+L (Windows/Linux) | Scroll all the way right
|Shift+↑ (Mac) or Shift+K (Windows/Linux) | Scroll all the way up
|Shift+↓ (Mac) or Shift+J (Windows/Linux) | Scroll all the way down