Brick Swapping Issue

Share:
by Rob Meek (meek)

Download disabled

The designer of this FontStruction has chosen not to make it available for download from this website by choosing an “All Rights Reserved" license.

Please respect their decision and desist from requesting license changes in the comments.

If you would like to use the FontStruction for a specific project, you may be able to contact the designer directly about obtaining a license.

If you have any insights regarding the brick swapping issues, please share them here.

  • Info:
    Created on 28th August 2020. Last edited on 28th August 2020.
  • License:
  • Categories:
    • -
  • Sets:
    • -
  • Tag:
    • -
  • Fave Tags:
    • -

27 Comments

The source of the problem seems to be related to duplicates in “My Bricks”, although duplicates should not be a problem in themselves.
It seems to be a specific kind of duplicate which causes the problems.
Several users have sent me examples of corrupted FontStructions where the problem has arisen, but what I really need is a clue to how exactly you create these corrupted FontStructions – what reproducable step will corrupt a FontStruction?

Comment by Rob Meek (meek) 28th august 2020

In my experience it seems to occur when a composite brick which has been mirrored is then copied to many or several other glyphs.

Comment by George Arnold (bufb) 28th august 2020

Thanks George, that’s great, but I still need more detail.
Making a composite, mirroring it and then copying to other glyphs does not always cause an error.
At least I haven’t been able to reproduce it yet.

Comment by Rob Meek (meek) 28th august 2020
Comment by elmoyenique 28th august 2020

@elmo. Yes, I am aware of this phenomenon, but it doesn’t always corrupt the FontStruction (your example FontStruction is already messed up).

I’ve been making all kinds of duplicates in my test FontStructions but I haven’t yet been able to corrupt one of my designs. I guess it’s hard (impossible) to tell the difference between a duplicate that’s ok and one that’s going to cause problems.

Thanks for uploading though!

Comment by Rob Meek (meek) 28th august 2020

@Meek: This happened a long time ago with one of the fonts after saving, maybe it broke because I had many tabs open, and that font had a lot of composite blocks? But I'm not sure. By the way, the function described by elmo also does not work quite correctly, you cannot replace composite blocks, and if you start changing the font after saving, all old blocks will go back.

Comment by Dmitriy Sychiov (Sychoff) 30th august 2020

Thanks @Sychoff Useful insights!

Comment by Rob Meek (meek) 30th august 2020

It’s never happened to me, but I’d imagine that if you had one font open in multiple tabs at once, that’s bound to cause a few problems. Just an idea.

Comment by TH3_C0N-MAN 30th august 2020

I have had this problem several times, but i have never duplicated my blocks and it also happend when there were no composites, it seems to happen after saving and reloading or spontaneously when after saving the save button turns red while you didn't do anything.

Another anoying thing is when downloading a font might still be corrupted while the fontsruction is fine, the only way to solve this in my expirence is to copy the fontstruction then see if something is wrong fix that and then download it.

It also doesn't seem to care about if you have 70 or 5 blocks altough i've never seen it happen whit just one block.

Comment by senpaifurret 31st august 2020

@TH3 Yes that’s always a possibility. There should be a warning if you work in multiple tabs or devices now, but it still seems there is another issue.
@senpaifurret Thanks for the input!

Comment by Rob Meek (meek) 31st august 2020

 Yesterday I had the problem again that even if I deleted bricks that were displayed incorrectly and replaced them with others, they were still displayed incorrectly. 
Once I replaced them with others; then I tried to delete them and replace them with the "right" ones; I saved everything each time and left the fontstructor to preview the font. The errors were still there. I closed the browser, reopened it, logged in again... all the same. I got the message that the server on which the page is stored is not responding... 
In the end I could only fix the error this time by "overwriting" the swapped bricks as far as possible. In the past, when this was not possible (composite) I simply started a new fontstruct.
Yesterday (as before) I tried to remove all combined bricks that I had created but not used. This way of removing bricks - in my experience - is always problematic. Some just stay there. And they usually cause the problems.

Another effect occurs when I change the order of the bricks in the palette. It can happen that the cursor arbitrarily highlights a brick in yellow and shows it, even if you change from pen to eraser, from brick to hand, to preview or even the Unicode mode. This is often the moment when the brick palette changes and some bricks are exchanged for others. 
It also happens that by using a short-cut (h/p/c/z...) to undo actions etc., restore or go back to the previous version, another glyph table opens arbitrarily. This can also cause the font structure to be modified after/while saving, logging out and logging in.

These are my observations for the moment. All this seems to be quite complex. How the duplication of some bricks comes about is still a mystery to me (12 x square bricks; 5 x triangular bricks...) If this phenomenon appears in the palette, the font in the download is mostly incorrect for use. This means that some bricks suddenly do not work anymore, are exchanged and/or twisted.

I think the more complex the structure (even if you don't use many components) the more vulnerable the code is.

??? : ))

Comment by beate 31st august 2020

What Beate is saying has happened to me too, step by step. She has explained it very detailed and well.

Comment by elmoyenique 31st august 2020

Thanks @Beate. Very useful.
 

Comment by Rob Meek (meek) 31st august 2020

Concerning the shortcuts, that happens to me every time I use “FontStruct”. Sometimes it takes me to Arabic or Hebrew when I press: “A”, “C”, or “V” (or any of the other shortcuts). It doesn’t cause a major problem, though.

Comment by TH3_C0N-MAN 1st september 2020

@TH3 yes I’ve noticed that too. It’s a separate issue and much easier to fix.

Comment by Rob Meek (meek) 1st september 2020

