jes/src/core/DefaultCommandMap.cc

27 lines
1.2 KiB
C++

#include "DefaultCommandMap.h"
std::shared_ptr<CommandMap> g_DefaultCommandMap;
void DefaultCommandMap::build()
{
g_DefaultCommandMap = std::make_shared<CommandMap>();
CommandMap * dcm = &*g_DefaultCommandMap;
auto motion_map = std::make_shared<CommandMap>();
motion_map->add("t", Command::Motion::FORWARD_UP_TO_CHAR, nullptr, true);
motion_map->add("f", Command::Motion::FORWARD_ON_TO_CHAR, nullptr, true);
motion_map->add("T", Command::Motion::BACK_UP_TO_CHAR, nullptr, true);
motion_map->add("F", Command::Motion::BACK_ON_TO_CHAR, nullptr, true);
dcm->add("t", Command::FORWARD_UP_TO_CHAR, nullptr, true);
dcm->add("f", Command::FORWARD_ON_TO_CHAR, nullptr, true);
dcm->add("T", Command::BACK_UP_TO_CHAR, nullptr, true);
dcm->add("F", Command::BACK_ON_TO_CHAR, nullptr, true);
dcm->add("d", Command::DELETE_MOTION, motion_map, false);
dcm->add("dd", Command::DELETE_LINE, nullptr, false);
dcm->add("x", Command::DELETE_CHAR, nullptr, false);
dcm->add("X", Command::DELETE_CHAR_BACK, nullptr, false);
dcm->add("c", Command::CHANGE_MOTION, motion_map, false);
dcm->add("cc", Command::CHANGE_LINE, nullptr, false);
}