Merge pull request #1065 from dritter/protect_locale

Protect locale
pull/22/head
Dominik Ritter 6 years ago committed by GitHub
commit 724781e896
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -13,6 +13,7 @@
# Initialize the icon list according to the user's `POWERLEVEL9K_MODE`. # Initialize the icon list according to the user's `POWERLEVEL9K_MODE`.
typeset -gAH icons typeset -gAH icons
() { # add scope to protect the users locale and not overwrite LC_CTYPE!
case $POWERLEVEL9K_MODE in case $POWERLEVEL9K_MODE in
'flat'|'awesome-patched') 'flat'|'awesome-patched')
# Awesome-Patched Font required! See: # Awesome-Patched Font required! See:
@ -528,6 +529,7 @@ esac
if [[ "$POWERLEVEL9K_HIDE_BRANCH_ICON" == true ]]; then if [[ "$POWERLEVEL9K_HIDE_BRANCH_ICON" == true ]]; then
icons[VCS_BRANCH_ICON]='' icons[VCS_BRANCH_ICON]=''
fi fi
}
# Safety function for printing icons # Safety function for printing icons
# Prints the named icon, or if that icon is undefined, the string name. # Prints the named icon, or if that icon is undefined, the string name.

@ -17,52 +17,58 @@ function tearDown() {
LC_CTYPE="${_OLD_LC_CTYPE}" LC_CTYPE="${_OLD_LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInDefaultMode() { function testLcCtypeIsNotOverwrittenInDefaultMode() {
local POWERLEVEL9K_MODE="default" local POWERLEVEL9K_MODE="default"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInAwesomePatchedMode() { function testLcCtypeIsNotOverwrittenInAwesomePatchedMode() {
local POWERLEVEL9K_MODE="awesome-patched" local POWERLEVEL9K_MODE="awesome-patched"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInAwesomeFontconfigMode() { function testLcCtypeIsNotOverwrittenInAwesomeFontconfigMode() {
local POWERLEVEL9K_MODE="awesome-fontconfig" local POWERLEVEL9K_MODE="awesome-fontconfig"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInNerdfontFontconfigMode() { function testLcCtypeIsNotOverwrittenInNerdfontFontconfigMode() {
local POWERLEVEL9K_MODE="nerdfont-fontconfig" local POWERLEVEL9K_MODE="nerdfont-fontconfig"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInFlatMode() { function testLcCtypeIsNotOverwrittenInFlatMode() {
local POWERLEVEL9K_MODE="flat" local POWERLEVEL9K_MODE="flat"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
function testLcCtypeIsSetCorrectlyInCompatibleMode() { function testLcCtypeIsNotOverwrittenInCompatibleMode() {
local POWERLEVEL9K_MODE="compatible" local POWERLEVEL9K_MODE="compatible"
local LC_CTYPE="my-locale"
# Load Powerlevel9k # Load Powerlevel9k
source functions/icons.zsh source functions/icons.zsh
assertEquals 'en_US.UTF-8' "${LC_CTYPE}" assertEquals 'my-locale' "${LC_CTYPE}"
} }
# Go through all icons defined in default mode, and # Go through all icons defined in default mode, and

Loading…
Cancel
Save