4coder (4.1.X) cheatsheet listing all default bindings
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Global | |
| Alt b - toggle_filebar | |
| - Toggles the visibility status of the current view's filebar. | |
| Control h - project_go_to_root_directory | |
| - Changes 4coder's hot directory to the root directory of the currently loaded project. With no loaded project nothing hapepns. | |
| Control i - interactive_switch_buffer | |
| - Interactively switch to an open buffer. | |
| Control Shift i - list_all_functions_current_buffer | |
| - Creates a jump list of lines of the current buffer that appear to define or declare functions. | |
| Control k - interactive_kill_buffer | |
| - Interactively kill an open buffer. | |
| Alt m - build_in_build_panel | |
| - Looks for a build.bat, build.sh, or makefile in the current and parent directories. Runs the first that it finds and prints the output to *compilation*. Puts the *compilation* buffer in a panel at the footer of the current view. | |
| Alt Shift m - goto_first_jump | |
| - If a buffer containing jump locations has been locked in, goes to the first jump in the buffer. | |
| Alt n - goto_next_jump | |
| - If a buffer containing jump locations has been locked in, goes to the next jump in the buffer, skipping sub jump locations. | |
| Control n - interactive_new | |
| - Interactively creates a new file. | |
| Alt Shift n - goto_prev_jump | |
| - If a buffer containing jump locations has been locked in, goes to the previous jump in the buffer, skipping sub jump locations. | |
| Alt o - open_in_other | |
| - Interactively opens a file in the other panel. | |
| Control o - interactive_open_or_new | |
| - Interactively open a file out of the file system. | |
| Control Shift s - save_all_dirty_buffers | |
| - Saves all buffers marked dirty (showing the '*' indicator). | |
| Alt u - keyboard_macro_replay | |
| - Replay the most recently recorded keyboard macro | |
| Control u - keyboard_macro_start_recording | |
| - Start macro recording, do nothing if macro recording is already started | |
| Control Shift u - keyboard_macro_finish_recording | |
| - Stop macro recording, do nothing if macro recording is not already started | |
| Alt x - command_lister | |
| - Opens an interactive list of all registered commands. | |
| Alt Shift x - project_command_lister | |
| - Open a lister of all commands in the currently loaded project. | |
| Alt z - execute_any_cli | |
| - Queries for an output buffer name and system command, runs the system command as a CLI and prints the output to the specified buffer. | |
| Alt Shift z - execute_previous_cli | |
| - If the command execute_any_cli has already been used, this will execute a CLI reusing the most recent buffer name and command. | |
| Alt , - close_build_panel | |
| - If the special build panel is open, closes it. | |
| Control , - change_active_panel | |
| - Change the currently active panel, moving to the panel with the next highest view_id. | |
| Control Shift , - change_active_panel_backwards | |
| - Change the currently active panel, moving to the panel with the next lowest view_id. | |
| Alt . - change_to_build_panel | |
| - If the special build panel is open, makes the build panel the active panel. | |
| f1 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f2 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f3 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| Alt f4 - exit_4coder | |
| - Attempts to close 4coder. | |
| f5 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f6 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f7 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f8 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f9 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f10 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f11 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f12 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f13 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f14 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f15 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| f16 - project_fkey_command | |
| - Run an 'fkey command' configured in a project.4coder file. Determines the index of the 'fkey command' by which function key or numeric key was pressed to trigger the command. | |
| MouseWheel - mouse_wheel_scroll | |
| - Reads the scroll wheel value from the mouse state and scrolls accordingly. | |
| Control MouseWheel - mouse_wheel_change_face_size | |
| - Reads the state of the mouse wheel and uses it to either increase or decrease the face size. | |
| Startup - default_startup | |
| - Default command for responding to a startup event | |
| TryExit - default_try_exit | |
| - Default command for responding to a try-exit event | |
| File | |
| TextInput - write_text_input | |
| - Inserts whatever text was used to trigger this command. | |
| Control a - replace_in_range | |
| - Queries the user for a needle and string. Replaces all occurences of needle with string in the range between cursor and the mark in the active buffer. | |
| Control c - copy | |
| - Copy the text in the range from the cursor to the mark onto the clipboard. | |
| Control d - delete_range | |
| - Deletes the text in the range between the cursor and the mark. | |
| Control Shift d - delete_line | |
| - Delete the line the on which the cursor sits. | |
| Control e - center_view | |
| - Centers the view vertically on the line on which the cursor sits. | |
| Control Shift e - left_adjust_view | |
| - Sets the left size of the view near the x position of the cursor. | |
| Alt f - list_all_substring_locations_case_insensitive | |
| - Queries the user for a string and lists all case-insensitive substring matches found in all open buffers. | |
| Control f - search | |
| - Begins an incremental search down through the current buffer for a user specified string. | |
| Control Shift f - list_all_locations | |
| - Queries the user for a string and lists all exact case-sensitive matches found in all open buffers. | |
| Control g - goto_line | |
| - Queries the user for a number, and jumps the cursor to the corresponding line. | |
| Control Shift g - list_all_locations_of_selection | |
| - Reads the string in the selected range and lists all exact case-sensitive mathces in all open buffers. | |
| Control j - snippet_lister | |
| - Opens a snippet lister for inserting whole pre-written snippets of text. | |
| Control Shift k - kill_buffer | |
| - Kills the current buffer. | |
| Control l - duplicate_line | |
| - Create a copy of the line on which the cursor sits. | |
| Control m - cursor_mark_swap | |
| - Swaps the position of the cursor and the mark. | |
| Control Shift o - reopen | |
| - Reopen the current buffer from the hard drive. | |
| Alt q - query_replace_selection | |
| - Queries the user for a string, and incrementally replace every occurence of the string found in the selected range with the specified string. | |
| Control q - query_replace | |
| - Queries the user for two strings, and incrementally replaces every occurence of the first string with the second string. | |
| Control Shift q - query_replace_identifier | |
| - Queries the user for a string, and incrementally replace every occurence of the word or token found at the cursor with the specified string. | |
| Control r - reverse_search | |
| - Begins an incremental search up through the current buffer for a user specified string. | |
| Control s - save | |
| - Saves the current buffer. | |
| Control Shift s - save_all_dirty_buffers | |
| - Saves all buffers marked dirty (showing the '*' indicator). | |
| Control t - search_identifier | |
| - Begins an incremental search down through the current buffer for the word or token under the cursor. | |
| Control Shift t - list_all_locations_of_identifier | |
| - Reads a token or word under the cursor and lists all exact case-sensitive mathces in all open buffers. | |
| Control v - paste_and_indent | |
| - Paste from the top of clipboard and run auto-indent on the newly pasted text. | |
| Control Shift v - paste_next_and_indent | |
| - Paste the next item on the clipboard and run auto-indent on the newly pasted text. | |
| Control x - cut | |
| - Cut the text in the range from the cursor to the mark onto the clipboard. | |
| Control y - redo | |
| - Advances forwards through the undo history of the current buffer. | |
| Control z - undo | |
| - Advances backwards through the undo history of the current buffer. | |
| Control 1 - view_buffer_other_panel | |
| - Set the other non-active panel to view the buffer that the active panel views, and switch to that panel. | |
| Control 2 - swap_panels | |
| - Swaps the active panel with it's sibling. | |
| Control Shift . - view_jump_list_with_lister | |
| - When executed on a buffer with jumps, creates a persistent lister for all the jumps | |
| home - seek_beginning_of_line | |
| - Seeks the cursor to the beginning of the visual line. | |
| pageup - page_up | |
| - Scrolls the view up one view height and moves the cursor up one view height. | |
| Control pageup - goto_beginning_of_file | |
| - Sets the cursor to the beginning of the file. | |
| delete - delete_char | |
| - Deletes the character to the right of the cursor. | |
| Alt delete - snipe_forward_whitespace_or_token_boundary | |
| - Delete a single, whole token on or to the right of the cursor and post it to the clipboard. | |
| Control delete - delete_alpha_numeric_boundary | |
| - Delete characters between the cursor position and the first alphanumeric boundary to the right. | |
| end - seek_end_of_line | |
| - Seeks the cursor to the end of the visual line. | |
| pagedown - page_down | |
| - Scrolls the view down one view height and moves the cursor down one view height. | |
| Control pagedown - goto_end_of_file | |
| - Sets the cursor to the end of the file. | |
| up - move_up | |
| - Moves the cursor up one line. | |
| Alt up - move_line_up | |
| - Swaps the line under the cursor with the line above it, and moves the cursor up with it. | |
| Control up - move_up_to_blank_line_end | |
| - Seeks the cursor up to the next blank line and places it at the end of the line. | |
| down - move_down | |
| - Moves the cursor down one line. | |
| Alt down - move_line_down | |
| - Swaps the line under the cursor with the line below it, and moves the cursor down with it. | |
| Control down - move_down_to_blank_line_end | |
| - Seeks the cursor down to the next blank line and places it at the end of the line. | |
| left - move_left | |
| - Moves the cursor one character to the left. | |
| Control left - move_left_whitespace_boundary | |
| - Seek left for the next boundary between whitespace and non-whitespace. | |
| right - move_right | |
| - Moves the cursor one character to the right. | |
| Control right - move_right_whitespace_boundary | |
| - Seek right for the next boundary between whitespace and non-whitespace. | |
| Control space - set_mark | |
| - Sets the mark to the current position of the cursor. | |
| backspace - backspace_char | |
| - Deletes the character to the left of the cursor. | |
| Alt backspace - snipe_backward_whitespace_or_token_boundary | |
| - Delete a single, whole token on or to the left of the cursor and post it to the clipboard. | |
| Control backspace - backspace_alpha_numeric_boundary | |
| - Delete characters between the cursor position and the first alphanumeric boundary to the left. | |
| return - if_read_only_goto_position | |
| - If the buffer in the active view is writable, inserts a character, otherwise performs goto_jump_at_cursor. | |
| Shift return - if_read_only_goto_position_same_panel | |
| - If the buffer in the active view is writable, inserts a character, otherwise performs goto_jump_at_cursor_same_panel. | |
| Mouse Left Press - click_set_cursor_and_mark | |
| - Sets the cursor position and mark to the mouse position. | |
| Mouse Left Release - click_set_cursor | |
| - Sets the cursor position to the mouse position. | |
| MoveMove - click_set_cursor_if_lbutton | |
| - If the mouse left button is pressed, sets the cursor position to the mouse position. | |
| ClickActiveView - click_set_cursor_and_mark | |
| - Sets the cursor position and mark to the mouse position. | |
| Code | |
| TextInput - write_text_and_auto_indent | |
| - Inserts text and auto-indents the line on which the cursor sits if any of the text contains 'layout punctuation' such as ;:{}()[]# and new lines. | |
| Alt d - list_all_locations_of_type_definition | |
| - Queries user for string, lists all locations of strings that appear to define a type whose name matches the input string. | |
| Alt i - if0_off | |
| - Surround the range between the cursor and mark with an '#if 0' and an '#endif'. | |
| Alt r - write_block | |
| - At the cursor, insert a block comment. | |
| Alt t - write_todo | |
| - At the cursor, insert a '// TODO' comment, includes user name if it was specified in config.4coder. | |
| Alt Shift t - list_all_locations_of_type_definition_of_identifier | |
| - Reads a token or word under the cursor and lists all locations of strings that appear to define a type whose name matches it. | |
| Alt y - write_note | |
| - At the cursor, insert a '// NOTE' comment, includes user name if it was specified in config.4coder. | |
| Alt 1 - open_file_in_quotes | |
| - Reads a filename from surrounding '"' characters and attempts to open the corresponding file. | |
| Alt 2 - open_matching_file_cpp | |
| - If the current file is a *.cpp or *.h, attempts to open the corresponding *.h or *.cpp file in the other view. | |
| Control 0 - write_zero_struct | |
| - At the cursor, insert a ' = {};'. | |
| Alt - - delete_current_scope | |
| - Deletes the braces surrounding the currently selected scope. Leaves the contents within the scope. | |
| Alt / - place_in_scope | |
| - Wraps the code contained in the range between cursor and mark with a new curly brace scope. | |
| Control ; - comment_line_toggle | |
| - Turns uncommented lines into commented lines and vice versa for comments starting with '//'. | |
| Alt ' - select_next_scope_absolute | |
| - Finds the first scope started by '{' after the cursor and puts the cursor and mark on the '{' and '}'. | |
| Alt Shift ' - select_next_scope_after_current | |
| - If a scope is selected, find first scope that starts after the selected scope. Otherwise find the first scope that starts after the cursor. | |
| Alt [ - select_surrounding_scope | |
| - Finds the scope enclosed by '{' '}' surrounding the cursor and puts the cursor and mark on the '{' and '}'. | |
| Control [ - open_long_braces | |
| - At the cursor, insert a '{' and '}' separated by a blank line. | |
| Alt Shift [ - select_surrounding_scope_maximal | |
| - Selects the top-most scope that surrounds the cursor. | |
| Control Shift [ - open_long_braces_semicolon | |
| - At the cursor, insert a '{' and '};' separated by a blank line. | |
| Alt ] - select_prev_scope_absolute | |
| - Finds the first scope started by '{' before the cursor and puts the cursor and mark on the '{' and '}'. | |
| Alt Shift ] - select_prev_top_most_scope | |
| - Finds the first scope that starts before the cursor, then finds the top most scope that contains that scope. | |
| Control Shift ] - open_long_braces_break | |
| - At the cursor, insert a '{' and '}break;' separated by a blank line. | |
| Alt left - move_left_alpha_numeric_or_camel_boundary | |
| - Seek left for boundary between alphanumeric characters or camel case word and non-alphanumeric characters. | |
| Control left - move_left_alpha_numeric_boundary | |
| - Seek left for boundary between alphanumeric characters and non-alphanumeric characters. | |
| Alt right - move_right_alpha_numeric_or_camel_boundary | |
| - Seek right for boundary between alphanumeric characters or camel case word and non-alphanumeric characters. | |
| Control right - move_right_alpha_numeric_boundary | |
| - Seek right for boundary between alphanumeric characters and non-alphanumeric characters. | |
| tab - word_complete | |
| - Iteratively tries completing the word to the left of the cursor with other words in open buffers that have the same prefix string. | |
| Control tab - auto_indent_range | |
| - Auto-indents the range between the cursor and the mark. | |
| Shift tab - auto_indent_line_at_cursor | |
| - Auto-indents the line on which the cursor sits. | |
| Control Shift tab - word_complete_drop_down | |
| - Word complete with drop down menu. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment