summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2017-09-23 13:18:58 +0900
committerMaxime Coste <mawww@kakoune.org>2017-09-23 13:18:58 +0900
commit626ccc09cce8cffa23bf153689a01a2f9216755b (patch)
tree64dfe5c95241dc3728e33448e77039b4a3403e6e /src
parent3a5bb051a81887961b7e06d39db44c98da1a256c (diff)
parentb46c9ac630d65fe4791d410b752624018359251b (diff)
Merge remote-tracking branch 'Delapouite/next-history-id'
Diffstat (limited to 'src')
-rw-r--r--src/buffer.hh1
-rw-r--r--src/normal.cc7
2 files changed, 6 insertions, 2 deletions
diff --git a/src/buffer.hh b/src/buffer.hh
index 41b29b77..d677647a 100644
--- a/src/buffer.hh
+++ b/src/buffer.hh
@@ -142,6 +142,7 @@ public:
bool redo(size_t count = 1) noexcept;
bool move_to(size_t history_id) noexcept;
size_t current_history_id() const noexcept;
+ size_t next_history_id() const noexcept { return m_next_history_id; }
String string(BufferCoord begin, BufferCoord end) const;
StringView substr(BufferCoord begin, BufferCoord end) const;
diff --git a/src/normal.cc b/src/normal.cc
index 5c3bd2a6..0a82d4d4 100644
--- a/src/normal.cc
+++ b/src/normal.cc
@@ -1775,6 +1775,7 @@ void move_in_history(Context& context, NormalParams params)
const int count = std::max(1, params.count);
const int history_id = (int)buffer.current_history_id() +
(direction == Direction::Forward ? count : -count);
+ const int max_history_id = (int)buffer.next_history_id() - 1;
if (buffer.move_to((size_t)history_id))
{
auto ranges = compute_modified_ranges(buffer, timestamp);
@@ -1782,11 +1783,13 @@ void move_in_history(Context& context, NormalParams params)
context.selections_write_only() = std::move(ranges);
context.selections().avoid_eol();
- context.print_status({ format("moved to change #{}", history_id),
+ context.print_status({ format("moved to change #{} ({})",
+ history_id, max_history_id),
get_face("Information") });
}
else
- context.print_status({ format("no such change: #{}", history_id),
+ context.print_status({ format("no such change: #{} ({})",
+ history_id, max_history_id),
get_face("Information") });
}