I just discovered an interesting use for the requiresbuy function.
I wanted to declutter the research screen a bit, so I made an item with battletype 0 (geoscape only item like alloy and e-115) and gave it requiresbuy -LASERWEAPONS_Something so it would appear only after I could build laserweapons (just an example), then I added a research for this item (needitem:true is important) and made it unlock e.g. Gauss weaponry.
Result: I can now decide if I want to research Gauss weapons by "buying" a let's say RESEARCH CONTRACT GAUSS and only then will the researches appear in the research screen. If not wanted the research screen is emptier and cleaner.
It is even possible to use those "resources" (let's call the item GAUSS WEAPON KNOWLEDGE) in the manufacture list as a resource. That way the purchasable item remains interesting after the first research.
So far I "decluttered" Heatray, Terran plasma, Mass accelaerator and Railgun weaponry and boy does that research screen look tidy now or what!
I gave the items a high listorder number (15000+) so they appear at the bottom of the list, this makes the purchase screen also look tidy. I recommend to use UPPERCASE names so the research items are easier to recognize from other items.
I hope this helps someone. Me for one, I am very content with the way it looks/works.
Good work Yankes, your work is really appreciated!