diff options
Diffstat (limited to 'src/buffer_utils.cc')
| -rw-r--r-- | src/buffer_utils.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/buffer_utils.cc b/src/buffer_utils.cc index ff05e781..d208386e 100644 --- a/src/buffer_utils.cc +++ b/src/buffer_utils.cc @@ -166,4 +166,23 @@ Buffer* create_fifo_buffer(String name, int fd, bool scroll) return buffer; } +void write_to_debug_buffer(StringView str) +{ + if (not BufferManager::has_instance()) + { + write(2, str.data(), (int)str.length()); + write(2, "\n", 1); + return; + } + + const StringView debug_buffer_name = "*debug*"; + if (Buffer* buffer = BufferManager::instance().get_buffer_ifp(debug_buffer_name)) + buffer->insert(buffer->end(), str); + else + { + String line = str + ((str.empty() or str.back() != '\n') ? "\n" : ""); + create_buffer_from_data(line, debug_buffer_name, Buffer::Flags::NoUndo); + } +} + } |
