(FunctionDef set_fake_editor [] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "#!"][VarSub SHELL_PATH]]} < (FilenameRedirectNode filename={[LIT_CHARS fake-editor.sh]} "> 1), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS fake-editor.sh]} >"> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "case \"$1\" in\n"] [LIT_CHARS "*/COMMIT_EDITMSG)\n"] [LIT_CHARS "\ttest -z \"$EXPECT_HEADER_COUNT\" ||\n"] [LIT_CHARS "\t\ttest \"$EXPECT_HEADER_COUNT\" = \"$(sed -n '1s/^# This is a combination of \\(.*\\) commits\\./\\1/p' < \"$1\")\" ||\n"] [LIT_CHARS "\t\texit\n"] [LIT_CHARS "\ttest -z \"$FAKE_COMMIT_MESSAGE\" || echo \"$FAKE_COMMIT_MESSAGE\" > \"$1\"\n"] [LIT_CHARS "\ttest -z \"$FAKE_COMMIT_AMEND\" || echo \"$FAKE_COMMIT_AMEND\" >> \"$1\"\n"] [LIT_CHARS "\texit\n"] [LIT_CHARS "\t;;\n"] [LIT_CHARS "esac\n"] [LIT_CHARS "test -z \"$EXPECT_COUNT\" ||\n"] [LIT_CHARS "\ttest \"$EXPECT_COUNT\" = $(sed -e '/^#/d' -e '/^$/d' < \"$1\" | wc -l) ||\n"] [LIT_CHARS "\texit\n"] [LIT_CHARS "test -z \"$FAKE_LINES\" && exit\n"] [LIT_CHARS "grep -v '^#' < \"$1\" > \"$1\".tmp\n"] [LIT_CHARS "rm -f \"$1\"\n"] [LIT_CHARS "echo 'rebase -i script before editing:'\n"] [LIT_CHARS "cat \"$1\".tmp\n"] [LIT_CHARS "action=pick\n"] [LIT_CHARS "for line in $FAKE_LINES; do\n"] [LIT_CHARS "\tcase $line in\n"] [LIT_CHARS "\tsquash|fixup|edit|reword)\n"] [LIT_CHARS "\t\taction=\"$line\";;\n"] [LIT_CHARS "\texec*)\n"] [LIT_CHARS "\t\techo \"$line\" | sed 's/_/ /g' >> \"$1\";;\n"] [LIT_CHARS "\t\"#\")\n"] [LIT_CHARS "\t\techo '# comment' >> \"$1\";;\n"] [LIT_CHARS "\t\">\")\n"] [LIT_CHARS "\t\techo >> \"$1\";;\n"] [LIT_CHARS "\t*)\n"] [LIT_CHARS "\t\tsed -n \"${line}s/^pick/$action/p\" < \"$1\".tmp >> \"$1\"\n"] [LIT_CHARS "\t\taction=pick;;\n"] [LIT_CHARS "\tesac\n"] [LIT_CHARS "done\n"] [LIT_CHARS "echo 'rebase -i script after editing:'\n"] [LIT_CHARS "cat \"$1\"\n"]} 0), > ) (Com {[LIT_CHARS test_set_editor]} {[DQ [ComSub (Com {[LIT_CHARS pwd]})][LIT_CHARS /fake-editor.sh]]} ) (Com {[LIT_CHARS chmod]} {[LIT_CHARS a] [LIT_OTHER "+"] [LIT_CHARS x]} {[LIT_CHARS fake-editor.sh]} ) ) )