View Single Post
Old 04-12-2018, 01:49 AM   #4
White Tie
Pixel Pusher
White Tie's Avatar
Join Date: Mar 2007
Location: Blighty
Posts: 2,565

Never. Sir. Dude. Look into my eyes, Listen to the soft clicking of the clock. You're feeling drowsy. Let yourself drift into pure relaxation.

Now. When you open your eyes, you will feel refreshed, happy and you will never use reverse_margin again.

.......aaaaand you're back in the room

...and now, thanks to an enterprising user who went on an archaeological expedition through some very old themes, I can present to you...

A brief history of reverse_margin bollocks

This vile and terrible creature was birthed into the world by me. Way back in the def4 theme, mere days after the Frankel declared "let there be WALTER". I wanted to be able to tell some elements on the TCP to react to folder depth, and some not, so I wrote a variable that I could attach to the elements I didn't want to move. And I called it reverse_margin. My intentions were pure. I didn't know my creature would go on a rampage. I swear I didn't knoooowwww.

The Def4 theme was released into a world where there were no other WALTER themes. I hadn't yet finished the WALTER themers' guide. Someone else made a theme, and his theme was very popular. His graphics were good but his WALTER was, understandably, a total mess. He used ALL of my x-alignment code, without understanding why, and because he wanted to replicate the old V3 indenting behaviour, he applied reverse_margin to all his elements. The result was the same as if he had used none of my x-alignment code.

wt_code set pick everything up and put it over there >>>
set anchor <<< pick everything up and put it back over there
set thing anchor thing
set thing anchor thing
set thing anchor thing
set thing anchor thing
set thing anchor thing
set thing anchor thing
set thing anchor thing
The end result was that his theme worked fine, and it was popular, and its WALTER was about 1000% easier to understand than that of the Def4 theme. People wanted to try out this WALTER business, so they based their code on his. And so, as a wolf howled beneath a blood moon, the creature was released onto the world. reverse_margin was ...unleashed. And before you knew it, it was everywhere.

In the years that followed, at first I was unaware of the evil I had created. It grew, it festered, and it infected themer's work with its wasteful, pointless and contradictory bullshit. It stayed in the shadows of their rtconfigs, and much time passed before the outer signs of infection were visible. People would ask WALTER questions, and themers would helpfully reply. They would pass on their hard learned lessons. "This is really complicated and difficult, but if you use reverse_margin it sort-of works out OK". These poor souls, I had doomed them to confusion. In a misguided attempt to be supportive, I didn't correct them. No one likes being corrected on the internet, particularly if they're trying to help someone, that's just rude, and I didn't want to be that guy. So I let it slide, and the beast grew in strength.

Years later, it has been discovered, a secondary infection emerged. The beast gave way to its own foul spawn. Themes where the actual code for reverse_margin itself was removed but the themer still attached the (100% non-functional) command to individual elements, like some kind of superstitious invocation. OMG.

Theming is hard, and WALTER can be complicated. reverse_margin makes it harder, more complicated, and is completely unnecessary.

reverse_margin is my creation. I want it dead. On more than one occasion, a reverse_margin user has got really angry when I've tried to explain this. Please, please, understand that I am its creator, and I know all its tricks and strategems, and they're all bollocks. Lets kill it. Kill it dead.

Right. So. Enough of this banter. Read this:

EVERYTHING you need to know about folder indenting if you're doing it from scratch

The House of White Tie
White Tie is offline   Reply With Quote