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.3 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 10988 invoked from network); 19 Aug 2023 17:08:40 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 19 Aug 2023 17:08:40 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1692464920; b=L78nNisdM/7Md6WhRi4b+kaAr9pYGr57sLcyqfgSqpLlnL7sOfcLQAp9FerA0J7XCFiYRuvzns 8oJv9qgHD1rBZIeUe0d3EuDhzjDdC9LTAsYRYgH9/AO0Wp7o712OKsBv4o9O7L3+SVtSFubHwf gAMnyda4/yMs7BdRn+nEEOZ6aIF1YRpNsKSOOtmorJ51nCkGMipHdWFUgH8V8ekiAESFmvwJoF h0sIiimga2IRlEzYhZr0Ug0fFN6fM5S6cybO/dfOkxD2hxDzAW0s/lOBAVR1SEsl1VMw8GQRMh 7WzuB3JlLmRyMl4cy/epaLVG+TnpvO9XD6Dbf7wOvlg+2A==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-ej1-f51.google.com) smtp.remote-ip=209.85.218.51; dkim=pass header.d=brasslantern-com.20221208.gappssmtp.com header.s=20221208 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=1692464920; bh=+godTp9Mib3Duc5geuws1TS+m286wWNTUIFPuSclSmQ=; 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=Gxdo1XkcVb5UKGjxzb5iaPhPGqKAT0AIsl5bONKQw8W+ujYTkuIwNgM83DPtcD6y/oONAFg6mQ /BhP3tBFt134oUmt39VLFqbto/5OfBS0shO6vf1Ej6gaquNOc59t4uSgBjpFgLyhTWQJ9x+k2I zacE5DWzTOneG8rdw6tAN9pqmo/czj4F/SCceFMq3Z/JBY5/uwQafIbRGzwhzXwXclFPD/WOoS /G6ywjKxhSX5TJHLoRAO+/hozaDA+LlZ+a/3nOThQ6z7vfryTVA8851Vn1IR5te/b4B7oeclDs 9cp2UOiO+VwzTqlGAxB67ThDNQJ6O0fIzlrAwnA5D1lvew==; 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=+godTp9Mib3Duc5geuws1TS+m286wWNTUIFPuSclSmQ=; b=dp8RZqT6URQk4rzbydIvTUzR/W TjaVkIon6Syy6xPOYL+Vegs6Ytrkhug+fDlFov1cU1Emh0xQDpBfZAIkq5ctp5bProHx6FKdabOkm b75HeaCjEEXUO+e8dbDc6AtSwjUTKHRveepC4Gs9cQqdVLSv/OOCjF8MPEmS6QOgopzP6CIKJ7V3r F9tT7Fby3gZjckxJmTvcnXPAmyRSOyeA2ALEXZjkYErvWrPpx9W3WxDOpo8QReLkhlBhfMJDwi9WV kf0OLiZYu+eWSlVzQoG96FNa41+599I3cKB1D/6z7od+4W4aqGHleWOoJX29V6z9ygXcytPG7KGRp TXVgUCOA==; Received: by zero.zsh.org with local id 1qXPRI-000HYR-41; Sat, 19 Aug 2023 17:08:40 +0000 Authentication-Results: zsh.org; iprev=pass (mail-ej1-f51.google.com) smtp.remote-ip=209.85.218.51; dkim=pass header.d=brasslantern-com.20221208.gappssmtp.com header.s=20221208 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-ej1-f51.google.com ([209.85.218.51]:44404) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1qXPQi-000HFN-CS; Sat, 19 Aug 2023 17:08:05 +0000 Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-99c136ee106so249463266b.1 for ; Sat, 19 Aug 2023 10:08:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20221208.gappssmtp.com; s=20221208; t=1692464884; x=1693069684; 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=+godTp9Mib3Duc5geuws1TS+m286wWNTUIFPuSclSmQ=; b=WR2RYKDxNDR/eZbi/z+MDqyglPyhUANPesxuc1wSeMcv34sc7LatXIMdHxos4+dXc9 gkuL6wW2MA36qYWm2y3VqXYpfxwD4oOvyw9XGV1uEm66zSwci6UT9jW64bTZrRJB2eTl 2g8w2h1iUHJGK4nATRz4TEXo6bhTHl/S3zuNUn/9GOlv0MLOPWKbNfKlwvc7+ivpcceh Ktq/cdGfzBO4XpMqgCPFiXPV0/st7CzrF1F4vWhQHTEIMzTacAJVrxuoDA/QNzzlXoHF /AUanKhaC8T9UAjPq46pdWkkJSCqWBA5rlFnWb+OiJKcQ5lb8ETL9Z26ut7fShYnc9al KLFA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692464884; x=1693069684; 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=+godTp9Mib3Duc5geuws1TS+m286wWNTUIFPuSclSmQ=; b=lNlQlxdwEptqY06L94/zL0U9aNdlOXuNVpCA8B6sabIYwsMrJcY7iHLFsi736FFFKS 9jQRzYVbQPoNI8VIqMetrX9x3ZRP0ucgw3Ol21SBJi+D90keUYRzU3qT0C6Ld0ThySVA TM8h/ROIKH5q/nTj5H3NLPpbDOaCPqGnf0ssGzMjLmoOnQ2qOTHCAVQI+UDQSnsWfT3k pJuBTt0cB066sgNfdWSyhBeai9tGmJyv1aDzcCOOaqlR7EG6pA7VXUDUWaBH2vOsS5iW yuTxBDfbHCoxoOFEV8bKyxErK5DRLpiA2ESmt3J1Td95sQeHwVr4MHotwEm27A5eYsZ2 eEzw== X-Gm-Message-State: AOJu0YwfqiqpFd4NXhYboZ7OG8iULmYZj4MozozHkBDgC+VoyLwxARdK 6ccvqp2c82ss+Fm663r503uJo7fNkrb3j3dGLtI4UbdatuThotu8oKg= X-Google-Smtp-Source: AGHT+IH50xh9eS+FFTnBVItHc/j1n7Vot+JiWV5fItVEf2lqi0wOXeQtqQXI3hmOO1+rK3UcI5o78UMqoGt1KoZ/nkQ= X-Received: by 2002:a17:906:cc0b:b0:99b:c985:cf7e with SMTP id ml11-20020a170906cc0b00b0099bc985cf7emr1933137ejb.54.1692464883720; Sat, 19 Aug 2023 10:08:03 -0700 (PDT) MIME-Version: 1.0 References: <3777545.kQq0lBPeGt@norarch> In-Reply-To: From: Bart Schaefer Date: Sat, 19 Aug 2023 10:07:52 -0700 Message-ID: Subject: Re: Unicode ZWJ sequence To: Mikael Magnusson Cc: Alexandre ZANNI , zsh-workers@zsh.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 52065 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: On Sat, Aug 19, 2023 at 9:46=E2=80=AFAM Mikael Magnusson wrote: > > Well, I wasn't even really talking about zsh specifically, but I > suppose if you don't care where any text ends up on the screen then > yes, you can display them. In this case he's got a terminal emulator that is able to display the grapheme, and in fact as the output of "echo" it works fine, it's only on the command line that zsh is behaving differently -- and that's because zle understands the potential problems you described and does what it can to avoid them. > That said, if you want randomly corrupted listings you can setopt > combiningchars and zsh will output even ZWJ directly to the terminal. It doesn't, though -- even with combiningchars you don't get the joins, you just get the red heart: % echo "=F0=9F=91=A9<200d>=E2=9D=A4<200d>=F0=9F=91=A8" =F0=9F=91=A9=E2=80=8D=E2=9D=A4=EF=B8=8F=E2=80=8D=F0=9F=91=A8 % setopt combiningchars % echo "=F0=9F=91=A9<200d>=E2=9D=A4=EF=B8=8F<200d>=F0=9F=91=A8" =F0=9F=91=A9=E2=80=8D=E2=9D=A4=EF=B8=8F=E2=80=8D=F0=9F=91=A8 % > (I have a vague memory I argued against this at some point in the past I think you may have prevailed. I any event we're not talking about output in the stdout sense here, we're talking about what zle has in the editor buffer after it gets terminal input.