"Yesterday (as before) I tried to remove all combined bricks that I had created but not used. This way of removing bricks - in my experience - is always problematic. Some just stay there. And they usually cause the problems."

I have a theory on this issue. Lets say you create a 2×2 custom brick. 1st row left to right: Square Circle. 2nd row left to right: Circle Square. Then you delete the circles. You are left with a custom brick that looks exactly like brick number 110 (so there was no need to create it, but this is just an example). You use this custom brick somewhere.

Then you create another 2×2 custom brick. 1st row left to right: Square, Right Half Triangle (3rd brick). 2nd row left to right: Right Half Triangle (3rd brick), Square. Then you delete the triangles. This second custom brick will look exactly like the first custom brick. Then you use it somewhere. When you go to review your work, you will not be able to tell which custom brick is custom brick 1 or 2. Unless you delete all instances used of custom brick 2, there's no way to get rid of it.

For this reason, I've always wanted fontstructor to have the ability to highlight the selected brick (if 1 is selected) in the brick pallet. Rob? Would that be possible?

"Concerning the shortcuts, that happens to me every time I use “FontStruct”. Sometimes it takes me to Arabic or Hebrew when I press: “A”, “C”, or “V” (or any of the other shortcuts)."

I think this is a matter of which element has the focus. If you switch from, say, Basic Latin to More Latin and then press A for select all, the page switching element still has the focus and it switches to Arabic page. Perhaps the focus can be manually assigned to the grid after each mouse up event or something (I don't know HTML5, so guessing).

Comment by thalamic 1st september 2020

@thalamic. You’re correct on the focus issue.

It is possible to highlight the selected brick (I think we used to have that feature in fact).

At least to fix this bug, I’d like to optionally expose this and other information to users because without seeing a little more info, we’re all tapping in the dark. (And it is hard for anyone, including me, to identify the moment at which a FontStruction becomes “corrupt”)

I will try and get a special version of the FontStructor ready later in the week for this purpose.

Comment by Rob Meek (meek) 1st september 2020

Hello.

I haven't been fontstructing lately, but these bricks swapping problem existed like always :) What I remember, I could get rid of the problematic ones using the Shift+T command, then closing fontsruction, then opening again, checking what's been deleted and not. That Shift+T command was one way to couping with these annoying brick swaps.

Comment by kassymkulov 4th september 2020

Thanks @architaraz. The Shift+T “Tidy” command is undocumented mostly because it can cause undesirable results – so I would only ever suggest trying it on a clone.

I have, by the way, identified a serious bug which certainly can cause corruption. It looks simple, so hopefully we can get a fix out for early next week.

Comment by Rob Meek (meek) 5th september 2020

One important bug is fixed.
I think there are still more out there.
Let me know!

Comment by Rob Meek (meek) 7th september 2020

I've just encountered this issue. I exited the fontstuction page and found that the preview looked weird, so I entered fontstruction again and found that a lot of the bricks were swapped with others. After doing some searching I found out about brick swapping and tried to swap the wrong bricks with the right ones, but only ended up creating duplicate copies of the same brick in the My Bricks window. It's still like that and I have no idea how to get rid of the duplicates.

Comment by BlockedBlock 13th september 2020

The duplicates are ok. Duplicates appearing after brick swaps are expected – the way things work at the moment.

Comment by Rob Meek (meek) 13th september 2020

I’m fairly confident that this issue has finally been fixed – for FontStructions created since yesterday (26.09.2020), and not for clones of affected FontStructions by the way.
Saving may be a few milliseconds slower – but much safer.

I think the “secret” shift-T function (tidy your brick palette) may be more reliable as well, but I haven’t tested that thoroughly, so always do this on a clone.

Comment by Rob Meek (meek) 26th september 2020

Thank you very much, dear bigchief!

Comment by elmoyenique 28th september 2020

I know, why is the bricks swapped? 

Comment by VTOTFS2021 20th july 2021

I got this problem several times before. It mostly involves me using Fontstruct on mobile devices in which the brick swap issue (and sometimes corruptions) occurs a lot more often rather than using on Desktop.

On mobile, what I usually do to get the Brick Swaps is accidentally dragging a brick in the My Bricks onto inself, the issue will select a random brick (more than 2 brick swaps can happen at once as well) that you used and replace it (on all glyths) to the brick I dragged. This type of Brick Swaps activation is kind of random and isn't really common at all but if you also happen to be a Fontstructor who frequently uses Fontstruct then it will be quite a big problem. Although, I haven't witness the Brick Swapping issue on desktop, yet.

This could be quite an issue as you can just ruin your entire Fontstruction project without creating a backup, if the Fontstruction is large and includes plenty of brick composites. To me, this made me quite tired to repair the damage everytime that happens. Gladly, the Brick Swapping issue doesn't seem to affect Fonstructions that only use block bricks, as far as I know.

Comment by Catterio Sylt (Catterio) 28th october 2022

like this?

Comment by Frenchyball Sun, 24th march

Also of Interest

GlyphsApp

Get the world’s leading font editor for OSX.

More from the Gallery

High Sunderland A Blindsby Rob Meek (meek)
Questructionby Rob Meek (meek)
Modular Nouveau No.2by Rob Meek (meek)
High Sunderland A Structureby Rob Meek (meek)
DOS System Fontby krystman
slowby clindust
Pilotonby aaronamar
PZ Grotepix Bookby petrzee

From the Blog

News

The Numbers Competition

News

16 Years of FontStruct

News

Gridfolk: Interview with Zephram