Open SkyzohKey opened 8 years ago
On one hand, I like the idea of using JSON for a manifest, because you can then use a JSON schema to ensure that the document is properly formatted, and most libraries will probably handle all of that automagically. On the other hand, some clients aren't going to want to implement JSON. Can we simplify package.json into a format that we can more easily parse line by line?
Also, I don't think clients are going to want to read emoticons out of an archive by themselves, so you should probably specify twitter_emoji
instead of twitter_emoji.zip
, or specify where the archive is meant to be extracted.
Yeah, i'll edit with the folder
type instead of .zip
. Maybe that clients could perform the extraction themselves when the user drag&drop the .zip pack on the window then place the output folder in the emoticons/
folder.
About JSON: Maybe YAML so ?
qTox currently uses the KDE emoticon format, which I think is actually a freedesktop thing. Something to take into account. I don't see much emoticon usage in other applications so I don't think incredible harm would come from switching to an internal format, except in the (rare?) case where someone has system emoticons and wants them to show up in Tox. We have to decide if we care about that or not.
Also,
we should ... define formats for emoticons, stickers, friends profiles, avatars, clients settings, etc.
Agreed. Been working on it for stickers, so I'll be lurking and copying any great ideas from here over to the article spec.
Introduction: The TCS should include a chapter on the emoticons packs storage. The emoticons packs would be stored in
~/.config/tox/emoticons/
. This would permit differents clients to use the same packs and aswell save user's disk-space by not having 10 copy of the same emoticons packs.I think we should make a strict format in order to ensure a good clients compatibility. See the following examples.
PoC for emoticon pack structure:
A
package.json
file would look like this:Conclusion: I think that we should stop to make clients without carying of compatibility with others and define formats for emoticons, stickers, friends profiles, avatars, clients settings, etc. All of this would be stored in the
~/.config/tox/
folder to centralize all the Tox's stuffs inside a single folder.This would permit to just copy the
tox/
dir to get the same Tox on another computer.