Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Koneki/LDT/User Area/New and Noteworthy/New and Noteworthy 1.0"

(New & Noteworthy 1.0)
(Enhanced support of non-standard interpreters)
Line 27: Line 27:
 
Now it is possible to bootstrap a debug session without it, it makes ''Koneki LDT'' compatible with more kinds of interpreters, but be aware that in this case the user is responsible for launching the debugger by adding the following code as first statement of its application:
 
Now it is possible to bootstrap a debug session without it, it makes ''Koneki LDT'' compatible with more kinds of interpreters, but be aware that in this case the user is responsible for launching the debugger by adding the following code as first statement of its application:
  
<code><pre>if os.getenv('DEBUG_MODE') then require "debugger"() end</pre></code>
+
<source lang="lua">if os.getenv('DEBUG_MODE') then require "debugger"() end</source>
  
 
'''Note:''' The ''<code>DEBUG_MODE</code>'' environment variable is set only for ''debug'', to avoid to start the debugger for a regular ''run''.
 
'''Note:''' The ''<code>DEBUG_MODE</code>'' environment variable is set only for ''debug'', to avoid to start the debugger for a regular ''run''.

Revision as of 10:59, 20 September 2013

New & Noteworthy 1.0

Here are the new features available in Lua Development Tools 1.0, released on June 11th, 2013.

Support of Lua 5.2

LDT now provides a Lua 5.2 user experience directly shipped with the product. Which means LDT provide out of the box:

  • Embedded Lua 5.2 Execution Environment which provide great user-assistance (content-assist, documentation,...)
  • Lua 5.2 Debugger
  • Built-in Lua 5.2 interpreter based on JNLua which enable running and debugging applications out of the box.

Note: The debugger need LuaSocket version 2.1.x to work on top of Lua 5.2, see the vm compatibility page.

Support of LuaJIT debug

LDT debugger is now compatible LuaJIT 2.0.x interpreter. LuaJIT is a Just-In-Time Compiler(JIT) for the Lua programming language.

Note: The debugger need LuaSocket version 2.1.x to work on top of LuaJIT, see the vm compatibility page.

Enhanced support of non-standard interpreters

It's now possible to define an interpreter which doesn't handle the -e option, right from interpreter preferences page.

AddInterpreter 1.0.png

This option enables to execute a piece Lua before runtime. It was used by Koneki LDT to start all debugging sessions. Now it is possible to bootstrap a debug session without it, it makes Koneki LDT compatible with more kinds of interpreters, but be aware that in this case the user is responsible for launching the debugger by adding the following code as first statement of its application:

if os.getenv('DEBUG_MODE') then require "debugger"() end

Note: The DEBUG_MODE environment variable is set only for debug, to avoid to start the debugger for a regular run.

DebugWithoutParameters.png

Better user-assistance

Globals detection

Koneki LDT is now able to provide you support for globals. First of all, what is a global: when the first occurrence of an identifier in a file is an assignment LDT considers it as a global variable declaration. So globals are now available for completion, parameters are even available for functions.

HandlingGlobals.png

Function detection

Koneki LDT was already detecting local variables, but there were no distinction between functions and other types, which was inconvenient for function parameters. They were not guessed from the code. It is over. Now local functions are handled in current file properly. They are shown in user assistance, with their parameters.

LocalFunctionHandling.png

Explicit Variable Description & Typing

It's now possible to type and set a description for a variable by adding a comment before or after its declaration. Typing a variable allow to have auto-completion on it and explicit your code.

QuickTyping.png

Function Parameters Typing

When function parameters are documented with a type using the Lua Documentation Language, they will be available for auto-completion in the function body.

InnerFunctionParameters.png

Fluent Variable Type Association

Once a Lua Documentation Language tag such as @type or @module is immediately followed by a variable declaration, the declared type or module type is associated to the variable.

TypedVariable.png
ModuleVariableDeclaration.png

Enhanced outline

The outline now contains new items such as global variables and functions. Also the type of outline elements is displayed if any.

OutlineElements.png

Integration of lastest Metalua version

Metalua is the key component that analyze the Lua code. Koneki LDT now uses the last version of Metalua which the enhance syntax error handling and fix some bugs.

Back to the top