From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_EF,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: from zero.zsh.org (zero.zsh.org [IPv6:2a02:898:31:0:48:4558:7a:7368]) by inbox.vuxu.org (Postfix) with ESMTP id D9114240B5 for ; Sun, 11 Feb 2024 05:48:11 +0100 (CET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1707626891; b=fiwKShD7CaA8a/qzbatkv0N4DZ4gb4ZsNKVO3OgB+6PxgceKkPD6e5k00gZM1E2qnSBuNa+s7l HyXITZpYbDyew2mItbIQK/mDjE+q4lErVmAR6mYvMsITUlRsAJ32CJcJAMcx+KVj8znw3EyMm+ /GP3zLasUZ0t1LR7X2gWjuJ20wmhS8xav7PZrI4DkZnnMivNMNxNXWbw/gjK8C8Ei8GWwXI1mq r3t0jitt/Qm6d5+0z9m//aViAmC1TLPKrqQbuoiP4kabVxtfnNjXUlcFJxM76AFR14o9HeTZtM X/dGaFPTIenwdkaCi+qd5qGkCMVYNAW0ZmSFYsJHQUMCsQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ej1-f49.google.com) smtp.remote-ip=209.85.218.49; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1707626891; bh=FeneXB1z7MZCbD5FznEfQvs/U8+glmNB66/hg/+o4KY=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:To:Subject:Message-ID: Date:From:In-Reply-To:References:MIME-Version:DKIM-Signature:DKIM-Signature; b=QCZDABQ/y0V8tjMA9FpXzptXLqQHyvzzr9zx+F0X5zwi75SpSNxdaxDIXkj5F/7wpvjFw3DdQU znIM6CiZKs1kMCyDY1jM5hac6SQSchpInGUNk2JBpusxRfqdxurqR40bYyU5udk43C+GwtFPzw r15IqmcW2b7au6vyXTVOtS72mK3fvW/1NcIiVsNXmEcms6YtFsNfSxx9AxWXCkJaOAJkzTEbN0 24Siqd/xqCuejEqBej1TwLDiE7vvO/G8+O/yYecUBEoUlUENn0UYqhGsMHFZK6Y8arKTv1RoHk qO+TmyMn7s0ZA0/DcR/J4lRd2wAvcmj7yy8/taG3fX2C4A==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Transfer-Encoding: Content-Type:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Reply-To:Cc:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=juQWK1GLZ2XdWVNFjpwyOTfrUJfVansr6WJr74T3gb0=; b=atAwQJJ4UWktrZKyn9JZbdSFkR mnrrdKiZZXGLFTNVS5CueU1ru74D+As3n0pasaY3p4HoMGdGLiVv0nrG6EUL4wau3hH9/Th39XnP5 DYXBAdsivMHj0EfqvO8eXJSFwPZHV8U5pv+hpTZQPiYNWc4JNkUL5AwOxtVSnd+vaiMT4i4eTNhQm qohOqFrvw1SEUgTeV4pybyNdx9wAXBmcZWArIhlVhTae747SmAdq/bDtNK1YvT0Kpe25ChbjgH0ih dJ2adN/PCL6Ym3w4QO1tWUH6EcEOuI5VcU8ZHbc+mYHhQhLUPW7S4aVOvbl2syrad/SI+BrrWQngd 15Nga0gA==; Received: by zero.zsh.org with local id 1rZ1lD-0003lg-8v; Sun, 11 Feb 2024 04:48:11 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ej1-f49.google.com) smtp.remote-ip=209.85.218.49; dkim=pass header.d=brasslantern-com.20230601.gappssmtp.com header.s=20230601 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ej1-f49.google.com ([209.85.218.49]:61769) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1rZ1jb-00031f-OT; Sun, 11 Feb 2024 04:46:32 +0000 Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-a3122b70439so267010666b.3 for ; Sat, 10 Feb 2024 20:46:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20230601.gappssmtp.com; s=20230601; t=1707626791; x=1708231591; darn=zsh.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=juQWK1GLZ2XdWVNFjpwyOTfrUJfVansr6WJr74T3gb0=; b=cM8eUOii0FXGp+eLbooMkgTl6biyiIZOVxcvjqyJKYuf+uH+ssS0sJKuggLSB5nNE6 Yjjo6To+gXoelFATaY8aQLoOahfGFljLnhoN5ycE0mqnJqqfDYIz6rrH4XvprApeLAe2 eAjpD93KmspEI/GDwnZyrNyvjK/AiJij+rZt8v0RSHYU1TNZ5X5ue1iXPsAmZg2IzTh2 WUhrN1P1fzNgvLYHeeV5I3Z6IhS1li3CFd2NoB1mDRFaZTAkWeGEgCq3CXnDledzG5i9 KkAHdi0pZMEBGnns+CgqcC6KJ52Y4DVTE/Xwq1jMg4lqHfdi4qqwFFioP0a/us08nzCb 9BLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707626791; x=1708231591; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=juQWK1GLZ2XdWVNFjpwyOTfrUJfVansr6WJr74T3gb0=; b=gWWEG2DbEr7wzJ8ZsKlYwLqgKQoAstxhA3hA8YrWjsnpGknw2z6PIcArRNqurSuz+W uvwtNclK38VDY0GjLbqURo2mOSUyqeuzJIAj3oTV0X+wpYnHtHOgiQg0JwyOiMUqML/D I7069VocZZRHRmxh6fQ0tF9Ddldo9aeejeSi9qmuSrtcJgEudQXNXpwyiUcbsBnf0EPo RxcDGaONhpJwRi6HA9zj/+bqxFlN8z4GXVqVTMba6tc3UmqvJ17OLJWWHCWYkEWIuVQs ggRsaBaJwIPmb+GTLwNEHNvXqvTqbpHDBgdwfDSpg5B533cOtJp+OiMoaRTh16XZLAoX wl0w== X-Gm-Message-State: AOJu0YyvD6cTCfePTvuIVuGKd7L+HDtDlesq+Njp+oSAS8F9K/1ibcP4 iK66vfAVm2HJF+DYpNuvBFC82V+FLr4t5jpB3jsD8Vxxdhpq/j73kcCmZSa1a2i/DQ6MNmK4f39 kHDiw0iXZBnQhoh08S78exKjTTDoRm5fzfq/9SIRLGvKC59M= X-Google-Smtp-Source: AGHT+IFHyHZA4kvNr5AHzXCHnrWf8kWTqVFZ1mYku25rMCUd3ul7eejjyAUpkAatgADznTnVdyYgUqkvje36pkox62s= X-Received: by 2002:a17:906:f6d0:b0:a38:a2f:c12a with SMTP id jo16-20020a170906f6d000b00a380a2fc12amr2295426ejb.64.1707626790985; Sat, 10 Feb 2024 20:46:30 -0800 (PST) MIME-Version: 1.0 References: <205735b2-11e1-4b5e-baa2-7418753f591f@eastlink.ca> <20240210204803.2ogpi5h752uzwf6e@chazelas.org> In-Reply-To: <20240210204803.2ogpi5h752uzwf6e@chazelas.org> From: Bart Schaefer Date: Sat, 10 Feb 2024 22:46:15 -0600 Message-ID: Subject: Re: Slurping a file (was: more spllitting travails) To: Zsh Users Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 29653 Archived-At: X-Loop: zsh-users@zsh.org Errors-To: zsh-users-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-users-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: On Sat, Feb 10, 2024 at 2:48=E2=80=AFPM Stephane Chazelas wrote: > > IMO, it would be more useful if the result was returned in the > variable whose name was given as argument (defaulting to REPLY > if none was given like for read or sysread). Could also read a file provided by name as an argument instead of only reading stdin, but I elected to commit the most straightforward version. > And would be better if upon error the returned variable > contained either what was successfully read or nothing (like > read but unlikely sysread). I had the impression this slurp-er was intended to work like examples from other languages, which do not have "read"-like behavior. > zslurp() { > emulate -L zsh -o no_multibyte > typeset -n _zslurp_var=3D${1-REPLY} Is there really any reason to prefix the locals with "_zslurp_" ? That's good practice if the function might call other code that's less careful about it's names and scoping, or if you need to the variable to become global, but nothing like that occurs here.