Fonts: Difference between revisions

Jump to navigation Jump to search
6,610 bytes added ,  15:27, 25 April 2022
mNo edit summary
(41 intermediate revisions by 7 users not shown)
Line 1: Line 1:
With the prevalence of [[Unicode]], many systems render APL legibly out-of-the-box. This article lists some fonts that are especially well-suited for rendering APL characters.
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.<ref>Phil Chastney: ''[https://web.archive.org/web/20161005120746/http://www.chastney.com/~philip/SImPL/APL_fonts_are_different.pdf APL fonts are different]''
 
</ref> This article lists some fonts that are suited for APL.
== Monospace ==
{|class=wikitable
{|class=wikitable
!Name<br>(website) !! Source<br>(download) !! Description !! Sample
!Name<br>(website) !! Source<br>(download) !! Description !! Sample
Line 7: Line 8:
[[File:APL2 Unicode.png|none]]
[[File:APL2 Unicode.png|none]]
|-
|-
|[http://apl385.com/fonts/index.htm APL333]|| [https://github.com/abrudz/aplcart/raw/master/apl333.ttf GitHub] ||Proportionally spaced version of APL385 Unicode||
|[http://apl385.com/fonts/index.htm APL385 Unicode]||[http://apl385.com/fonts/apl385.zip Adrian Smith]||Inspired by Comic Sans Serif.||
[[File:APL333.png|none]]
[[File:APL385 Unicode.png|none]]
|-
|-
|[http://apl385.com/fonts/index.htm APL385 Unicode]||[http://www.dyalog.com/uploads/files/download.php?file=fonts_and_keyboards/Apl385.ttf Dyalog]||A fun, whimsical look, inspired by Comic Sans Serif.||
|[https://abrudz.github.io/APL386/ APL386 Unicode]||[https://github.com/abrudz/APL386/raw/master/APL386.ttf GitHub]||APL385 Unicode with fewer issues and more accented characters.||
[[File:APL385 Unicode.png|none]]
[[File:APL386 Unicode.png|none]]
|-
|-
|[https://github.com/abrudz/APL386 APL386 Unicode]||[https://github.com/abrudz/APL386/raw/master/APL386.ttf GitHub]||APL385 Unicode with less issues and more accented characters.||
|[https://github.com/dzaima/BQN386 BQN386 Unicode]||[https://github.com/dzaima/BQN386/blob/master/BQN386.ttf?raw=true GitHub]||Re-hinted APL386 Unicode with harmonised glyphs and support for [[BQN]].||
[[File:APL386 Unicode.png|none]]
[[File:APL386 Unicode.png|none]]
|-
|-
| [http://www.dyalog.com/aplx.htm APLX Upright] || [https://www.dyalog.com/uploads/aplx/aplx_unicode.ttf Dyalog] || A monospaced grotesque font, reminiscent of Akzidenz-Grotesk.||
| [http://www.microapl.com/apl/learn_apl.html APLX Upright] || [http://www.microapl.co.uk/download/aplx_unicode.ttf MicroAPL] || A monospaced grotesque font, reminiscent of Akzidenz-Grotesk.||
[[File:APLX Upright.png|none]]
[[File:APLX Upright.png|none]]
|-
|-
| [https://www.ibm.com/us-en/marketplace/apl2 Courier APL2 Unicode] || [https://www.ibm.com/account/reg/us-en/signup?formid=urx-32206 IBM] || The classic Courier typewriter font, extended with APL symbols.||
| [https://www.ibm.com/us-en/marketplace/apl2 Courier APL2 Unicode] || [https://www.ibm.com/account/reg/us-en/signup?formid=urx-32206 IBM] || The classic Courier typewriter font, extended with APL symbols.||
[[File:Courier APL2 Unicode.png|none]]
[[File:Courier APL2 Unicode.png|none]]
|-
|[https://mlochbaum.github.io/BQN/fonts.html DejaVu BQN Sans Mono]||[https://github.com/mlochbaum/BQN/blob/master/docs/DejaVuBQNSansMono.ttf?raw=true GitHub]||DejaVu Sans Mono with support for [[BQN]].||
[[File:DejaVu Sans Mono.png|none]]
|-
|-
|[https://dejavu-fonts.github.io/ DejaVu Sans Mono]||[https://github.com/senotrusov/dejavu-fonts-ttf/raw/master/ttf/DejaVuSansMono.ttf GitHub]||Wide range of characters with original look and feel of Vera.||
|[https://dejavu-fonts.github.io/ DejaVu Sans Mono]||[https://github.com/senotrusov/dejavu-fonts-ttf/raw/master/ttf/DejaVuSansMono.ttf GitHub]||Wide range of characters with original look and feel of Vera.||
[[File:DejaVu Sans Mono.png|none]]
[[File:DejaVu Sans Mono.png|none]]
|-
|-
|[https://github.com/chrismwendt/bront DejaVu Sans Mono Bront]||[https://github.com/chrismwendt/bront/raw/master/DejaVuSansMono-Bront.ttf GitHub]|| DejaVu Sans Mono tweaked to be better geared for programming.||[[File:DejaVu Sans Mono.png|none]]
|[https://github.com/chrismwendt/bront DejaVu Sans Mono Bront]||[https://github.com/chrismwendt/bront/raw/master/DejaVuSansMono-Bront.ttf GitHub]|| DejaVu Sans Mono tweaked to be better geared for programming.||
[[File:DejaVu Sans Mono Bront.png|none]]
|-
|-
|[https://www.nerdfonts.com/ DejaVu Sans Mono Nerd]||[https://raw.githubusercontent.com/ryanoasis/nerd-fonts/v2.0.0/patched-fonts/DejaVuSansMono/Regular/complete/DejaVu%20Sans%20Mono%20Nerd%20Font%20Complete%20Mono.ttf AUR]|| DejaVu Sans Mono patched with a high number of extra glyphs.||[[File:DejaVu Sans Mono.png|none]]
|[https://www.nerdfonts.com/ DejaVu Sans Mono Nerd]||[https://raw.githubusercontent.com/ryanoasis/nerd-fonts/v2.0.0/patched-fonts/DejaVuSansMono/Regular/complete/DejaVu%20Sans%20Mono%20Nerd%20Font%20Complete%20Mono.ttf AUR]|| DejaVu Sans Mono patched with a high number of extra glyphs.||[[File:DejaVu Sans Mono.png|none]]
|-
|-
| [https://typeof.net/Iosevka/ Iosevka Envy Code R] || [https://github.com/be5invis/Iosevka/releases/download/v3.0.0-alpha.5/iosevka-term-ss10-3.0.0-alpha.5.zip GitHub]||rowspan=3|A slender monospace sans-serif and slab-serif typeface inspired by Pragmata Pro, M+ and PF DIN Mono.||
| [https://www.evertype.com/emono/ Everson Mono] || [https://www.evertype.com/emono/evermono-beta.zip Evertype] (shareware) || A simple font, quite legible at sizes as small as 4 points. || [[File:Everson Mono.png|none]]
[[File:Iosevka Envy Code R.png|none]]
|-
| [https://www.kreativekorp.com/software/fonts/fairfax.shtml Fairfax] || rowspan=2|[https://www.kreativekorp.com/swdownload/fonts/relaybm/fairfax.zip KreativeKorp] || Regular/Bold/Italic 6×12 bitmap font supporting many characters. || [[File:Fairfax.png|none]]
|-
| [https://www.kreativekorp.com/software/fonts/fairfax.shtml Fairfax Serif] || Serif 6×12 bitmap font supporting many characters. || [[File:Fairfax_Serif.png|none]]
|-
| [https://www.kreativekorp.com/software/fonts/fairfaxhd.shtml Fairfax HD] || [https://www.kreativekorp.com/swdownload/fonts/core/fairfaxhd.zip KreativeKorp] || Plotter-like font supporting many characters. || [[File:Fairfax HD.png|none]]
|-
|-
| [https://typeof.net/Iosevka/ Iosevka Pragmata Pro] || [https://github.com/be5invis/Iosevka/releases/download/v3.0.0-alpha.5/iosevka-term-ss08-3.0.0-alpha.5.zip GitHub]||
| [https://github.com/rbanffy/3270font IBM 3270] || [https://github.com/rbanffy/3270font/releases/download/v2.2.1/3270_fonts_70de9c7.zip GitHub] || Modern version of a classic [[IBM]] terminal font. || [[File:IBM 3270.png|none|500px]]
[[File:Iosevka Pragmata Pro.png|none]]
|-
|-
| [https://typeof.net/Iosevka/ Iosevka Source Code Pro] || [https://github.com/be5invis/Iosevka/releases/download/v3.0.0-alpha.5/iosevka-term-ss09-3.0.0-alpha.5.zip GitHub]||
| [https://typeof.net/Iosevka/ Iosevka] Anonymous Pro Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss02-10.1.1.zip GitHub]||rowspan=7|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 <code>apl-form = 'enable'</code> to prioritise harmonising APL glyphs. ||[[File:Iosevka Anonymous Pro.png|none]]
[[File:Iosevka Source Code Pro.png|none]]
|-
|-
| [https://www.fsd.it/shop/fonts/pragmatapro/ PragmataPro] || (commercial) || A condensed font optimized for coding, math and engineering.||
| [https://typeof.net/Iosevka/ Iosevka] Fira Mono Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss05-10.1.1.zip GitHub] || [[File:Iosevka Fira Mono.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka] Pragmata Pro Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss08-10.1.1.zip GitHub] || [[File:Iosevka Pragmata Pro.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka] Source Code Pro Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss09-10.1.1.zip GitHub] || [[File:Iosevka Source Code Pro.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka] JetBrains Mono Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss14-10.1.1.zip GitHub] || [[File:Iosevka JetBrains Mono.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka] IBM Plex Mono Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss15-10.1.1.zip GitHub] || [[File:Iosevka IBM Plex Mono.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka] Recursive Mono Style || [https://github.com/be5invis/Iosevka/releases/download/v10.1.1/ttf-iosevka-fixed-ss17-10.1.1.zip GitHub] || [[File:Iosevka Recursive Mono.png|none]]
|-
| [https://codeberg.org/Wezl/fonts poultreMono] || [https://codeberg.org/attachments/042040b4-ca97-4ffe-8401-540d4921e534 Codeberg] || A 5×9 pixel font. || [[File:PoultreMono.png|none]]
|-
| [https://www.fsd.it/shop/fonts/pragmatapro/ PragmataPro] || (commercial) || A condensed font optimized for coding, mathematics and engineering.||
[[File:PragmataPro.png|none]]
[[File:PragmataPro.png|none]]
|-
|-
| [https://github.com/abrudz/SAX2/ SAX2] || [https://github.com/abrudz/SAX2/raw/master/SAX2.ttf GitHub]||Curly font with italic letters, based on Sharp APL for Unix.||
| [https://abrudz.github.io/SAX2/ SAX2] || [https://github.com/abrudz/SAX2/raw/master/SAX2.ttf GitHub]||Curly font with italic letters, based on Sharp APL for Unix.||
[[File:SAX2.png|none]]
[[File:SAX2.png|none]]
|-
|-
|[http://archive.vector.org.uk/art10002160 SImPL] ||[http://archive.vector.org.uk/resource/simpl02.zip Vector]||Courier-based, but thicker.||
|[http://archive.vector.org.uk/art10002160 SImPL] ||[http://archive.vector.org.uk/resource/simpl02.zip Vector]||Courier-based, but thicker.||
[[File:SImPL.png|none]]
[[File:SImPL.png|none]]
|-
|[https://unifoundry.com/unifont/index.html Unifont] || [https://unifoundry.com/pub/unifont/unifont-13.0.06/font-builds/unifont-13.0.06.ttf Unifoundry] || Low-resolution bitmap fall-back font || [[File:Unifont.png|none]]
|}
== Proportional ==
{|class=wikitable
!Name<br>(website) !! Source<br>(download) !! Description !! Sample
|-
|[http://apl385.com/fonts/index.htm APL333]|| [http://apl385.com/fonts/apl333.zip Adrian Smith] || Proportionally spaced version of APL385 Unicode||
[[File:APL333.png|none]]
|-
| [https://en.wikipedia.org/wiki/Code2000 Code2000] || [https://www.fontspace.com/code2000-font-f13284 FontSpace] || Wedge-serif pan-Unicode font. ||
[[File:Code2000.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka Aile] || [https://github.com/be5invis/Iosevka/releases/download/v5.0.4/ttf-iosevka-aile-5.0.4.zip GitHub]|| Proportionally spaced version of Iosevka. ||
[[File:Iosevka Aile.png|none]]
|-
| [https://typeof.net/Iosevka/ Iosevka Etoile] || [https://github.com/be5invis/Iosevka/releases/download/v5.0.4/ttf-iosevka-fixed-ss02-5.0.4.zip GitHub]|| Proportionally spaced slab-serif version of Iosevka. ||
[[File:Iosevka Etoile.png|none]]
|-
| [http://www.quivira-font.com/ Quivira] || [http://www.quivira-font.com/files/Quivira.otf Website] || Serif font supporting many symbols, similar to Garamond. ||
[[File:Quivira.png|none]]
|-
| [https://www.fonts.com/font/microsoft-corporation/segoe-ui-symbol Segoe UI Symbol] || (commercial) || Microsoft's humanist interface and corporate font. || [[File:Segoe UI Symbol.png|none]]
|-
|[https://www.stixfonts.org/ Stix Two Math]||[https://github.com/stipub/stixfonts/archive/v2.0.2.zip GitHub]|| Serif font, broadly compatible with Times New Roman.||
[[File:Stix Two Math.png|none]]
|-
|[https://dn-works.com/ufas/ Symbola] || [https://dn-works.com/wp-content/uploads/2020/UFAS-Fonts/Symbola.zip UFAS] (free for personal non-commercial use only) || Supporting many scripts and symbols, similar to Computer Modern. || [[File:Screenshot 2021-03-19 Screenshot.png|none]]
|}
|}
== External links ==
 
* Phil Chastney: [http://www.chastney.com/~philip/SImPL/APL_fonts_are_different.pdf APL fonts are different]
[[File:APLTypeBall.jpg|thumb|right|The APL typeball]]
{{APL development}}
 
== Historical anecdote ==
Using [[IBM]]'s [[APL\360]] required the use of the [[wikipedia:IBM_2741#APL\360|IBM 2741]] or [[wikipedia:IBM 1050|IBM 1050]] printing terminal with an APL [[wikipedia:type ball|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[[#loc|*]]
* Find the line that says <source lang=css inline>src: url('./fonts/Apl385.woff') format('woff'), url('./fonts/Apl385.ttf') format('truetype');</source>
* 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>
* Restart RIDE
 
<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):
:* 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 ==
<references/>
{{APL development}}[[Category:APL character set]][[Category:Lists]]

Navigation menu