From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26053 invoked by alias); 30 Jun 2016 14:35:18 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 21713 Received: (qmail 10952 invoked from network); 30 Jun 2016 14:35:17 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to :content-transfer-encoding; bh=n0CvckqlTlNwQTi7uF9LCz2JEFvLLn8XRLYb5PR2cq0=; b=oE04g3Rjyn04TToZbjuo0Wjz707Nn7Ea3FHv8eGKRZrHQn9YVLXcSuMkfSt7LYRHzO nPmF8ABUK1QXZzDojRsUtvef9LJ8Hkz72Sv56qaDpQpgsfGiIxGNxtcqPGtxEvwvwA67 d2fKDRPHMkX2wXQVKwyGHUlbCJvEb4pCx92uqb8LPe2/5A+ThbEdKdi8+O+a7kkUD2KQ 5H2ydgZuyQo6/tcf03rA33zVvY6msJn7g15VFD97yEmpt8owUFoET7Z4qlpXzzXEnLPP LUAx5lbaLSN9AlFqJhJbgr4Eb5742QkJ/c1xQBMVHBnLnPocoTUbsYP4Kh6C+WhNih5S hWDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to :content-transfer-encoding; bh=n0CvckqlTlNwQTi7uF9LCz2JEFvLLn8XRLYb5PR2cq0=; b=eTk82WG3lb/xzWIU9PLMCAjYtBucPvV+6cWYAE+yECffzjg3en7XVm2RU//99fsNWT 2sSUTgahbxT3ERrHR2nTthZhTKTU5GatsauXwsykNYr+IPixUMoOsqNMzjJyRtkgE+JS wKrLKStzN/RAx165t5vZb2W0pwcijPWkMGR6RZ9CIgsZ5+d/VxIe/5SjR4AqUNaEZhV7 MvXf27B00Ik49YRbklADLvstFpsShZiyXeEFtX8lv0HpqhKNMIvz5BazVDclGqmZcu+l 1YbeK/qnBf0VcD8OoQTa8lsz1FRZb0PegHRH4iF0BWi16Z3bZUepM26V97zkraWB/k9/ ib3Q== X-Gm-Message-State: ALyK8tL79/o+nwlv+aMVvBBN/UFRRwz9USa7UyGjKsNNkOP/bRMD8vd/aiklBrMldrl29NX8zNbgEAL978OMXw== X-Received: by 10.55.65.71 with SMTP id o68mr15084484qka.163.1467297314536; Thu, 30 Jun 2016 07:35:14 -0700 (PDT) MIME-Version: 1.0 From: Sebastian Gniazdowski Date: Thu, 30 Jun 2016 16:34:55 +0200 Message-ID: Subject: Global array actually not available To: Zsh Users Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable 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=3D( "${existing[@]}" ) reply2=3D( "${files[@]}" ) reply3=3D( "${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=3D( "${reply[@]}" ) files=3D( "${reply2[@]}" ) sections=3D( "${reply3[@]}" ) echo "existing count: ${#existing}, files count: ${#files}, sections count: ${#sections}" t1-t3 show empty string. Assigning ${reply2[@]} to files=3D( ... ) cause the variable files to contain one mysterious element =E2=80=93 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