From 18b1ac8cd1fe81af721ed903c23813f568630d9c Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Mon, 25 Feb 2013 00:49:27 +0100 Subject: EM...$ command to read macro from file and execute immediately (just like "M") * useful for using macro libraries --- src/qregisters.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/qregisters.cpp') diff --git a/src/qregisters.cpp b/src/qregisters.cpp index 17be046..e65365d 100644 --- a/src/qregisters.cpp +++ b/src/qregisters.cpp @@ -49,6 +49,7 @@ namespace States { StateSetQRegInteger setqreginteger; StateIncreaseQReg increaseqreg; StateMacro macro; + StateMacroFile macro_file; StateCopyToQReg copytoqreg; } @@ -590,6 +591,18 @@ StateMacro::got_register(QRegister ®) throw (Error, ReplaceCmdline) return &States::start; } +State * +StateMacroFile::done(const gchar *str) throw (Error) +{ + BEGIN_EXEC(&States::start); + + /* don't create new local Q-Registers if colon modifier is given */ + if (!Execute::file(str, !eval_colon())) + throw Error("Cannot execute macro from file \"%s\"", str); + + return &States::start; +} + State * StateCopyToQReg::got_register(QRegister ®) throw (Error) { -- cgit v1.2.3