From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21745 invoked from network); 13 Jan 2024 05:40:31 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 13 Jan 2024 05:40:31 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1705124431; b=Bdqmx/nvgd8Zu4DSIk8XJkKB/sF2cDSGqvIcAK27qBVCXq4w7MogKWSGM57F/XNN6sc/ZgV8wE c6VJMUatsHUJTy1XUiTY89v30IGU2AAQG1bEFT7jmvru5PO2jd6yCxrtWW9az/mPInfIhsshiR fqVhH3g32c2WV7IxR9fipklc3evzmg4anz/1rmVay+FJEFNtgVdZPkMcfLER5CgoUZu9m2/Ksf Ait4x/4gtefl2CqyeOz1ezCMG8bqRHhBlhlRD4g/mWe+UBw4R//Fb5Q6L3QhlCfNyyxLSZXIt6 OCjGQI54m2QAmIugkzJiOlzXE9P7ov2arlaPucN2LnieMg==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-lj1-f180.google.com) smtp.remote-ip=209.85.208.180; dkim=pass header.d=gmail.com header.s=20230601 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1705124431; bh=sdp0E/w6nm1TYbf2RnXtAHYG+BFthU43htXqk5CkzYg=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:Cc:To:Subject: Message-ID:Date:From:In-Reply-To:References:MIME-Version:DKIM-Signature: DKIM-Signature; b=WA7PSE4PMgrN3hoksPy8HhX95Xs7EZpSmat/l0aJbtyJUCv1DBCtOOJMwpcf+uLhg033mrbqqQ 5l/nd5zgroovxRSw+ZyPYtqrseC1yJ8j2xtns3IhXyLn6QYE/2dhnBTscqtsDicpYDGmZASWAl tb+EXANlgpStNft03Y/rLlyaFtQBJfZ4LbGwHz5sdYz0nM0Z5l/X7RftEODOBXwDZ3Pubozt6e pGVIrXeo2RRQu3D3T2jYJlTME+Ji3AlJssXyJEvKJ1ibgqAiiWLcy9y+DvPqqLysBts48rXeeY bPRR+HnmfdVzuLmd0wq3DjkxS7rpDd9MosphOQufZo4OpQ==; 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:Cc:To:Subject:Message-ID:Date:From:In-Reply-To:References: MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=TyhC8xUcpB0NhvOIgsNgzsmRGhoxUcVKJTUL6oGZmcI=; b=o0TJNwxhD4Rkm68G56+4WYVmyK U1R9QFDUatlQgMAsIr6CABupIo35kotrhZIJaBYfvPl61R5htvxDPVAFBLZG3PtkkRPESHYnGT2ie TRlYM4yUNC1i/9qRvItR9YZ0I3QAtMXcqBgdzLEhR79Fo73N2mcswMuJLL4j5rfICNic/AZ/9MWNq +NyqLwBf/NIkAnJxFj0qJro+60x6xNuI1lwidXcRXSMCIZwfRO0af+DxJ9v/HCV6WHnLFDqFvqBUU 9AS6MVK3f0+Ril07nUNmt8HpzTEXz99MgGL0v6SlwwMrToIvN5JpyofF9l1bzQYHg0QA6Gejp1bGl vo1ISANQ==; Received: by zero.zsh.org with local id 1rOWkw-000ItK-Ds; Sat, 13 Jan 2024 05:40:30 +0000 Authentication-Results: zsh.org; iprev=pass (mail-lj1-f180.google.com) smtp.remote-ip=209.85.208.180; dkim=pass header.d=gmail.com header.s=20230601 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-lj1-f180.google.com ([209.85.208.180]:58828) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1rOWk5-000IBM-9R; Sat, 13 Jan 2024 05:39:37 +0000 Received: by mail-lj1-f180.google.com with SMTP id 38308e7fff4ca-2cd46e7ae8fso80925551fa.1 for ; Fri, 12 Jan 2024 21:39:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705124376; x=1705729176; darn=zsh.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=TyhC8xUcpB0NhvOIgsNgzsmRGhoxUcVKJTUL6oGZmcI=; b=nrESfJfo16OIGWV9DaP472+aty4QbXuoN2HC0/vA8uQDdA536y2oraIgvHtweXhQ1s ye7jRT2J4F3nuNzfADRNbXvWCWonWpXFxhYYIseA5L9kLhUJrVE8f79Xsxrm7VTqpFVa rtFhjfeuyx6F7A9DB8XujjKdkWGqs7hL9lt0XFiqpMzLJnqzwKeF2ELxdFTyc8sA61ID md5kk9CoTd1smBrtLu4t5MKrjpNwcwjYWOfXIAKuOdyyAibT4MM3reYEhblaclkw9RX1 2QxOffRHfim3SpgwB9JhjMffLRkf7sz165nBKYjcgrOB+r0ouzdPjmePLrakhr3GL24A 2xPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705124376; x=1705729176; h=content-transfer-encoding:cc: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=TyhC8xUcpB0NhvOIgsNgzsmRGhoxUcVKJTUL6oGZmcI=; b=ndT61n408uvZNf44an0q53KT2DOO4AuCpXcIBEqB2fUbA0KTJDjX3eu/3nqT+FAzDC ADV8mtrk+ZPSspVCAAsSzMfNptxxIit2nHPL1hLpATQUNggqpzps2ddBVEJyoYws3VBX Cp+MIyCcEkv8ddLUdVG2Ca4YbeqdHSr5Zw11Nrdgr2v632AweUV0SMw3k0iywkUxDagh cpJvJUYFQ2OU3qFdxNME0yxtknsZTzNpmNCTa027Tn2xDzrv7nfkLsfnwr8pxWflFMXF DSG6aOtcv7Nnkux8vlRZK1o039Dg+J7DAJxPb2Pl2xq0H/n7pFYWdrxl+GvO7d6ujdWi M6jg== X-Gm-Message-State: AOJu0YyCYgbbFkup1G2DE8sVtwmbWtFn7YPiqERqHvjqm9HbQPAwaVYU cp72VmzpjKQsnqiM/DKKWI+NPsVwzj+qY0+60x8BqXSKdS8= X-Google-Smtp-Source: AGHT+IG4txl7Vy6w1JmmAMEj/igQQR6rYSnNLU67VaCTCgPefVQg+I30Z+dEAH5sxKCuxdc5iFDpmNnNr0itpc0qgFE= X-Received: by 2002:a2e:9c09:0:b0:2cd:1e40:2903 with SMTP id s9-20020a2e9c09000000b002cd1e402903mr581554lji.26.1705124376153; Fri, 12 Jan 2024 21:39:36 -0800 (PST) MIME-Version: 1.0 References: <205735b2-11e1-4b5e-baa2-7418753f591f@eastlink.ca> In-Reply-To: From: Roman Perepelitsa Date: Sat, 13 Jan 2024 06:39:24 +0100 Message-ID: Subject: Re: Fwd: more splitting travails To: Bart Schaefer Cc: zsh-users@zsh.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 29463 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 Fri, Jan 12, 2024 at 11:09=E2=80=AFPM Bart Schaefer wrote: > > Yeah, oddly, there's no straightforward way to get an unaltered file > into a shell variable. Even > read -rd '' < file > trims off trailing newlines. The only somewhat-obvious way is to use > zmodload zsh/mapfile > var=3D$mapfile[file] > but up until a recent dev version, on platforms that don't implement > memmap that just sneakily reverts to $( > I'm expecting Roman or someone to point out a different trick I've forgot= ten. The standard trick here is to print an extra character after the content of the file and then remove it. This works when capturing stdout of commands, too. printf '\n\nA\n\nB\n\n' >file # read the FULL file content file_content=3D${"$(file slurp