kakoune/src/debug.cc

32 lines
666 B
C++
Raw Normal View History

#include "debug.hh"
#include "assert.hh"
#include "buffer_manager.hh"
2012-03-07 00:12:48 +01:00
#include "editor.hh"
namespace Kakoune
{
static Buffer& get_or_create_debug_buffer()
{
static const String debug_buffer_name("*debug*");
Buffer* buffer = BufferManager::instance().get_buffer(debug_buffer_name);
if (not buffer)
2012-03-07 00:12:48 +01:00
buffer = new Buffer(debug_buffer_name, Buffer::Type::Scratch, "");
assert(buffer);
return *buffer;
}
void write_debug(const String& str)
{
Buffer& debug_buffer = get_or_create_debug_buffer();
2012-03-07 00:12:48 +01:00
Editor editor(debug_buffer);
editor.select(debug_buffer.end()-1);
2012-03-07 00:12:48 +01:00
editor.insert(str);
debug_buffer.reset_undo_data();
}
}