Received: from mail.netlandish.com (mail.netlandish.com [174.136.98.166])
	by code.netlandish.com (Postfix) with ESMTP id 94A9B93
	for <~netlandish/links-dev@lists.code.netlandish.com>; Tue, 17 Jun 2025 18:36:36 +0000 (UTC)
Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=209.85.217.42; helo=mail-vs1-f42.google.com; envelope-from=peter@netlandish.com; receiver=<UNKNOWN> 
Authentication-Results: mail.netlandish.com;
	dkim=pass (1024-bit key; unprotected) header.d=netlandish.com header.i=@netlandish.com header.b=G8yaOpw0
Received: from mail-vs1-f42.google.com (mail-vs1-f42.google.com [209.85.217.42])
	by mail.netlandish.com (Postfix) with ESMTP id B78621D642E
	for <~netlandish/links-dev@lists.code.netlandish.com>; Tue, 17 Jun 2025 18:37:07 +0000 (UTC)
Received: by mail-vs1-f42.google.com with SMTP id ada2fe7eead31-4e7eefcbf08so1025925137.2
        for <~netlandish/links-dev@lists.code.netlandish.com>; Tue, 17 Jun 2025 11:37:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=netlandish.com; s=google; t=1750185427; x=1750790227; darn=lists.code.netlandish.com;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:from:to:cc:subject:date:message-id:reply-to;
        bh=sunj9SvTu9B0h21BRAtGVwu5BPhCfaLg6Xe+gmiVkgQ=;
        b=G8yaOpw0eGE1dTETnGsNpFBvvX9M3ZCkAwzydcL0IiIYmN3rTyFY5OLnc8O9uzcQxz
         NtaQTBU+Od/uIKTg66z6bAVlOhhw2zdaAPEvZwe5hCvBXly8ERHuZg+rSFlTQdZuL+1E
         TdNoiTdzDg7n9QfhzmiUjcCViDeiEdJwWV4sU=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1750185427; x=1750790227;
        h=content-transfer-encoding:mime-version:message-id:date:subject:cc
         :to:from:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=sunj9SvTu9B0h21BRAtGVwu5BPhCfaLg6Xe+gmiVkgQ=;
        b=m3eyjDZrJmWJQEYo4etJfKHD5NAgVcfdLvvk4vhfAoK8YQW06nR180G7LQFL7RPR50
         fuhJycajymK5g3C0T5Fb2qw0pPGG6mdqJkabCzi5rg4bvZoFlTAv3zaOMjzFNX+qey+J
         aFDKo/OOonA6/KOPiYbKB+ONjopOeMgeuzFVf8QjgPdIKWeAeBhFK2maxiVMa+vq1oss
         6CY+VNUrKtAe7m9qUkuCqq1VyA6bL5YljOiN2BA9drs4ZthjnKUH3WpOdr5SvVkwdtaQ
         4U77Vg2xGcdypoQBR7kz1kJoMqfupSIrafk54/X2ndlJy20eP8oHg1WVPQtfmRwm5AGI
         yugQ==
X-Gm-Message-State: AOJu0YyqYa1zof0x66TDFWUyZ94a5XNf4tvjHngxJtIQ0WwIqqYvsNBt
	8KG0c39Tmc9rwoO2eHc6Q0ux5sWMbOdv42w1/7bel0dxxWXpvbn5tK3X4Ld37lQUQKQ13/TdDzs
	N20PztUc=
X-Gm-Gg: ASbGncsot9c3BcQqGInzzE9DySrG49RaQl3OXc2oBUjhE4t0u2ZIl2SFVRWSrfZBPHM
	ycVcBhYUJCzA/O81wJvSlbP7MShcTzyWsq9kdVVyKrp4wOpU2FcAz5pIAHvl6aeFsOXodCam3FW
	KF+WY56MT6tB7V0RDTrX54zKpNinlHojS4lWOKdeAc0eBwxsfmjxfMkmYIh+tpvPYe9NIqw8ST8
	YwW/D4zqiOIGgajEWztIUrAdStha/DSJT1tbs9o4J68F4SMs65ESSEjFwzdHLqv0ZJYoAYs93pp
	QvY2iJtFgyC6ZpTWyabyGAevkD2EXTElTdqIEAq95zoAOPOWTt+WxYv+eTu2WfA=
X-Google-Smtp-Source: AGHT+IElRUAwONIcWFoFISvD1uZCf8oX58pukxNMXSgpfqFDFtc0hMrL34SqQx7Odsla90zxJMJndQ==
X-Received: by 2002:a05:6102:449a:b0:4e6:1a8c:13dd with SMTP id ada2fe7eead31-4e7f614b8e3mr10969874137.7.1750185426731;
        Tue, 17 Jun 2025 11:37:06 -0700 (PDT)
Received: from localhost ([2803:2d60:1118:5ee:ba53:82bd:2b3b:816d])
        by smtp.gmail.com with ESMTPSA id a1e0cc1a2514c-87f0fd936e3sm1690122241.34.2025.06.17.11.37.04
        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
        Tue, 17 Jun 2025 11:37:04 -0700 (PDT)
From: Peter Sanchez <peter@netlandish.com>
To: ~netlandish/links-dev@lists.code.netlandish.com
Cc: Peter Sanchez <peter@netlandish.com>
Subject: [PATCH links] Strip leading pound (hash) symbols in tag names.
Date: Tue, 17 Jun 2025 12:37:00 -0600
Message-ID: <20250617183701.12681-1-peter@netlandish.com>
X-Mailer: git-send-email 2.47.2
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit

Changelog-changed: No more leading hash marks in tag names
---
 helpers.go | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/helpers.go b/helpers.go
index 7d30e3f..53dd36f 100644
--- a/helpers.go
+++ b/helpers.go
@@ -745,6 +745,10 @@ func ProcessTags(ctx context.Context, tags []string) ([]int, error) {
 	tagIDs := make([]int, 0)
 	for _, tag := range tags {
 		tag := strings.TrimSpace(tag)
+		if strings.HasPrefix(tag, "#") {
+			// Remove any leading hash mark
+			tag = tag[1:]
+		}
 		if tag != "" {
 			slug := Slugify(tag)
 			if len(tag) > 50 || len(slug) > 50 {
-- 
2.47.2