From: Sebastian Gniazdowski <sgniazdowski@gmail.com>
To: Zsh Users <zsh-users@zsh.org>
Subject: Global array actually not available
Date: Thu, 30 Jun 2016 16:34:55 +0200 [thread overview]
Message-ID: <CAKc7PVCTQDEvtirfeZF-0885pXEZwvXbR+DvO9k-QoQWKYpVPg@mail.gmail.com> (raw)
Hello
In code, I declare reply2 and reply3 as arrays via typeset -ga. I do
this from inside of a function. When the code returns to outer scope,
(t)reply2 and (t)reply3 show empty strings. The following lines start
at line 293 in lib/script_functions:
typeset -ga reply2 reply3
echo "T1 ${(t)reply} T2 ${(t)reply2} T3 ${(t)reply3}"
reply=( "${existing[@]}" )
reply2=( "${files[@]}" )
reply3=( "${sections[@]}" )
This is inner scope. The outer scope (line 1148 in zsh-select-zekyll) does:
filter_for_existing_zekylls "${zekylls[@]}"
three_to_section_order "${#reply}" "${reply[@]}" "${reply2[@]}"
"${reply3[@]}"
echo "t1 ${(t)reply} t2 ${(t)reply2} t3 ${(t)reply3}"
local -a existing files sections
existing=( "${reply[@]}" )
files=( "${reply2[@]}" )
sections=( "${reply3[@]}" )
echo "existing count: ${#existing}, files count: ${#files},
sections count: ${#sections}"
t1-t3 show empty string. Assigning ${reply2[@]} to files=( ... ) cause
the variable files to contain one mysterious element – it is empty,
probably.
To run the code first download zekyll, the investigation branch:
https://github.com/psprint/zekyll/tree/investig
it has to be unpacked to ~/.zekyll, final directory "zekyll", so full
path ~/.zekyll/zekyl. One can also use install script:
wget https://github.com/psprint/zekyll/blob/master/install.sh
sh ./install.sh
Next, one also needs a zkl repository available under
~/.zekyll/repos/{the-zkl-repo} or somewhere else (the path below after
-mp must match). It can be downloaded from:
https://github.com/psprint/zkl
After that, simply run command:
zkview -mp "/Users/sgniazdowski/github/zkl.git" --zkl
aaaaabaacaadaaeaafaagaahaaiaajaakaalaamaanaaoaap
Errorneous output will be created:
Read: aaaaabaacaadaaeaafaagaahaaiaajaakaalaamaanaaoaap
Checking current zekyll for duplicates...
T1 T2 array T3 array
-> aaa.A--Mainly_Exports
-> aab.A--Setopts_all
-> aad.B--Autoloads_tools_binds
-> aac.C--Bindkeys
-> aaf.D--Old_functions
-> aae.E--Aliases_all
-> aag.F--Tools_functions
-> aah.F--Other_functions
-> aaj.F--Off
-> aai.G--Hack
-> aak.H--Zplugin
-> aal.H--Zsh_navigation_tools
-> aam.I--Zstyles
-> aap.J--Completion
-> aan.K--Prompt_selection_final_setup
-> aao.L--Very_final
t1 t2 t3
existing count: 1, files count: 1, sections count: 1
Best regards,
Sebastian Gniazdowski
next reply other threads:[~2016-06-30 14:35 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-06-30 14:34 Sebastian Gniazdowski [this message]
2016-06-30 14:56 ` Sebastian Gniazdowski
2016-06-30 17:04 ` Bart Schaefer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAKc7PVCTQDEvtirfeZF-0885pXEZwvXbR+DvO9k-QoQWKYpVPg@mail.gmail.com \
--to=sgniazdowski@gmail.com \
--cc=zsh-users@zsh.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).