Fix dictp as mapcar alsways returns T

This commit is contained in:
Marcus Kammer 2023-09-22 15:45:33 +02:00
parent 6fe194c5b4
commit f340507b44

View file

@ -17,63 +17,64 @@
(and (listp entry) (and (listp entry)
(= (length entry) 2) (= (length entry) 2)
(stringp (first entry)) (stringp (first entry))
(mapcar (lambda (entry) (every #'stringp entry)) (rest entry))))) (every #'stringp (second entry)))))
(deftype dict () (deftype dict ()
'(and list (satisfies dictp))) '(and list (satisfies dictp)))
(declaim (type dict l10n)) (declaim (type dict *l10n*))
(defvar l10n '(("submit" ("en" "Submit" "de" "Absenden" "fr" "Soumettre")) (defvar *l10n*
("cancel" ("en" "Cancel" "de" "Abbrechen" "fr" "Annuler")) '(("submit" ("en" "Submit" "de" "Absenden" "fr" "Soumettre"))
("upload" ("en" "Upload" "de" "Hochladen" "fr" "Télécharger")) ("cancel" ("en" "Cancel" "de" "Abbrechen" "fr" "Annuler"))
("search" ("en" "Search" "de" "Suchen" "fr" "Rechercher")) ("upload" ("en" "Upload" "de" "Hochladen" "fr" "Télécharger"))
("option-selected" ("en" "Open this selected menu" ("search" ("en" "Search" "de" "Suchen" "fr" "Rechercher"))
"de" "Das ausgewählte Menü öffnen" ("option-selected" ("en" "Open this selected menu"
"fr" "Ouvrir le menu sélectionné")) "de" "Das ausgewählte Menü öffnen"
("sign-up" ("en" "Sign Up" "de" "Registrieren" "fr" "Inscrivez-vous")) "fr" "Ouvrir le menu sélectionné"))
("sign-in" ("en" "Sign In" "de" "Anmelden" "fr" "S'identifier")) ("sign-up" ("en" "Sign Up" "de" "Registrieren" "fr" "Inscrivez-vous"))
("next" ("en" "Next" "de" "Weiter" "fr" "Suivant")) ("sign-in" ("en" "Sign In" "de" "Anmelden" "fr" "S'identifier"))
("previous" ("en" "Previous" "de" "Zurück" "fr" "Précédent")) ("next" ("en" "Next" "de" "Weiter" "fr" "Suivant"))
("settings" ("en" "Settings" "de" "Einstellungen" "fr" "Paramètres")) ("previous" ("en" "Previous" "de" "Zurück" "fr" "Précédent"))
("logout" ("en" "Logout" "de" "Abmelden" "fr" "Déconnexion")) ("settings" ("en" "Settings" "de" "Einstellungen" "fr" "Paramètres"))
("profile" ("en" "Profile" "de" "Profil" "fr" "Profil")) ("logout" ("en" "Logout" "de" "Abmelden" "fr" "Déconnexion"))
("save" ("en" "Save" "de" "Speichern" "fr" "Enregistrer")) ("profile" ("en" "Profile" "de" "Profil" "fr" "Profil"))
("delete" ("en" "Delete" "de" "Löschen" "fr" "Supprimer")) ("save" ("en" "Save" "de" "Speichern" "fr" "Enregistrer"))
("edit" ("en" "Edit" "de" "Bearbeiten" "fr" "Modifier")) ("delete" ("en" "Delete" "de" "Löschen" "fr" "Supprimer"))
("confirm" ("en" "Confirm" "de" "Bestätigen" "fr" "Confirmer")) ("edit" ("en" "Edit" "de" "Bearbeiten" "fr" "Modifier"))
("loading" ("en" "Loading..." "de" "Lädt..." "fr" "Chargement...")) ("confirm" ("en" "Confirm" "de" "Bestätigen" "fr" "Confirmer"))
("error" ("en" "Error" "de" "Fehler" "fr" "Erreur")) ("loading" ("en" "Loading..." "de" "Lädt..." "fr" "Chargement..."))
("success" ("en" "Success" "de" "Erfolg" "fr" "Succès")) ("error" ("en" "Error" "de" "Fehler" "fr" "Erreur"))
("close" ("en" "Close" "de" "Schließen" "fr" "Fermer")) ("success" ("en" "Success" "de" "Erfolg" "fr" "Succès"))
("help" ("en" "Help" "de" "Hilfe" "fr" "Aide")) ("close" ("en" "Close" "de" "Schließen" "fr" "Fermer"))
("home" ("en" "Home" "de" "Startseite" "fr" "Accueil")) ("help" ("en" "Help" "de" "Hilfe" "fr" "Aide"))
("welcome" ("en" "Welcome" "de" "Willkommen" "fr" "Bienvenue")) ("home" ("en" "Home" "de" "Startseite" "fr" "Accueil"))
("faq" ("en" "FAQ" "de" "Häufig gestellte Fragen" "fr" "FAQ")) ("welcome" ("en" "Welcome" "de" "Willkommen" "fr" "Bienvenue"))
("contact" ("en" "Contact" "de" "Kontakt" "fr" "Contact")) ("faq" ("en" "FAQ" "de" "Häufig gestellte Fragen" "fr" "FAQ"))
("privacy" ("en" "Privacy" "de" "Datenschutz" "fr" "Confidentialité")) ("contact" ("en" "Contact" "de" "Kontakt" "fr" "Contact"))
("terms" ("en" "Terms and Conditions" "de" "Allgemeine Geschäftsbedingungen" "fr" "Conditions Générales")) ("privacy" ("en" "Privacy" "de" "Datenschutz" "fr" "Confidentialité"))
("about" ("en" "About Us" "de" "Über uns" "fr" "À propos de nous")) ("terms" ("en" "Terms and Conditions" "de" "Allgemeine Geschäftsbedingungen" "fr" "Conditions Générales"))
("add-to-cart" ("en" "Add to Cart" "de" "In den Warenkorb" "fr" "Ajouter au panier")) ("about" ("en" "About Us" "de" "Über uns" "fr" "À propos de nous"))
("checkout" ("en" "Checkout" "de" "Kasse" "fr" "Passer à la caisse")) ("add-to-cart" ("en" "Add to Cart" "de" "In den Warenkorb" "fr" "Ajouter au panier"))
("forgot-password" ("en" "Forgot Password?" "de" "Passwort vergessen?" "fr" "Mot de passe oublié ?")) ("checkout" ("en" "Checkout" "de" "Kasse" "fr" "Passer à la caisse"))
("username" ("en" "Username" "de" "Benutzername" "fr" "Nom d'utilisateur")) ("forgot-password" ("en" "Forgot Password?" "de" "Passwort vergessen?" "fr" "Mot de passe oublié ?"))
("password" ("en" "Password" "de" "Passwort" "fr" "Mot de passe")) ("username" ("en" "Username" "de" "Benutzername" "fr" "Nom d'utilisateur"))
("email" ("en" "Email" "de" "E-Mail" "fr" "Courrier électronique")) ("password" ("en" "Password" "de" "Passwort" "fr" "Mot de passe"))
("language" ("en" "Language" "de" "Sprache" "fr" "Langue")) ("email" ("en" "Email" "de" "E-Mail" "fr" "Courrier électronique"))
("read-more" ("en" "Read More" "de" "Weiterlesen" "fr" "En savoir plus")) ("language" ("en" "Language" "de" "Sprache" "fr" "Langue"))
("show-less" ("en" "Show Less" "de" "Weniger anzeigen" "fr" "Montrer moins")) ("read-more" ("en" "Read More" "de" "Weiterlesen" "fr" "En savoir plus"))
("update" ("en" "Update" "de" "Aktualisieren" "fr" "Mettre à jour")) ("show-less" ("en" "Show Less" "de" "Weniger anzeigen" "fr" "Montrer moins"))
("new" ("en" "New" "de" "Neu" "fr" "Nouveau")) ("update" ("en" "Update" "de" "Aktualisieren" "fr" "Mettre à jour"))
("old" ("en" "Old" "de" "Alt" "fr" "Ancien")) ("new" ("en" "New" "de" "Neu" "fr" "Nouveau"))
("view-all" ("en" "View All" "de" "Alle anzeigen" "fr" "Voir tout")) ("old" ("en" "Old" "de" "Alt" "fr" "Ancien"))
("cart" ("en" "Cart" "de" "Warenkorb" "fr" "Panier")) ("view-all" ("en" "View All" "de" "Alle anzeigen" "fr" "Voir tout"))
("favorites" ("en" "Favorites" "de" "Favoriten" "fr" "Favoris")) ("cart" ("en" "Cart" "de" "Warenkorb" "fr" "Panier"))
("share" ("en" "Share" "de" "Teilen" "fr" "Partager")) ("favorites" ("en" "Favorites" "de" "Favoriten" "fr" "Favoris"))
("download" ("en" "Download" "de" "Herunterladen" "fr" "Télécharger")) ("share" ("en" "Share" "de" "Teilen" "fr" "Partager"))
("print" ("en" "Print" "de" "Drucken" "fr" "Imprimer")) ("download" ("en" "Download" "de" "Herunterladen" "fr" "Télécharger"))
("back" ("en" "Back" "de" "Zurück" "fr" "Retour")) ("print" ("en" "Print" "de" "Drucken" "fr" "Imprimer"))
("create-account" ("en" "Create Account" "de" "Konto erstellen" "fr" "Créer un compte")) ("back" ("en" "Back" "de" "Zurück" "fr" "Retour"))
("learn-more" ("en" "Learn More" "de" "Mehr erfahren" "fr" "En savoir plus"))) ("create-account" ("en" "Create Account" "de" "Konto erstellen" "fr" "Créer un compte"))
("learn-more" ("en" "Learn More" "de" "Mehr erfahren" "fr" "En savoir plus")))
"Localization (l10n) settings for multi-language support.") "Localization (l10n) settings for multi-language support.")
(declaim (ftype (function (string string dict) string) find-l10n)) (declaim (ftype (function (string string dict) string) find-l10n))