Text editors: Difference between revisions

Jump to navigation Jump to search
3,170 bytes added ,  10:57, 11 September 2022
m
Text replacement - "<source" to "<syntaxhighlight"
(Created page with "With APL code in text files (rather that the traditional workspaces) many source code tools, including editors, can easily be used with APL. This article lists some text e...")
 
m (Text replacement - "<source" to "<syntaxhighlight")
(30 intermediate revisions by 5 users not shown)
Line 1: Line 1:
With APL code in text files (rather that the traditional [[workspace]]s) many source code tools, including editors, can easily be used with APL. This article lists some text editors that are especially well-equipped to deal with APL.
With APL code in text files (rather that the traditional [[workspace]]s) many source code tools, including editors, can easily be used with APL. This article lists some text editors that are especially well-equipped to deal with APL.


{|class=wikitable
Besides for the listed editors, there is a Language Server available for all editors that use Microsoft's Language Server Protocol (LSP).<ref>Optima Systems. [https://github.com/OptimaSystems/apl-language-server APL Language Server]. GitHub.</ref>
!Name !! Platform !! Notes
 
In addition, [[Dyalog]]'s RIDE interface allows using most any external editor instead of its internal editor by setting the <syntaxhighlight lang=shell inline>RIDE_EDITOR</syntaxhighlight> configuration parameter.<ref>[[Dyalog Ltd.]] RIDE User Guide: [https://docs.dyalog.com/latest/RIDE%20User%20Guide.pdf#page=58 Configuration Parameters]. Retrieved 2022-01-11.</ref>
 
{|class="wikitable sortable"
!Name !! Platform !! Features
|-
|-
|[https://www.dyalog.com/download-zone.htm Dyalog Editor]||Windows||Basically same editor as the only built into the IDE, providing syntax colouring, auto-formatting, language help, comment handling, and tree-view.
|[https://atom.io Atom]||Windows, Linux, MacOS||[https://atom.io/packages/language-apl language-apl] Provides syntax highlighting, indentation support.
|-
|[https://play.google.com/store/apps/details?id=com.athoraya.aplkeys APL Keys]||Android||A simple notepad that supports APL characters.
|-
|[https://www.dyalog.com/download-zone.htm Dyalog Editor]||Windows||Basically same editor as the one built into the IDE, providing syntax colouring, auto-formatting, language help, comment handling, and tree-view.
|-
|[https://www.gnu.org/software/emacs/ Emacs]||cross-platform||[https://github.com/lokedhs/gnu-apl-mode GNU APL mode] provides shifting and prefix key input. Integrates with GNU APL to perform completion, function editing, etc.<br>[https://github.com/harsman/dyalog-mode Dyalog APL mode] integrates with the Dyalog IDE so you can use Emacs instead of the built in editor, supports syntax highlighting (including correct highlighting of localized variables), indentation and convenience functions like toggling localization of variables.<br>[https://github.com/abochannek/Dyalog/tree/master/dyalog-apl-input Dyalog APL Input] provides backtick keyboard support.<br>The [https://j-minster.github.io/emacs_APL_tutorial.html emacs APL tutorial] provides easy-to-follow instructions on how to get set up using GNU APL or Dyalog APL.
|-
|[https://marktext.app/ Mark Text]||Windows, Linux, macOS||Syntax highlighting for code blocks.
|-
|-
|[https://jupyter.org/ Jupyter Notebook]||Windows, Linux, macOS, AIX||[https://github.com/Dyalog/dyalog-jupyter-kernel Dyalog Jupyter Kernel] provides syntax colouring and  HTML/SVG rendering.
|[https://jupyter.org/ Jupyter Notebook]||Windows, Linux, macOS, AIX||[https://github.com/Dyalog/dyalog-jupyter-kernel Dyalog Jupyter Kernel] provides syntax colouring and  HTML/SVG rendering.
|-
|-
|[https://code.visualstudio.com/ Visual Studio Code]||Windows, Linux, macOS||[https://marketplace.visualstudio.com/items?itemName=OptimaSystems.vscode-apl-language APL Language] extension provides syntax highlighting and snippets. [https://marketplace.visualstudio.com/items?itemName=OptimaSystems.vscode-apl-language-client APL Language Server Client] provides tool tips on primitives and prefix completion.
|[https://scintilla.org/ Scintilla]|||Windows, Linux, macOS||[https://orbitalquark.github.io/scintillua/ Scintillua] provides syntax colouring
|-
|[https://www.sublimetext.com/ Sublime Text]||Windows, Linux, macOS||[https://packagecontrol.io/packages/APL%20Highlighting APL Highlighting] package enables syntax highlighting for APL, including Dyalog and APL2 dialects.
|-
|[https://typora.io/ Typora]||Windows, Linux, macOS||Syntax highlighting for code blocks.
|-
|[https://www.vim.org/ Vim]||cross-platform||[https://github.com/PyGamer0/vim-apl vim-apl] provides rainbow curly braces with a matching colour for <code lang=apl inline>⍺</code>, <code lang=apl inline>⍵</code>, <code lang=apl inline>∇</code>, and <code lang=apl inline>:</code> in dfns, prefix key input, and completion for [[quad name]]s, [[keyword]]s, and [[system command]]s.<br>[https://github.com/baruchel/vim-notebook#configuring-gnu-apl Vim Notebook] runs an interpreter in the background to evaluating code cells.
|-
|[https://github.com/martanne/vis Vis]|||Linux, macOS||[https://orbitalquark.github.io/scintillua/ Scintillua] provides syntax colouring
|-
|-
|[https://typora.io/ Typora]||Windows, Linux, macOS||Syntax highlighting for `apl` code blocks
|[https://code.visualstudio.com/ Visual Studio Code]||Windows, Linux, macOS||[https://marketplace.visualstudio.com/items?itemName=OptimaSystems.vscode-apl-language APL Language] extension provides syntax highlighting and snippets.<br>[https://marketplace.visualstudio.com/items?itemName=OptimaSystems.vscode-apl-language-client APL Language Server Client] provides tool tips on primitives, prefix (e.g. backtick) completion.<br>[https://github.com/tiamatica/vscode-apl-debug APL Debug] is a debug adapter
|}
|}
{{APL development}}
== See also ==
* [[Fonts]] — you might need to select an appropriate font before using a new editor
== References ==
<references/>
{{APL development}}[[Category:APL environment]][[Category:Lists]]

Navigation menu