From d94475ca1b6a39cf92a3957d3b437903c15c4c93 Mon Sep 17 00:00:00 2001 From: Eric Freese Date: Fri, 14 Jun 2019 22:08:15 -0600 Subject: [PATCH] Simplify logic to extract suggestion from between null bytes Just remove up to and including the first null byte and after and including the last null byte. I also looked into using `${${(0)line}[2]}`, but it fails when `$line` starts with a null byte, since the first split string will be empty and thus not included in the resulting array. --- src/strategies/completion.zsh | 2 +- zsh-autosuggestions.zsh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strategies/completion.zsh b/src/strategies/completion.zsh index 8dc1f9d..06edc20 100644 --- a/src/strategies/completion.zsh +++ b/src/strategies/completion.zsh @@ -112,7 +112,7 @@ _zsh_autosuggest_strategy_completion() { # versions of zsh (older than 5.3), we sometimes get extra bytes after # the second null byte, so trim those off the end. # See http://www.zsh.org/mla/workers/2015/msg03290.html - suggestion="${${${(M)line:#*$'\0'*$'\0'*}#*$'\0'}%%$'\0'*}" + suggestion="${${line#*$'\0'}%$'\0'*}" } always { # Destroy the pty zpty -d $ZSH_AUTOSUGGEST_COMPLETIONS_PTY_NAME diff --git a/zsh-autosuggestions.zsh b/zsh-autosuggestions.zsh index cef55f8..e7d9861 100644 --- a/zsh-autosuggestions.zsh +++ b/zsh-autosuggestions.zsh @@ -594,7 +594,7 @@ _zsh_autosuggest_strategy_completion() { # versions of zsh (older than 5.3), we sometimes get extra bytes after # the second null byte, so trim those off the end. # See http://www.zsh.org/mla/workers/2015/msg03290.html - suggestion="${${${(M)line:#*$'\0'*$'\0'*}#*$'\0'}%%$'\0'*}" + suggestion="${${line#*$'\0'}%$'\0'*}" } always { # Destroy the pty zpty -d $ZSH_AUTOSUGGEST_COMPLETIONS_PTY_NAME