Hi everyone, This series will add the 'rebase.abbreviateCommands' configuration option to allow `git rebase -i` to default to the single-letter command names when generating the todo list. Using single-letter command names can present two benefits. First, it makes it easier to change the action since you only need to replace a single character (i.e.: in vim "r<character>" instead of "ciw<character>"). Second, using this with a large enough value of 'core.abbrev' enables the lines of the todo list to remain aligned making the files easier to read. Changes in V2: - Refactor and rename 'transform_todo_ids' - Replace SHA-1 by OID in rebase--helper.c - Update todo list related functions to take a generic 'flags' parameter - Rename 'add_exec_commands' function to 'sequencer_add_exec_commands' - Rename 'add-exec' option to 'add-exec-commands' - Use 'strbur_read_file' instead of rewriting it - Make 'command_to_char' return 'comment_char_line' if no single-letter command name is defined - Combine both tests into a single test case - Update commit messages Liam Beguin (9): Documentation: move rebase.* configs to new file Documentation: use preferred name for the 'todo list' script rebase -i: set commit to null in exec commands rebase -i: refactor transform_todo_ids rebase -i: replace reference to sha1 with oid rebase -i: update functions to use a flags parameter rebase -i -x: add exec commands via the rebase--helper rebase -i: learn to abbreviate command names t3404: add test case for abbreviated commands Documentation/config.txt | 31 +------- Documentation/git-rebase.txt | 19 +---- Documentation/rebase-config.txt | 52 +++++++++++++ builtin/rebase--helper.c | 29 +++++--- git-rebase--interactive.sh | 23 +----- sequencer.c | 126 +++++++++++++++++++++----------- sequencer.h | 10 ++- t/t3404-rebase-interactive.sh | 22 ++++++ 8 files changed, 186 insertions(+), 126 deletions(-) create mode 100644 Documentation/rebase-config.txt -- 2.15.1.280.g10402c1f5b5c