Text editors: Difference between revisions

Jump to navigation Jump to search
1,268 bytes added ,  16:42, 16 June 2021
no edit summary
m (APL environment category)
No edit summary
(10 intermediate revisions by 3 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.
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>


{|class="wikitable sortable"
{|class="wikitable sortable"
!Name !! Platform !! Features
!Name !! Platform !! Features
|-
|[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.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. [https://github.com/abochannek/Dyalog/tree/master/dyalog-apl-input Dyalog APL Input] provides backtick keyboard support.
|[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.
|-
|-
|[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://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://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.
Line 14: Line 22:
|[https://typora.io/ Typora]||Windows, Linux, macOS||Syntax highlighting for code blocks.
|[https://typora.io/ Typora]||Windows, Linux, macOS||Syntax highlighting for code blocks.
|-
|-
|[https://www.vim.org/ Vim]||cross-platform||[https://gitlab.com/n9n/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. [https://github.com/baruchel/vim-notebook#configuring-gnu-apl Vim Notebook] runs an interpreter in the background to evaluating code cells.
|[https://www.vim.org/ Vim]||cross-platform||[https://codeberg.org/ngn/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://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, prefix (e.g. backtick) completion.
|[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.
|}
|}
{{APL development}}[[Category:APL environment]]
== References ==
<references/>
{{APL development}}[[Category:APL environment]][[Category:Lists]]

Navigation menu