From 60c0d9789b896a2d6a0be06dcbe67b38d294579d Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sat, 8 Jul 2017 22:36:34 +0200 Subject: [PATCH] 11_terminal: Implement a cache for axzsh_is_widechar_terminal() --- core/11_terminal/11_terminal.zshrc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/core/11_terminal/11_terminal.zshrc b/core/11_terminal/11_terminal.zshrc index 60e0acb..6d4c988 100644 --- a/core/11_terminal/11_terminal.zshrc +++ b/core/11_terminal/11_terminal.zshrc @@ -23,7 +23,16 @@ alias isutfenv=axzsh_is_utf_terminal # Check if terminal supports "wide" characters. # +typeset -g _axzsh_is_widechar_terminal_cache function axzsh_is_widechar_terminal { + if [[ -z "$_axzsh_is_widechar_terminal_cache" ]]; then + # No cached result, call test function ... + _axzsh_is_widechar_terminal + _axzsh_is_widechar_terminal_cache=$? + fi + return $_axzsh_is_widechar_terminal_cache +} +function _axzsh_is_widechar_terminal { [[ -t 1 ]] || return 1 [[ -z "$AXZSH_PLUGIN_CHECK" ]] || return 1 axzsh_is_utf_terminal || return 1 -- 2.39.2