People are crazy with social media platforms, always looking for new methods and trick to automate everything around and social media platforms are already aware of this scenario and they aren't much bothered as eventually it's increasing their audience however not all the platforms have same mentality, Tumblr being one of them. Mr. David was happy with these spammers or aggressive users however Yahoo doesn't seem to give them free hand, just like their Email platform (Oh! I don't like fancy html codes by Yahoo, making it harder to go around and automate things). Since the takeover, they have been putting more and more complex backend code for making it a smart micro-blogging solution with least spammers (I am not a spammer, I do it for fun only :P ); with advanced jSon/jQuery and other fancy work, they have added a WYSIWYG Editor called "ACE Editor" which is a good feature for users since it has a lot of features just like MS-Word however if you are looking to automate posting using iMacro, this is a huge problem since iMacro doesn't recognize this editor and doesn't record most of the time that it would record normally. Working with ACE Editor require some backend knowledge about it and how it works, there are way around or tricks to add/remove text from the sessions that it created while active however Tumblr make it difficult to operate this widget while at their platform - I spent two days in finding a standard function that ACE Editor would normally call for getting/setting data and eventually ended with bunch of complex functions and triggers, this and that!
For those, who are planning to reverse code Tumblr code and get to ACE Editor and do modification through Java Scripting, I got an advice "Don't do it", it isn't worth trying if you haven't done this before.
Crux of above articles: Tumblr is difficult to code with iMacro until and unless you are too smart. I made a script recently, it take URLs from CSV file, open these URLs, click RE-BLOG button, clear all texts from comment/schedule sections and fill them both with new data from CSV before hitting Schedule button.