- Purchasing and Activating Simply Fortran
- Using Simply Fortran
- The Simply Fortran Interface
- Editing in Simply Fortran
- Projects in Simply Fortran
- Building Projects
- Launching Projects
- Debugging Programs
- External Tools
- Version Control
- Options and Configuration
- Licensing
Language Servers
Simply Fortran can employ language servers as an alternative to its internal language parsing capabilities to provide syntax-specific features. Language servers are normally external executables or scripts that will process a file or directory containing language files to enable features like autocomplete, definition lookups, and structural outlines.
Simply Fortran will communicate with langauge servers via standard input and output only. A network connection cannot be specified.
While using a Fortran language server is supported, it is generally not advisable. Some features of Simply Fortran may work worse due to the limitations of the language server protocol. Specifically, the language server protocol does not differentiate between functions and subroutines like Simply Fortran’s internal parser does, which will introduce misleading elements in the structural outlines.
The language of interest can be selected from the drop-down in this screen, and the options for that specific language will be available. Changes will not be saved until the Ok button is pressed.
Use an External Language Server
Checking this box enables the language server functionality for the selected language, activating the other settings. When a language server is specified for any particular language, Simply Fortran will start a new language server for each project if and only if that project contains project files in that language.
Command
The path to the external language server should be entered in this box. This should be an executable path only.
Arguments
Any arguments to be passed to an external language server can be entered in this box. Arguments may be used to enable logging, provide additional paths to scan, etc.
Require Files to Be Announced
Some language servers may require Simply Fortran to explicitly pass the names of files to be included for analysis by the server. For example, the clangd server will only analyze files that Simply Fortran specifically requests, while the python-lsp-server will analyze directory contents regardless. Checking this box will cause Simply Fortran to send a textDocument/didOpen command to the server for all known project files.
