diff options
author | Moritz Poldrack <git@moritz.sh> | 2022-09-14 18:34:48 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2022-09-14 20:51:41 +0200 |
commit | 9c11ab21c73cecf80a243d8dfb55b7793da7bb96 (patch) | |
tree | d859430fcc7a2c08062af7fea17a8fdfd708783b | |
parent | 94bff9130d4e0a3b93563792f141444b5083fe51 (diff) | |
download | aerc-9c11ab21c73cecf80a243d8dfb55b7793da7bb96.tar.gz |
history: don't store duplicate entries
Signed-off-by: Moritz Poldrack <git@moritz.sh>
Acked-by: Tim Culverhouse <tim@timculverhouse.com>
Acked-by: Robin Jarry <robin@jarry.cc>
-rw-r--r-- | CHANGELOG.md | 2 | ||||
-rw-r--r-- | commands/history.go | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 7997db03..6ac429dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ### Changed - `:open-link` now supports link types other than HTTP(S) +- Running the same command multiple times only adds one entry to the command + history. ### Fixed diff --git a/commands/history.go b/commands/history.go index 77bb1553..1c0a1ec8 100644 --- a/commands/history.go +++ b/commands/history.go @@ -23,7 +23,9 @@ func (h *cmdHistory) Add(cmd string) { h.cmdList = h.cmdList[1:] } - h.cmdList = append(h.cmdList, cmd) + if len(h.cmdList) == 0 || h.cmdList[len(h.cmdList)-1] != cmd { + h.cmdList = append(h.cmdList, cmd) + } // whenever we add a new command, reset the current // pointer to the "beginning" of the list |