Sélecteur d'emojis : rechercher et copier
Sélecteur d'emojis avec plus de 3 700 emojis Unicode 15.1. Recherche par nom, 9 catégories, choix du ton de peau, clic pour copier.
Qu'est-ce que le sélecteur d'emojis ?
J'ai construit ce sélecteur parce que j'en avais assez d'ouvrir le panneau d'emojis du système juste pour attraper les cinq mêmes visages, et de finir par scroller pendant deux minutes. Taper, cliquer, coller — c'est tout le flux. Le jeu de données est Unicode 15.1 (plus de 3 700 emojis), réparti en neuf catégories, avec une recherche qui s'appuie sur le nom et les mots-clés, six tons de peau Fitzpatrick pour les emojis de personnes, et une rangée Récents qui se souvient de ce que vous avez copié pendant la session.
Fonctionnalités principales
Le jeu de données est Unicode 15.1 — chaque visage, main, aliment, drapeau et symbole ajouté jusqu'en 2023, repris directement du standard. Les catégories sont les neuf définies par le Consortium Unicode : Smileys et émotion, Personnes et corps, Animaux et nature, Nourriture et boisson, Voyages et lieux, Activités, Objets, Symboles et Drapeaux. Une rangée Récents se place à côté des boutons de catégorie et enregistre ce que vous avez copié pendant la session, persistée dans localStorage sous RECENT_EMOJIS_KEY et plafonnée à MAX_RECENT_EMOJIS entrées.
La recherche interroge à la fois le nom de l'emoji et sa liste de mots-clés ; taper heart renvoie ❤️ ainsi que 💛, 💚, 💙, 💘. Les tons de peau utilisent l'échelle Fitzpatrick (par défaut + cinq modificateurs) ; en sélectionner un l'applique à chaque emoji de personne qui prend en charge les modificateurs, et les emojis avec hasSkinTone === false (objets, drapeaux, nourriture) ignorent la sélection. Cliquer sur un emoji écrit dans le presse-papiers, fait clignoter une superposition verte de coche sur la tuile pendant 1,5 seconde et déclenche un toast — trois couches de retour parce que les écritures dans le presse-papiers passent facilement inaperçues.
La grille est responsive : 8 colonnes sur les écrans mobiles, 10 sur tablettes, 12 sur ordinateur. La hauteur est fixée à 400px avec défilement vertical pour les catégories les plus volumineuses.
Comment l'utiliser
Ouvrez le Bientôt disponible: Sélecteur d'emojis — il démarre sur Smileys et émotion. Cliquez n'importe quel autre bouton de catégorie pour changer. Si vous voulez un ton, choisissez-en un dans la rangée des six boutons de main qui salue avant de cliquer un emoji ; le ton sélectionné s'applique à la copie, donc 👋 avec un ton moyen sélectionné devient 👋🏽 dans votre presse-papiers. La recherche bat le défilement pour tout ce que vous savez nommer : tapez coffee et ☕, 🧋 apparaissent immédiatement. Effacez le champ pour revenir au parcours par catégorie.
La rangée Récents (icône d'horloge, à l'extrême gauche de la barre de catégories) garde l'historique de la session dans l'ordre de copie. Récents stocke l'emoji de base sans modificateur de ton — votre sélection de ton actuelle est réappliquée à la copie, donc changer de ton ne perturbe pas l'historique.
Exemples pratiques
Composer un message Slack à propos d'un lancement :
Recherche : fire → clic 🔥
Recherche : rocket → clic 🚀
Les deux copies tombent dans Récents pour le message suivant.
Choisir un drapeau de pays sans se souvenir de la rangée où il vit :
Catégorie Drapeaux → recherche : brazil → clic 🇧🇷
Garder des tons de peau cohérents dans un message :
Ton : foncé (5e bouton) → clic 👍, 🙏, 🤝
Le presse-papiers reçoit 👍🏿 → 🙏🏿 → 🤝🏿
Conseils et bonnes pratiques
Les sélections de ton et de catégorie sont enregistrées dans l'état du composant et restaurées depuis un preset (fonction premium) — les presets enregistrés capturent à la fois selectedSkinTone et selectedCategory.
La recherche n'est pas classée par pertinence. Les résultats sortent dans l'ordre naturel du jeu de données ; les termes larges comme heart ou face en renvoient beaucoup, les termes étroits comme anguished un ou deux. Si une recherche est vide, essayez un synonyme : sob au lieu de cry, grin au lieu de big smile, poop si brown ne fait pas remonter ce que vous attendiez. Les noms du jeu sont les noms Unicode formels et ne correspondent pas toujours à la formulation courante.
Les modificateurs de ton ne s'appliquent qu'aux emojis avec hasSkinTone === true. Drapeaux, nourriture, objets et symboles restent jaunes quel que soit le ton sélectionné.
Problèmes courants et résolution
Récents est vide après plusieurs copies. La liste lit depuis localStorage. Les fenêtres privées/incognito et les navigateurs avec localStorage désactivé ne la persisteront pas — les copies en session apparaissent toujours en mémoire mais sont réinitialisées au rechargement.
L'emoji collé apparaît comme un carré ou un point d'interrogation. L'application ou la plateforme réceptrice ne prend pas en charge ce codepoint Unicode 15.1. Les emojis ajoutés en 2022–2023 peuvent ne pas s'afficher sur d'anciennes versions Android, d'anciens systèmes ou des applications dont la police d'emojis n'a pas été mise à jour. Les emojis plus anciens de 2015–2019 fonctionnent partout.
Le toast indique « copié » mais le presse-papiers a le mauvais ton. Un modificateur de ton est sélectionné. Cliquez le bouton de ton le plus à gauche (par défaut) pour retirer le modificateur, puis recopiez.
Confidentialité et sécurité
Recherche, filtrage par catégorie, application du ton de peau et écritures dans le presse-papiers se font tous localement. Le jeu de données complet d'emojis est livré avec le JavaScript de la page. Aucune requête, aucun caractère copié et aucune donnée d'utilisation n'est envoyée nulle part. Les emojis récents vivent dans localStorage et restent sur votre appareil. Après le premier chargement, le sélecteur fonctionne hors ligne.
Questions fréquentes
Comment fonctionne la sélection de ton de peau ?
Les tons de peau dans Unicode utilisent des codepoints modificateurs de l'échelle Fitzpatrick (U+1F3FB à U+1F3FF) ajoutés après le codepoint de l'emoji de base. Le sélecteur appelle applySkintone(emoji.emoji, selectedSkinTone), qui concatène le modificateur quand le drapeau hasSkinTone de l'emoji est true. Les emojis sans prise en charge des tons sont copiés sans modification.
Combien d'emojis puis-je stocker dans Récents ?
La liste Récents est plafonnée à MAX_RECENT_EMOJIS entrées. Les nouvelles copies passent en tête ; la plus ancienne est éjectée à la limite. Recopier un emoji le replace en tête plutôt que de le dupliquer.
Puis-je rechercher dans une autre langue que l'anglais ?
Non. La recherche interroge les noms et mots-clés du jeu de données, qui sont les noms anglais formels du standard Unicode. Utilisez des mots-clés en anglais.
Pourquoi cliquer un emoji affiche-t-il une superposition verte ?
C'est la confirmation visuelle que la copie a réussi. La superposition tient 1,5 seconde (setTimeout(() => setCopiedEmoji(null), 1500)) puis disparaît. Le toast latéral confirme le caractère exact qui a été copié.
Essayez le Sélecteur d'emojis maintenant : Bientôt disponible: Sélecteur d'emojis
Outils associés
- Bientôt disponible: Table ASCII — Rechercher les codes de caractères pour les caractères non-emoji dans la plage ASCII.
- Bientôt disponible: Sélecteur Aléatoire — Sélection aléatoire dans une liste personnelle.