Jump to content

Recommended Posts

Posted

Hello,

I am working on fine typography in Affinity Publisher. Some high punctuation marks (such as ?, !, ;, etc.) must be preceded by a specific space.

I cannot find any way to automate this in the automatic replacement module while typing (menu Preferences > Auto-correction > Replacement), which would allow automatic input without having to go through a long and tedious search.

Example with U+2006:
 

<word>? → <word><6/EMSP>?

How should I proceed?

Thank you for your help.

6 cœurs, 12 processus - Windows 11 pro - 4K - DirectX 12 - Suite universelle Affinity (Affinity  Publisher, Affinity Designer, Affinity Photo).

Mais je vous le demande, peut-on imaginer une police sans sérifs ?

Posted

In my first tests, I found it was ineffective until I realized that my text style had not the same language applied in the Character formatting than the language in Automatic replacement setting. 🫢

However after that it worked BUT there was still something strange: 

  1. In Settings/Preferences > Automatic replacement, replace semi colon by narrow non breakable space + semi colon 
  2. Type a semi colon 
    — It is replaced by narrow non breakable space + semi colon as expected.
  3. But if I type a regular space after the semi-colon, the narrow space is doubled! 

 

Affinity Suite 2.5 – Monterey 12.7.5 – MacBookPro 14" 2021 M1 Pro 16Go/1To

I apologise for any approximations in my English. It is not my mother tongue.

Posted
14 minutes ago, Oufti said:

However after that it worked BUT there was still something strange: 

  1.  
  2.  
  3. But if I type a regular space after the semi-colon, the narrow space is doubled! 

My slightly different approach was also creating a doubling of the narrow space at times?

So, I gave up and took the dog for a walk.

Hoping someone else would solve the OPs question

Maybe I'll have another look at a later date/time. Publisher and narrow spaces are not something I really get involved with

To save time I am currently using an automated AI to reply to some posts on this forum. If any of "my" posts are wrong or appear to be total b*ll*cks they are the ones generated by the AI. If correct they were probably mine. I apologise for any mistakes made by my AI - I'm sure it will improve with time.

Posted

@Oufti AutoCorrect is being triggered twice. Once by typing a punctuation character and once by typing a space character. I don't think this is a bug, it should be triggered by the space, but it is unfortunately going to prevent this approach from being used.

@Pyanepsion In older apps like QuarkXpress you can create custom kerning pairs. If you wanted space before ! then you'd create kerning pairs for each letter followed by !

Defining custom kerning pairs for specific fonts used to be a common feature in page layout apps because there were so many low quality fonts in the 1990s. It's uncommon now but it would be the ideal solution for your dilemma. I believe InDesign use GREP styles for this because InDesign also lacks this feature.

Given Affinity doesn't offer custom kerning pairs or GREP styles, I suggest editing the font and padding those punctuation characters with extra space. If you're unable to do this then you might have to use Find and Replace to format the document manually.

Posted

@Oufti Thank you for the video. It helped me understand how to insert the required space relatively easily.

@carl123 I would add that automatic replacement should also cover superscripts when they exist in the font: typing superscript 2 should replace it with ² (U+00B2); typing 1er should replace it with 1ᵉʳ (U+1D49 and U+02B3). This would greatly simplify the transcription of text across different platforms.

@MikeTO The use of spacing before punctuation marks depends on the typographic conventions of each language or publishing style. It should not be integrated into the typeface. This is not the role of the type designer, but of the typographer. This idea that these conventions should be managed by the font itself is, I believe, an American conception, far removed from typographic practice anywhere else.

🤫Yes, until this limitation is addressed, we’ll still have to rely on regex-based find-and-replace. Alas. Microsoft Word already implements something similar using its AutoCorrect and so-called "Automath" dictionaries. These apply formatting or character substitution depending on the context. Affinity Publisher could adopt a comparable approach.

6 cœurs, 12 processus - Windows 11 pro - 4K - DirectX 12 - Suite universelle Affinity (Affinity  Publisher, Affinity Designer, Affinity Photo).

Mais je vous le demande, peut-on imaginer une police sans sérifs ?

Posted
19 minutes ago, Pyanepsion said:

The use of spacing before [or after] punctuation marks depends on the typographic conventions of each language or publishing style. It should not be integrated into the typeface.

It absolutely should not be integrated into the typeface! An obvious example is guillemets, which are properly separated from the enclosed text by spaces in France but not in Switzerland or Germany:

« guillemets »

«Gänsefüsschen»

»Gänsefüßchen«

 

Alfred spacer.png
Affinity Designer/Photo/Publisher 2 for Windows • Windows 10 Home/Pro
Affinity Designer/Photo/Publisher 2 for iPad • iPadOS 17.5.1 (iPad 7th gen)

Posted
22 hours ago, MikeTO said:

AutoCorrect is being triggered twice. Once by typing a punctuation character and once by typing a space character.

Armed with that knowledge, if we added another character after the question mark (e.g. ?/) typing a space would not trigger the autocorrect to run a second time

Obviously, we do not want a visible character after the question mark so we need an invisible character, we also need it to be a zero space character 


Using Alt codes

After some research ALT+0173 seems to add a hidden character with zero space

So, I simply added ALT+0173 after the ? in the replacement field of autocorrect (Note: nothing appears on screen when you type ALT+0173)

...and it appears to work

Now the ? mark triggers the autocorrect but then typing a space character does not


But typography people can be somewhat perfectionists so I'll leave it to you to decide if the above solution is viable

To save time I am currently using an automated AI to reply to some posts on this forum. If any of "my" posts are wrong or appear to be total b*ll*cks they are the ones generated by the AI. If correct they were probably mine. I apologise for any mistakes made by my AI - I'm sure it will improve with time.

Posted

@Pyanepsion I agree with you, I was just stating which options are available. IMO Quark handles it better than InDesign but neither is a model –– users shouldn't have to create their own kerning pairs or use GREP styles. There should be one or more toggles for this.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.