Skip to content
acken edited this page Feb 6, 2012 · 22 revisions

Getting support for programming languages is done through creating language plugins. To be able to having language plugins written in it's native language the plugin interface goes through standard output. In this way any executable or script can act as a language plugin. Language plugins lives in the Languages folder in OpenIDE's root. Each plugin has a single executable file in that folder and all other needed files are placed in a folder in the Languages folder with the same name as the plugin.

Plugin interface

Each language plugin needs to support a specified protocol. When the plugin is called with a specific set of parameters it needs to reply with the expected format. The required parameters are:

get-command-definitions
Every command supported by a language should be given a definition. In this way it will be listed under supported commands by oi and the run window will list the command with completion help.

PARAMETER:
	get-command-definitions

RESPONSE FORMAT:
	// Wrapping the command name with [] means the command is optional
	// All line breaks in this sample can be replaced with space
	// This is the definition response for the following new commands:
	// new file FILE_NAME
	// new directory DIR_NAME

	new|"Template command for new file"
		file|"Creates a new file"
			FILE_NAME|"The path/name of the file you want to create" end
		end
		directory|"Creates a new directory"
			DIR_NAME|"Long description where every line
						will be trimmed and new line is replaced by space" end
		end
	end

crawl-file-types

Clone this wiki locally