APL Font: Difference between revisions

From NARS2000
Jump to navigationJump to search
m (added cross ref to keyboard wiki page)
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
==Default Font==
==Default Font==


The default APL font for NARS (its APL Interpreter session, function editing, screen display and printing purposes) and this wiki is '''SImPL medium'''(Unicode based), '''SImPL''', or '''APL385 Unicode'''.
The default APL font for NARS2000 (its APL Interpreter session, function editing, screen display and printing purposes) and this wiki is (in order of preference) [https://abrudz.github.io/APL386/APL386.ttf|'''APL386 Unicode'''], [https://apl385.com/fonts/apl385.zip|'''APL385 Unicode'''], '''SImPL medium'''(Unicode based), or '''SImPL'''.


If the APL characters in the articles don't display correctly, you may obtain a copy of the '''SImPL medium''' font by downloading the current [http://www.nars2000.org/download/Download.html NARS2000 binary], or the '''SImPL''' font from [http://archive.vector.org.uk/resource/simpl02.zip here], or the '''APL385 Unicode''' font from [http://archive.vector.org.uk/resource/apl385.ttf here].  Normally font and file '''SimPL-Medium.ttf''' may  be found in your downloaded NARS2000 program folder, e.g. '''C:\Program Files (x86)\NARS2000 (32-bit program)''' and or '''C:\Program Files\NARS2000 (64-bit version)'''.
If the APL characters in the articles don't display correctly, you may obtain a copy of the [https://abrudz.github.io/APL386/APL386.ttf|'''APL386 Unicode'''] and '''SImPL medium''' font by downloading the current [http://www.nars2000.org/download/Download.html NARS2000 binary], or the '''APL385 Unicode''' font from [http://archive.vector.org.uk/resource/apl385.ttf here], or the '''SImPL''' font from [http://archive.vector.org.uk/resource/simpl02.zip here].  Normally these fonts may  be found in your downloaded NARS2000 program folder, e.g. '''C:\Program Files (x86)\NARS2000''' (for the 32-bit program) or '''C:\Program Files\NARS2000''' (for the 64-bit version).
 
If they still don't display correctly, [http://www.getfirefox.com/ download] FireFox.


==Default Keyboard Layout==
==Default Keyboard Layout==


NARS default APL keyboard layout, based on the SImPL medium font, is found here '''[http://www.sudleyplace.com/APL/Keyboard.ahtml here]''', on SudleyPlace.com.  Printing the keyboard layout and keeping it in front of you while using NARS - provides a handy reference. Just as typists eventually memorize the QWERTY keyboard layout, most APL'ers quickly memorize APL keyboard layouts.  A <u>printed keyboard reference</u> is good to <u>keep</u> however, if only for some of the lesser used APL symbols.  Several frequently used APL symbols are <u>very easily keyboard-memorized</u>: '''∊ (epsilon = Alt-e), ⍴ (rho = Alt-r) and ⍳ (iota = Alt-i)''' since the beginning letter of the symbol is same-placed as its qwerty letter equivalent in the alphabet.  Cross ref. wiki page [[Keyboard|keyboard]].
NARS2000 default APL keyboard layout, based on the SImPL medium font, is found '''[http://www.sudleyplace.com/APL/Keyboard.ahtml here]''', on SudleyPlace.com.  Printing the keyboard layout and keeping it in front of you while using NARS2000 - provides a handy reference. Just as typists eventually memorize the QWERTY (oe AZERTY, etc.) keyboard layout, most APL'ers quickly memorize APL keyboard layouts.  A <u>printed keyboard reference</u> is good to <u>keep</u> however, if only for some of the lesser used APL symbols.  Several frequently used APL symbols are <u>very easily keyboard-memorized</u>: '''∊ (epsilon = Alt-e), ⍴ (rho = Alt-r), ∼ (tilde = Alt-t) and ⍳ (iota = Alt-i)''' since the beginning letter of the symbol is same-placed as its qwerty letter equivalent in the alphabet.  Also, all of the APL symbols may be found (and copied to the current session or function being edited) from the Language Bar at the top of the APL session window.  Cross ref. wiki page [[Keyboard|Keyboard and Language bar]].


==Font Issues==
==Font Issues==
Line 32: Line 30:
| align="center" |<apll>§</apll>
| align="center" |<apll>§</apll>
| align="center" |&ensp;167 or U+00A7  
| align="center" |&ensp;167 or U+00A7  
| align="center" |'''Alt-S'''
| align="center" |'''Alt-t'''
| [[Multisets#Missing_Function|Multiset Symmetric Difference]]
| [[Multisets#Missing_Function|Multiset Symmetric Difference]]
|-
||Plus-or-Minus
| align="center" |<apll>±</apll>
| align="center" |&ensp;177 or U+00B1
| align="center" |'''Alt-q'''
|| [[Ball Arithmetic]]
|-
|-
||Pi
||Pi
Line 40: Line 44:
| align="center"|'''Alt-p'''
| align="center"|'''Alt-p'''
|| [[Primes|Prime Decomposition and Number-theoretic]]
|| [[Primes|Prime Decomposition and Number-theoretic]]
|-
||Chi
| align="center"|<apll>χ</apll>
| align="center"|&ensp;967 or U+03C7
| align="center"|'''Alt-C'''
|| [[Anonymous Functions/Operators/Hyperators#Axis_Operator|Anonymous Functions/Operators/Hyperators]]
|-
||Double-Shriek
| align="center"|<apll>‼</apll>
| align="center"|8252 or U+203C
| align="center"|'''Alt-k'''
|| [[Combinatorial|Combinatorial Operator]]
|-
||Derivative
| align="center"|<apll>∂</apll>
| align="center"|8706 or U+2202
| align="center"|'''Alt-D'''
| [[Derivative]]
|-
||NaN
| align="center"|<apll>{nan}</apll>
| align="center"|8709 or U+2205
| align="center"|'''Alt-5'''
||[[NaN|NaN]]
|-
|-
||Root
||Root
Line 52: Line 80:
| align="center"|'''Alt-f'''
| align="center"|'''Alt-f'''
|| [[Infinity]]
|| [[Infinity]]
|-
||Integral
| align="center"|<apll><_sg/></apll>
| align="center"|8747 or U+222B
| align="center"|'''Alt-S'''
|| [[Integral]]
|-
||Double-Tilde
| align="center"|<apll>≈</apll>
| align="center"|8776 or U+2248
| align="center"|'''Alt-Q'''
|| [[Ball Arithmetic]]
|-
|-
|| Mismatch
|| Mismatch
Line 76: Line 116:
| align="center"|'''Alt-?'''
| align="center"|'''Alt-?'''
|| [[Null|Null operator]]
|| [[Null|Null operator]]
|-
||Quad-jot
| align="center"|<apll>⌻</apll>
| align="center"|9019 or U+233B
| align="center"|'''Alt-F'''
|| [[Matrix|Matrix Operator]]
|-
||Downtack-overbar
| align="center"|<apll>⍑</apll>
| align="center"|9041 or U+2351
| align="center"|'''Alt-B'''
|| [https://www.sudleyplace.com/APL/A%20Transform%20Hyperator%20in%20APL.pdf Transform Operator]
|-
|-
||Quad-colon
||Quad-colon
Line 99: Line 151:
| align="center"|9059 or U+2363  
| align="center"|9059 or U+2363  
| align="center"|'''Alt-P'''
| align="center"|'''Alt-P'''
|| [[Power|Power operator]]<b>&dagger;</b>
|| [[Power|Power operator]]
|-
|-
||Dieresis-jot
||Dieresis-jot
Line 105: Line 157:
| align="center"|9060 or U+2364  
| align="center"|9060 or U+2364  
| align="center"|'''Alt-J'''
| align="center"|'''Alt-J'''
|| [[Rank|Rank operator]]
|| [[Rank|Rank/Atop operator]]
|-
|-
||Dieresis-circle
||Dieresis-circle
Line 123: Line 175:
| align="center"|9064 or U+2368  
| align="center"|9064 or U+2368  
| align="center"|'''Alt-T'''
| align="center"|'''Alt-T'''
|| [[Commute|Commute operator]]
|| [[Commute-Duplicate|Commute/Duplicate operator]]
|-
|-
|| Del-tilde
|| Del-tilde
| align="center"|<apll>⍫</apll>
| align="center"|<apll>⍫</apll>
| align="center"|9067 or U+236B
| align="center"|9067 or U+236B
| align="center"|'''Alt-k'''
| align="center"|'''Alt-K'''
|| [[Commutator|Commutator operator]]<b>&dagger;</b>
|| [[Commutator|Commutator operator]]<b>&dagger;</b>
|-
|-
Line 142: Line 194:
| align="center"|'''Alt-M'''
| align="center"|'''Alt-M'''
|| [[Partition|Partition operator]]<b>&dagger;</b>
|| [[Partition|Partition operator]]<b>&dagger;</b>
|-
|| Line Continuation
| align="center"|<apll>➥</apll>
| align="center"|10149 or U+27A5
| align="center"|&nbsp;&nbsp;&nbsp;'''Shift-Enter'''&nbsp;&nbsp;&nbsp;
|| [[Session_Manager_Editing|Line Continuation Marker]]
|}
|}


<b>&dagger;</b> = Not currently implemented.
<b>&dagger;</b> = Not currently implemented.


All of the above glyphs may be found in '''SImPL medium''', all but the Infinity symbol in '''SImPL''', and all but the Null operator in '''APL385 Unicode'''.
<p>All but the Integral and Line Continuation symbols may be found in '''SImPL medium''' and all but the NaN, Derivative, Null, and Line Continuation symbols in '''APL385 Unicode'''.</p>
<p>All of the above symbols may be found in '''APL386 Unicode'''.</p>

Latest revision as of 16:11, 8 January 2024

Default Font

The default APL font for NARS2000 (its APL Interpreter session, function editing, screen display and printing purposes) and this wiki is (in order of preference) APL386 Unicode, APL385 Unicode, SImPL medium(Unicode based), or SImPL.

If the APL characters in the articles don't display correctly, you may obtain a copy of the APL386 Unicode and SImPL medium font by downloading the current NARS2000 binary, or the APL385 Unicode font from here, or the SImPL font from here. Normally these fonts may be found in your downloaded NARS2000 program folder, e.g. C:\Program Files (x86)\NARS2000 (for the 32-bit program) or C:\Program Files\NARS2000 (for the 64-bit version).

Default Keyboard Layout

NARS2000 default APL keyboard layout, based on the SImPL medium font, is found here, on SudleyPlace.com. Printing the keyboard layout and keeping it in front of you while using NARS2000 - provides a handy reference. Just as typists eventually memorize the QWERTY (oe AZERTY, etc.) keyboard layout, most APL'ers quickly memorize APL keyboard layouts. A printed keyboard reference is good to keep however, if only for some of the lesser used APL symbols. Several frequently used APL symbols are very easily keyboard-memorized: ∊ (epsilon = Alt-e), ⍴ (rho = Alt-r), ∼ (tilde = Alt-t) and ⍳ (iota = Alt-i) since the beginning letter of the symbol is same-placed as its qwerty letter equivalent in the alphabet. Also, all of the APL symbols may be found (and copied to the current session or function being edited) from the Language Bar at the top of the APL session window. Cross ref. wiki page Keyboard and Language bar.

Font Issues

Even if you have an APL font installed, that may not be the end of the story. Each font designer decides what glyphs to display and for which characters. Also, some implementations of supposedly Unicode fonts don't always display the same glyphs in the same places or in the same way. The SimPL Medium font, which comes with NARS2000, will display some characters with different glyphs than are displayed by the font APL385 Unicode. For example, these are the underlined letters A to Z, which are valid identifiers in APL: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z. Now, to display these characters in APL385 Unicode, the characters use code positions 9398 through 9423, or 0x24B6 through 0x24CF, which show up as Ⓐ Ⓑ Ⓒ Ⓓ Ⓔ Ⓕ Ⓖ Ⓗ Ⓘ Ⓙ Ⓚ Ⓛ Ⓜ Ⓝ Ⓞ Ⓟ Ⓠ Ⓡ Ⓢ Ⓣ Ⓤ Ⓥ Ⓦ Ⓧ Ⓨ Ⓩ, which, while not the same, is very close. When copying underlined APL characters to the clipboard, you may convert them to lowercase by first setting the user preference "Underbar alphabet converted to lowercase".

The standard Arial font doesn't even have a built-in set of underlined characters, nor does SimPL. (Yet note some glyphs, as shown below, that are used by NARS2000, are not present in APL385.)

Also, the settings for Unicode for APL symbols, which are listed as being 0x2300 - 0x23F3, do not necessarily appear - or appear the same - in all APL fonts.

Extra APL Glyphs

While any Unicode APL font will display all of the standard APL glyphs, NARS2000 uses (or has plans to use) some extra glyphs not found in all Unicode APL fonts such as

Name Symbol Unicode
Code Point
Keystroke Description
Section §  167 or U+00A7 Alt-t Multiset Symmetric Difference
Plus-or-Minus ±  177 or U+00B1 Alt-q Ball Arithmetic
Pi π  960 or U+03C0 Alt-p Prime Decomposition and Number-theoretic
Chi χ  967 or U+03C7 Alt-C Anonymous Functions/Operators/Hyperators
Double-Shriek 8252 or U+203C Alt-k Combinatorial Operator
Derivative 8706 or U+2202 Alt-D Derivative
NaN 8709 or U+2205 Alt-5 NaN
Root 8730 or U+221A Alt-R Square Root and Nth Root
Infinity 8734 or U+221E Alt-f Infinity
Integral 8747 or U+222B Alt-S Integral
Double-Tilde 8776 or U+2248 Alt-Q Ball Arithmetic
Mismatch 8802 or U+2262 Alt-@ Mismatch
Left-shoe-underbar 8838 or U+2286 Alt-Z Subset of
Right-shoe-underbar 8839 or U+2287 Alt-X Superset of
Circle-middle-dot 8857 or U+2299 Alt-? Null operator
Quad-jot 9019 or U+233B Alt-F Matrix Operator
Downtack-overbar 9041 or U+2351 Alt-B Transform Operator
Quad-colon 9056 or U+2360 Alt-_ Variant operator
Dieresis-downtack 9057 or U+2361 Alt-N Convolution operator
Dieresis-del 9058 or U+2362 Alt-G Dual operator
Dieresis-star 9059 or U+2363 Alt-P Power operator
Dieresis-jot 9060 or U+2364 Alt-J Rank/Atop operator
Dieresis-circle 9061 or U+2365 Alt-O Composition operator
Down-shoe-stile 9062 or U+2366 Alt-m Multiset operator
Dieresis-tilde 9064 or U+2368 Alt-T Commute/Duplicate operator
Del-tilde 9067 or U+236B Alt-K Commutator operator
Zilde 9068 or U+236C Alt-} Empty simple numeric vector
Stile-tilde 9069 or U+236D Alt-M Partition operator
Line Continuation 10149 or U+27A5    Shift-Enter    Line Continuation Marker

= Not currently implemented.

All but the Integral and Line Continuation symbols may be found in SImPL medium and all but the NaN, Derivative, Null, and Line Continuation symbols in APL385 Unicode.

All of the above symbols may be found in APL386 Unicode.