From c41c32b464d3b64244a5a9ef95c9deade4463ded Mon Sep 17 00:00:00 2001 From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz> Date: Fri, 21 Jul 2017 23:13:30 +0200 Subject: [PATCH] maintain history file for aql --- aql2/src/prompt/Prompt.cpp | 7 ++++++- aql2/src/prompt/Prompt.h | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/aql2/src/prompt/Prompt.cpp b/aql2/src/prompt/Prompt.cpp index dd9d69f936..de453fc96f 100644 --- a/aql2/src/prompt/Prompt.cpp +++ b/aql2/src/prompt/Prompt.cpp @@ -31,7 +31,12 @@ char * Prompt::stripwhite ( char * begin ) { return begin; } -Prompt::Prompt ( cli::Environment environment ) : m_prefix ( "> " ), m_environment ( std::move ( environment ) ) { +Prompt::Prompt ( cli::Environment environment ) : m_prefix ( "> " ), m_history_file ( std::string ( std::getenv ( "HOME" ) ) + "/.aql" ), m_environment ( std::move ( environment ) ) { + read_history ( m_history_file.c_str ( ) ); +} + +Prompt::~Prompt ( ) { + write_history ( m_history_file.c_str ( ) ); } cli::Command::Result Prompt::run ( ) { diff --git a/aql2/src/prompt/Prompt.h b/aql2/src/prompt/Prompt.h index ce99f5c44d..9304076ab8 100644 --- a/aql2/src/prompt/Prompt.h +++ b/aql2/src/prompt/Prompt.h @@ -18,6 +18,7 @@ class Prompt { Prompt & operator = ( Prompt && ) = delete; std::string m_prefix; + std::string m_history_file; cli::Environment m_environment; @@ -25,6 +26,7 @@ class Prompt { public: Prompt ( cli::Environment environment ); + ~Prompt ( ); cli::Command::Result run ( ); cli::Command::Result execute_line ( std::string line ); -- GitLab