Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add a new Git emoji category #51

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

abakkk
Copy link

@abakkk abakkk commented Aug 18, 2018

Add a set of useful emoji for git commits.
Highly inspired by https://gitmoji.carloscuesta.me/ .
Category icon isn't relevant.

@maoschanz
Copy link
Owner

c'est un truc trop spécifique pour qu'on puisse proposer ça auprès de tous les utilisateurs, d'autant qu'il s'agit seulement de dupliquer certains autres émojis pour les détourner de leur sens de base si j'ai bien compris ? je ne suis pas contre intégrer les mots clés (gnome, linux et debian sont déjà concernés), mais une catégorie dédiée ça me semble abusé

@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Oui ils sont dupliqués, il y aurait un travail à faire sur les mots-clés pour éviter les doublons lors de la recherche textuelle. Les mots clés que j'ai mis ne sont pas de vrais mots clés, il servent de description pendant la navigation.
Je comprends parfaitement ton refus et je m'y attendais. L'idéal serait de faire une autre extension avec une orientation "contexte" (ou un paramètre qui permette de basculer de l'une à l'autre sur la tienne). Mais ça suppose de trouver de nombreuse autres catégories. A voir s'il y a déjà quelque chose de préexistant.
J'ai fais ça parce que je suis tombé sur le site mentionné en me disant que j'aimerais bien avoir à disposition.
Je garde ça sous le coude au cas où je suis motivé un jour.

hs: la recherche textuelle est vraiment très fluide.

@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Je viens de voir qu'il y a une extension qui fournit uniquement des émojis pour git.

@abakkk abakkk closed this Aug 18, 2018
@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Il faudrait remplacer tes tableaux par des objets, en reliant ainsi les émojis à des identifiants. Voir carrément utiliser des JSON. Ensuite on peut construire des catégories alternatives en allant piocher dedans.

@maoschanz
Copy link
Owner

Loool le vieux fork qui n'a même pas pris la peine de changer la description

J'ai tendance à penser qu'il est plus simple de trouver les émojis par la recherche que par le survol, d'où l'idée de juste rajouter des mots-clés aux émojis des catégories existantes, je les ajouterai la prochaine fois que je bidouillerai cette extension là (en changeant des trucs sans doute, parce que je vois des majuscules dans le fichier et les majuscules c'est pour les tags spéciaux (couleur de peau et genre) que j'ai pas vraiment fini de mettre au point)

@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Un exemple de json auquel il faudrait ajouter des clés "category".

@maoschanz
Copy link
Owner

j'avais pas trouvé comment on parcourt simplement et efficacement du json

@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Je n'ai aucune compétence la dedans. Peut-être que certains développeurs d'extension ont déjà fait des parseurs clé en main pour Gjs ?
Sinon le gars met à disposition un script pour constituer directement le json à partir de unicode.org. En le modifiant on doit pouvoir récupérer les catégories qui sont bien présentes sur la page. Après ça tu peux mettre très simplement ton extension à jour. Et comme tu as utilisé les mot clés de unicode, les traductions sont conservées.

C'est juste une idée, et sûrement beaucoup de boulot pour pas grand chose.

@maoschanz
Copy link
Owner

Ah merde les traductions. Pas de JSON du coup, si j'utilise du JSON je ne peux pas générer les fichiers de traduction

@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Ah ok.
Juste pour information alors, parser le json c'est vraiment pas compliqué. En me basant sur ce que fait GS avec metadata.jon, voici un exemple appliqué à emoji.json:

Lancer gjs dans le dossier où est présent emoji.json

const Gio = imports.gi.Gio;
let jsonFile = Gio.File.new_for_path("emoji.json");

let jsonContents, success, tag;
try {
    [success, jsonContents, tag] = jsonFile.load_contents(null);
} catch (e) {
    throw new Error('Failed to load emoji.json: ' + e);
}
let emojiObjects;
try {
    emojiObjects = JSON.parse(jsonContents);
} catch (e) {
    throw new Error('Failed to parse emoji.json: ' + e);
}

On obtient une liste d'objets correspondants aux émojis. Tout ça peut être fait une seule fois quand l'extension est activée.
On peut ensuite récupérer un caractère par exemple:

emojiObjects[372].char

@maoschanz
Copy link
Owner

intéressant, je garde la requête ouverte pour le retrouver au cas où je trouve un truc pour générer les fichiers de traduction

@maoschanz maoschanz reopened this Aug 18, 2018
@abakkk
Copy link
Author

abakkk commented Aug 18, 2018

Beaucoup plus simple, tu renomme le fichier emoji.js, tu rajoute "var = " au début, tu l'importe et c'est pareil.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants