Fonts: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
(2 intermediate revisions by the same user not shown)
Line 106: Line 106:
== Changing font in Dyalog RIDE ==
== Changing font in Dyalog RIDE ==
[[Dyalog Ltd]]'s cross-platform RIDE interface, which is the default GUI interface on all non-Windows platforms, does not expose a font setting. However, it is trivial to change font:
[[Dyalog Ltd]]'s cross-platform RIDE interface, which is the default GUI interface on all non-Windows platforms, does not expose a font setting. However, it is trivial to change font:
<ol><li>Open…<ul>
* Open ride-base.css[[#loc|*]]
<li>on Windows: %LOCALAPPDATA%\Programs\Dyalog\Ride-4.4\resources\app\style\ride-base.css
* Find the line that says <source lang=css inline>src: url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');</source>
<li>on Linux: /opt/ride-4.3/resources/app/style/ride-base.css
* Insert <source lang=css inline>local('font name'),</source> immediately after <source lang=css inline>src:</source>, for example <source lang=css inline>src: local('SAX2'), url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');</source>
</ul>
* Restart RIDE
<li>Find the line that says <source lang=css inline>src: url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');</source>
 
<li>Insert <source lang=css inline>local('font name'),</source> immediately after <source lang=css inline>src:</source>, for example <source lang=css inline>src: local('SAX2'), url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');</source>
<span id=loc>[[#Changing font in Dyalog RIDE|*]]</span> The full path to ride-base.css varies (examples for RIDE 4.4 and Dyalog 18.2):
<li>Restart RIDE
:* Stand-alone installation:
</ul>
:** Windows: %LOCALAPPDATA%\Programs\Dyalog\Ride-4.4\resources\app\style\ride-base.css
:** Linux: /opt/ride-4.4/resources/app/style/ride-base.css
:** macOS: /Applications/Ride-4.4.app/resources/app/style/ride-base.css
:* Zero-footprint RIDE (served by the interpreter and normally accessed through a browser):
:** Linux or AIX: /opt/mdyalog/18.2/64/unicode/Contents/Resources/Dyalog/RIDEapp/resources/app/style/ride-base.css
:** macOS: /Applications/Dyalog-18.2.app/Contents/Resources/Dyalog/RIDEapp/resources/app/style/ride-base.css


== References ==
== References ==
<references/>
<references/>
{{APL development}}[[Category:APL character set]][[Category:Lists]]
{{APL development}}[[Category:APL character set]][[Category:Lists]]

Revision as of 15:27, 25 April 2022

With the prevalence of Unicode, many systems render APL legibly out-of-the-box. However, for a uniform appearance, the font should be designed with APL in mind.[1] This article lists some fonts that are suited for APL.

Monospace

Name
(website)
Source
(download)
Description Sample
APL2 Unicode IBM Straight from IBM typewriter terminals with oblique letters.
APL2 Unicode.png
APL385 Unicode Adrian Smith Inspired by Comic Sans Serif.
APL385 Unicode.png
APL386 Unicode GitHub APL385 Unicode with fewer issues and more accented characters.
APL386 Unicode.png
BQN386 Unicode GitHub Re-hinted APL386 Unicode with harmonised glyphs and support for BQN.
APL386 Unicode.png
APLX Upright MicroAPL A monospaced grotesque font, reminiscent of Akzidenz-Grotesk.
APLX Upright.png
Courier APL2 Unicode IBM The classic Courier typewriter font, extended with APL symbols.
Courier APL2 Unicode.png
DejaVu BQN Sans Mono GitHub DejaVu Sans Mono with support for BQN.
DejaVu Sans Mono.png
DejaVu Sans Mono GitHub Wide range of characters with original look and feel of Vera.
DejaVu Sans Mono.png
DejaVu Sans Mono Bront GitHub DejaVu Sans Mono tweaked to be better geared for programming.
DejaVu Sans Mono Bront.png
DejaVu Sans Mono Nerd AUR DejaVu Sans Mono patched with a high number of extra glyphs.
DejaVu Sans Mono.png
Everson Mono Evertype (shareware) A simple font, quite legible at sizes as small as 4 points.
Everson Mono.png
Fairfax KreativeKorp Regular/Bold/Italic 6×12 bitmap font supporting many characters.
Fairfax.png
Fairfax Serif Serif 6×12 bitmap font supporting many characters.
Fairfax Serif.png
Fairfax HD KreativeKorp Plotter-like font supporting many characters.
Fairfax HD.png
IBM 3270 GitHub Modern version of a classic IBM terminal font.
IBM 3270.png
Iosevka Anonymous Pro Style GitHub A slender, highly customisable monospace sans-serif and slab-serif typeface inspired by Pragmata Pro, M+ and PF DIN Mono. This list includes seven ready-made versions, but it is easy to build one's own version too. When compiling, it is possible to configure character variants with apl-form = 'enable' to prioritise harmonising APL glyphs.
Iosevka Anonymous Pro.png
Iosevka Fira Mono Style GitHub
Iosevka Fira Mono.png
Iosevka Pragmata Pro Style GitHub
Iosevka Pragmata Pro.png
Iosevka Source Code Pro Style GitHub
Iosevka Source Code Pro.png
Iosevka JetBrains Mono Style GitHub
Iosevka JetBrains Mono.png
Iosevka IBM Plex Mono Style GitHub
Iosevka IBM Plex Mono.png
Iosevka Recursive Mono Style GitHub
Iosevka Recursive Mono.png
poultreMono Codeberg A 5×9 pixel font.
PoultreMono.png
PragmataPro (commercial) A condensed font optimized for coding, mathematics and engineering.
PragmataPro.png
SAX2 GitHub Curly font with italic letters, based on Sharp APL for Unix.
SAX2.png
SImPL Vector Courier-based, but thicker.
SImPL.png
Unifont Unifoundry Low-resolution bitmap fall-back font
Unifont.png

Proportional

Name
(website)
Source
(download)
Description Sample
APL333 Adrian Smith Proportionally spaced version of APL385 Unicode
APL333.png
Code2000 FontSpace Wedge-serif pan-Unicode font.
Code2000.png
Iosevka Aile GitHub Proportionally spaced version of Iosevka.
Iosevka Aile.png
Iosevka Etoile GitHub Proportionally spaced slab-serif version of Iosevka.
Iosevka Etoile.png
Quivira Website Serif font supporting many symbols, similar to Garamond.
Quivira.png
Segoe UI Symbol (commercial) Microsoft's humanist interface and corporate font.
Segoe UI Symbol.png
Stix Two Math GitHub Serif font, broadly compatible with Times New Roman.
Stix Two Math.png
Symbola UFAS (free for personal non-commercial use only) Supporting many scripts and symbols, similar to Computer Modern.
Screenshot 2021-03-19 Screenshot.png
The APL typeball

Historical anecdote

Using IBM's APL\360 required the use of the IBM 2741 or IBM 1050 printing terminal with an APL type ball. The APL2741 font is based directly on this type ball.

Changing font in Dyalog RIDE

Dyalog Ltd's cross-platform RIDE interface, which is the default GUI interface on all non-Windows platforms, does not expose a font setting. However, it is trivial to change font:

  • Open ride-base.css*
  • Find the line that says src: url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');
  • Insert local('font name'), immediately after src:, for example src: local('SAX2'), url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');
  • Restart RIDE

* The full path to ride-base.css varies (examples for RIDE 4.4 and Dyalog 18.2):

  • Stand-alone installation:
    • Windows: %LOCALAPPDATA%\Programs\Dyalog\Ride-4.4\resources\app\style\ride-base.css
    • Linux: /opt/ride-4.4/resources/app/style/ride-base.css
    • macOS: /Applications/Ride-4.4.app/resources/app/style/ride-base.css
  • Zero-footprint RIDE (served by the interpreter and normally accessed through a browser):
    • Linux or AIX: /opt/mdyalog/18.2/64/unicode/Contents/Resources/Dyalog/RIDEapp/resources/app/style/ride-base.css
    • macOS: /Applications/Dyalog-18.2.app/Contents/Resources/Dyalog/RIDEapp/resources/app/style/ride-base.css

References

  1. Phil Chastney: APL fonts are different
APL development [edit]
Interface SessionTyping glyphs (on Linux) ∙ FontsText editors
Publications IntroductionsLearning resourcesSimple examplesAdvanced examplesMnemonicsISO 8485:1989ISO/IEC 13751:2001A Dictionary of APLCase studiesDocumentation suitesBooksPapersVideosAPL Quote QuadVector journalTerminology (Chinese, German) ∙ Neural networksError trapping with Dyalog APL (in forms)
Sharing code Backwards compatibilityAPLcartAPLTreeAPL-CationDfns workspaceTatinCider
Implementation ResourcesOpen-sourceMagic functionPerformanceAPL hardware
Developers Timeline of corporationsAPL2000DyalogIBMIPSASTSC