How to best give access to special characters in a font

Is there consensus or best practice on how to best access special characters (like arrows or numbers in circles) in a font?

I couldn’t find anything so I implemented something my own way with contextual alternates:


Numbers in circles can be created with Contextual Alternates enabled and typing a combination of 

w or b (white or black)
# (number sign)
and a digit (0-9)



Arrows can be created with Contextual Alternates enabled and typing a combination of
> (greater than)
with
r, l, u, d
(right, left, up, down)



Everything works fine this way but maybe there are drawbacks that I didn’t foresee?

Cheers, Ebern.


«1

Comments

  • Ha thanks Thierry, I hadn’t seen that one.

    I get the point, though I feel it’s slightly different in my case, for two reasons.

    The copyright sign is is easily typable from the keyboard (MY keyboard that is) so there seems to be little need to put it in the calt feature, and the trigger ‘(c)’ is a combination of letters that is used quite often and means something in itself.

    Numbers in circles and arrows can’t be typed and I simply thought it would be very handy if you could. The triggers I implemented mean nothing in themselves and are not very likely to occur in  text. Of course, in theory this can give unwanted results but in practice the chances of that happening are extremely small.

    Anyway, thanks, I’ll reconsider.
  • I think adding those things as features that are not on by default is okay, but consider this: If you have to document and show users how to type those things, why not instead instruct on how to activate/use unicode input? Or simply instruct users to copy paste those characters from e.g. a specimen.
  • In our user manual, in the section for automatic OpenType feature generation, we recommend using Alternate Annotation Forms (thus the nalt feature) for digits placed in circles and squares.

  • Nick ShinnNick Shinn Posts: 1,524
    edited March 24
    Suggested best practice:

    Give them their correct Unicode values, and make sure they are nicely grouped when they appear in a Glyphs palette (position while in Index mode).
    The circled numbers are in the Dingbats code sheet

    So, if someone selects the dingbat from your font, via a Glyphs palette, and it’s not available in some other font, then a circled icon would be available from a well-stocked system font, or good old Zapf Dingbats/Wingbats.

    The arrows are in the Arrows code sheet.

    You can also put the circled numbers in Stylistic Sets which switch the default figures for duplicate glyphs named as follows:
    one.circle, one.negcircle, etc.

    sub [one two etc.] by [one.circle two.circle etc.] ;


  • Ray LarabieRay Larabie Posts: 972
    edited March 25
    When I was adapting Canada150 to the now bankrupt Mars One project we needed something that could fall back to readable text for safety reasons. The project (Canada1500 Public Domain) required several symbols that don't exist in Unicode. There's no fallback font that could display the information in the case of font failure; symbols such as microgravity, Phobos, laser warning. We used backslash followed by the shortcode followed by a second backslash.

    \microgravity\ \phobos\ \laser\

    Backslash was chosen as it's more of a programming character than a typographic character and it's available on most keyboards. Of course we don't know how backslash will be used in the future but for that project I think it was the best choice. Multiple characters were considered like {{shortcode}} or [[[shortcode]]] but we were concerned about adding more characters unnecessarily, causing overruns. You can read the PDF on this page to see a list of shortcodes. Most of the symbols have Unicode locations but a lot of them are emoji so possibly not reliable as a fallback anyway. The shortcodes were also meant to serve as an easier way for technicians to input hard-to-find characters. I wouldn't recommend shortcodes for general use but I think they can be useful for specialized purposes. I recommend using shortcodes which are human readable so the meaning can be understood if the shortcode fails.

  • So you have not actually make it possible to type ↗, you've just hidden the fact that what was actually typed was '>ru'.

    Input processing, character processing, and glyph processing are separate stages in text processing and display. It is important to understand the correct stage at which to address different kinds of issues.
    Well explained, thank you John.

    I assumed that my font will be employed in the final stage, the design and layout stage, where the above problem is not really a problem. But of course it can also be employed at input stage and then it will cause problems later on.

    I will have to update my cheat sheet to clarify this.


    The arrows are in the Arrows code sheet.
    Thanks Nick.

    Yes, all symbols in my font have correct Unicode values. They show up together in the glyphs palette in Indesign when ‘entire font’ is selected (a lot of scrolling required). When ‘symbols’ is selected only half of them show up while the other half is in ‘math symbols’ which isn’t very convenient. Is there any way to fix this?


  • Thomas PhinneyThomas Phinney Posts: 1,856
    edited March 25
    Yes, all symbols in my font have correct Unicode values. They show up together in the glyphs palette in Indesign when ‘entire font’ is selected (a lot of scrolling required). When ‘symbols’ is selected only half of them show up while the other half is in ‘math symbols’ which isn’t very convenient. Is there any way to fix this?


    No.

    And those few users who know the groupings of the characters they are looking for will look for them under the correct group. Plus, if they are looking at those characters across different fonts, having them shift around between groups when they shift fonts would be seriously problematic!
  • No.
    Thanks :smile:

  • I have updated my cheat sheet like this. Hope that fixes it :smile:



    (full version here)
  • I think it is better to avoid calt. Better put the digits in circles in a stylistic set. And maybe add the regular circled ones to nalt. More or less how it is done in Helvetica Now.
  • Marc OxborrowMarc Oxborrow Posts: 149
    While you're tweaking things, there's a typo in your text: palette, not palet.
  • I think it is better to avoid calt. Better put the digits in circles in a stylistic set. And maybe add the regular circled ones to nalt. More or less how it is done in Helvetica Now.
    I don’t quite see the advantage of nalt yet so I’m going to study this.

    While you're tweaking things, there's a typo in your text: palette, not palet.
    Check! Thanks.
  • John SavardJohn Savard Posts: 562
    When you type keys on a keyboard, you are inputting character codes, which are what are stored as text in the computer. If you decide for your font to display the character sequence '>ru' as the ↗ glyph, that will look lovely in your font, but that text is going to display '>ru' in everyone else's font. So you have not actually make it possible to type ↗, you've just hidden the fact that what was actually typed was '>ru'.

    That is indeed very important to clearly understand.
    However, I will add one comment which may partly explain the widespread temptation to use contextual alternates despite the potential danger of confusion.
    That is, somebody is going to have to make Microsoft (and, for that matter, Apple) aware that it really has got to be made easier - much easier - for users to address "keyboard issues" of this type.
  • (...) that it really has got to be made easier - much easier - for users to address "keyboard issues" of this type.
    Is this an OS matter or could this potentially be handled through OpenType?
  • … somebody is going to have to make Microsoft (and, for that matter, Apple) aware that it really has got to be made easier - much easier - for users to address "keyboard issues" of this type.
    Thanks John, you’ve hit the ceiling. It is important to understand that the access-special-char.s conundrum is an text input problem, not a font issue. I also know the temptation to fancy-code workarounds for letting arrows and other symbols come to life, but that is just a desperate measure, by no way a solution.

    As a font designer heavily dealing with Hundreds of special characters for a long time, I have been thinking about that mess for many years. And I dare to say I have the solution. It requires a new soft- and hardware design. It’ll be a groundbreaking relieve for myriads of people who suffer from keyboarderitis.
    Where do I need to go to make it happen?



  • Ebern KlauseEbern Klause Posts: 46
    edited March 30
    Any (old) iPad that functions as a giant glyphs-palette or configurable additional keyboard would do for me. Any app-developers in the house?
  • Nick ShinnNick Shinn Posts: 1,524
    I can just see it now: every time you type a number, a pop-up asks you whether you want to put a circle around it.
  • On the Mac, Popchar X is my preferred solution.

    https://www.ergonis.com/products/popcharx/

    Perhaps there's something comparable for Windows?
  • You could use MainType. It is a font manager that also comes as a free edition. It obviously allows you to manage, tag, and install fonts, but it also allows you to search, select, and copy and paste characters. We love (and we made it).







  • John SavardJohn Savard Posts: 562
    And I dare to say I have the solution. It requires a new soft- and hardware design.
    I have bad news for you.

    Microsoft was going to bring out a new kind of keyboard that would have helped... but it was based on a principle (that of the Optimus Popularis) that was already patented by someone else. And the other possible variations have also been patented...



  • edited April 1

    As a font designer heavily dealing with Hundreds of special characters for a long time, I have been thinking about that mess for many years. And I dare to say I have the solution. It requires a new soft- and hardware design. It’ll be a groundbreaking relieve for myriads of people who suffer from keyboarderitis.
    Where do I need to go to make it happen?
    Depends on the context and the skills of the user, how convenient the input can be supported. In an application, onscreen keyboards or character pickers can be supported. What I mostly use with text or document editors is a cheat sheet (a plain text file) containing all special characters including the description. It's a sort of transcription guideline from where I can copy and paste the characters.
  • … the other possible variations have also been patented...
    where can one grasp what possible variations you talk about?

  • Depends on the context and the skills of the user, how convenient the input can be supported. …
    In my view that is exactly the sort of approach we don’t need. The “skill of the user” is certainly not the problem. The pre-stone-age concept of the keyboard is the problem. What we still use is actually of around 1860. It is overdue. Why are principal stakeholders so stubborn in that respect? (I loath to be bearer of that message.)
    Character input could be made possible generally in a way that puts present-day restrictions of the keyboard where it belongs: into the museum. Completely.

    NO excuses, please.
  • John HudsonJohn Hudson Posts: 1,834
    edited April 1
    A huge amount of work is being done on voice input, with great progress made in natural language processing. But input of special, non-linguistic characters, it seems to me, is always going to be problematic given input methods that are tailored to natural language, whether that's keyboard, voice, or something else. Onscreen pickers are generally best, but there still needs to be a rapid selection mechanism to get to the appropriate picker.
  • Ray LarabieRay Larabie Posts: 972
    edited April 2
    It's frustrating because the systems to do this have been baked into computers for decades. When I type Japanese on my computer, there's a system in place to let me choose a specific character, word or phrase. There are function key shortcuts for quick access. There's no technical reason I shouldn't be able to type -- and be presented with a choice on emdash, endash, minus, two hyphens etc. Those kinds of input systems already work in every text box in every application on every PC. I assume it's exactly the same on Mac and Linux.
  • James PuckettJames Puckett Posts: 1,688
    edited April 2
    I assume it's exactly the same on Mac and Linux.
    The Mac keyboard gives access to all the dashes, quotation marks, inverted exclamation and question marks, lots of currency symbols, and some other good stuff. And the ABC extended layout provides access to nineteen diacritical marks. The Character Viewer app allows users to dig through Unicode blocks to find just about anything. Users can install multiple keyboard layouts (I use Latin and Devanagari) and switch between them on the fly. There’s a keyboard viewer app lets you see what characters are available and changes if you use the shift and option keys. It’s not as smooth as Japanese input systems, but it’s still a great way to access stuff in a typeface.

Sign In or Register to comment.