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,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 24626 invoked from network); 15 Apr 2021 01:08:09 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 15 Apr 2021 01:08:09 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1618448889; b=uIOUlhiwFSHFbsyZEMWF0Vfr+aPqL0ime655prG2IUwQs8qX3R08/dHEClm6c85ioy2RElS1Qi TxvclnVYH9p+iJYM8Yro8+83DO4guROkmfgE757iHObk3uKy6/6ZiBWtx5BHrOKZvC2jJzhGpY r9dzV0D6hQATqP1FJNx416pqKv0QDDv2xgeulawCkxmOANdDQ6SkyPxeARd845ZNNMYkPVsMuZ +Uu0P6RjdycTeVNDVk1gc+VMuiCmDxE4e4gydOPnjQ4xc1n4vOZCKC6nIjBM2ZVeAm1JhHKsS2 KMkBuzXt1LZr8EYMLZbLJ+HNcZBNWpR/vQYE+O1ed75pUQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-oo1-f45.google.com) smtp.remote-ip=209.85.161.45; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 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-20200801; t=1618448889; bh=QTlVTjXGZ9W9llhRf8C+ZcXszuFCgEq2uYTiAfs+OzM=; 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=ZgYYK6tNLjMw3ELs1T7yJMDIQzimapbQQZzEh5SsgCG4bO0RuaEHNAR9vB0tAUqBB0WTR8I/id q6k35iR9kcSTwQQk0hWgOeIC0+T7VmvpfAWBFB6K5usZSIjxtI70SKyW2MjQ/vmY0bG1wjxftz ckinUVRESbdhfyvqvHQkq0hIOgMLsIBek9JQniLZd7YQzzIVEpAcagZM1d3VYphT0DYor7XE7Z MyWYFoX58jDM9yujIx3POAozc7OLqgsXt5L1VLYygPF8DEIxQIFeyGg3xFePUS4UIaiy68PeKI VrUcBQtTJeEBuRe00vS75BwAKvJli2t4WlGDcvuFkWKaQg==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; 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=XrcNXQkbr5hHRA2xQDqoTSzh4lZc4C7fvRZdj6+dJxs=; b=gNy+mQ1qYR1B5O5UdrYO0iurlp gr1mSa01/W9IABlOdwDI1G/WNPCwCn/hK+yYfwS4mDkmEJiv2OeQJFI6D+sQ17ZW0TpLOUnDS24ga OTBL76BzoIwDziV1DtvoO90JWXrM9e/s1PSO4u7SO/ZksxrPKGeM2Rer2zDkm59qWO88tip6lTEwG yAhvxK5EPNSLHoDzEPLONJaMzsgX0Y+cgDCZQ7Gr2RMQ6bYmySyetw0NxOvvVh9oKywfZXevdJnHB nmyBHkVhU4Rc126vxc934+JBkrl82vik6oko+x2gOpCVIJ3YHuh3Jrj8qpKZvhz1E0Z3acnXlnII7 9Ov23VYA==; Received: from authenticated user by zero.zsh.org with local id 1lWqUH-000B0J-9Z; Thu, 15 Apr 2021 01:08:05 +0000 Authentication-Results: zsh.org; iprev=pass (mail-oo1-f45.google.com) smtp.remote-ip=209.85.161.45; dkim=pass header.d=brasslantern-com.20150623.gappssmtp.com header.s=20150623 header.a=rsa-sha256; dmarc=none header.from=brasslantern.com; arc=none Received: from mail-oo1-f45.google.com ([209.85.161.45]:42542) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1lWqTw-000Ado-5a; Thu, 15 Apr 2021 01:07:45 +0000 Received: by mail-oo1-f45.google.com with SMTP id e12-20020a056820060cb02901e94efc049dso106113oow.9 for ; Wed, 14 Apr 2021 18:07:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brasslantern-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=XrcNXQkbr5hHRA2xQDqoTSzh4lZc4C7fvRZdj6+dJxs=; b=fLRMeLPPTnFAKIDjHKyNhoQw1kZC6doxKrrwQ0KlwncDHHxuByJdrQ3EaPr3H4ry8r t26U5onkYSQs1AyqbKJgXmbB6SN4O7Vl3bYYz6eVg4czEvCXp8WZqOLPxr+0pmu2aJ7d BsC4Znf9Yw6bfK2ZXQzI9pJRPS9AsAAJaktzJO3zozVN+UjmQQ4zI17qnJx5w5EgLw0B SgBK9cQn5KkLufBtthP1smicaIT2tlFMnhxfcyQIvpFcsnylsbSTi9nyouj0VPO3l63X jo+4B3cIL77WxR+yYejmuWH5rXC5T6Nw1fFttdUP9XXme2nvzjucdUTOl6h8jDF2wO0T 5fPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=XrcNXQkbr5hHRA2xQDqoTSzh4lZc4C7fvRZdj6+dJxs=; b=koTS9k2EQX/l/vnxjqUeSXqQVcFiZeipJBUImlneuPFFpT5/VdWcGKcNliKlozdvEi kel9l12J+/dOT4N9KqKiYgo0yTQxQ1hKCfJj2Y+R8+2JL3sq43o8h7OiR3GvhBfik7VZ 9mpEdMPf2pgz7d2RDN2emcQj0Z85CqtAwW2yZuIGjpdHJfnX/wqFNuaEBO5Z6+jyqie7 vC5ZOX8S0k3OS5bebAseFVJuYFsmb88qywQKqatOOfnqJorrNhnEMNqnj6ud/qEkHnaJ ao4f/K9RDQ+Dy9MQxzQ6zmyemukSSzBrnZTweFi2dp4ol4epFZFlNqwe7BLUr8PgBb1o bUjw== X-Gm-Message-State: AOAM533kwB2wuWWxNI5zBPgbGAsFCtiIQYCu78DQh+jerPJqVaNqA7G2 TwHJc38VZ6Z6f7FO3s3u0QPyWD72AL4Z/KuxGpQ1JQ== X-Google-Smtp-Source: ABdhPJxeWB+Etvo4QP0GZycj0Yp8H1IW6nNpIdFyNBJ51IE1ZRFmKpwG81yiOgals4DB3y1xBEoWjGF3/ctLf5tOl6c= X-Received: by 2002:a4a:6b04:: with SMTP id g4mr697667ooc.78.1618448863010; Wed, 14 Apr 2021 18:07:43 -0700 (PDT) MIME-Version: 1.0 References: <7E71FA83-356E-448B-9726-02DF3FF5BD14@gmail.com> <873D08A9-F321-474A-8440-CCE7DCCBA529@gmail.com> <20210414120551.GA3882@tarpaulin.shahaf.local2> <6CEA4F3E-9A64-44E1-9121-FA9D5E053AB5@gmail.com> <20210414140909.GG3882@tarpaulin.shahaf.local2> In-Reply-To: <20210414140909.GG3882@tarpaulin.shahaf.local2> From: Bart Schaefer Date: Wed, 14 Apr 2021 18:07:31 -0700 Message-ID: Subject: Re: [RFC][PATCH] `newuser` prompt theme To: Daniel Shahaf Cc: Marlon , Zsh hackers list Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Seq: 48581 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 Wed, Apr 14, 2021 at 7:09 AM Daniel Shahaf wrot= e: > > Make defaults overridable. > > Don't trample user settings (e.g., someone explicitly setting that style > to a false value for that same context, or for the context =C2=AB:vcs_inf= o*=C2=BB, > which is less specific than the context you use and thus would be shadowe= d). I have a half-finished script to initialize interesting completion styles. In that script I test the styles to be set by using "zstyle -g", and then only if that fails, set the value I want. emulate zsh -o extendedglob -c 'default_zstyle() { local -a patstyle defn if [[ "$1" =3D (-e|-|--) ]] then patstyle=3D( "$2" "$3" ) else patstyle=3D( "$1" "$2" ) fi ! zstyle -T "${patstyle[@]}" || zstyle -g defn "${patstyle[@]}" || zstyle "$@" }' Thus: default_zstyle -e ':vcs_info:*' formats ' reply=3D( "%u%c$( prompt_newuser_format start branch repo )" ) ' The "zstyle -T" treats the new style's pattern as a context and tries to look up an existing style; that mostly works. "zstyle -g" is just a failsafe.