I am in for a little experiment, I just need someone to guide me..
I want to make my own custom syntax coloring (for Javascript), and that needs to be animated.
Big plus would be (if it is possible) is posibility of using shader-language for fonts animating (fragment shader). Is such thing possible in Atom?
EXAMPLES:
Well two ideas are 'event based' animations and 'persistent-animation'.
Event based:
Imagine you are writing Javascript, and when you write 'function', it doesn't directly colorize, but slowly fade into it's color.
Example code:
keyword('function').on('creation', function(keywordAnimableObject) {
keywordAnimableObject.fromTo ({opacity:0, color:rgb(0,0,0)}, {opacity:1, color:rgb(1,1,0) });
});
Persistent based:
Every keyword or symbol (if, else &&, function, (), {}, commas and so on), would have it's own frequency. Let's say 'function' would have frequency of 0.5Hz, if else would have 0.25Hz ... and so own.
This frequency would modify the keywords color 'hue' for example.
keyword('function').on('idle', function(keywordAnimableObject, time) {
var baseColor = rgb(1,1,0);
var frequency = 0.5;
var currColor = hueShiftBy(baseColor, Math.sin(time*2*PI*frequency);
keywordAnimableObject.set({ color: currColor });
});
Also, if shaders would be possible, every keyword would have subtle animated pattern.
Now imagine if you have error somewhere, frequency would be higher, for example 1.5Hz and more 'annoying'.
allKeywords().on('notDeclared', function(keywordAnimableObject, time) {
var baseColor = Color.red;
var frequency = 1.5;
var currColor = hueShiftBy(baseColor, Math.sin(time*2*PI*frequency);
keywordAnimableObject.set({ color: currColor });
});
Ok, I realize this could be fucking annoying but I think it is worth experimenting with :). Not just for animating but really making beautiful syntax styling not just coloring..