Compare commits

...

865 Commits
0.28 ... 0.381

Author SHA1 Message Date
Paul Kulchenko
f28d4da053 Fixed having duplicate tabs after SaveAs with existing file name. 2013-09-08 14:38:59 -07:00
Paul Kulchenko
858742bf05 Fixed showing redirected 'print' messages after debugging is terminated. 2013-09-06 21:29:33 -07:00
Paul Kulchenko
d559afd9e2 Updated CFBundleIdentifier in plist files to allow references from OSX programs. 2013-09-06 15:07:43 -07:00
Paul Kulchenko
9acec71c7a Added package GetEditorNotebook method (ref #166). 2013-09-06 15:01:34 -07:00
Paul Kulchenko
8568f61ba4 Added 'molokai' color scheme (ref #200). 2013-09-05 22:23:28 -07:00
Paul Kulchenko
6714f29302 Updated un/comment to toggle selection as a group rather than line by line. 2013-09-04 19:09:28 -07:00
Paul Kulchenko
f0b7cff06a Added file activation for abbreviated file names in error messages. 2013-09-04 15:26:54 -07:00
Paul Kulchenko
25589fc45a Reorganized path separator handling to minimize use of global variables. 2013-09-04 12:00:57 -07:00
Paul Kulchenko
6a7c8e78c0 Added abbreviation of project directories to keep unique parts visible. 2013-09-03 22:35:33 -07:00
Paul Kulchenko
443f936ac6 Added debugger.redirect configuration option. 2013-09-02 21:07:48 -07:00
Paul Kulchenko
12525ad189 Added editor.saveallonrun configuration option. 2013-09-02 10:43:03 -07:00
Paul Kulchenko
69fae9a36c Fixed using default interpreter when no interpreter is selected. 2013-09-02 10:32:47 -07:00
Paul Kulchenko
725a38b182 Improved IDE activation during debugging on Windows (closes #199); thanks to jpoag. 2013-09-01 22:28:04 -07:00
Paul Kulchenko
13c4ca1a2f Fixed stepping through blocks with undefined variables when 'strict' is in effect (upgraded Mobdebug to 0.5401). 2013-09-01 21:17:47 -07:00
Paul Kulchenko
3e68447415 Updated CHANGELOG with recent changes. 2013-08-29 19:19:42 -07:00
Paul Kulchenko
0419e6812b Added package GetOutput method (ref #166). 2013-08-27 14:15:36 -07:00
Paul Kulchenko
cd1b9d7cd2 Added package onAppLoad/onAppClose events (ref #166). 2013-08-27 14:14:36 -07:00
Paul Kulchenko
d63dda5e6a Cleaned up code. 2013-08-27 14:12:29 -07:00
Paul Kulchenko
32f4b8694b Updated NewFile to accept a file name. 2013-08-27 11:19:50 -07:00
Paul Kulchenko
2dbb6644cb Fixed loading of files with incorrect UTF-8 encoding and control characters (fixes #198). 2013-08-27 10:11:32 -07:00
Paul Kulchenko
649e3c620a Added package onIdleOnce event (ref #166). 2013-08-26 20:22:16 -07:00
Paul Kulchenko
0e7bb32024 Fixed package sample to take into account new documents. 2013-08-25 19:19:30 -07:00
Paul Kulchenko
96f0f876bf Renamed package onEditorPostSave event to onEditorSave for consistency (ref #166). 2013-08-24 17:02:06 -07:00
Paul Kulchenko
58a494931c Added manifest to the Windows executable and re-signed. 2013-08-23 16:04:08 -07:00
Paul Kulchenko
f04160fad1 Updated 'get hostname' logic to avoid using non-resolvable names (mostly on OSX). 2013-08-22 20:38:02 -07:00
Paul Kulchenko
671c62871a Added Notepad++ color scheme (thanks to Florian/SiENcE; closes #193). 2013-08-21 08:54:03 -07:00
Paul Kulchenko
6a6e7ec770 Fixed crash on OSX after opening 'application' in 'Open File' dialog. 2013-08-20 14:55:09 -07:00
Paul Kulchenko
eff4eb8b05 Disabled markup styling for specs without comment styles. 2013-08-20 12:09:02 -07:00
Paul Kulchenko
2781c0ea00 Removed comment from default spec as it forces undesired markup styling. 2013-08-20 12:08:27 -07:00
Paul Kulchenko
fa507450e4 Added clearing document styles after saving file with a different extension. 2013-08-20 12:04:11 -07:00
Paul Kulchenko
a4f069afc0 Fixed windows resource file to properly reference the manifest. 2013-08-17 22:24:50 -07:00
Paul Kulchenko
f3b84edc24 Fixed missing default api for files with unknown extensions. 2013-08-16 21:59:17 -07:00
Paul Kulchenko
ba1c1a678e Added workaround to avoid crash on OSX after Close All Pages (closes #190).
The issue is with wxwidgets (filed as ticket 15417); the only workaround I
have been able to find is to disable this functionality on OSX (as there
are other alternatives to closing tabs in groups). The issue only happens
when the last tab is closed from the drop down menu linked to editor tabs.
2013-08-15 15:54:43 -07:00
Paul Kulchenko
267deea3df Merge branch 'master' of git://git.code.sf.net/p/estrelaeditor/code into estrela-new 2013-08-15 15:36:18 -07:00
Paul Kulchenko
1089f2619e Added return type for string.* functions to assist in auto-complete (ref #189). 2013-08-14 12:43:55 -07:00
Paul Kulchenko
e8c5e7fd78 Added handling of string literals in type assignments (closes #189). 2013-08-14 12:37:49 -07:00
Christoph Kubisch
ff6deedf79 OpenGL 4.4 and ARB extensions added as well as NV_gpu_shader5 functions 2013-08-14 14:19:50 +02:00
Paul Kulchenko
52c7150e51 Switched to using POSIX compatible regexp with '()' used for captures. 2013-08-13 14:50:21 -07:00
Paul Kulchenko
24555a3b3d Fix spurious replacement after 'search, clear selection, replace' actions. 2013-08-13 14:47:01 -07:00
Paul Kulchenko
cc432b65b0 Added support for captures in regexp replacement (\1-\9). 2013-08-13 14:39:06 -07:00
Paul Kulchenko
8d1cca26a3 Fixed using auto-complete with multiple selections (fixes #188). 2013-08-11 15:04:42 -07:00
Paul Kulchenko
c077c94371 Fixed looping in auto-complete with array references (ref #143). 2013-08-11 15:00:32 -07:00
Paul Kulchenko
1ba300213d Added ability to cancel FindInFiles search by closing search dialog (ref #162). 2013-08-10 21:38:50 -07:00
Paul Kulchenko
3fbf0ef81b Added activating Output window before showing search results (ref #162). 2013-08-10 21:38:11 -07:00
Paul Kulchenko
aced5d1bc3 Changed un/comment to act from the beginning of the line for multi-line selection.
Fixed handling of EOL markers (un/commenting doesn't modify them anymore).
Added processing of rectangular selections.
2013-08-09 14:52:25 -07:00
Paul Kulchenko
bf072c1685 Added support for packages from different platforms to co-exist (ref #166). 2013-08-07 23:23:14 -07:00
Paul Kulchenko
4215054b87 Improved logic to jump to file/line indicated in error messages. 2013-08-06 09:20:15 -07:00
Paul Kulchenko
cd85d6f2e8 Added ability to save complex data in package settings (ref #166). 2013-08-05 19:12:05 -07:00
Paul Kulchenko
6fc448b87c Fixed incorrect change for line count calculation for dynamic words.
Fixed commit d6cda0d677.
2013-08-04 22:20:59 -07:00
Paul Kulchenko
d6cda0d677 Optimized line count calculation for dynamic words when text is deleted. 2013-08-04 22:12:13 -07:00
Paul Kulchenko
5355234b85 Fixed showing auto-complete after comma. 2013-08-04 21:37:26 -07:00
Paul Kulchenko
700dfe1765 Optimized dynamic word processing for large files. 2013-08-04 20:29:41 -07:00
Paul Kulchenko
1c068c221f Merge branch 'master' of git://git.code.sf.net/p/estrelaeditor/code into estrela-changes 2013-08-04 17:51:53 -07:00
Paul Kulchenko
5679d90bcd Added support for multiple inheritance in auto-complete (ref #101). 2013-08-03 15:38:24 -07:00
Paul Kulchenko
9b5f6fa67f Added ability to add/remove API descriptions from plugins (ref #166). 2013-08-02 11:05:00 -07:00
Christoph Kubisch
a8060b63cd updated glewgl api for OpenGL4.4 and removed non-core duplicate functions/enums 2013-08-02 10:23:52 +02:00
Paul Kulchenko
7324afb8e3 Reorganized API processing to allow loading API description from a plugin. 2013-08-01 11:03:23 -07:00
Paul Kulchenko
e209f3f440 Added package GetSettings/SetSettings methods (ref #166). 2013-07-28 22:24:44 -07:00
Paul Kulchenko
08ef16a42d Added methods to save/restore package settings (ref #166). 2013-07-27 22:23:41 -07:00
Paul Kulchenko
4fafcff592 Fixed 'cannot get official hostname' message on low privilege accounts (fixes #183). 2013-07-26 08:15:53 -07:00
Paul Kulchenko
6e0e3d07e3 Updated Estrela reference in README. 2013-07-25 14:49:03 -07:00
Paul Kulchenko
fb9c0ba0a6 Disabled showing tooltip when auto-complete suggestions are shown. 2013-07-25 14:48:27 -07:00
Paul Kulchenko
1b4f707232 Updated build script on Windows to enable debugging (ref #164). 2013-07-24 09:50:49 -07:00
Paul Kulchenko
1749c54f71 Updated build script with a (temporary) fix for wxlua issue (mingw32). 2013-07-24 09:48:51 -07:00
Paul Kulchenko
e4201b745c Fixed displaying variable instances when code has invalid blocks (fixes #182). 2013-07-23 14:50:29 -07:00
Paul Kulchenko
9c810b3520 Fixed tooltip to ignore string parameters (ref #101). 2013-07-23 10:07:29 -07:00
Paul Kulchenko
93d3b69335 Removed auto-complete suggestion when it is already typed (ref #101). 2013-07-22 18:45:44 -07:00
Paul Kulchenko
35617caa0e Updated tooltip to use the same type inference as auto-complete (ref #101). 2013-07-22 18:21:52 -07:00
Paul Kulchenko
e07ed0a817 Fixed tooltip display between empty brackets (ref #101). 2013-07-22 17:49:39 -07:00
Paul Kulchenko
aeb35ebf6f Added ability to add/remove specs from plugins (ref #166). 2013-07-22 16:11:18 -07:00
Paul Kulchenko
c84bd3222b Enabled support for xml/html folding. 2013-07-21 22:22:30 -07:00
Paul Kulchenko
e398a216a8 Added ability to add/remove interpreters from plugins (ref #166). 2013-07-20 23:21:44 -07:00
Paul Kulchenko
4137b9d88d Added wxlua patch for twoface compatibility. 2013-07-20 15:17:09 -07:00
Paul Kulchenko
a630dd95c7 Added setfenv for Lua 5.2 compatibility. 2013-07-19 12:51:53 -07:00
Paul Kulchenko
0b748d6389 Updated static analyzer to report only first instance of 'unknown field'. 2013-07-18 16:28:12 -07:00
Paul Kulchenko
790f9d5b45 Added links to project page and documentation (closes #180). 2013-07-18 15:26:00 -07:00
Paul Kulchenko
43513c9153 Updated filename/source code heuristic in the debugger (Mobdebug 0.5362).
If the "chunkname" has no newline, it's treated as a file name.
This helps with handling cases when the application engine reports
filenames without @ (for example, when they are loaded using
loadstring("chunk", "file") instead of loadstring("chunk", "@file"));
also helps with debugging cocos2dx apps that load Lua files.
2013-07-18 15:20:59 -07:00
Paul Kulchenko
f58f185850 Enabled path remapping for local debugging.
This helps in local debugging when project files are copied to a temporary
location, but need to be debugged from the project folder (for example,
with debugging of cocos2d-x apps in iOS simulator).
2013-07-18 14:10:54 -07:00
Paul Kulchenko
ebbeb107a7 Disabled error reporting after debugging has been terminated. 2013-07-17 16:54:12 -07:00
Paul Kulchenko
e0674f9c9a Limited activation of code fragments to the beginning of debugging session.
This can still be configured using `editor.autoactivate` option.
2013-07-16 16:52:31 -07:00
Paul Kulchenko
89cafbec45 Enabled slower and more thorough static analysis (ref #149; ref #168). 2013-07-15 22:02:30 -07:00
Paul Kulchenko
e0f543c262 Updated CHANGELOG with recent changes. 2013-07-14 20:27:24 -07:00
Paul Kulchenko
b73526586c Fixed indentation after lines with brackets in strings. 2013-07-13 09:14:12 -07:00
Paul Kulchenko
cc177264f6 Fixed indentation after lines with anonymous functions. 2013-07-12 22:49:55 -07:00
Paul Kulchenko
2f98bc30a6 Added German translation (thanks to Riidom; ref #70). 2013-07-11 16:38:32 -07:00
Paul Kulchenko
b9374894c9 Set search in subdirectories as default in Find in Files dialog (ref #162). 2013-07-10 16:32:26 -07:00
Paul Kulchenko
17a995a810 Fixed indicator showing at the end of not terminated long comment. 2013-07-09 22:54:23 -07:00
Paul Kulchenko
35d1bc0f03 Fixed an issue with LUA_DEV including files instead of directories. 2013-07-07 23:35:15 -07:00
Paul Kulchenko
6f044d8b2e Added default value to package config (ref #176). 2013-07-06 15:27:31 -07:00
Paul Kulchenko
735f8492e2 Fixed project switching to close all files when switching to a subdirectory.
Some of the files could have been left open if the name starts with
the name of a subdirectory the project is being switched to.
2013-07-05 16:52:22 -07:00
Paul Kulchenko
4eb57fcbda Fixed saving projects that do not have any open files. 2013-07-04 16:48:12 -07:00
Paul Kulchenko
c882b8d0e0 Added handling of ?51.dll and required DLLs for LuaForWindows interpreter. 2013-07-03 17:40:01 -07:00
Paul Kulchenko
ce8552f044 Added plugin::GetConfig method (ref #166). 2013-07-03 14:25:06 -07:00
ardente
6968364c58 windows: adopt native user home 2013-07-03 16:39:57 +04:00
Paul Kulchenko
9ab72209c2 Added erasing current line in Console (ref #173). 2013-07-01 18:46:31 -07:00
Paul Kulchenko
c872934157 Added search/completion in the local and remote console (closes #173). 2013-06-30 20:41:42 -07:00
Paul Kulchenko
ea2d7c289a Replaced package onEditorActivated event with onEditorFocus* events (ref #166). 2013-06-30 13:09:44 -07:00
Paul Kulchenko
19ab4df922 Updated SaveAll to allow saving (only) files with filenames (ref #172).
This is useful when `SaveAll` is called from a plugin and user interaction
(asking for a file name) is not desired.
2013-06-30 10:06:19 -07:00
Paul Kulchenko
7dda2c00fd Added package onAppFocus* events (ref #166; ref #172). 2013-06-30 09:27:16 -07:00
Paul Kulchenko
3d3ae5ca00 Fixed debugger to accept filenames without '@'; thanks to Tim Mensch (closes #174). 2013-06-28 21:55:27 -07:00
Paul Kulchenko
28c3b79b8b Added Chinese translation (thanks to Chow CheeWen; ref #70). 2013-06-28 21:37:05 -07:00
Paul Kulchenko
a91bba8bd0 Added editor.autoreload to enable reload of updated files (ref #172).
Thanks for Tim Mensch for suggestion and implementation.
2013-06-26 23:27:31 -07:00
Paul Kulchenko
ed874063ea Added creating (missing) folders when saving a file (fixes #171). 2013-06-25 17:10:57 -07:00
Paul Kulchenko
6259918648 Added an example of styling individual keywords. 2013-06-24 21:03:07 -07:00
Paul Kulchenko
0995c5a061 Added fold indication of a current block (ref #168). 2013-06-24 21:01:49 -07:00
Paul Kulchenko
f07e42c4b4 Fixed sorting when the sorted fragment ends with a newline. 2013-06-24 17:15:02 -07:00
Paul Kulchenko
7e62939df6 Moved 'Sort' menu to 'Edit'. 2013-06-24 17:12:26 -07:00
Paul Kulchenko
b57bf55ef0 Added reporting of process id for a conflicting process. 2013-06-23 21:58:40 -07:00
Paul Kulchenko
8ed91f76cc Disabled 'Fold' menu instead of removing when no folding is allowed (ref #169). 2013-06-22 22:14:20 -07:00
Mika Attila
9e6ec10be9 Make code folding optional
Some users might consider code folding a needless distraction.
Several editors offer the option to turn code folding off.

This commit adds the editor.fold option, which is a boolean.
true enables code folding (default)
false disables code folding
2013-06-22 12:02:31 +02:00
Paul Kulchenko
115924d567 Fixed missing markdown styling after text removal. 2013-06-21 15:39:53 -07:00
Paul Kulchenko
cc9f9bb49d Updated documentation for 0.38. 2013-06-21 13:58:16 -07:00
Paul Kulchenko
418aef7065 Fixed clearing masked indicators on updated lines. 2013-06-21 09:06:50 -07:00
Paul Kulchenko
0f2e74a098 Added sorting of file lists on Linux (used in the filetree and file search). 2013-06-20 20:15:16 -07:00
Paul Kulchenko
2bc125e616 Disabled following symlinks during directory scanning to avoid infinite loops. 2013-06-20 20:13:50 -07:00
Paul Kulchenko
6b349bbef0 Set default directory for Find in Files opened from a new file (#ref 162). 2013-06-20 20:06:12 -07:00
Paul Kulchenko
7fbcb0b6c7 Fixed looping in auto-complete when indexes are used (fixes #143). 2013-06-20 14:54:13 -07:00
Paul Kulchenko
adb49b8007 Added removing comments for more robust type assignment analysis. 2013-06-20 14:23:23 -07:00
Paul Kulchenko
fb381eaadb Updated LuaForWindows interpreter to set basedir to match current directory. 2013-06-20 14:21:45 -07:00
Paul Kulchenko
8ad9e83b92 Added support for changing the Corona simulator skin (closes #151). 2013-06-19 21:52:40 -07:00
Paul Kulchenko
b8d331b8a9 Updated configuration example for variable indicators. 2013-06-19 21:50:51 -07:00
Paul Kulchenko
76f6fdade6 Updated Gideros auto-complete API to add global objects. 2013-06-19 10:30:51 -07:00
Paul Kulchenko
2fd08a751a Fixed possible duplicate paths in the filetree. 2013-06-18 23:10:43 -07:00
Paul Kulchenko
d5d6247286 Added LuaForWindows interpreter (thanks to Tom Burgel). 2013-06-18 17:52:26 -07:00
Paul Kulchenko
1af5b5e10c Added resetting breakpoints when needed for source code debugging. 2013-06-18 16:52:52 -07:00
Paul Kulchenko
4eda473d9f Added package onEditorCharAdded/onEditorKeyDown events (ref #166). 2013-06-18 12:51:51 -07:00
Paul Kulchenko
58c416e148 Updated capitalization for editor menu items. 2013-06-18 09:27:17 -07:00
Paul Kulchenko
5787dae35c Updated CHANGELOG with recent changes. 2013-06-17 21:29:52 -07:00
Paul Kulchenko
ec1a87f219 Fixed an error when closing editor tab that is still being styled. 2013-06-17 15:57:28 -07:00
Paul Kulchenko
e9728b2a4a Updated Gideros API to separate 'functions' from 'methods'. 2013-06-16 19:29:24 -07:00
Paul Kulchenko
a9c7e247fe Removed duplicates from auto-complete suggestions. 2013-06-16 16:24:18 -07:00
Fringale
0b0d95b2bf Updated French translation with latest string changes (mostly for find/replace dialogs). 2013-06-16 18:55:03 +02:00
Paul Kulchenko
32c3723bcc Updated Marmalade Quick auto-complete API to use class inheritance. 2013-06-14 18:40:34 -07:00
Paul Kulchenko
9d11df3ebe Updated Gideros auto-complete API to use class inheritance. 2013-06-14 18:34:01 -07:00
Paul Kulchenko
14b6568eb5 Added inheritance support for auto-complete API. 2013-06-14 18:33:06 -07:00
Paul Kulchenko
4d8e5647a6 Fixed missing numerical keys in serialized tables (upgraded Mobdebug to 0.535). 2013-06-14 10:15:36 -07:00
Paul Kulchenko
6a3aafc6fa Add package onEditor* events (closes #166). 2013-06-13 22:31:57 -07:00
Paul Kulchenko
8ee608c761 Added package onInterpreterLoad/onInterpreterClose events (ref #166). 2013-06-13 22:31:56 -07:00
Paul Kulchenko
120bc5b48b Added package onProjectLoad/onProjectClose events (ref #166). 2013-06-13 22:31:47 -07:00
Paul Kulchenko
f23ca203ca Added package onMenu* events (ref #166). 2013-06-13 22:31:28 -07:00
Paul Kulchenko
a390825676 Added package onRegister/onUnRegister events (ref #166). 2013-06-13 22:31:16 -07:00
Paul Kulchenko
baa76790e5 Fixed (regression) issue with setting breakpoints before debugging is started. 2013-06-12 10:41:07 -07:00
Paul Kulchenko
344835bf28 Added 'Show Location' to the Project/Filetree menu. 2013-06-12 09:53:12 -07:00
Paul Kulchenko
b9ecfd9284 Added hidpi option to enable HiDPI/Retina display support (closes #160). 2013-06-11 15:37:09 -07:00
Paul Kulchenko
9175bdd3ed Ugraded Mobdebug to 0.534 for debugging of source code fragments. 2013-06-10 00:28:09 -07:00
Paul Kulchenko
e07ac2109a Added breakpoint support for unnamed code fragments. 2013-06-09 00:19:15 -07:00
Paul Kulchenko
77588aa757 Added support for debugging (stepping through) unnamed code fragments. 2013-06-08 00:16:12 -07:00
Paul Kulchenko
065a6f933c Added LuaSec to win32 build script. 2013-06-07 23:10:39 -07:00
Paul Kulchenko
dee316094f Added package/plugin processing. 2013-06-08 13:31:32 -07:00
Paul Kulchenko
30bb8c29a6 Updated Gideros API/auto-complete reference. 2013-06-07 10:44:43 -07:00
Paul Kulchenko
4e66f20078 Allowed tab width and indentation to be set independently. 2013-06-06 23:00:44 -07:00
Paul Kulchenko
a4c503027a Fixed styling of markup that can be affected by folded lines. 2013-06-06 10:07:48 -07:00
Paul Kulchenko
3a5ef4b5e4 Updated markup to allow opening files from new buffers ('untitled'). 2013-06-06 10:07:46 -07:00
Paul Kulchenko
666024a77a Refactored Project tree handling. 2013-06-06 10:07:45 -07:00
Paul Kulchenko
501ba761a9 Added support for 'silent' execution of shell commands in markup. 2013-06-06 10:07:43 -07:00
Paul Kulchenko
66cc79a3fe Added Find Next/Previous over selected variable instances (ref #163). 2013-06-05 10:02:28 -07:00
Paul Kulchenko
a5d5fd729a Fixed value selection with multiple active selections. 2013-06-04 14:34:36 -07:00
Paul Kulchenko
6ad74e09a9 Improved error reporting in interpreters on failures to copy the debugger. 2013-06-04 14:03:38 -07:00
Paul Kulchenko
87dd7edf61 Fixed style compatibility with wxwidgets 2.8 (ref #128). 2013-06-04 13:28:28 -07:00
Paul Kulchenko
06356f6940 Added debugger.allowediting option to allow editing while debugging. 2013-06-03 22:01:37 -07:00
Paul Kulchenko
a4d423c685 Fixed error reporting by (internal) file operations. 2013-06-03 20:50:56 -07:00
Paul Kulchenko
32e828088b Fixed styling comments that start with markup symbols. 2013-06-03 20:38:35 -07:00
Paul Kulchenko
dcfc212bf4 Added skiping binary files during file search (ref #162). 2013-06-03 20:34:53 -07:00
Paul Kulchenko
790d1a6516 Added yield to update search results during file search (ref #162). 2013-06-03 20:34:42 -07:00
Paul Kulchenko
bc660522d5 Added showing default extensions in the file search (ref #162). 2013-06-03 20:34:05 -07:00
Paul Kulchenko
3cc29e1301 Added support for multiple file extensions in the file search (ref #162). 2013-06-03 20:33:16 -07:00
Paul Kulchenko
7b87bc3d88 Added saving folder to search files in (ref #162). 2013-05-31 17:37:26 -07:00
Paul Kulchenko
837a242bbd Fixed restoring a session with one of the files deleted on disk (fixes #161). 2013-05-30 20:06:38 -07:00
Paul Kulchenko
c2ddc72829 Added support for styles.fncall for backward compatibility. 2013-05-30 10:42:00 -07:00
Paul Kulchenko
045b9ad932 Added instance counter to 'Select all Instances'. 2013-05-29 21:26:11 -07:00
Paul Kulchenko
f0b007ff75 Updated activation of 'Select all Instances' to Ctrl/Cmd-DblClick (closes #159). 2013-05-29 20:09:33 -07:00
Paul Kulchenko
c2022a2d33 Added transparency to additional selections (ref #159). 2013-05-29 18:10:09 -07:00
Paul Kulchenko
0c1ef8870e Fixed main selection in 'Select all Instances' to avoid cursor jumps (ref #159). 2013-05-29 18:09:00 -07:00
Paul Kulchenko
22716e9d20 Disabled showing tooltip when the app is in the background (fixes #158). 2013-05-29 13:47:15 -07:00
Paul Kulchenko
34f4564ec0 Fixed reporting variable instances for comment/string fragments. 2013-05-28 13:34:59 -07:00
Paul Kulchenko
e26db06ede Added configuration for analizer indicator styles. 2013-05-28 13:29:37 -07:00
Paul Kulchenko
7384afa325 Moved Lua specific logic for variable indicators to the spec file. 2013-05-27 21:39:28 -07:00
Paul Kulchenko
209756349c Suppressed tooltips with empty descriptions. 2013-05-27 20:41:39 -07:00
Paul Kulchenko
294d19806b Fixed instance selection for local a = a type localization. 2013-05-27 17:44:58 -07:00
Paul Kulchenko
2dc5f85dbb Fixed masking of implicit self parameter. 2013-05-27 14:10:30 -07:00
Paul Kulchenko
f2aeebb8f6 Added a style for masking variables. 2013-05-27 11:58:05 -07:00
Paul Kulchenko
63cc789959 Fixed masking of variables that could reference incorrect location. 2013-05-27 11:32:28 -07:00
Paul Kulchenko
bf19bf7e39 Fixed parser reporting (internal) error on invalid code. 2013-05-26 16:27:32 -07:00
Paul Kulchenko
776888838b Fixed an error when quick search fails with multiple fragments. 2013-05-26 16:13:22 -07:00
Paul Kulchenko
29738092e7 Added selecting all instances with a double-click on a variable. 2013-05-26 16:11:53 -07:00
Paul Kulchenko
c8b669bb80 Added styles and config options for analizer indicators. 2013-05-25 22:41:53 -07:00
Paul Kulchenko
398f3dee55 Added autoanalizer option for dynamic static analysis. 2013-05-25 22:15:40 -07:00
Paul Kulchenko
54db8d28f0 Fixed masking by a statement at the end of file. 2013-05-25 22:15:39 -07:00
Paul Kulchenko
6531ff3c66 Fixed 'Rename Instances' to always reset previous selection. 2013-05-25 22:15:37 -07:00
Paul Kulchenko
cd27b14152 Fixed popup menu logic for one character variables. 2013-05-25 22:15:36 -07:00
Paul Kulchenko
3da05c2a7e Fixed showing all instances of a variable. 2013-05-25 22:15:35 -07:00
Paul Kulchenko
df58fadd15 Fixed masking of function parameters and loop variables. 2013-05-25 22:15:33 -07:00
Paul Kulchenko
48b596af01 Added 'Go To Definition' and 'Rename All Instances'. 2013-05-25 22:15:32 -07:00
Paul Kulchenko
dc36a0f6da Added masking for parameters in variable indication. 2013-05-25 22:15:31 -07:00
Paul Kulchenko
a9488870b3 Added initial support for indicating local/global variables. 2013-05-25 22:15:30 -07:00
Paul Kulchenko
924f1ad89a Disabled 'value' tooltip over variables that match known function names (ref #101). 2013-05-25 22:14:16 -07:00
Paul Kulchenko
bcf0b2ee7b Added showing tooltip in any position over a term and showing 'values' (ref #101). 2013-05-24 16:17:28 -07:00
Paul Kulchenko
74572a9765 Added disabling tooltip when context menu is shown. 2013-05-24 16:17:20 -07:00
Paul Kulchenko
b445ab7810 Fixed auto-complete error for '%dddd' strings (fixes #156). 2013-05-22 14:25:34 -07:00
Paul Kulchenko
52e9b1764b Added 'fixing' path returned by wxDirDialog; may be incorrect in 2.9.x. 2013-05-21 14:21:24 -07:00
Paul Kulchenko
bcabcc7ea6 Added constant initialization missing on ArchLinux with wxlua 2.8.12.2 (fixes #155; ref #128). 2013-05-20 18:29:25 -07:00
Paul Kulchenko
e0dcf5448a Removed sorting in the Stack view to keep the order of table elements. 2013-05-20 09:29:43 -07:00
Paul Kulchenko
f6877667bf Updated Stack view navigation to use clicked on instead of active item. 2013-05-20 08:17:05 -07:00
Paul Kulchenko
de491e1876 Fixed an issue with showing filenames that include '"?*:<>' on OSX/Linux. 2013-05-19 14:15:40 -07:00
Paul Kulchenko
103fdb553c Fixed current line marker being shown using 'Run as Scratchpad' with
'runonstart' option.
2013-05-18 22:15:45 -07:00
Paul Kulchenko
575107c2ae Updated build scripts to use luasocket 2.0.3. 2013-05-18 10:56:11 -07:00
Paul Kulchenko
7dc69a8959 Added support for table valuetypes in auto-complete for foo[index]: (ref #101). 2013-05-17 11:50:41 -07:00
Paul Kulchenko
3fce412df1 Added navigation to the line of code in the Stack Window (thanks to George Pimm; closes #134). 2013-05-15 11:40:57 -07:00
Paul Kulchenko
d6e1a2f8dd Fixed looping in auto-complete (fixes #151). 2013-05-14 11:30:03 -07:00
Paul Kulchenko
b21864a974 Added Show Location to the editor tab menu. 2013-05-13 13:59:18 -07:00
Paul Kulchenko
6108865ed2 Improved focus on the debugger when a breakpoint hits on OSX (fixes #141). 2013-05-13 13:56:24 -07:00
Paul Kulchenko
cb2cb9ff3c Fixed incorrect localization that led to an error in 'Save' from tab menu. 2013-05-13 13:52:52 -07:00
Paul Kulchenko
099f9f92fa Updated linux build files to use latest zlib/libpng to fix png load on Gentoo. 2013-05-12 21:20:08 -07:00
Paul Kulchenko
5449ed237a Updated 'Find in Files' to start in the project folder by default. 2013-05-11 14:22:23 -07:00
Paul Kulchenko
fae664ac0d Allowed closing editor tabs while debugger is running. 2013-05-10 14:13:50 -07:00
Paul Kulchenko
71b4f47159 Added support for absolute filenames in Markdown links. 2013-05-09 16:22:49 -07:00
Paul Kulchenko
347b53659c Updated CHANGELOG for 0.37. 2013-05-09 13:54:45 -07:00
Paul Kulchenko
16f32e0df5 Updated interpreters and tests after API changes. 2013-05-09 12:41:04 -07:00
Paul Kulchenko
171287fac6 Added Russian translation for Find/Replace dialog (ref #70). 2013-05-08 21:46:10 -07:00
Paul Kulchenko
9d05cd6931 Added Russian translation for the Preferences menu (ref #70). 2013-05-07 21:57:48 -07:00
Paul Kulchenko
a9e847372a Added Preferences menu to simplify access to system/user settings. 2013-05-06 10:05:13 -07:00
Paul Kulchenko
1eba53cc0e Fixed loading a non-existing file. 2013-05-05 22:02:07 -07:00
Paul Kulchenko
c5a0077a01 Fixed filtering out directories when spec is specified. 2013-05-05 22:01:04 -07:00
Paul Kulchenko
2b07dd1db4 Separated settings for function dropdown and project tree fonts (fixes #148). 2013-05-04 16:03:18 -07:00
Paul Kulchenko
28b3380a45 Fixed hiding all panels when switching to Full Screen mode. 2013-05-04 10:40:39 -07:00
Paul Kulchenko
564338656d Updated CHANGELOG with recent changes. 2013-05-04 10:39:57 -07:00
Paul Kulchenko
29b2e4f5ec Fixed activation of non-existing files/folders in the Project tree. 2013-05-04 10:06:35 -07:00
Paul Kulchenko
c7ab3aeb32 Refactored and optimized directory scanning when loading IDE files. 2013-05-02 16:24:25 -07:00
Paul Kulchenko
4b771dafe4 Added 'wlua' to the list of recognized Lua extensions. 2013-05-02 13:13:27 -07:00
Paul Kulchenko
71393bd35a Fixed search results for lines without newline. 2013-05-01 15:10:17 -07:00
Paul Kulchenko
f7e2697e56 Fixed Find/Replace in folders with Unicode names (fixes #147); improved performance. 2013-05-01 15:03:59 -07:00
Paul Kulchenko
608644bd83 Added 'shaking' Find/Replace window when text is not found (closes #146). 2013-05-01 11:20:49 -07:00
Paul Kulchenko
7563e52aba Fixed Un/Comment commands executed for empty lines. 2013-05-01 09:10:08 -07:00
Paul Kulchenko
039dde0ccb Fixed fold/unfold for files starting with block/comment. 2013-04-30 22:26:47 -07:00
Paul Kulchenko
abbde79ab0 Fixed history after activating non-existing file in Recent Files. 2013-04-30 18:09:09 -07:00
Paul Kulchenko
ead958e603 Added disabling Recent Files menu if the list is empty. 2013-04-29 22:00:33 -07:00
Paul Kulchenko
6b7f310cd7 Added TomorrowContrast color scheme (thanks to Sergey Lerg). 2013-04-28 17:49:41 -07:00
Paul Kulchenko
451186ac4e Fixed scrolling to restored cursor position on OSX (when usewrap = false). 2013-04-27 14:58:42 -07:00
Paul Kulchenko
b8b3b7f0af Fixed Find/Replace dialog to take Enter on OSX (fixes #140). 2013-04-26 11:01:45 -07:00
Paul Kulchenko
5ee71feac4 Updated CHANGELOG with recent changes. 2013-04-26 10:58:51 -07:00
Paul Kulchenko
a2e65e2bbd Updated Marmalade interpreter with Quick 1.1 path changes. 2013-04-26 10:48:35 -07:00
Paul Kulchenko
e8ad508021 Updated Watch/Stack panels min size to make them dockable with other panels. 2013-04-26 09:05:20 -07:00
Paul Kulchenko
aa2a4fac2b Added detaching a child process to avoid crash when exiting during debugging. 2013-04-24 22:53:56 -07:00
Paul Kulchenko
d5fda558c1 Fixed loading an empty recent file history. 2013-04-24 21:55:23 -07:00
Paul Kulchenko
171b98717a Fixed 'breaking' after executing OUT command that never reaches the target level. 2013-04-24 21:40:01 -07:00
Paul Kulchenko
da07ef0e2c Added a check to fix assertions in debug build. 2013-04-24 21:36:22 -07:00
Paul Kulchenko
6c9e226d67 Added Recent File history navigation (closes #66). 2013-04-24 14:02:17 -07:00
Paul Kulchenko
d3884358be Fixed stopping at a breakpoint at the initial line when startwith option is specified. 2013-04-24 12:30:58 -07:00
Paul Kulchenko
0ebeee3641 Fixed activation of a file loaded into active tab. 2013-04-23 19:58:10 -07:00
Paul Kulchenko
bd190d5a4e Added Marmalade auto-complete support and API documentation. 2013-04-23 15:49:19 -07:00
Paul Kulchenko
b1f09b9ef0 Fixed an occasional crash on OSX introduced by a duplicate line fix. 2013-04-23 10:34:52 -07:00
Paul Kulchenko
ac556aea34 Updated documentation about default EOL on OSX (ref #102). 2013-04-22 21:37:02 -07:00
Paul Kulchenko
87ab3702fe Fixed incorrect tab activation on OSX after using 'Open File'. 2013-04-22 18:24:08 -07:00
Paul Kulchenko
83556f9ab2 Improved file activation when debugging is started (closes #137). 2013-04-21 22:35:03 -07:00
Paul Kulchenko
43c18552c1 Added processing of runonstart when using remote debugging (closes #138). 2013-04-21 19:04:26 -07:00
Paul Kulchenko
dc54c76435 Updated highlighting in Watch windows to not use editor styles.
This is to avoid color conflicts with dark color schemes.
2013-04-21 18:47:14 -07:00
Paul Kulchenko
9a16cd026f Fixed editor activation when file is loaded into an existing tab. 2013-04-21 18:43:51 -07:00
Paul Kulchenko
e4710a16b0 Refactored Recent Files history to make it faster and simpler. 2013-04-21 17:33:47 -07:00
Paul Kulchenko
ae2e99f6d3 Fixed an error after opening non-existing file from 'Recent Files'. 2013-04-20 15:38:32 -07:00
Paul Kulchenko
c182a19fa5 Added suggesting proper extension after 'Save/Save As' based on current spec. 2013-04-19 15:09:22 -07:00
Paul Kulchenko
2ddeaf4eb8 Updated Russian 'watch' translation for consistency. 2013-04-19 09:24:59 -07:00
Paul Kulchenko
b4fd071efb Fixed blocking on reading app output without processing other events. 2013-04-18 17:24:30 -07:00
Paul Kulchenko
9344280d5b Fixed an issue with duplicate lines shown in the editor.
This can happen when the line is too long for one line and can wrap; if it
also includes hidden markup (Markdown in comments), this markup can change
the length of the line, but it's not adjusted by Scintilla after the
markup is applied. Force adjustment when this situation is detected.
2013-04-18 12:42:43 -07:00
Paul Kulchenko
ad037536cd Updated documentation for user settings (ref #113, #55). 2013-04-17 21:08:32 -07:00
Paul Kulchenko
d8e8af00b6 Added translation setup for Find/Replace dialog (closes #133). 2013-04-17 18:07:45 -07:00
Paul Kulchenko
1e651a97b7 Fixed 'Replace All' to take 'Wrap Around' into account (fixes #132). 2013-04-17 16:45:19 -07:00
Paul Kulchenko
c2e49e169f Added tests. 2013-04-17 12:26:47 -07:00
Paul Kulchenko
6662cb0f5e Fixed off-by-one error in searching consecutive matches. 2013-04-17 12:18:19 -07:00
Paul Kulchenko
c00d85890a Fixed 'Quick Find' not working without current selection (fixes #131). 2013-04-17 12:01:51 -07:00
Paul Kulchenko
c42c9ffb3d Reduced the minimum size of the Output/Console panel. 2013-04-16 17:31:16 -07:00
Paul Kulchenko
b5661976eb Fixed looping in auto-complete on mistyped class (fixes #130). 2013-04-16 10:22:02 -07:00
Paul Kulchenko
c1e66f8fc2 Fixed compatibility with wx2.8 (thanks to Samuel Dionne-Riel; closes #128). 2013-04-15 18:14:12 -07:00
Paul Kulchenko
c2715040fe Added nomousezoom option to disable zoom with mouse wheel in the editor. 2013-04-15 18:12:15 -07:00
Paul Kulchenko
fc17dac2a5 Added selecting text and Cmd-F shortcut in Find dialog on OSX (ref #127). 2013-04-15 18:10:16 -07:00
Paul Kulchenko
0dfd8e3ba1 Fixed replacement logic in Find/Replace that could replace selected fragment (ref #127). 2013-04-15 18:06:59 -07:00
Paul Kulchenko
acbfd6d81d Fixed an error caused by allowing multiple Search/Replace windows (fixes #127). 2013-04-15 10:23:17 -07:00
Paul Kulchenko
0d268a01e1 Updated Monokai color scheme to fix current line color. 2013-04-13 09:46:08 -07:00
Paul Kulchenko
1e9cbb4633 Updated CHANGELOG with recent changes. 2013-04-12 12:25:34 -07:00
Paul Kulchenko
7d3683df98 Updated About screen to be more configurable and flexible. 2013-04-12 12:22:17 -07:00
Paul Kulchenko
3b10bbbcd2 Fixed launch command for Corona debugging on Windows. 2013-04-11 09:23:52 -07:00
Paul Kulchenko
3ea40683c9 Added handling of Ctrl-Home and Ctrl-End on OSX (ref #89). 2013-04-10 21:55:03 -07:00
Paul Kulchenko
e6b789131a Added line copy/cut for Ctrl-C/Ctrl-X with no selection. 2013-04-10 21:53:16 -07:00
Paul Kulchenko
613dec0571 Fixed 'control' check on OSX that changed with wx2.9.2+ (ref #89). 2013-04-10 18:23:10 -07:00
Paul Kulchenko
36b3692e9e Fixed wrong tab activated on OSX after using New file in some cases.
This is caused by two PAGE_CHANGED event for the notebook triggered
when the current tab is not the last one (in wx2.9.5+). This could lead to
a crash if the incorrect tab is closed (ref #89).
2013-04-10 18:18:35 -07:00
Paul Kulchenko
59cde2fc8c Fixed cursor not being visible in some cases after file is loaded (ref #116). 2013-04-10 15:32:31 -07:00
Paul Kulchenko
e8027b3b95 Updated Russian translation (thanks to toiffel). 2013-04-09 22:12:22 -07:00
Paul Kulchenko
579ab4c831 Updated CHANGELOG for 0.36. 2013-04-08 11:39:17 -07:00
Paul Kulchenko
f54322c1f7 Fixed the current editor not being fully activated when closing a tab. 2013-04-08 11:37:46 -07:00
Paul Kulchenko
a5b85c533a Fixed activating files in the project tree on a case insensitive system. 2013-04-08 09:33:16 -07:00
Paul Kulchenko
149340669a Fixed the Stack view being partially hidden when the root item is too wide (ref #110). 2013-04-08 09:16:11 -07:00
Paul Kulchenko
5165bf5b29 Fixed left side of the project panel being hidden when a file is activated (fixes #122). 2013-04-08 09:14:04 -07:00
Paul Kulchenko
fbc04ba199 Updated Linux launch script and MANIFEST. 2013-04-07 23:53:54 -07:00
Paul Kulchenko
e33f2d40dd Removed build files no longer needed. 2013-04-07 23:52:34 -07:00
Paul Kulchenko
bad62f0a16 Updated CHANGELOG with recent changes. 2013-04-06 21:30:20 -07:00
Paul Kulchenko
b393b58cc1 Fixed breakpoint not firing on the first executable line in debugging (helps #121). 2013-04-06 13:57:49 -07:00
Paul Kulchenko
4480825408 Fixed activating of the first line in the script during debugging. 2013-04-06 13:53:24 -07:00
Paul Kulchenko
10fb31f1e5 Disabled showing 'value' in auto-complete after 'a:' (helps #101). 2013-04-06 13:44:14 -07:00
Paul Kulchenko
789a2d8a88 Upgraded Mobdebug (v0.525) for performance improvements (also closes #121).
Other changes in the same version:
  Added handling of case-insensitive filenames on OSX.
  Improved debugging performance.
  Fixed terminating debugging of an empty script.
  Fixed resetting cached source as it may change when basedir changes.
  Replaced socket.select with non-blocking .receive as it is faster.
2013-04-05 08:46:41 -07:00
Paul Kulchenko
b9ebd44c30 Simplified lua interpreter launch/debug command. 2013-04-04 21:48:05 -07:00
Paul Kulchenko
a65edf8fd5 Fixed reporting of initial line during debugging. 2013-04-03 23:23:53 -07:00
crazybutcher
89f33160bc GLSL compilation checker frontend https://github.com/CrazyButcher/glslc 2013-04-03 16:09:20 +02:00
crazybutcher
e96a7657cd disable cpp preprocessor based "greying" out, due to lack of proper styles 2013-04-03 12:02:52 +02:00
Paul Kulchenko
492270a3bf Added universal binaries for luasocket on OSX (closes #120).
This allows debugging of 64bit applications (for example, LuaJIT) on OSX.
2013-04-02 22:29:54 -07:00
Paul Kulchenko
1cd34e3853 Fixed incorrect type guessing from assignments in auto-complete. 2013-04-02 18:31:40 -07:00
Paul Kulchenko
3ad7b389da Updated references to configuration files in documentation. 2013-04-02 10:17:24 -07:00
Leo Bartoloni
bc58913272 Update it.lua
Added new italian translations
2013-04-02 10:03:04 +03:00
Paul Kulchenko
415ba2bd17 Fixed editor tab activation after closing another tab on Linux (ref #89). 2013-04-01 20:15:10 -07:00
Paul Kulchenko
a338f4c436 Fixed 'Show tooltip' shortcut not working on Linux (fixes #118; ref #89). 2013-04-01 20:14:21 -07:00
Paul Kulchenko
24507e22bb Fixed cursor position being incorrectly restored (fixes #116; ref #89). 2013-04-01 16:07:34 -07:00
Paul Kulchenko
8e208b7dd3 Fixed lag on Windows when using brackets and backspace (fixes #117; ref #89). 2013-04-01 09:23:12 -07:00
Paul Kulchenko
d5c585b118 Updated 'method' type in auto-complete to only allow a:b syntax (closes #101). 2013-04-01 09:16:52 -07:00
Paul Kulchenko
56b63b3b4c Merge branch 'master' of git://estrelaeditor.git.sourceforge.net/gitroot/estrelaeditor/estrelaeditor into auto-complete 2013-03-31 19:20:33 -07:00
Paul Kulchenko
8c64d77276 Added update of Stack and Watch windows after 'Debugging suspended' message. 2013-03-31 18:17:40 -07:00
Paul Kulchenko
406056bf52 Updated language files (es, it, ru) with new messages (ref #70). 2013-03-30 20:17:20 -07:00
Fringale
f960d65e08 Updated French translation with latest string changes, fixed a few typos. 2013-03-31 00:01:19 +01:00
Paul Kulchenko
a3fc62a7c0 Added toggling for View menu items. 2013-03-30 13:13:03 -07:00
Paul Kulchenko
5a4e996b37 Updated Stack and Watch window to not refresh when not visible. 2013-03-30 13:12:57 -07:00
Paul Kulchenko
200647f0c5 Fixed a warning about empty project directory in local console. 2013-03-29 16:25:25 -07:00
Paul Kulchenko
99d6395845 Fixed an issue with default layout on the very first start. 2013-03-29 16:18:28 -07:00
Paul Kulchenko
fc0d5083e6 Updated CHANGELOG and README with current features. 2013-03-29 14:44:01 -07:00
Paul Kulchenko
478a87c8d0 Merge branch 'wxwidgets' (closes #89; closes #111).
Conflicts:
	src/editor/filetree.lua
2013-03-29 11:20:27 -07:00
Paul Kulchenko
d3a8b37cf3 Disabled closing Stack and Watch tabs. 2013-03-29 09:09:24 -07:00
Paul Kulchenko
0f99cb20b0 Forced floating of Stack and Watch windows by default (ref #89). 2013-03-28 22:40:41 -07:00
Paul Kulchenko
df54864e43 Made application name an optional parameter; reorganized on-exit workarounds. 2013-03-28 21:37:48 -07:00
Paul Kulchenko
9beae1f9c4 Updated error messages from loading configuration files. 2013-03-28 21:37:48 -07:00
Paul Kulchenko
0761ee2f4a Reduced flicker in the project tree when a file is opened (ref #89). 2013-03-28 21:37:47 -07:00
Paul Kulchenko
314dc5ba9e Added migration of configuration file on Windows (helps #89). 2013-03-28 21:37:46 -07:00
Paul Kulchenko
02a086e083 Revert "Updated editor handlers to improve performance on OSX with wx2.9.5".
The revert is needed as wx2.9.5 doesn't properly refresh status bar with
this change (on OSX, which the original improvement targeted).
2013-03-28 21:37:45 -07:00
Paul Kulchenko
3a616f5e37 Added hiding floating windows and removed excessive manager updates to reduce flicker. 2013-03-28 21:37:44 -07:00
Paul Kulchenko
3f12ce28d8 Optimized project switching and added notebook freezing where possible (ref #89). 2013-03-28 21:37:44 -07:00
Paul Kulchenko
a913c1fa55 Changed auto-recovery mark to be only applied after text changes. 2013-03-28 21:37:43 -07:00
Paul Kulchenko
363803ea9b Fixed an issue with Enter used to select an item in project dropdown (ref #89).
On Windows multiple COMBOBOX_SELECTED events are sent when Enter is used,
which may lead to run-time errors. Disabled processing of multiple copies
of the same event.
2013-03-28 21:37:35 -07:00
Paul Kulchenko
1bbb9f432c Rearranged saving settings to properly save on OSX (helps #89). 2013-03-27 13:02:15 -07:00
Paul Kulchenko
4854afeb32 Fixed default perspective to include Stack and Watch windows (ref #103). 2013-03-27 12:56:45 -07:00
Paul Kulchenko
507832ac2b Updated project tree workaround on OSX as it's not needed with wx 2.9.5+ (ref #89). 2013-03-27 12:54:54 -07:00
Paul Kulchenko
146b36d9ce Fixed an issue with the Project tree when project and app directories are the same. 2013-03-27 12:53:45 -07:00
Paul Kulchenko
77276d48ae Added auto-show/hide Stack and Watch windows during debugging (closes #110). 2013-03-26 15:25:02 -07:00
Paul Kulchenko
c3f253ef64 Added ignoring -psn... parameter on OSX when reading file names from command line. 2013-03-26 09:18:26 -07:00
Paul Kulchenko
93e51a6d43 Made stack and watch windows dockable (closes #103). 2013-03-24 15:04:27 -07:00
Paul Kulchenko
a26d72f99d Added exit call to avoid crash on Linux when closing the IDE.
The crash appears to happen in Unlink when debugging is in progress or
after an external process is executed. In some cases it also happens in
wxluaO_deletegcobject after simply closing the app on 64bit Linux.

1 0x0000... in wxEvtHandler::Unlink()
2 0x0000... in wxEvtHandler::~wxEvtHandler()
3 0x0000... in wxProcess::~wxProcess()
4 0x0000... in wxluaO_deletegcobject(lua_State*, int, int)
5 0x0000... in wxlua_wxLuaBindClass__gc(lua_State*)
2013-03-22 15:08:04 -07:00
Paul Kulchenko
cd8b714ea6 Upgraded Mobdebug (0.5222) to add serialization with metamethods and notification on incomplete output (closes #109). 2013-03-22 15:05:27 -07:00
Paul Kulchenko
909e9b3ee9 Updated Linux binaries to use libpng 1.6 with wxwidgets (helps #89).
The builtin library is now using separate symbols to avoid conflicts with
system libpng.
2013-03-22 14:45:22 -07:00
Paul Kulchenko
d10bcda693 Added scripts to install build prerequisites on Linux (helps #89). 2013-03-21 22:52:19 -07:00
Paul Kulchenko
7ddb673624 Updated Windows/OSX build files to only build components needed (helps #89). 2013-03-21 19:15:07 -07:00
Paul Kulchenko
bbd11b90eb Added check for different spellings of the same folder in the project tree. 2013-03-21 17:51:03 -07:00
Paul Kulchenko
4fee737981 Improved performance of tab switching and project tree population. 2013-03-21 17:49:35 -07:00
Paul Kulchenko
14143bf0ce Fixed function list in toolbar on Linux (helps #89). 2013-03-21 17:46:50 -07:00
Paul Kulchenko
0e8a9b078c Updated linux binaries to fix libpng support (helps #89).
Binaries have been updated to use whatever system libpng library is
available (without being linked against a particular version).

This also includes fix for 64bit systems to allow for these binaries to
work with "older" versions of libpng (for example, v1.2).

The binaries include wxwidgets fix for lsb_release messages, so the
workaround for this issue has been removed.
2013-03-20 12:22:28 -07:00
Paul Kulchenko
c2ca459882 Updated Linux binaries to work with different libpng versions (helps #89).
The compiled binary always has version of libpng as 1.2.0 (even though
wxwidgets may come with a different version) and is compiled with libpng
set to use system library. The warnings from libpng about different
versions are suppressed when bitmaps are loaded. This has been tested to
work with libpng 1.2.x and 1.5.x.

This update also adds a workaround for "lsb_release: command not found"
message reported on some Linux systems.
2013-03-18 12:48:16 -07:00
Paul Kulchenko
f80a11a982 Replaced deprecated arch with uname -m in Linux components (ref #89). 2013-03-14 09:50:11 -07:00
Paul Kulchenko
29650cef8c Updated executable status on linux files (ref #89). 2013-03-13 22:23:33 -07:00
Paul Kulchenko
4cf8017d7b Fixed debugger output not being suppressed on Linux and using wlua. 2013-03-13 17:16:38 -07:00
Paul Kulchenko
f807b1f48c Set 'Courier New' as the default font on Linux (ref #89). 2013-03-13 17:02:32 -07:00
Paul Kulchenko
dc7e040087 Added linux binaries with support for x86 and x64 (helps #89). 2013-03-13 16:59:38 -07:00
Paul Kulchenko
4262716043 Removed unused code. 2013-03-13 16:51:30 -07:00
Paul Kulchenko
5f25238ba6 Updated function list dropdown to fit toolbar on Linux (helps #89). 2013-03-13 16:47:08 -07:00
Paul Kulchenko
cf95129fc6 Fixed About screen to fit on Linux (helps #89). 2013-03-13 16:46:38 -07:00
Paul Kulchenko
f8b6654cd6 Fixed a warning when setting empty working directory. 2013-03-13 16:45:00 -07:00
Paul Kulchenko
cf001082e2 Removed reference to a dll no longer used. 2013-03-13 13:58:31 -07:00
Paul Kulchenko
c8e2890f60 Enabled full debugging for Corona on OSX. 2013-03-12 16:01:13 -07:00
Paul Kulchenko
9075736cf1 Set 'Courier New' as the default font on Windows.
It turned out that some Windows systems (like XP), don't use 'Courier New'
as the default, and rather use some proportional font, even when
wxFONTFAMILY_MODERN is used, which should pick a fixed pitch font.
2013-03-12 12:17:14 -07:00
Paul Kulchenko
e1cba702f7 Updated windows executable to show properly scaled icons in the Explorer. 2013-03-12 12:04:40 -07:00
Paul Kulchenko
9ffc4cf9dd Fixed wxwidgets issue with wrong cursor shape over editor (ref #89). 2013-03-11 10:35:17 -07:00
Paul Kulchenko
94647152fc Fixed a static analyzer issue with anonymous functions defined in expressions (fixes #3). 2013-03-10 15:59:45 -07:00
Paul Kulchenko
e4a69a63c0 Added a workaround for a crash on OSX when the app is closed while
debugging is in progress (ref #89).

The crash appears to be in wxEvtHandler::Unlink, but I couldn't find the
cause for it:
0   libwx.dylib	0x014d2bd9 wxEvtHandler::Unlink() + 51
1   libwx.dylib	0x014d4023 wxEvtHandler::~wxEvtHandler() + 37
2   libwx.dylib	0x0146d7fa wxProcess::~wxProcess() + 84
3   libwx.dylib	0x01074af9 wxLua_wxProcess_delete_function(void**) + 23
4   libwx.dylib	0x0113300d wxluaO_deletegcobject(lua_State*, int, int) + 425
5   libwx.dylib	0x0111f6f2 wxlua_wxLuaBindClass__gc(lua_State*) + 101
2013-03-09 18:49:35 -08:00
Paul Kulchenko
05e2b483a8 Added window list button to the notepad with editor tabs. 2013-03-09 18:48:40 -08:00
Paul Kulchenko
f2e8c0c213 Updated status bar to use no border around fields. 2013-03-09 18:46:44 -08:00
Paul Kulchenko
43c6be0859 Added centering of current line during debugging. 2013-03-07 20:01:37 -08:00
Paul Kulchenko
fb5ef928fd Improved handling of upvalues with __tostring method in the Stack window. 2013-03-07 19:59:18 -08:00
Paul Kulchenko
3f9be575fd Updated check for wxwidgets version on OSX (helps #89). 2013-03-07 17:11:06 -08:00
Paul Kulchenko
9985cfc50a Fixed OSX crash when tooltips/auto-complete is used (helps #89). 2013-03-07 17:10:19 -08:00
Paul Kulchenko
be018b39fc Updated build scripts to include wxlua patch to fix live coding (helps #89). 2013-03-07 17:09:40 -08:00
Paul Kulchenko
da15c46429 Fixed OSX issues with 2.9.5: numpad keys, switching tabs, and cursor shape when using scratchpad (helps #89). 2013-03-06 22:17:26 -08:00
Paul Kulchenko
0eb71f44d4 Updated indicator description for wx2.9.5; removed license that doesn't apply (helps #89). 2013-03-03 20:03:29 -08:00
Paul Kulchenko
aa6618f002 Updated translation script to work with wxwidgets 2.9.5+ (helps #89). 2013-03-03 19:46:12 -08:00
Paul Kulchenko
e55e28e852 Fixed multi-line paste into console with wxwidgets 2.9.5 (helps #89). 2013-03-03 19:01:05 -08:00
Paul Kulchenko
0e1c937892 Increased default font size for OSX; set 'Monaco' as default font (helps #89). 2013-03-01 20:46:34 -08:00
Paul Kulchenko
65a112a4e9 Removed checks for Windows in font setup; now uses default font. 2013-03-01 20:46:33 -08:00
Paul Kulchenko
0448ebb0e0 Updated function call indicator to use round box with wxwidgets upgrade (helps #89). 2013-03-01 20:46:32 -08:00
Paul Kulchenko
fec7d21ca4 Updated binaries with a patched version of wxlua (helps #89).
The patch is needed to fix live coding issue with wxlua applications. Also
uses a more recent version of wxwidgets, that fixes menu hint on OSX.
2013-03-01 20:46:26 -08:00
Paul Kulchenko
2d29aa3666 Updated large icons for "native" toolbar on OSX (helps #89). 2013-03-01 20:46:06 -08:00
Paul Kulchenko
23a4f5fa04 Reorganized code to allow references to wxver from default style generation. 2013-02-28 00:01:13 -08:00
Paul Kulchenko
80bcc21562 Fixed rearranging editor tabs with drag and drop (helps #89). 2013-02-28 00:00:04 -08:00
Paul Kulchenko
5dcf0a6622 Updated keywords to be re-applied after SaveAs only when needed. 2013-02-25 21:51:50 -08:00
Paul Kulchenko
99c1be49a6 Updated handling of markdown styles to make it more robust (fixes #59). 2013-02-25 21:45:33 -08:00
Paul Kulchenko
2a46b4ece7 Updated file loading logic for a small performance improvement. 2013-02-24 22:17:43 -08:00
Paul Kulchenko
1d77bbdf5a Added multiple selection and multi-cursor editing (wx2.9.5+). 2013-02-24 22:16:05 -08:00
Paul Kulchenko
943517f07e Updated editor handlers to improve performance on OSX with wx2.9.5 (helps #89). 2013-02-24 21:43:21 -08:00
Paul Kulchenko
93b664de45 Fixed an issue with full screen mode on OSX with wx 2.9.5 (helps #89). 2013-02-24 21:43:21 -08:00
Paul Kulchenko
695fed709e Switched to 'native' menu on OSX and added 24x24 icons required (helps #89).
Removed Cut/Copy/Paste/Undo/Redo icons from the toolbar as these are
rarely used and were taking too much space.
2013-02-24 21:43:05 -08:00
Paul Kulchenko
51735ac89d Updated MANIFEST for OSX dylib changes (helps #89). 2013-02-24 21:28:53 -08:00
Paul Kulchenko
5a49699098 Added a check to only activate the Output window if it's not activated.
This reduces flicker by redrawing the project tree only when needed.
2013-02-24 17:53:03 -08:00
Paul Kulchenko
b2b6e82735 Added a check for project tree refresh to only execute on OSX. 2013-02-24 17:53:02 -08:00
Paul Kulchenko
fd3ed2b7da Added a property to store wxwidgets version. 2013-02-24 17:46:59 -08:00
Paul Kulchenko
4da018b8ce Removed files for handling preferences that are no longer used. 2013-02-24 17:46:31 -08:00
Paul Kulchenko
99ad315832 Added dll proxy to make LfW libraries to work with the IDE. 2013-02-23 14:49:40 -08:00
Paul Kulchenko
4bd20406a2 Removed binary libraries not currently used. 2013-02-23 14:33:28 -08:00
Paul Kulchenko
48b51c549a Updated launcher manifest and resource file; resigned windows executable (helps #89). 2013-02-23 14:31:24 -08:00
toiffel
af0a95ddb8 Added wxWidgets 2.9.5 binaries and build scripts 2013-02-22 14:10:02 +07:00
Paul Kulchenko
5db9b6b9b5 Updated applying fold properties to get folds working with wxwidgets 2.9.5+ (helps #89). 2013-02-18 14:08:37 -08:00
toiffel
e1bee48834 Fixed a segfault when closing the application on OS X and Linux 2013-02-18 14:02:02 -08:00
Paul Kulchenko
704f6fed89 Fixed formatting in the About screen for wxwidgets 2.9.x (helps #89). 2013-02-13 13:53:58 -08:00
Paul Kulchenko
c05962c6a6 Updated README with Marmalade Quick support and Corona tutorial. 2013-02-13 13:50:41 -08:00
Paul Kulchenko
7111494545 Updated logic to request user attention for robustness and consistency between platforms. 2013-02-11 11:12:00 -08:00
Paul Kulchenko
2833a6cfb1 Disabled not implemented options for Marmalade. 2013-02-10 20:58:57 -08:00
Paul Kulchenko
e9dc3ff867 Updated CHANGELOG and configuration documentation for 0.35. 2013-02-10 20:10:35 -08:00
Paul Kulchenko
ca8856d77c Updated Marmalade interpreter to run debugging immediately after start. 2013-02-10 20:05:13 -08:00
crazybutcher
17948e06d8 introduce method handling for autocomplete and api resolving 2013-02-10 20:45:38 +01:00
crazybutcher
51777d47c9 Merge remote-tracking branch 'zbstudio/master' 2013-02-10 12:48:25 +01:00
crazybutcher
1714cf6109 improved type guessing: always keep full assignment string, do multiple runs on resolve, strip closed scopes 2013-02-10 12:48:05 +01:00
Paul Kulchenko
2a4cc75f0a Updated Gideros interpreter to run debugging immediately after starting.
Use `debugger.runonstart = false` to disable.
2013-02-09 20:22:16 -08:00
Paul Kulchenko
486cccd1da Added debugger.runonstart option to configure if debugging should run immediately after starting. 2013-02-09 20:21:58 -08:00
Paul Kulchenko
4a93f3e147 Added editor.checkeol option to configure checking for eol encoding in loaded files. 2013-02-09 16:10:14 -08:00
Paul Kulchenko
64871efe6d Added Marmalade Quick support. 2013-02-09 14:38:30 -08:00
Paul Kulchenko
3e382a42e1 Added support for starting Gideros on-device debugging. 2013-02-09 14:34:16 -08:00
Paul Kulchenko
ff973beb32 Added requesting user attention when stopped during debugging. 2013-02-08 23:19:52 -08:00
Paul Kulchenko
ced9908da5 Fixed a rare crash on OSX when closing IDE with an application running under debugger. 2013-02-05 23:54:08 -08:00
Paul Kulchenko
ea52f821c5 Updated Linux startup script to use online versions of wxlua packages (deb files). 2013-02-04 18:03:15 -08:00
Paul Kulchenko
cf2b32c66d Fixed path handling for metalua to avoid conflicts with other modules that may include lexer.lua file. 2013-02-03 23:03:29 -08:00
Paul Kulchenko
462da5b99b Fixed executing commands in the Remote console immediately after
`mobdebug.start()` (closes #100).
2013-02-02 22:14:03 -08:00
Paul Kulchenko
9b481ba8ef Added example for defaulteol configuration option. 2013-01-27 10:12:28 -08:00
Fringale
557bb9cc6a Enhance line-endings handling (CRLF / LF).
Fix auto-indent not working in Linux (and presumably Mac OS X).
Add config option to choose default EOL for new files.
Add EOL auto-detection for existing files.
2013-01-27 17:58:05 +01:00
Paul Kulchenko
2cc06be317 Added skipping binary files when checking for malformed UTF8. 2013-01-25 14:48:07 -08:00
Paul Kulchenko
0afd2b4b8c Updated handling of file: prefix as it's different on Windows and OSX (helps #89). 2013-01-25 14:47:54 -08:00
Paul Kulchenko
818e5cf255 Added configuration option for compact folding. 2013-01-21 11:32:33 -08:00
Paul Kulchenko
1978274686 Updated messages in the starter script. 2013-01-20 18:04:08 -08:00
Paul Kulchenko
9c95e154c1 Fixed case-sensitivity on Windows caused by cross-platform debugging changes. 2013-01-20 17:57:53 -08:00
Paul Kulchenko
4f912a7063 Updated function call parsing to recognize "func{}" and "func''" syntax. 2013-01-19 18:20:09 -08:00
Paul Kulchenko
45cc57058c Fixed invalid escape sequence that fails under LuaJIT. 2013-01-19 18:18:45 -08:00
Paul Kulchenko
d222ed2dd1 Added support for cross-platform remote debugging. 2013-01-18 14:43:01 -08:00
Paul Kulchenko
fba53984eb Added support for script reloading and coroutine debugging under LuaJIT (MobDebug 0.514). 2013-01-18 12:41:50 -08:00
Paul Kulchenko
b810c4b0bf Merge branch 'i18n-fr-updates' of https://github.com/Fringale/ZeroBraneStudio into Fringale-i18n-fr-updates 2013-01-15 21:34:03 -08:00
Paul Kulchenko
6d5a4ad759 Updated os.exit() call in local console to exit gracefully. 2013-01-15 21:31:48 -08:00
Paul Kulchenko
802521b364 Improved reporting of stack and serialization run-time errors.
These errors can be triggered by __tostring methods that may be failing at
run-time. As those are called from the serializer used in the debugger,
any errors from these calls need to be reported back to the application.
2013-01-15 12:21:30 -08:00
Paul Kulchenko
466aecb4b8 Fixed an issue with spec files when a separator (sep) is not specified. 2013-01-15 10:58:01 -08:00
Fringale
c34f31c869 Update French translation with various fixes and tweaks. 2013-01-15 10:38:36 +01:00
Paul Kulchenko
5a1348868e Added Russian translation for new messages. 2013-01-11 22:42:09 -08:00
Paul Kulchenko
45e244f10c Added handling of malformed UTF8 characters in files (fixes #97). 2013-01-11 14:56:36 -08:00
Paul Kulchenko
9b38dd7d74 Enabled live-coding for Corona interpreter. 2013-01-07 09:56:40 -08:00
Paul Kulchenko
7d1098740b Updated MANIFEST to include all configuration files. 2013-01-07 09:37:16 -08:00
Paul Kulchenko
b3ff824806 Added support for debugging Lua 5.2 scripts. 2013-01-07 09:36:40 -08:00
Fringale
db889f217d Update French translation with newly added strings 2013-01-06 12:45:20 +01:00
crazybutcher
e60ca05e64 bugfix in glsl style spec 2013-01-05 18:40:05 +01:00
Paul Kulchenko
1831a9b286 Added workaround for Moai require path issue (fixes #96; fixes #87). 2013-01-04 11:48:06 -08:00
Paul Kulchenko
f3939938b4 Added editor tab popup menu with 'Close All', 'Close Other', and other items. 2013-01-02 22:47:48 -08:00
Paul Kulchenko
2c8b07b1cb Added C/CPP specification file and a configuration example. 2013-01-02 22:39:33 -08:00
Paul Kulchenko
2ef11d5eea Added XCode-like key mapping. 2013-01-02 22:38:13 -08:00
Paul Kulchenko
5d2c618553 Updated 'Close page' and its translations. 2012-12-27 17:32:35 -08:00
Paul Kulchenko
917c2d82c7 Updated configuration examples and documentation (helps #55). 2012-12-20 22:22:07 -08:00
Roland Yonaba
8590d8243c Typos fixes, small changes in French translation 2012-12-14 12:09:30 +00:00
Paul Kulchenko
bc1ddca4f0 Updated the size of the function list dropdown on Windows (helps #89). 2012-12-13 21:16:23 -08:00
Paul Kulchenko
d4bda0a45d Added removing of file: prefix and url decoding of filepaths (helps #89). 2012-12-13 21:09:16 -08:00
Paul Kulchenko
6a49176c0e Added a workaround for returning incorrect project folder (helps #89).
wxwidgets 2.9.x in some cases returns the last segment of the path twice
(at least on Windows), which makes the entire path invalid.
2012-12-13 21:06:59 -08:00
Paul Kulchenko
bfd44ada12 Adjusted handling of filepath to work with relative and absolute paths (helps #89). 2012-12-13 21:04:30 -08:00
Paul Kulchenko
5172135014 Updated MANIFEST to remove unused files. 2012-12-13 14:27:29 -08:00
Paul Kulchenko
1881493b56 Updated README and CHANGELOG for 0.34. 2012-12-12 20:52:56 -08:00
Paul Kulchenko
04599ea184 Removed love2d API calls with spaces in names. 2012-12-12 17:47:18 -08:00
Paul Kulchenko
067ae87dc6 Fixed an issue with overlapping auto-complete suggestions. 2012-12-12 16:24:39 -08:00
Paul Kulchenko
622db1313b Disabled showing auto-complete when the only option is already typed. 2012-12-12 16:21:18 -08:00
Paul Kulchenko
89bb289c6a Fixed auto-complete not working after closed brackets. 2012-12-12 16:18:29 -08:00
Paul Kulchenko
465ed72d51 Added an option to specify the width of the calltip. 2012-12-11 23:47:15 -08:00
Paul Kulchenko
62530ba937 Disabled showing a calltip on mouse over when it's already active. 2012-12-11 23:41:27 -08:00
Paul Kulchenko
1e4be39c29 Updated descriptions for io.* functions; moved file:* functions to a pseudo library (f); helps #84. 2012-12-11 23:35:22 -08:00
Paul Kulchenko
bc69e56e07 Updated LICENSE to add remdebug license information. 2012-12-10 22:53:12 -08:00
Paul Kulchenko
8f7aa92de6 Added showing short descriptions in tooltip for functions without lib/package. 2012-12-09 22:36:45 -08:00
Paul Kulchenko
6b1407f8b3 Switched to showing short tooltips by default as some of the updated Lua API descriptions are very long. 2012-12-09 22:35:00 -08:00
Paul Kulchenko
78bd7c6b79 Fixed tooltip being shown when mouse moving outside of the editor area. 2012-12-09 22:33:59 -08:00
Paul Kulchenko
0890179044 Updated tooltip to show shortened descriptions on mouse-over. 2012-12-09 22:32:20 -08:00
Paul Kulchenko
57af369b66 Added 'Project Directory' menu. 2012-12-09 21:38:15 -08:00
Paul Kulchenko
ca758c03d1 Removed window types from config as they are no longer needed to be listed. 2012-12-07 15:24:03 -08:00
Paul Kulchenko
77602703be Updated CHANGELOG in preparation for v0.34. 2012-12-06 13:42:40 -08:00
Paul Kulchenko
097740d0ef Updated Lua api descriptions (closes #84). 2012-12-06 13:29:38 -08:00
Fringale
585177f79f Lua API: refactor code, add Lua 5.2 functions/values, add or complete desc/args/returns, add debug library. 2012-12-06 12:39:59 -08:00
Fringale
6aa3683823 Add missing Lua 5.2 keywords to Lua spec 2012-12-06 12:39:36 -08:00
Paul Kulchenko
cf272ca733 Added ability to pause scratchpad when the script is completed (closes #83). 2012-12-06 12:06:32 -08:00
Paul Kulchenko
35199d5d98 Added ability to pause and resume scratchpad. 2012-12-06 11:44:34 -08:00
Paul Kulchenko
c394cb7dec Fixed a font zooming bug with Ctrl+MouseWheel.
Backported fix from wxwidgets 2.9.x (http://trac.wxwidgets.org/ticket/14031).
2012-12-06 11:15:56 -08:00
Paul Kulchenko
28490b1c78 Fixed file marking in the project tree after opening a new file. 2012-12-06 11:11:55 -08:00
Paul Kulchenko
4f30271665 Fixed GSL-shell interpreter to use correct folder structure (helps #72). 2012-12-02 09:35:38 -08:00
Paul Kulchenko
3abddc50a1 Fixed using project folders with GSL-shell (helps #72). 2012-12-01 14:01:02 -08:00
Paul Kulchenko
614c43795a Added GSL-shell support (closes #72). 2012-11-29 20:45:39 -08:00
Paul Kulchenko
b734e8d34e Updated CHANGELOG, MANIFEST, and README. 2012-11-29 16:24:23 -08:00
Paul Kulchenko
01aa5d39b7 Added more color schemes (Solarized and Monokai). 2012-11-28 21:12:59 -08:00
Paul Kulchenko
ed30948f7f Added customized yield function for debugging (MobDebug v0.508; closes #81). 2012-11-28 21:06:34 -08:00
Paul Kulchenko
ac8c5bbe53 Fixed an issue with breakpoints not available after aborting tracing on Linux/OSX. 2012-11-27 11:24:23 -08:00
Paul Kulchenko
67ac18af04 Disabled editor autoactivation during debugging when tracing is on. 2012-11-27 11:15:45 -08:00
Paul Kulchenko
6dbf56f984 Added proper hiding of current line marker during debugging (except when tracing). 2012-11-27 10:41:51 -08:00
Paul Kulchenko
c7a66bb68b Fixed an issue with running scratchpad when entry points are configured. 2012-11-27 10:38:45 -08:00
Paul Kulchenko
08d8630147 Extended list of default folders for interpreters where executables are searched for. 2012-11-25 17:05:59 -08:00
Paul Kulchenko
93abd740d8 Added Corona auto-complete support (thanks to Srdjan Markovic). 2012-11-25 16:56:53 -08:00
Paul Kulchenko
8780a3b656 Limited auto-showing windows to Lua interpreter only (related to #80). 2012-11-25 16:54:36 -08:00
Paul Kulchenko
780d23f111 Added logic to show application windows without explicitly listing their class (closes #80); Windows only. 2012-11-24 23:15:54 -08:00
Paul Kulchenko
78736a94e5 Added Moai scratchpad support. 2012-11-20 22:21:20 -08:00
Paul Kulchenko
249554a77c Added missing constants to Moai API. 2012-11-20 14:11:23 -08:00
Paul Kulchenko
bc55f6a72d Added setting focus on the window when a file is loaded in the existing
instance.

Unfortunately doesn't work consistenly across platforms: (1) Linux works
best activating and raising the application window. (2) OSX checks for the
application running and doesn't even get to the "single instance" check;
when started with "bin/lua src/main.lua zbstudio <file>" it correctly
loads the file, but doesn't switch to the app. (3) Windows doesn't
activate the app window all the time (it activates it the first time, but
not subsequent times).
2012-11-18 20:24:19 -08:00
Paul Kulchenko
5af9d4d487 Added two more wxwindow window classes to the list of windows to show (Windows). 2012-11-18 20:16:07 -08:00
Paul Kulchenko
31e21d2e6a Fixed Linux launcher to pass filename parameter to the IDE. 2012-11-18 20:14:46 -08:00
Paul Kulchenko
74e8021306 Fixed 'messages' script to make it run on OSX (helps #70). 2012-11-17 16:57:26 -08:00
Paul Kulchenko
01a48dcfcc Updated MobDebug to v0.507 to fix serialization issues (closes #77).
Added handling of metatables with __tostring method.
Fixed an issue with serializing shared functions also used as keys in
tables.
2012-11-16 21:33:14 -08:00
Paul Kulchenko
18005ea0c2 Added scheme picker script to test color schemes from the IDE. 2012-11-16 14:54:04 -08:00
Paul Kulchenko
dce5f99130 Added Zenburn as a color scheme. 2012-11-16 14:49:53 -08:00
Paul Kulchenko
af9d01727f Updated style processing to support styling of markup and allow dynamic switching of color schemes. 2012-11-16 14:44:32 -08:00
Paul Kulchenko
8d09cc9c09 Added styling for markers and Output/Console windows. 2012-11-14 23:33:20 -08:00
Paul Kulchenko
1bc9b287df Updated Lua keyword definitions to improve grouping for styling (closes #79). 2012-11-14 11:50:52 -08:00
Paul Kulchenko
1cc2fc1bf2 Updated love2d api to an updated version as of 11/1/2012 (fixes #78). 2012-11-13 16:52:48 -08:00
Paul Kulchenko
5c7beb0079 Added Italian translation (thanks to Leo Bartoloni). 2012-11-13 16:11:35 -08:00
Paul Kulchenko
71d1ea13a8 Disabled functions that are not available under Corona on OSX (helps #73). 2012-11-13 15:59:55 -08:00
Paul Kulchenko
9879660522 Fixed support for Corona SDK on OSX (helps #73).
The debugging is limited on OSX comparing to the Windows version (appears
to be a limitation of Corona SDK with no known workaround): remote console
and watches are not working.
2012-11-12 15:15:45 -08:00
Paul Kulchenko
ae75c9823f Fixed 'Edit | Paste' shortcut. 2012-11-12 10:31:39 -08:00
Paul Kulchenko
bfbc5d2000 Fixed typos in French translation. 2012-11-11 22:39:52 -08:00
Paul Kulchenko
841beb31ce Added Spanish translation (thanks to Inigo Sola). 2012-11-11 22:38:52 -08:00
Paul Kulchenko
119a5eb2ae Added reporting of run-time errors from remote processes (helps #73). 2012-11-10 21:06:26 -08:00
Paul Kulchenko
0729da3403 Added 'tomorrow' color theme. 2012-11-10 19:54:49 -08:00
Paul Kulchenko
29e56be459 Fixed fold style to properly set background color. 2012-11-10 18:14:20 -08:00
Paul Kulchenko
17bdb480c9 Added redirect of remote 'print' commands for Gideros applications. 2012-11-08 16:57:08 -08:00
Paul Kulchenko
4da3dde68d Added check for 'main.lua' in Corona projects. 2012-11-08 16:56:19 -08:00
Paul Kulchenko
9b330c26ca Added ability to suspend a running application even when there is no editor tab or file to activate. 2012-11-08 16:24:52 -08:00
Paul Kulchenko
9bdb1d016b Added serialization of remote 'print' results and an output filter for debugging (helps #73). 2012-11-08 13:42:21 -08:00
Paul Kulchenko
4a881cf855 Added redirect of remote 'print' commands to the Output window in the IDE (helps #73). 2012-11-07 19:05:54 -08:00
toiffel
411eb2d338 Finished Russian translation 2012-11-07 09:06:30 -08:00
Paul Kulchenko
7fea9b4ec7 Added Corona SDK support (closes #73). 2012-11-06 22:35:14 -08:00
Paul Kulchenko
f0f9a37c7d Fixed an issue with a config file being loaded into the editor when specified in the command line. 2012-11-04 16:37:51 -08:00
Paul Kulchenko
e7c374c39f Fixed an issue with markdown formatting not working after setting styles from a config file (fixes #74). 2012-11-04 16:26:58 -08:00
crazybutcher
ba7a7c470d fixup luxinia interpreters for new load order of config 2012-11-04 18:39:34 +01:00
Paul Kulchenko
67b3e3fe5b Added French translation (thanks to Roland Yonaba). 2012-11-04 08:48:20 -08:00
Paul Kulchenko
32299a29b2 Fixed capitalization in Russian translation. 2012-11-04 00:01:03 -07:00
Paul Kulchenko
896e9f7c75 Fixed spacing in console messages. 2012-11-04 00:00:23 -07:00
Paul Kulchenko
ab3caee258 Added (more) verbose output to debugger to assist in troubleshooting. 2012-11-03 23:59:53 -07:00
crazybutcher
3f1d617c8f Merge remote-tracking branch 'zbstudio/master'
Conflicts:
	cfg/estrela.lua
2012-11-03 16:07:41 +01:00
crazybutcher
b549f807bb support for luxinia1debug variant 2012-11-03 16:04:21 +01:00
crazybutcher
d36dbc005c old estrela behavior for openend files 2012-11-03 16:00:57 +01:00
crazybutcher
95fce2cdc8 removed luaapi wrappers for cg/cuda (outdated) 2012-11-03 15:59:12 +01:00
Paul Kulchenko
a897472f05 Completed reorganization of front-end processing (closes #67 and #5).
Moved specs/interpreters/tools to be loaded before configuration files are processed.
2012-10-29 22:48:02 -07:00
Paul Kulchenko
23decac1de Merge branch 'master' of git://estrelaeditor.git.sourceforge.net/gitroot/estrelaeditor/estrelaeditor 2012-10-29 17:47:58 -07:00
Paul Kulchenko
60994d0da8 Added handling of LUA_DEV to make loading Lua for Windows libraries working out of the box (fixes #71). 2012-10-29 17:42:35 -07:00
Paul Kulchenko
af02cb2c24 Added internationalization support (closes #70). 2012-10-29 11:59:54 -07:00
crazybutcher
c7d6f9726a minor changes to tools' settings and clcc requring an environment variable 2012-10-27 17:43:02 +02:00
crazybutcher
655f3811de notes about estrela being gone and compatibility 2012-10-27 17:42:15 +02:00
crazybutcher
22f1540a5c Merge remote-tracking branch 'zbstudio/master' 2012-10-27 17:06:00 +02:00
Paul Kulchenko
f576e9000d Added multi-tab support for scratchpad. 2012-10-26 22:22:39 -07:00
Paul Kulchenko
589f7d94d2 Added documentation on accelerator/shortcut syntax. 2012-10-26 22:04:00 -07:00
Paul Kulchenko
16bb3cb6cb Added key map to change key binding for menu and toolbar items from a config file (closes #64). 2012-10-25 13:30:12 -07:00
Paul Kulchenko
6da6153053 Added hiding IDE while closing and saving configuration. 2012-10-24 22:06:41 -07:00
Paul Kulchenko
a7797f9d9a Updated CHANGELOG and MANIFEST for v0.33. 2012-10-22 17:52:36 -07:00
Paul Kulchenko
78e1f176a5 Updated OSX build script to include 'myprograms' folder if exists. 2012-10-22 17:44:36 -07:00
Paul Kulchenko
a592893b4d Updated Gideros interpreter to extend wait time for Gideros player to start. 2012-10-22 15:59:01 -07:00
Paul Kulchenko
1a1f25c135 Added configuration option to specify hostname when the default one is not reachable (fixes #68). 2012-10-21 13:53:42 -07:00
Paul Kulchenko
00692634a8 Updated text and added timestamp to auto-recover message. 2012-10-20 21:24:13 -07:00
Paul Kulchenko
1037389ce0 Added search for Moai and Love2d executables in default locations on OSX and Windows. 2012-10-20 21:17:34 -07:00
Paul Kulchenko
cc645ebb69 Added values from package.path to LUA_PATH that is used for processes started from the IDE. 2012-10-20 20:29:34 -07:00
Paul Kulchenko
544ada09e2 Restored animation of closing tabs when switching projects.
Using Freeze/Thaw to disable animation didn't work well as it was
interfering with popup messages (for example, when a file is modified) and
was not consistent with the behavior of opening files.
2012-10-20 20:18:36 -07:00
Paul Kulchenko
85d14ca6fd Added conversion of relative filenames to absolute when used in command line. 2012-10-20 11:37:15 -07:00
Paul Kulchenko
1d33dd6482 Added handling of command line parameters on OSX and Linux; updated documentation. 2012-10-20 10:42:04 -07:00
Paul Kulchenko
faa0e0e16d Added auto-recovery to save/restore editor content (fixes #23). 2012-10-19 13:59:55 -07:00
Paul Kulchenko
bb60b9421c Updated configuration example to avoid using ide.spec that is not available (fixes #67). 2012-10-19 12:43:11 -07:00
Paul Kulchenko
ab44438859 Updated CMake build script to handle wildcards in the MANIFEST. 2012-10-17 12:37:54 -07:00
Paul Kulchenko
a463b5fd28 Moved all Estrela features into a separate bundle that can be loaded using cfg/estrela.lua config. 2012-10-17 12:37:26 -07:00
Paul Kulchenko
d021bfa986 Fixed an issue with the current file name not showing in the title bar after startup. 2012-10-17 11:43:49 -07:00
Paul Kulchenko
beeee9e32f Removed multiple file types offered in Save As dialog.
All known types have been listed previously, which created problems
with different extensions assigned by default on different platforms.
Only the current extension is now being offered.
If the current file has no extension, then "*.*" is used as a mask.
2012-10-17 11:39:15 -07:00
Paul Kulchenko
dd682791e1 Updated changelog and documentation on configuration options. 2012-10-17 11:07:50 -07:00
Paul Kulchenko
dddcd96755 Fixed opening a non-existing file from the Recent Files list. 2012-10-16 15:09:57 -07:00
Paul Kulchenko
cb56311090 Fixed Find/Replace checkboxes on OSX (closes #63).
Fixed formatting/alignment of fields in Find/Replace dialog on OSX.
2012-10-16 15:08:14 -07:00
Paul Kulchenko
952f8325c0 Fixed Find/Replace dialog checkboxes that didn't react to clicks on OSX
(fixes #63).

It turned out that StaticBox(Sizer) needs to be created before checkboxes,
otherwise checkboxes don't get any clicks on OSX as the z-order for event
traversal appears to be incorrect.
2012-10-16 12:58:10 -07:00
crazybutcher
238a407a2c compute support for cgc, removed automatic keybindings for tools 2012-10-16 14:09:04 +02:00
Paul Kulchenko
0526fd4069 Improved reporting of compilation and run-time errors when running as scratchpad. 2012-10-14 13:54:09 -07:00
Paul Kulchenko
c0e369b175 Fixed an issue with restoring sessions with more than 9 files.
The indexes were sorted alphabetically, instead of numerically, which
caused files with indexes 1x to appear after index 1, instead of 9.
2012-10-14 09:59:01 -07:00
Paul Kulchenko
8e1d823eea Fixed an error when switching to a new project folder. 2012-10-12 17:34:24 -07:00
Paul Kulchenko
b73ef167bc Disabled closing files when switching projects if they are present in both projects. 2012-10-11 15:15:41 -07:00
Paul Kulchenko
7c889880d8 Updated autoindent rules to minimize de-indenting on already indented lines. 2012-10-11 15:13:32 -07:00
Paul Kulchenko
0387e32072 Made debugger strict.lua and LuaJIT friendly (upgraded to MobDebug v0.502). 2012-10-11 11:38:16 -07:00
Paul Kulchenko
e0c18c189a Disabled auto-complete in comments and strings. 2012-10-09 13:13:08 -07:00
Paul Kulchenko
489aaa3e8e Fixed transparency on toolbar search buttons. 2012-10-09 13:10:18 -07:00
Paul Kulchenko
fd92861998 Updated configuration examples to add editor settings and fix user.lua path. 2012-10-09 12:57:36 -07:00
Paul Kulchenko
bba9790a2a Added syntax aware indentation. 2012-10-09 12:04:44 -07:00
Paul Kulchenko
d68985c4a9 Added re/storing open files and interpreter when switching project folders. 2012-10-09 11:02:56 -07:00
Paul Kulchenko
4463cbd327 Updated changelog. 2012-10-07 21:24:46 -07:00
Paul Kulchenko
0d619b1326 Enable scratchpad support in the debugger when interpreter is capable of providing it. 2012-10-03 14:33:12 -07:00
Paul Kulchenko
8c2a4792f6 Added Gideros auto-complete and live coding support (closes #62). 2012-10-03 13:29:50 -07:00
Paul Kulchenko
0f71d4b9a0 Updated MANIFEST to add new debugger buttons. 2012-10-03 12:44:22 -07:00
Paul Kulchenko
30863a3dcc Added stopping gideros player when no connection can be made. 2012-10-02 23:32:17 -07:00
Paul Kulchenko
f74f56b917 Fixed an auto-complete issue with mixed case dynamic words (fixes #60). 2012-10-02 14:22:38 -07:00
Paul Kulchenko
a236d299de Added debugging-related buttons to the toolbar. 2012-10-02 11:57:11 -07:00
Paul Kulchenko
be54763f7e Disabled toggling breakpoints while debugger is running (as they wouldn't be changed anyway). 2012-10-02 11:52:57 -07:00
Paul Kulchenko
663b7cab8b Fixed 'Trying to solve a NULL hostname' warning message. 2012-10-02 11:51:41 -07:00
Paul Kulchenko
c68d45d697 Changed path for user.lua from .ZeroBraneStudio to .zbstudio to avoid name conflict on Linux (helps #44). 2012-10-02 11:49:37 -07:00
Paul Kulchenko
8b7407c3f2 Updated gideros integration to avoid blocking the IDE when the bridge does not respond; enabled debug output on OSX. 2012-10-02 11:46:13 -07:00
Paul Kulchenko
1b29f2e05f Added Gideros integration on OSX; added search for gideros in default locations on Windows and OSX. 2012-10-01 10:40:52 -07:00
Paul Kulchenko
8d4ce56619 Added Gideros integration and debugging support. 2012-09-30 21:49:52 -07:00
Paul Kulchenko
67da97f32f Disabled 'Run as Scratchpad' in the menu for those intepreters that don't support scratchpad. 2012-09-30 21:47:39 -07:00
Paul Kulchenko
46aa3575cf Merge branch 'linux' of https://github.com/toiffel/ZeroBraneStudio 2012-09-29 17:20:43 -07:00
Paul Kulchenko
acc635b9b5 Updated readme with screenshot and changelog with recent changes. 2012-09-29 16:47:02 -07:00
toiffel
99e64f51cd Sort files by name in project filetree only on Linux 2012-09-29 11:39:03 +07:00
toiffel
9002286bcf Fixed mouse cursor behavior in scratchpad mode on Linux (for real this time) 2012-09-29 11:39:03 +07:00
Paul Kulchenko
72b5690689 Added zbstudio.sh script to run on OSX/Linux; updated permissions (closes #15). 2012-09-28 15:13:41 -07:00
Paul Kulchenko
e488ed095c Disabled 'not activated file for debugging' message when auto-activation is disabled. 2012-09-28 14:32:07 -07:00
Paul Kulchenko
9c54fb6507 Fixed a typo that prevented a corner case in autocomplete from working. 2012-09-28 14:16:25 -07:00
Paul Kulchenko
065422fa2d Fixed inconsistent error messages about various config files. Changed searching for user config in '$HOME/.ZeroBraneStudio' from '$HOME/.zbs'. 2012-09-28 10:32:20 -07:00
Paul Kulchenko
0c2d6b6d48 Added variable ratio for sliders in scratchpad.
The ratio depends on the number being adjusted. 1 will change to 2, but
1.1 will change to 1.2 and 1.01 will change to 1.02. 0.99 will change to
1.00 to preserve the ratio.
2012-09-27 10:59:19 -07:00
Paul Kulchenko
89cc631a58 Added editor.autoactivate parameter (false by default) to specify if files should be opened by the debugger. 2012-09-27 09:18:01 -07:00
Paul Kulchenko
83e725ef97 Fixed an issue with auto-complete when dot or colon is used (fixes #56). 2012-09-27 09:15:16 -07:00
Paul Kulchenko
76ec0de7ab Reorganized files and removed those that are no longer needed. 2012-09-26 20:00:58 -07:00
Paul Kulchenko
38a176d84f Updated a warning message about single instance communication. 2012-09-25 22:15:49 -07:00
Paul Kulchenko
3bb22f4c48 Added auto-activation of files requested during debugging. 2012-09-25 22:15:07 -07:00
Paul Kulchenko
7b60461787 Fixed an issue with debugging scripts started using absolute file path. 2012-09-25 22:02:28 -07:00
Paul Kulchenko
843024ec1d Fixed setting working directory for interpreters to the file path when the project directory is not set. 2012-09-25 10:22:24 -07:00
Paul Kulchenko
b4e1dda0d9 Fixed an issue with Backspace not closing auto-complete suggestions. 2012-09-25 10:20:29 -07:00
Paul Kulchenko
394c93e9e6 Merge branch 'linux' of https://github.com/toiffel/ZeroBraneStudio 2012-09-24 22:43:25 -07:00
toiffel
ded66391ac CMakeLists.txt moved to build folder 2012-09-25 11:22:35 +07:00
Paul Kulchenko
d81de133a9 Updated MobDebug to v0.497 to fix issues and improve performance.
Performance improvements.
Added conversion of file names on windows to lower case to make
breakpoints work.
Added reporting errors in deserializing stack data.
Fixed an issue with returning stack values with circular references.
Fixed an issue with wx IDLE event on Linux.
2012-09-24 17:03:56 -07:00
Paul Kulchenko
0f6316619f Added configuration parameter for the number of characters typed before displaying auto-complete suggestions for dynamic words. 2012-09-24 17:01:23 -07:00
Paul Kulchenko
ab8a38fd79 Added proper closing of the application after Shutdown/Logoff events (fixes #57). 2012-09-23 21:37:29 -07:00
Paul Kulchenko
c91d287025 Fixed enabling items in the Edit menu (fixes #56). 2012-09-23 20:30:18 -07:00
toiffel
9fa8c7a972 Small regex fixes 2012-09-24 07:53:18 +07:00
toiffel
ce90e7898f Support for MANIFEST files 2012-09-24 07:10:53 +07:00
toiffel
4cafb3c201 Removed estrela frontend, disabled system mobdebug 2012-09-24 01:29:54 +07:00
toiffel
60bc64283d OS X port of CMakeLists.txt 2012-09-22 22:42:37 +07:00
toiffel
83dc1c5065 unix_starter.cpp replaced with shell script 2012-09-22 01:24:16 +07:00
toiffel
124f70d342 Windows port of CMakeLists.txt 2012-09-22 01:24:16 +07:00
toiffel
1400bf6b3d Added icons of different sizes for Linux hicolor theme 2012-09-22 01:24:16 +07:00
toiffel
8f26e2df17 Added Linux .desktop file 2012-09-22 01:24:16 +07:00
toiffel
49b9b66394 Support for install in CMakeLists.txt 2012-09-22 01:24:16 +07:00
toiffel
ee9fe71657 Added system introspection to CMakeLists.txt 2012-09-22 01:24:16 +07:00
toiffel
ba0efe224a Implemented unix_starter.cpp 2012-09-22 01:24:16 +07:00
toiffel
96516c9454 Added initial CMakeLists.txt and unix_starter.cpp stub 2012-09-22 01:24:16 +07:00
toiffel
e6b8533cf9 - Fixed small UI issues with toolbar buttons
- Sort items by name in file tree
2012-09-22 01:24:15 +07:00
Paul Kulchenko
185ebb5bbf Added Moai auto-complete (closes #52). 2012-09-20 17:26:19 -07:00
Paul Kulchenko
f8b447425e Fixed function list in the toolbar on Mac (helps #14). 2012-09-20 11:12:57 -07:00
Paul Kulchenko
7330ac21ad Disabled tooltip when scratchpad is on (fixes #51). 2012-09-19 15:56:43 -07:00
Paul Kulchenko
e6bd7af1d7 Fixed deleting of comment blocks with hidden markup (fixes #40). 2012-09-19 15:54:28 -07:00
Paul Kulchenko
979b318647 Added hiding auto-complete suggestions on losing focus in the editor. 2012-09-18 17:57:29 -07:00
Paul Kulchenko
16a5934c52 Fixed an issue with function list when all editor tabs are closed. 2012-09-18 17:52:05 -07:00
Paul Kulchenko
2d22060e2c Disabled showing calltip when the editor is not in focus. 2012-09-14 21:59:41 -07:00
Paul Kulchenko
82071e6ce1 Added proper reporting of errors in the stack window. 2012-09-13 16:34:55 -07:00
Paul Kulchenko
6a23d09821 Fixed multiple calltips shown on Linux (helps #15).
On Linux DWELLSTART event seems to be generated even for those editor
windows that are not active. What's worse, when generated the event
seems to report "old" position when retrieved using event:GetX and
event:GetY, so instead we use wxGetMousePosition.
2012-09-12 18:04:48 -07:00
Paul Kulchenko
c4b9d3e31c Disabled showing calltip over markup in comments. 2012-09-12 17:45:13 -07:00
Paul Kulchenko
9b50cb3525 Fixed an issue with mouse cursor in scratchpad not properly updated on Linux (fixes #49; helps #15). 2012-09-11 20:06:15 -07:00
Paul Kulchenko
49e56f8f3c Fixed an issue with static analyzer that failes on function names like a.b.c (fixes #50). 2012-09-11 20:03:29 -07:00
Paul Kulchenko
a84f362c1f Fixed disabling Paste menu on Linux when needed (fixes #46; helps #15). 2012-09-11 11:23:29 -07:00
Paul Kulchenko
cfe5b37041 Fixed an issue with context menu on Linux (fixes #47; helps #15). 2012-09-11 11:21:25 -07:00
Paul Kulchenko
e9351c7fde Resolved conflict between lua executable names on Windows and Mac. 2012-09-11 11:17:32 -07:00
Paul Kulchenko
305f48ef6f Added wxlua.deb file and install script that pull and build all required dependencies on Linux (covers most of #15). 2012-09-10 22:27:08 -07:00
Paul Kulchenko
5ccafe93a8 Added osx executables and build files. 2012-09-10 22:20:46 -07:00
Paul Kulchenko
0f14a54843 Updated configuring toolbar size to improve Linux compatibility. 2012-09-10 21:04:42 -07:00
Paul Kulchenko
ac4a2598a3 Fixed debugger failure when debugging is initiated externally and there is an unsaved file in one of editor tabs. 2012-09-10 21:03:37 -07:00
Paul Kulchenko
66fdef6088 Fixed stopping the debugger when an editor tab where debugging happens is closed.
Closing tab didn't work when the debugging session was initiated
externally and not by the IDE.
2012-09-08 23:33:56 -07:00
Paul Kulchenko
4685fed4bb Updated cpath processing to allow Linux version to run side-by-side with Windows and Mac. 2012-09-07 23:36:02 -07:00
Paul Kulchenko
c4a3036794 Added disabling full screen mode when the last editor tab is closed. 2012-09-07 23:13:39 -07:00
Paul Kulchenko
fa5c31a7ec Fixed enabling of several menu items with no editor tab (fixes #42).
Fixed saveAll to allow saving of untitled.lua files;
  Disabled show tooltip if there is no editor tab;
  Disabled save if there is no editor tab;
  Disabled show prev/next in search if there is no editor tab;
  Enabled search/replace in files even if there is no editor tab;
  Disabled switching to fullscreen if there is no editor tab.
2012-09-07 22:34:24 -07:00
Paul Kulchenko
985b2c288b Fixed an issue with loading stock icons on Linux. 2012-09-07 12:15:35 -07:00
Paul Kulchenko
722378debb Added proper reporting of errors in config files. 2012-09-07 12:14:22 -07:00
Paul Kulchenko
4c37b51ae1 Added toggling folders in project pane by single click (fixes #41). 2012-09-07 12:13:12 -07:00
Paul Kulchenko
3e5f0ebf4d Added examples for configuring tabs and moai entry points. 2012-09-07 09:11:01 -07:00
Paul Kulchenko
fa522ae36b Added reporting compilation success rate (fixes #39) 2012-09-06 13:22:36 -07:00
Paul Kulchenko
6b85e36fd6 Updated licensing information. 2012-09-06 11:58:22 -07:00
Paul Kulchenko
fc420943b2 Added shortcuts for adding and removing watches. 2012-09-05 16:21:13 -07:00
Paul Kulchenko
989603655a Added highlighting rows with updated values in the Watch window. 2012-09-05 15:21:38 -07:00
Paul Kulchenko
543c0d7fad Added 'Add Watch Expression' and 'Evaluate in Console' context menu items in the editor. 2012-09-05 15:19:30 -07:00
Paul Kulchenko
cfd0d98270 Added handling of canceling editing in adding a watch. 2012-09-05 15:15:45 -07:00
Paul Kulchenko
e802e38dc2 Fixed Cut/Copy menu items to reflect proper status in the editor. 2012-09-05 11:34:28 -07:00
Paul Kulchenko
ac566de0ba Fixed typo in the static analyzer output 2012-09-04 16:31:17 -07:00
Paul Kulchenko
8419287316 Updated changelog for v0.32 2012-09-03 16:53:50 -07:00
Paul Kulchenko
27d1d159f6 Added configuration option for specifying entry points for moai projects (moai.entrypoints). 2012-09-02 21:21:05 -07:00
Paul Kulchenko
491d37038a Added changelog. 2012-09-02 19:58:16 -07:00
Paul Kulchenko
67eee4f9ef Corrected an image with Lua files used in the project tree 2012-09-02 14:23:40 -07:00
Paul Kulchenko
552a7373ca Switched moai to starting debugging right away without stopping on the first line. 2012-09-01 22:54:06 -07:00
Paul Kulchenko
376a25dfdd Added option to start debugging without stopping on the first line. 2012-09-01 22:53:38 -07:00
Paul Kulchenko
7945a09811 Fixed an issue with debugger not activating files with relative path information 2012-08-31 16:20:56 -07:00
Paul Kulchenko
327f650121 Fixed 'break' command to work after coming from debugger calls (like on()) 2012-08-31 15:58:10 -07:00
Paul Kulchenko
9bceb449e8 Added an IO filter to fix an issue with 0d0d0a line endings on Windows.
Scintilla doesn't strictly follow SetEOLMode setting and accepts both 0d
and 0d0a (and possibly 0a too) as line endings on Windows. Unfortunately,
the standard Lua interpreter does the right thing and only recognizes 0d0a
as the valid marker. This means line numbers are going to be different in
two cases, which creates a problem for breakpoints during debugging.
2012-08-31 15:48:37 -07:00
Paul Kulchenko
4278c25c60 Fixed an issue with highlighting selected item in the project tree.
An attempt to unhighlight the current item (that could have been
removed from the tree when the project directory is changed) led to
a crash of the application on OSX (but not on Windows).
2012-08-31 15:13:33 -07:00
Paul Kulchenko
7f47506eae Upgraded to mobdebug v0.489 to add support for debugging moai callbacks 2012-08-30 12:20:44 -07:00
Paul Kulchenko
b0b137eaf1 Added refresh of Stack and Watch windows to show updated values after executing a statement in remote shell 2012-08-30 12:13:32 -07:00
Paul Kulchenko
d1d29ced43 Added display of complex values on multiple lines in shell with '=' 2012-08-30 11:40:47 -07:00
Paul Kulchenko
2795d4d9ce Added rockspec to the list of extensions for lua (fixes #37) 2012-08-29 14:17:56 -07:00
Paul Kulchenko
02845f2e87 Added a check to avoid evaluating keywords in tooltip 2012-08-29 11:54:54 -07:00
Paul Kulchenko
ec46531c55 Merge branch 'master' of git://estrelaeditor.git.sourceforge.net/gitroot/estrelaeditor/estrelaeditor 2012-08-28 23:00:22 -07:00
Paul Kulchenko
9895f06f97 Added correctly stripped version of wx.dll (used --strip-unneded instead of --strip-all) 2012-08-28 22:39:31 -07:00
Paul Kulchenko
a67feb86aa Added current interpreter to the status bar; adding closing debugger when the interpreter is changed 2012-08-28 21:57:52 -07:00
Paul Kulchenko
6b990b652c Updated status bar style to make it consistent across platforms 2012-08-28 21:56:21 -07:00
Paul Kulchenko
7a2326cc9e Fixed evaluation of foo:bar in tooltip (now evaluates as foo.bar) 2012-08-28 21:26:59 -07:00
crazybutcher
e129f486d9 Merge remote-tracking branch 'zbstudio/master'
Conflicts:
	bin/lua51.dll
2012-08-25 15:48:54 +02:00
Paul Kulchenko
c09d9fc143 Updated wx.dll to include missing dependencies: libstdc++-6.dll and libgcc_s_dw2-1.dll (fixes #33) 2012-08-22 22:45:37 -07:00
crazybutcher
52ef014941 updated GLSL to 4.3 status
cg tool: glsl compilation no longer requires a selected word (main is always entry)
2012-08-22 16:53:45 +02:00
Paul Kulchenko
e79fedf764 Added aborting scratchpad processing when an interpreter can't start or report a fatal error 2012-08-20 21:25:34 -07:00
Paul Kulchenko
b7544577df Refactored LUA_PATH/CPATH processing to set it for all interpreters 2012-08-20 21:23:33 -07:00
Paul Kulchenko
53110b3b2f Updated wx.dll to fix scratchpad processing.
Partially reverted wxlua commit r104
(http://wxlua.svn.sourceforge.net/viewvc/wxlua?view=revision&revision=104).
2012-08-20 21:18:54 -07:00
Paul Kulchenko
d6ee3d1278 Added calltip on mouseover for functions during editing and for variables/expressions during debugging 2012-08-20 11:18:15 -07:00
Paul Kulchenko
c0109a26d1 Added a workaround for GetExecutablePath() reporting 'wx.dll' instead of a proper exe name with wxlua 2.8.12.2 on Windows 2012-08-20 10:47:57 -07:00
Paul Kulchenko
2a706f5bf3 Updated test module to use stringified values for comparison 2012-08-20 08:55:49 -07:00
Paul Kulchenko
1f266e04ab Added moai to the manifest 2012-08-19 23:25:13 -07:00
Paul Kulchenko
f45d6f84a3 Changed reporting of program execution time from CPU time to user time 2012-08-18 23:24:53 -07:00
Paul Kulchenko
76b8b7b07b Reassigned hotkeys in the Project menu to minimize conflicts on Mac 2012-08-18 23:22:20 -07:00
Paul Kulchenko
d45f893943 Fixed debugger termination after internal errors 2012-08-18 16:54:14 -07:00
Paul Kulchenko
53e725cf03 Removed .bak files from being replaced in when backup copies are saved 2012-08-18 16:41:12 -07:00
Paul Kulchenko
8a66df19fa Added support for unicode path files on Windows (fixes #30).
Replaced GetCwd() with wx.wxStandardPaths.Get():GetExecutablePath() as the
former doesn't return proper unicode path (at least in wxlua 2.8.12.2).
Replaced io.open with wxFile operations and disabled default error reporting.
Replaced os.rename with wxRenameFile.
Added support for unicode in dofile for Lua (replaced unicode names with
short names using winapi).
Fixed navigation in the Output window to recognize unicode file names.
Upgraded to MobDebug v0.485 to make debugging/breakpoints/step work for
files with unicode paths.
2012-08-17 22:14:27 -07:00
Paul Kulchenko
13be57ae39 Added an option to set path to lua executable 2012-08-16 17:32:43 -07:00
Paul Kulchenko
684150714f Updated love2d interpreter to use the project folder to check for
main.lua.

This allows Run/Debug project with any project file being currently active.
2012-08-11 22:27:41 -07:00
Paul Kulchenko
01e23f448e Fixed activating current file in the project tree on Mac (closes #29) 2012-08-11 22:25:38 -07:00
crazybutcher
036ec3534a modified slightly so ffitoapi can be run standalone 2012-08-11 15:37:51 +02:00
crazybutcher
af57806c69 updated luxinia2's glewgl and added anttweakbar 2012-08-11 15:36:19 +02:00
Paul Kulchenko
a4773563e9 Fixed running scripts with single quotes in path names 2012-08-07 20:10:52 -07:00
Paul Kulchenko
195c463a60 Added error handler to trap and display debugger errors 2012-08-07 19:56:07 -07:00
Paul Kulchenko
8cbf20ae42 Removed explicit path conversions and comparisons 2012-08-07 19:54:36 -07:00
Paul Kulchenko
a11bd6f0d3 Added search in PATH for love2d executable 2012-08-07 18:14:57 -07:00
Paul Kulchenko
1fc12a8a76 Fixed an issue with Run/Debug commands when IDE path includes exclamation mark ('!') 2012-08-07 17:01:26 -07:00
Paul Kulchenko
9a1e681569 Updated moai support to use full path to executable and to search for config.lua 2012-08-07 12:38:08 -07:00
Paul Kulchenko
43083742e6 Updated coroutine debugging to allow stepping through coroutine.resume/.yield calls 2012-08-06 16:40:29 -07:00
Paul Kulchenko
9a5b481189 Changed the call to unhide windows to the async version (ShowWindowAsync) to avoid blocking the IDE when the application doesn't respond 2012-08-05 21:07:22 -07:00
Paul Kulchenko
565f8e74fb Signed zbstudio executable to avoid issues with files not being saved without admin privileges and to remove warning about 'unknown publisher' on windows (fixes #25) 2012-08-05 18:05:17 -07:00
Paul Kulchenko
b1b87e9013 Fixed an issue with the app not starting on those systems that don't have HOME environment variable; fixes #28 2012-08-05 18:00:02 -07:00
Paul Kulchenko
539eddbf9d Fixed an issue with showing/hiding GUI windows that was occasionally causing a runtime error when the window disappears before it is manipulated 2012-08-03 12:43:58 -07:00
Paul Kulchenko
0abcff015e Added moai interpreter 2012-08-02 17:51:32 -07:00
Paul Kulchenko
7bb74b5fb4 Fixed returning proper name for unsaved files in reporting compilation and static analysis results; moved default names to ide.config (fixes #26) 2012-08-01 16:30:35 -07:00
Paul Kulchenko
b9bc6454b4 Added reporting of function name of the form a.b and a:b in static analysis (fixes #27) 2012-08-01 15:49:37 -07:00
Paul Kulchenko
5734455818 Merge branch 'master' of github.com:pkulchenko/ZeroBraneStudio 2012-08-01 15:07:06 -07:00
Paul Kulchenko
e6e0870a11 Merge pull request #24 from Odie/master
Added ability for user to keep their settings file in their home directory
2012-08-01 15:06:07 -07:00
Paul Kulchenko
2c45207436 Fixed pasting text into the Find dialog and project path box on Mac (fixes #22) 2012-08-01 15:02:36 -07:00
Jonathan Shieh
bf09d3748c Added per user settings file.
Users can now move their settings file to ~/.zbs/user.lua
2012-08-01 10:54:40 +08:00
Paul Kulchenko
452f99826e Upgraded to wxlua 2.8.12.2 (wxwidgets 2.8.12; unicode version); added
lua51.dll proxy (fixes #10 and #7)
2012-07-30 23:11:30 -07:00
Paul Kulchenko
bbfc1c3624 Reorganized handling of automcomplete event (to use AddPendingEvent instead of PostEvent) to avoid runtime application error 2012-07-30 23:02:47 -07:00
Paul Kulchenko
429bb24cb4 Upgraded to mobdebug 0.479 to fix bugs with localization of variables during debugging and handling dashes in paths; added support for coroutine debugging and on/off methods to enable debugging for selected code fragments (to improve performance under the debugger) 2012-07-25 23:10:23 -07:00
Paul Kulchenko
2a8e7fe423 Added ignoring Cmd-key combinations on Mac as this should be handled by wxwidgets, but is not (fixes #19) 2012-07-25 16:19:13 -07:00
Paul Kulchenko
cf1a657b80 Updated manifest to add testwell module 2012-07-23 21:13:52 -07:00
crazybutcher
cf6b328a52 lua51 dll forwards to lua5.1.dll 2012-07-22 10:42:05 +02:00
crazybutcher
b0f98f30dc bugfix in interpreter setting 2012-07-21 11:51:56 +02:00
crazybutcher
5c0bf93d9c Merge remote-tracking branch 'zbstudio/master'
Conflicts:
	interpreters/luxinia2.lua
2012-07-21 10:45:23 +02:00
Paul Kulchenko
7b2241085d Added refresh of filetree on MacOS to get it displayed correctly when the app is started 2012-07-14 11:45:57 -07:00
Paul Kulchenko
c9cfd42d34 Corrected resetting of project directory when it's already set and doesn't need to be changed 2012-07-13 23:30:13 -07:00
Paul Kulchenko
c25c56069d Added handling of balanced brackets in markup links 2012-07-13 22:43:27 -07:00
Paul Kulchenko
a68e8f7bd3 Added unit test module 2012-07-13 22:42:35 -07:00
Paul Kulchenko
fc6de036e0 Reorganized handling of font configuration and added font config for filetree (with a different size default on MacOS) 2012-07-13 09:54:52 -07:00
Paul Kulchenko
08d42a2501 Removed setting the editor font in the config as the default font is different on different platforms 2012-07-12 22:07:10 -07:00
Paul Kulchenko
da32878984 Added reporting the number of traced lines during debugging 2012-07-12 14:21:56 -07:00
Paul Kulchenko
3fd5d88656 Reset project directory if the current one doesn't exist 2012-07-11 23:16:33 -07:00
Paul Kulchenko
7d9ad5100c Fixed markup styling and file tree drawing on MacOS 2012-07-11 16:11:11 -07:00
Paul Kulchenko
6bff634446 Added explicit calls to CreateBitmap as wxArtProvider.GetBitmap doesn't alway call a custom art provider on MacOS (2.8.12) and in some cases on msWin (2.8.7) 2012-07-11 13:24:45 -07:00
Paul Kulchenko
b0de487bf0 Fixed detecting executable name in commands with spaces 2012-07-11 13:21:22 -07:00
Paul Kulchenko
560d56835a Fixed typo 2012-07-11 13:20:35 -07:00
Paul Kulchenko
3c6a06f537 Added setting of PATH and CPATH to find proper libs on windows and mac os platforms 2012-07-11 11:24:33 -07:00
Paul Kulchenko
b1f3bf0bd9 Fixed incorrect folders reported in the file tree when no project directory is set and a file is open 2012-07-10 23:32:38 -07:00
Paul Kulchenko
6ea3a4708d Fixed incorrect filename reported in compile errors when the file is not saved 2012-07-10 22:31:06 -07:00
Paul Kulchenko
4de0eb1dc0 Made 'View Stack Window' and 'View Watch Window' refresh window content if it's already shown 2012-07-07 15:08:58 -07:00
Paul Kulchenko
c2f6ed6338 Removed extension from the template to match folders to make it more portable 2012-07-07 11:49:30 -07:00
Paul Kulchenko
fad7ff0cc3 Updated matching of links to make them less greedy (to avoid capturing link terminators) 2012-07-07 11:46:41 -07:00
Paul Kulchenko
9afa35f9b2 Upgraded deprecated constants and logic for compatibility with wxwidgets 2.9.x 2012-07-06 20:54:11 -07:00
Paul Kulchenko
3a5b46f65e Fixed an error thrown when a window with debugging is closed before the application being debugged is terminated 2012-07-06 20:51:01 -07:00
Paul Kulchenko
26d0908c89 Added scratchpad support for love2d 2012-07-03 13:00:18 -07:00
Paul Kulchenko
770db579d9 Added reset of 'modified' status to keep tab names and their config settings correct upon exit 2012-07-03 12:47:18 -07:00
Paul Kulchenko
8e09ed1658 Fixed incorrect storing of settings for editor tabs with the same text (filename). This was causing only one tab displayed for multiple StyledText controls with interesting effects 2012-07-02 11:53:24 -07:00
Paul Kulchenko
25ac96d39a Removed styling of function calls and capturing definitions in strings and comments (fixed #18) 2012-07-01 22:11:03 -07:00
Paul Kulchenko
22fda661ec Updated matching logic for function definitions to allow for a.b.c() definitions (fixes #17) 2012-07-01 21:59:13 -07:00
Paul Kulchenko
529a0e8c9e Added window title update and filetree refresh after SaveAs command 2012-07-01 15:13:12 -07:00
Paul Kulchenko
7cc061e18d Fixed an issue with launching a process when its output is not redirected to the IDE (fixes #16). Added callback for all started processes to make them call OnTerminate event upon completion 2012-07-01 09:44:00 -07:00
Paul Kulchenko
5f2226bac2 Fixed console to evaluate 'function a() ... end' without errors 2012-06-30 11:12:30 -07:00
Paul Kulchenko
37795c2480 Added tooltip to display variable/expression values during debugging 2012-06-30 11:04:48 -07:00
Paul Kulchenko
5e934dfd69 Added checks around ShowFullScreen() calls to avoid failures on those systems that don't provide it (linux/GTK) 2012-06-29 23:39:53 -07:00
Paul Kulchenko
f970ba38a0 Removed setting focus to the Output window when output is processed as it interfered with Run as Scratchpad 2012-06-29 23:35:35 -07:00
Paul Kulchenko
8af6c1b5b6 Fixed a compilation error caused by shebang in scripts 2012-06-29 16:58:25 -07:00
Paul Kulchenko
0777a5fbd8 Added check for debugger calls to avoid errors when debugger is not loaded 2012-06-29 15:31:09 -07:00
Paul Kulchenko
942681e246 Fixed an issue with love2d path with spaces 2012-06-28 20:05:35 -07:00
Paul Kulchenko
ce8f120e48 Improved logic in love2d integration to distinguish Debug and Run commands
(closes #13)
2012-06-28 10:24:13 -07:00
Paul Kulchenko
048fd2349a Updated menus to avoid conflicts with MacOS shortcuts 2012-06-26 22:13:52 -07:00
Paul Kulchenko
2627957e5a Updated logic creating menubar to make it work correctly on MacOS with special Help/About items 2012-06-26 21:32:06 -07:00
Paul Kulchenko
16b0ca0fc7 Updated path handling to better detect how the app is started and to avoid loading dlls on non-windows platforms 2012-06-26 19:29:00 -07:00
Paul Kulchenko
e3189ba38a Updated logic for detecting hostname (used in the debugger) to make sure it is resolvable 2012-06-26 19:11:39 -07:00
Paul Kulchenko
ad48622f68 Fixed aborting running/debugged programs on MacOS by adding MAKE_GROUP_LEADER option to wxExecute 2012-06-26 19:06:14 -07:00
Paul Kulchenko
0a9439ad22 Added display of hierarchical data in Stack window 2012-06-25 18:23:26 -07:00
Paul Kulchenko
a7577d5054 Updated Analyze output 2012-06-25 18:22:20 -07:00
Paul Kulchenko
668cdcb4db Added auto complete for love2d API 2012-06-25 14:47:21 -07:00
crazybutcher
46da5b6697 Merge remote-tracking branch 'zbstudio/master'
Conflicts:
	src/editor/debugger.lua
2012-06-25 22:34:07 +02:00
Paul Kulchenko
4ec3e87473 Added support for debugging processes running under LuaJIT (requires MobDebug v0.467+) 2012-06-24 22:01:02 -07:00
Paul Kulchenko
90b4f38223 Added love2d support 2012-06-24 17:52:59 -07:00
Paul Kulchenko
c1918e5c38 Removed extensions from launch commands and updated display logic in the Output window 2012-06-24 16:40:10 -07:00
Paul Kulchenko
34baaa9447 Fixed an issue in the logic for setting breakpoints, which ignored breakpoints in luxinia2 debug sessions 2012-06-24 16:00:25 -07:00
Paul Kulchenko
817938593a Fixed logic in the local/remote console that returned incorrect error message on executing code like '%s':format(1); expressions are evaluated first now and the order of evaluation is consistent between local and remote consoles 2012-06-23 23:55:59 -07:00
Paul Kulchenko
b944f9d01d Fixed IDs for Project menu items to allow them to be removed from the menu if needed 2012-06-23 23:53:34 -07:00
Paul Kulchenko
5d4b2395b5 Added execution time and updated messages in the Output window to be more consistent 2012-06-23 13:33:29 -07:00
crazybutcher
80f83d781e fix regression, make luxinia2 debuggable again (still issues left with breaking and adding breakpoints when none were active) 2012-06-23 12:02:42 +02:00
Paul Kulchenko
f9ab1546ff Added displaying 'nil' values in local console when no result is returned by an expression 2012-06-20 21:36:04 -07:00
Paul Kulchenko
971e7c8316 Disabled Stack and Watch updates when scratchpad is active as they interfere with application execution 2012-06-20 21:30:42 -07:00
Paul Kulchenko
60a89b8f32 Fixed an app running without debugger when 'stack' command is sent immediately after an external application connects to the debugger 2012-06-20 19:21:25 -07:00
Paul Kulchenko
7275f0d11a Fixed an issue with remote application not terminating when IDE is closed while debugging is in progress 2012-06-20 18:19:40 -07:00
Paul Kulchenko
35213d7d3b Added a check to refuse starting a new debugging session if there is one in progress already 2012-06-20 17:02:05 -07:00
Paul Kulchenko
cde26253e3 Fixed sending breakpoints set before establishing a debugging session started from another process that connects to the IDE debugger 2012-06-20 16:54:50 -07:00
Paul Kulchenko
b45c0600c7 Added handling of tail calls in the Stack window 2012-06-20 16:33:24 -07:00
Paul Kulchenko
5784dea99a Fixed refreshing a modified file when the editor is set to read-only mode 2012-06-19 12:24:06 -07:00
Paul Kulchenko
e880fdde60 Added pretty printing in Watch and Console (local and remote) windows and handling of multiple results in Console 2012-06-19 09:34:32 -07:00
Paul Kulchenko
b7d8512b7b Added Stack window to display stack information and local/upvalue values for each stack frame 2012-06-18 14:53:10 -07:00
Paul Kulchenko
a7a8f32c91 Fixed saving/restoring configuration of 'Output'/'Console' tabs when IDE is closed while debugging is in progress 2012-06-16 17:31:21 -07:00
Paul Kulchenko
9fc4ab5e9b Fixed removing variable name in Watch window after escaping editing 2012-06-15 16:39:51 -07:00
Paul Kulchenko
37434534cc Fixed #9 as it had incorrect logic in one of UTF filters 2012-06-11 08:24:27 -07:00
Paul Kulchenko
fc03c2843b Fixed ability to set font encoding for 'Output' and 'Console' windows in the config 2012-06-10 16:01:24 -07:00
Paul Kulchenko
2abbad04ac Added ability to set font encoding in the config 2012-06-10 15:40:14 -07:00
Paul Kulchenko
dbb392e009 Moved processing of user.lua to a later phase after tools and specs are
already loaded to allow modification of IDE configuration from `user.lua`.
Closes #5.

Added example to user-sample.lua on how the configuration can be modified.
2012-06-09 18:57:11 -07:00
Paul Kulchenko
65947ff924 Added checks to prevent text modification in 'Output' and 'Console'
windows. Fixes #8.

Text modifications are checked against (1) direct input, (2) actions using
context menu, and (3) move/copy using selection and mouse drag and drop.
Added input marker to the 'Output' window to indicate where input is
expected.
2012-06-09 17:17:24 -07:00
Paul Kulchenko
d8324b269d Fixed edit menu shortcuts to work in the 'Output' window (when allowed) 2012-06-08 16:44:17 -07:00
Paul Kulchenko
ac9c2e9a84 Added ability to interact with scripts by allowing text to be entered in the 'Output' window.
This is controlled by ide.config.allowinteractivescript variable".
 The window is only activated and switched into read-write mode after
 there is some output to it.
2012-06-08 13:07:48 -07:00
Paul Kulchenko
3b2fcfd1f9 Added restoring cursor position when a modified file is reloaded in the editor; removed unnecessary isFileAlteredOnDisk check 2012-06-08 13:01:44 -07:00
Paul Kulchenko
14fe7af771 Fixed reporting of processes that failed to start after 'Run' or 'Debug' commands 2012-06-07 14:13:17 -07:00
Paul Kulchenko
7b0405bc79 Fixed executable path matching to work on systems that don't have file extensions 2012-06-07 13:52:50 -07:00
Paul Kulchenko
fc6b0c176d Cleaned up ShellSupportRemote interface to remove a parameter not being used 2012-06-07 13:51:20 -07:00
Paul Kulchenko
5c50a2645b Improved reporting in static analysis for functions and global variables.
Added "unknown global function...".
Added "unused local function...".
Added "local function ... masks...".
Updated reporting of unused global to "first use of unknown global" to
minimise the number of instances reported until globals assigned through
"required" modules are recognized.
2012-06-05 16:15:02 -07:00
Paul Kulchenko
11cfbfa68d Fixed localization of variables in several places 2012-06-05 15:37:30 -07:00
Paul Kulchenko
e6b318c643 Fixed #3 'unused parameter...' check not to fail on anonymous functions that are part of an expression 2012-06-05 14:06:40 -07:00
Paul Kulchenko
1351db6114 Several fixes to the static code analyzer.
"Unknown global" is only reported once per line.
"First assignment to global..." is fixed to only report when the variable
is on the left side of the assignment.
"Value discarded" warning is added when multiple assignment has more values than
variables.
2012-06-05 11:06:46 -07:00
Paul Kulchenko
b58e931409 Changed static analyzer to only load metalua when Analyze function is
used, rather than on startup.
2012-06-04 12:21:47 -07:00
Paul Kulchenko
e0eb05b122 Disabled 'Run as Scratchpad' if there is no debugger registered capable of running it 2012-06-04 12:15:14 -07:00
Paul Kulchenko
8ecd8dfa6b Changed order of lualibs/ and bin/ directories in package.path and
package.cpath to load included modules first.

This should minimize conflicts with other versions of same modules that
may exist somewhere else in the path.
2012-06-04 12:01:10 -07:00
Paul Kulchenko
c1961e5c4b Added Ctrl(-Shift)-TAB navigation between tabs in the editor 2012-05-31 14:20:48 -07:00
Paul Kulchenko
3ead2966d8 Fixed localization of variables based on static analysis 2012-05-30 13:15:58 -07:00
Paul Kulchenko
0bcf590f45 Added reporting of assignment to global variables in the code analyzer 2012-05-30 11:27:17 -07:00
Paul Kulchenko
e8f308ca08 Added ability to turn external processes that connect to debugger into a scratchpad; fixed 'exit' to make it work for remote applications; upgraded to MobDebug 0.449 2012-05-26 23:02:20 -07:00
Paul Kulchenko
ecb59ceb9e Updated comment styling to follow markdown syntax 2012-05-15 23:05:26 -07:00
Paul Kulchenko
a317f986e1 Fixed styling in markup module that wasn't always working when a block comment was uncommented 2012-05-14 19:01:40 -07:00
Paul Kulchenko
623905c81c Added navigation between editor tabs using Ctrl-PgUp and Ctrl-PgDn 2012-05-13 23:10:25 -07:00
Paul Kulchenko
11b702ac6e Added exit from full screen mode using ESC key 2012-05-13 22:38:17 -07:00
Paul Kulchenko
f926aef2f8 Updated MANIFEST with luainspect module files and luasocket module reorg 2012-05-13 22:36:12 -07:00
Paul Kulchenko
3754406e85 Merge branch 'scratchpad' 2012-05-11 16:39:21 -07:00
Paul Kulchenko
981bccbe27 Added menu shortcut for Run As Scratchpad 2012-05-11 14:56:35 -07:00
Paul Kulchenko
047a9e8ac5 Upgraded to Mobdebug 0.448 to fix handling of scripts with comments in the remote shell 2012-05-11 14:30:58 -07:00
Paul Kulchenko
d1f2e8450a Fixed an issue with Analyze process when the analyzed script has compilation errors 2012-05-07 23:01:31 -07:00
Paul Kulchenko
21cfba9cb6 Added reporting of compilation errors during debugging sessions (when external client connects to the debugger and the current script has compilation errors) 2012-05-07 22:56:30 -07:00
Paul Kulchenko
3f711373ed Added handling of more error in the shell to allow calculations like '(1+2)' to be executed correctly (both locally and remotely) 2012-05-07 22:25:22 -07:00
Paul Kulchenko
00fe05e89f Fixed an earlier introduced bug with Run/Debug proceeding after failed compilation; removed references to internal code in compilation errors (in scratchpad) 2012-05-06 18:27:15 -07:00
Paul Kulchenko
3bcd54bd46 Added moving focus back to the notebook after unhiding/activating a wx window 2012-05-06 15:28:16 -07:00
Paul Kulchenko
8de9e41fd6 Updated README 2012-05-06 14:34:45 -07:00
Paul Kulchenko
29b6755a9b Fixed cursor to change to a default one (instead of an arrow) after number sliding 2012-05-06 14:29:49 -07:00
Paul Kulchenko
7d6be282f1 Updated clearing 'output' window to minimize showing duplicate output when running as scratchpad 2012-05-06 14:20:59 -07:00
Paul Kulchenko
f89fd4d752 Added handling of negative numbers for number sliders in scratchpad; added logic to ignore malformed numbers (they are still styled though) 2012-05-05 23:11:22 -07:00
Paul Kulchenko
03adda1cef Added stopping debugger and scratchpad when a window with debugging/scratchpad action is closed 2012-05-05 18:42:12 -07:00
Paul Kulchenko
2992424e87 Fixed an issue with scratchpad being on after Save dialog is canceled 2012-05-05 17:16:24 -07:00
Paul Kulchenko
e302a97682 Added support for using different debugger calls and moved scratchpad to a different debugger for performance reasons; upgraded to Mobdebug 0.446 2012-05-05 14:20:55 -07:00
Paul Kulchenko
7b5d37d595 Added mouse capture for slider operations in scratchpad to increase the range of available values 2012-05-03 16:40:47 -07:00
Paul Kulchenko
01ae85dc5a Reorganized the scratchpad code and added scratchpad teardown code to run when the debugged application is closed 2012-05-03 16:27:54 -07:00
Paul Kulchenko
f650d8f64f Added clearing output window when requested and formatting for compile/execution error messages 2012-05-03 12:58:39 -07:00
Paul Kulchenko
602f8ef223 Fixed debugging menu items to be hidden when running as scratchpad 2012-05-03 12:22:03 -07:00
Paul Kulchenko
6afc999b75 Added number slider processing with dynamic reloading of scratchpad scripts; upgraded to MobDebug 0.445 for better stability 2012-05-03 10:25:25 -07:00
Paul Kulchenko
2ccd214a1f Added stopping criteria to allow execution of any scripts (even empty ones) under 'Run as Scratchpad'; removed stack trace from remote error messages in the scratchpad 2012-05-02 10:45:59 -07:00
Paul Kulchenko
8efde0ec1f Added a check to turn 'Run as Scratchpad' on even when the initial compilation fails 2012-05-02 10:16:30 -07:00
Paul Kulchenko
1c5b14870c Updated event logic in the scratchpad to make sure editor change events do not get lost while an earlier change is being worked on 2012-05-02 00:09:48 -07:00
Paul Kulchenko
2c87909920 Disabled 'Run as Scratchpad' option when the script is already running 2012-05-01 22:00:46 -07:00
Paul Kulchenko
2a2a3bed96 Added reporting of run-time errors when running as scratchpad; upgraded to MobDebug 0.444 2012-05-01 21:49:45 -07:00
Paul Kulchenko
e2f65bced5 Fixed an issue with frequent modifications in a scratchpad; added safety check to avoid reloads from loaded modules (like wx) 2012-04-30 13:49:33 -07:00
Paul Kulchenko
c979d60d28 Moved the logic to disable checkbox for scratchpad menu to IDLE event as EVT_UPDATE_UI is only executed when the user opens up the menu (menu is updated) 2012-04-29 23:08:29 -07:00
Paul Kulchenko
7954ff1f64 Fixed about screen 2012-04-29 21:57:47 -07:00
Paul Kulchenko
a3a5c75694 Reorganized scratchpad code to have all its logic in one place 2012-04-29 18:41:23 -07:00
Paul Kulchenko
d6f3b4052b Reimplemented scratchpad functionality using internal processes (similar to how the debugger is done) as IDE was too unstable when running in the same process 2012-04-29 17:26:22 -07:00
Paul Kulchenko
7bc64d90c7 Removed 'error during pre-compilation' message from compile errors 2012-04-28 15:11:42 -07:00
Paul Kulchenko
56d262b753 Added stopping the debugger when a debugged program exits 2012-04-27 16:33:56 -07:00
Paul Kulchenko
a368f0acf9 Merge branch 'master' of github.com:pkulchenko/ZeroBraneStudio 2012-04-23 09:32:45 -07:00
Paul Kulchenko
d4a53733e7 Added to static analysis reporting of unused parameters in functions (the function name is also reported when possible) 2012-04-23 09:16:13 -07:00
Paul Kulchenko
1117e9df9a Disabled warning in static analysis about unused 'self' in methods 2012-04-22 23:31:58 -07:00
Paul Kulchenko
230de3450f Cleaned up warnings based on results of static analysis 2012-04-22 23:29:32 -07:00
Paul Kulchenko
0ae48ce6de Cleaned up warnings based on results of static analysis 2012-04-22 22:04:23 -07:00
Paul Kulchenko
6a90c5e850 Turned 'unhiding' wx window while running or debugging off by default as it was causing performance problems with some applications 2012-04-22 15:39:03 -07:00
Paul Kulchenko
f1ac72b265 Added scratchpad (running live) functionality 2012-04-21 22:29:21 -07:00
Paul Kulchenko
79fd90c986 Removed logic to update project directory based on file selection in the filetree 2012-04-21 22:26:15 -07:00
Paul Kulchenko
4dcf470c09 Fixed an issue with menu search to insert a new item 2012-04-20 22:25:14 -07:00
Paul Kulchenko
fcdbd456de Added code analyzer based on lua-inspect 2012-04-20 14:47:31 -07:00
Paul Kulchenko
e92127d6c8 Added luainspect library (https://github.com/davidm/lua-inspect) 2012-04-20 14:36:38 -07:00
Paul Kulchenko
0d8e6b0581 Added LuaSec (including binary Windows package from http://www.inf.puc-rio.br/~brunoos/luasec/) to provide SSL/HTTPS support for the socket library (needed for gist/github integration) 2012-04-19 18:17:48 -07:00
Paul Kulchenko
16d72396b1 Added missing mime/code.dll and reorganized socket module files (socket.*) to load correctly with require 2012-04-07 22:40:55 -07:00
Paul Kulchenko
6c7e289f71 Merge pull request #1 from dkulchenko/master
Format README with Markdown
2012-04-07 22:26:03 -07:00
Daniil Kulchenko
deb99ec084 Formatting improvements. 2012-03-27 14:08:36 -07:00
Daniil Kulchenko
12f84d3509 Switch README to Markdown. 2012-03-27 13:58:19 -07:00
259 changed files with 52938 additions and 24236 deletions

852
CHANGELOG.md Normal file
View File

@@ -0,0 +1,852 @@
# ZeroBrane Studio Changelog
## Current master (Aug 29 2013)
### Special thanks
- To Chow CheeWen for Chinese translation.
- To [Riidom](https://github.com/Riidom) for German translation.
- To [ardente](https://github.com/ardente) for user home patch for Windows.
- To [Mika Attila](https://github.com/crumblingstatue) for code folding patch.
- To [Tim Mensch](https://github.com/TimMensch) for auto-save, auto-reload, and debugger improvements.
- To [Florian](https://github.com/SiENcE) for Notepad++ color scheme.
### Improvements
- Added package GetOutput method (ref #166).
- Added package onAppLoad/onAppClose events (ref #166).
- Added package onIdleOnce event (ref #166).
- Added manifest to the Windows executable and re-signed.
- Added Notepad++ color scheme (thanks to Florian/SiENcE; closes #193).
- Added clearing document styles after saving file with a different extension.
- Added workaround to avoid crash on OSX after `Close All Pages` (closes #190).
- Added return type for string.* functions to assist in auto-complete (ref #189).
- Added handling of string literals in type assignments (closes #189).
- Added support for captures in regexp replacement (\1-\9).
- Added ability to cancel FindInFiles search by closing search dialog (ref #162).
- Added activating Output window before showing search results (ref #162).
- Added support for packages from different platforms to co-exist (ref #166).
- Added ability to save complex data in package settings (ref #166).
- Added support for multiple inheritance in auto-complete (ref #101).
- Added ability to add/remove API descriptions from plugins (ref #166).
- Added package GetSettings/SetSettings methods (ref #166).
- Added methods to save/restore package settings (ref #166).
- Added ability to add/remove specs from plugins (ref #166).
- Added ability to add/remove interpreters from plugins (ref #166).
- Added wxlua patch for twoface compatibility.
- Added `setfenv` for Lua 5.2 compatibility.
- Added links to project page and documentation (closes #180).
- Added German translation (thanks to Riidom; ref #70).
- Added default value to package config (ref #176).
- Added handling of ?51.dll and required DLLs for LuaForWindows interpreter.
- Added plugin::GetConfig method (ref #166).
- Added erasing current line in Console (ref #173).
- Added search/completion in the local and remote console (closes #173).
- Added package onAppFocus* events (ref #166; ref #172).
- Added Chinese translation (thanks to Chow CheeWen; ref #70).
- Added `editor.autoreload` to enable reload of updated files (ref #172).
- Added creating (missing) folders when saving a file (fixes #171).
- Added an example of styling individual keywords.
- Added fold indication of a current block (ref #168).
- Added reporting of process id for a conflicting process.
- Changed `un/comment` to act from the beginning of the line for multi-line selection.
- Disabled markup styling for specs without comment styles.
- Disabled showing tooltip when auto-complete suggestions are shown.
- Disabled error reporting after debugging has been terminated.
- Disabled 'Fold' menu instead of removing when no folding is allowed (ref #169).
- Enabled support for xml/html folding.
- Enabled path remapping for local debugging.
- Enabled slower and more thorough static analysis (ref #149; ref #168).
- Improved logic to jump to file/line indicated in error messages.
- Limited activation of code fragments to the beginning of debugging session.
- Make code folding optional (thanks to [Mika Attila](https://github.com/crumblingstatue))
- Moved 'Sort' menu to 'Edit'.
- OpenGL 4.4 and ARB extensions added as well as NV_gpu_shader5 functions
- Optimized line count calculation for dynamic words when text is deleted.
- Optimized dynamic word processing for large files.
- Renamed package onEditorPostSave event to onEditorSave for consistency (ref #166).
- Removed comment from default spec as it forces undesired markup styling.
- Removed auto-complete suggestion when it is already typed (ref #101).
- Reorganized API processing to allow loading API description from a plugin.
- Replaced package onEditorActivated event with onEditorFocus* events (ref #166).
- Set search in subdirectories as default in Find in Files dialog (ref #162).
- Switched to using POSIX compatible regexp with '()' used for captures.
- Updated `NewFile` to accept a file name.
- Updated 'get hostname' logic to avoid using non-resolvable names (mostly on OSX).
- Updated tooltip to use the same type inference as auto-complete (ref #101).
- Updated Estrela reference in README.
- Updated build script on Windows to enable debugging (ref #164).
- Updated build script with a (temporary) fix for wxlua issue (mingw32).
- updated glewgl api for OpenGL4.4 and removed non-core duplicate functions/enums
- Updated static analyzer to report only first instance of 'unknown field'.
- Updated filename/source code heuristic in the debugger (Mobdebug 0.5362).
- Updated `SaveAll` to allow saving (only) files with filenames (ref #172).
- windows: adopt native user home (thanks to [ardente](https://github.com/ardente))
### Fixes
- Fixed loading of files with incorrect UTF-8 encoding and control characters (fixes #198).
- Fixed package sample to take into account new documents.
- Fixed crash on OSX after opening 'application' in 'Open File' dialog.
- Fixed windows resource file to properly reference the manifest.
- Fixed missing default api for files with unknown extensions.
- Fix spurious replacement after 'search, clear selection, replace' actions.
- Fixed using auto-complete with multiple selections (fixes #188).
- Fixed looping in auto-complete with array references (ref #143).
- Fixed showing auto-complete after comma.
- Fixed 'cannot get official hostname' message on low privilege accounts (fixes #183).
- Fixed displaying variable instances when code has invalid blocks (fixes #182).
- Fixed tooltip to ignore string parameters (ref #101).
- Fixed tooltip display between empty brackets (ref #101).
- Fixed indentation after lines with brackets in strings.
- Fixed indentation after lines with anonymous functions.
- Fixed indicator showing at the end of not terminated long comment.
- Fixed an issue with LUA_DEV including files instead of directories.
- Fixed project switching to close all files when switching to a subdirectory.
- Fixed saving projects that do not have any open files.
- Fixed debugger to accept filenames without '@'; thanks to Tim Mensch (closes #174).
- Fixed sorting when the sorted fragment ends with a newline.
## v0.38 (Jun 21 2013)
### Highlights
- Added source code debugging (to support LuaJava and other engines).
- Added scope-aware global/local/masked/masking variable highlighting.
- Added 'Go To Definition' and 'Rename All Instances'.
- Added package/plugin API.
- Added Retina display support (can be enabled with `hidpi` option).
- Improved auto-complete API with inheritance and table index support.
### Special thanks
- To George Pimm for line of code navigation in the Stack Window.
- To Fringale for updated French translation.
- To Tom Burgel for LuaForWindows interpreter.
### Improvements
- Added sorting of file lists on Linux (used in the filetree and file search).
- Added LuaForWindows interpreter (thanks to Tom Burgel).
- Added package onEditorCharAdded/onEditorKeyDown events (ref #166).
- Added support for changing the Corona simulator skin (closes #151).
- Added inheritance support for auto-complete API.
- Added package onEditor* events (closes #166).
- Added package onInterpreterLoad/onInterpreterClose events (ref #166).
- Added package onProjectLoad/onProjectClose events (ref #166).
- Added package onMenu* events (ref #166).
- Added package onRegister/onUnRegister events (ref #166).
- Added 'Show Location' to the Project/Filetree menu.
- Added `hidpi` option to enable HiDPI/Retina display support (closes #160).
- Added breakpoint support for unnamed code fragments.
- Added support for debugging (stepping through) unnamed code fragments.
- Added LuaSec to win32 build script.
- Added package/plugin processing.
- Added support for 'silent' execution of shell commands in markup.
- Added `Find Next/Previous` over selected variable instances (ref #163).
- Added `debugger.allowediting` option to allow editing while debugging.
- Added skiping binary files during file search (ref #162).
- Added yield to update search results during file search (ref #162).
- Added showing default extensions in the file search (ref #162).
- Added support for multiple file extensions in the file search (ref #162).
- Added saving folder to search files in (ref #162).
- Added selecting all instances with a double-click on a variable.
- Added `autoanalizer` option for dynamic static analysis.
- Added 'Go To Definition' and 'Rename All Instances'.
- Added initial support for indicating local/global variables.
- Added showing tooltip in any position over a term and showing 'values' (ref #101).
- Added disabling tooltip when context menu is shown.
- Added 'fixing' path returned by wxDirDialog; may be incorrect in 2.9.x.
- Added constant initialization missing on ArchLinux with wxlua 2.8.12.2 (fixes #155; ref #128).
- Added support for table valuetypes in auto-complete for `foo[index]:` (ref #101).
- Added navigation to the line of code in the Stack Window (thanks to George Pimm; closes #134).
- Added `Show Location` to the editor tab menu.
- Added support for absolute filenames in Markdown links.
- Allowed tab width and indentation to be set independently.
- Allowed closing editor tabs while debugger is running.
- Disabled following symlinks during directory scanning to avoid infinite loops.
- Disabled showing tooltip when the app is in the background (fixes #158).
- Disabled 'value' tooltip over variables that match known function names (ref #101).
- Improved error reporting in interpreters on failures to copy the debugger.
- Improved focus on the debugger when a breakpoint hits on OSX (fixes #141).
- Removed sorting in the Stack view to keep the order of table elements.
- Set default directory for Find in Files opened from a new file (#ref 162).
- Updated configuration example for variable indicators.
- Updated Stack view navigation to use clicked on instead of active item.
- Updated Gideros API/auto-complete reference.
- Updated markup to allow opening files from new buffers ('untitled').
- Updated build scripts to use luasocket 2.0.3.
- Updated linux build files to use latest zlib/libpng to fix png load on Gentoo.
- Updated 'Find in Files' to start in the project folder by default.
- Updated French translation with latest string changes (mostly for find/replace dialogs).
- Updated Marmalade Quick auto-complete API to use class inheritance.
- Updated Gideros auto-complete API to use class inheritance.
- Upgraded Mobdebug to 0.534 for debugging of source code fragments.
### Fixes
- Fixed looping in auto-complete when indexes are used (fixes #143).
- Fixed possible duplicate paths in the filetree.
- Fixed missing numerical keys in serialized tables (upgraded Mobdebug to 0.535).
- Fixed styling of markup that can be affected by folded lines.
- Fixed value selection with multiple active selections.
- Fixed style compatibility with wxwidgets 2.8 (ref #128).
- Fixed error reporting by (internal) file operations.
- Fixed styling comments that start with markup symbols.
- Fixed restoring a session with one of the files deleted on disk (fixes #161).
- Fixed reporting variable instances for comment/string fragments.
- Fixed 'Rename Instances' to always reset previous selection.
- Fixed auto-complete error for '%dddd' strings (fixes #156).
- Fixed an issue with showing filenames that include '"?*:<>' on OSX/Linux.
- Fixed current line marker being shown using 'Run as Scratchpad' with 'runonstart' option.
- Fixed looping in auto-complete (fixes #151).
- Fixed incorrect localization that led to an error in 'Save' from tab menu.
## v0.37 (May 09 2013)
### Highlights
- Added Marmalade Quick auto-complete support and API documentation.
- Added full Marmalade Quick debugging support (requires Quick 1.1+).
- Improved Find/Replace behavior and functionality.
- Added Recent File history navigation.
- Added Preferences menu to simplify access to system/user settings.
### Special thanks
- To Samuel Dionne-Riel for wxwidgets 2.8 compatibility updates.
- To Mat Hopwood for assistance with Marmalade Quick integration.
### Improvements
- Added Preferences menu to simplify access to system/user settings.
- Added Russian translation for Find/Replace dialog and (ref #70).
- Added Russian translation for the Preferences menu (ref #70).
- Added 'shaking' Find/Replace window when text is not found (closes #146).
- Added 'wlua' to the list of recognized Lua extensions.
- Added disabling Recent Files menu if the list is empty.
- Added TomorrowContrast color scheme (thanks to Sergey Lerg).
- Added detaching a child process to avoid crash when exiting during debugging.
- Added Recent File history navigation (closes #66).
- Added Marmalade auto-complete support and API documentation.
- Added processing of `runonstart` when using remote debugging (closes #138).
- Added suggesting proper extension after 'Save/Save As' based on current spec.
- Added translation setup for Find/Replace dialog (closes #133).
- Added `nomousezoom` option to disable zoom with mouse wheel in the editor.
- Added selecting text and Cmd-F shortcut in Find dialog on OSX (ref #127).
- Improved file activation when debugging is started (closes #137).
- Reduced the minimum size of the Output/Console panel.
- Refactored Recent Files history to make it faster and simpler.
- Refactored and optimized directory scanning when loading IDE files.
- Separated settings for function dropdown and project tree fonts (fixes #148).
- Updated documentation about default EOL on OSX (ref #102).
- Updated highlighting in Watch windows to not use editor styles.
- Updated documentation for user settings (ref #113, #55).
- Updated Monokai color scheme to fix current line color.
### Incompatibilities
- (dev) `FileSysGet` has been replaced with `FileSysGetRecursive` with a different signature.
### Fixes
- Fixed hiding all panels when switching to Full Screen mode.
- Fixed loading a non-existing file.
- Fixed activation of non-existing files/folders in the Project tree.
- Fixed search results for lines without newline.
- Fixed Find/Replace in folders with Unicode names (fixes #147); improved performance.
- Fixed Un/Comment commands executed for empty lines.
- Fixed fold/unfold for files starting with block/comment.
- Fixed history after activating non-existing file in Recent Files.
- Fixed scrolling to restored cursor position on OSX (when `usewrap` = false).
- Fixed Find/Replace dialog to take Enter on OSX (fixes #140).
- Fixed 'breaking' after executing OUT command that never reaches the target level.
- Fixed stopping at a breakpoint at the initial line when `startwith` option is specified.
- Fixed activation of a file loaded into active tab.
- Fixed incorrect tab activation on OSX after using 'Open File'.
- Fixed editor activation when file is loaded into an existing tab.
- Fixed an error after opening non-existing file from 'Recent Files'.
- Fixed blocking on reading app output without processing other events.
- Fixed an issue with duplicate lines shown in the editor.
- Fixed 'Replace All' to take 'Wrap Around' into account (fixes #132).
- Fixed off-by-one error in searching consecutive matches.
- Fixed 'Quick Find' not working without current selection (fixes #131).
- Fixed looping in auto-complete on mistyped class (fixes #130).
- Fixed compatibility with wx2.8 (thanks to Samuel Dionne-Riel; closes #128).
- Fixed replacement logic in Find/Replace that could replace selected fragment (ref #127).
- Fixed an error caused by allowing multiple Search/Replace windows (fixes #127).
## v0.361 (Apr 12 2013)
### Improvements
- Added handling of Ctrl-Home and Ctrl-End on OSX (ref #89).
- Added line copy/cut for Ctrl-C/Ctrl-X with no selection.
- Updated About screen to be more configurable and flexible.
- Updated Russian translation (thanks to toiffel).
### Fixes
- Fixed launch command for Corona debugging on Windows.
- Fixed 'control' check on OSX that changed with wx2.9.2+ (ref #89).
- Fixed wrong tab activated on OSX after using New file in some cases.
- Fixed cursor not being visible in some cases after file is loaded (ref #116).
## v0.36 (Apr 08 2013)
### Highlights
- Added 32bit and 64bit **Linux binaries**.
- Enabled **full debugging for Corona on OSX**.
- Improved **debugger performance**.
- Improved **performance of tab and project switching**.
- Added **multiple selection and multi-cursor editing**.
- Made Stack and Watch windows dockable and toggleable.
### Special thanks
- To toiffel for build improvements and continuous work on wxwidgets 2.9 and Linux support.
- To Marcel van Herk for testing and feedback on Stack and Watch windows behavior.
- To Leo Bartoloni for Italian translation update.
- To Fringale for updated French translation.
- To neomantra for adding cdata processing in the serializer.
### Improvements
- Added handling of case-insensitive filenames on OSX.
- Added cdata processing (thanks to neomantra).
- Added universal binaries for luasocket on OSX to allow debugging of 64bit applications (for example, LuaJIT) on OSX.
- Added update of Stack and Watch windows after 'Debugging suspended' message.
- Added toggling for View menu items.
- Added auto-show/hide Stack and Watch windows during debugging (closes #110).
- Added ignoring `-psn...` parameter on OSX when reading file names from command line.
- Added migration of configuration file on Windows (helps #89).
- Added check for different spellings of the same folder in the project tree.
- Added scripts to install build prerequisites on Linux (helps #89).
- Added linux binaries with support for x86 and x64 (helps #89).
- Added window list button to the notepad with editor tabs.
- Added centering of current line during debugging.
- Added multiple selection and multi-cursor editing (wx2.9.5+).
- Added dll proxy to make LfW libraries to work with the IDE.
- Disabled showing 'value' in auto-complete after 'a:' (helps #101).
- Enabled full debugging for Corona on OSX.
- Improved debugging performance.
- Improved performance of tab switching and project tree population.
- Improved handling of upvalues with __tostring method in the Stack window.
- Increased default font size for OSX; set 'Monaco' as default font (helps #89).
- Made stack and watch windows dockable (closes #103).
- Optimized project switching and added notebook freezing where possible (ref #89).
- Reduced flicker in the project tree when a file is opened (ref #89).
- Removed binary libraries not currently used.
- Set 'Courier New' as the default font on Linux (ref #89).
- Switched to 'native' menu on OSX and added 24x24 icons required (helps #89).
- Updated Italian translation (thanks to Leo Bartoloni)
- Updated 'method' type in auto-complete to only allow a:b syntax (closes #101).
- Updated language files (es, it, ru) with new messages (ref #70).
- Updated French translation with latest string changes, fixed a few typos (thanks to Fringale).
- Updated Stack and Watch window to not refresh when not visible.
- Upgraded Mobdebug (0.5222) to add serialization with metamethods and notification on incomplete output (closes #109).
- Updated error messages from loading configuration files.
- Updated Linux binaries to use libpng 1.6 with wxwidgets (helps #89).
- Updated Windows/OSX build files to only build components needed (helps #89).
- Updated windows executable to show properly scaled icons in the Explorer.
- Updated status bar to use no border around fields.
- Updated large icons for "native" toolbar on OSX (helps #89).
- Updated function call indicator to use round box with wxwidgets upgrade (helps #89).
- Updated handling of markdown styles to make it more robust (fixes #59).
- Updated README with Marmalade Quick support and Corona tutorial.
### Incompatibilities
- Configuration file (.ini) location has changed on Windows. The current file will be copied to the new location.
- The debugger now stops on the next executable line after `.start()` call.
### Fixes
- Fixed activating files in the project tree on a case insensitive system.
- Fixed the Stack view being partially hidden when the root item is too wide (ref #110).
- Fixed left side of the project panel being hidden when a file is activated (fixes #122).
- Fixed breakpoint not firing on the first executable line in debugging (helps #121).
- Fixed terminating debugging of an empty script.
- Fixed reporting of initial line during debugging.
- Fixed editor tab activation after closing another tab on Linux (ref #89).
- Fixed 'Show tooltip' shortcut not working on Linux (fixes #118; ref #89).
- Fixed cursor position being incorrectly restored (fixes #116; ref #89).
- Fixed a warning about empty project directory in local console.
- Fixed an issue with Enter used to select an item in project dropdown (ref #89).
- Fixed an issue with the Project tree when project and app directories are the same.
- Fixed debugger output not being suppressed on Linux and using wlua.
- Fixed a static analyzer issue with anonymous functions defined in expressions (fixes #3).
## v0.35 (Feb 10 2013)
### Highlights
- Added support for **debugging Lua 5.2 scripts**.
- Added support for **cross-platform remote debugging**.
- Added support for starting Gideros **on-device debugging**.
- Added support for live coding, script reloading, and coroutine debugging under LuaJIT.
- Added **Marmalade Quick** support.
- Added **live-coding for Corona** interpreter.
- Added editor tab popup menu with 'Close All', 'Close Other', and other items.
### Special thanks
- To Roland Yonaba and Fringale for updates to French translation.
- To Fringale for enhanced line-endings handling.
- To toiffel for build improvements, continuous work on wxwidgets 2.9 support, and several patches.
- To Andy Bower for the stream of feedback on live coding and on-device debugging.
### Improvements
- Added `debugger.runonstart` option to configure if debugging should run immediately after starting.
- Added `editor.checkeol` option to configure checking for eol encoding in loaded files.
- Added Marmalade Quick support.
- Added support for starting Gideros on-device debugging.
- Added requesting user attention when stopped during debugging.
- Added example for `defaulteol` configuration option.
- Added configuration option for compact folding (`editor.`).
- Added support for cross-platform remote debugging.
- Added support for script reloading and coroutine debugging under LuaJIT (MobDebug 0.514).
- Added Russian translation for new messages.
- Added handling of malformed UTF8 characters in files (fixes #97).
- Added support for debugging Lua 5.2 scripts.
- Added workaround for Moai require path issue (fixes #96; fixes #87).
- Added editor tab popup menu with 'Close All', 'Close Other', and other items.
- Added C/CPP specification file and a configuration example.
- Added XCode-like key mapping.
- Added removing of file: prefix and url decoding of filepaths (helps #89).
- Added a workaround for returning incorrect project folder (helps #89).
- Adjusted handling of filepath to work with relative and absolute paths (helps #89).
- Enabled live-coding for Corona interpreter.
- Improved line-endings handling (Fringale).
- Improved reporting of stack and serialization run-time errors.
- Updated Gideros interpreter to run debugging immediately after starting; Use `debugger.runonstart = false` to disable.
- Updated Linux startup script to use online versions of wxlua packages (deb files).
- Updated handling of file: prefix as it's different on Windows and OSX (helps #89).
- Updated messages in the starter script.
- Updated function call parsing to recognize "func{}" and "func''" syntax.
- Updated os.exit() call in local console to exit gracefully.
- Updated French translation with various fixes and tweaks (Fringale).
- Updated French translation with newly added strings (Fringale).
- Updated 'Close page' and its translations.
- Updated configuration examples and documentation (helps #55).
- Updated the size of the function list dropdown on Windows (helps #89).
- Typos fixes, small changes in French translation (Roland Yonaba).
### Incompatibilities
- Gideros debugging is changed to start immediately; use `debugger.runonstart = false` to disable.
- Removed mosync support from the debugger into a separate module.
- Added mixed end-of-line reporting; use `editor.checkeol = false` to disable.
- Added reporting of malformed UTF-8.
### Fixes
- Fixed a rare crash on OSX when closing IDE with an application running under debugger.
- Fixed path handling for metalua to avoid conflicts with other modules that may include lexer.lua file.
- Fixed executing commands in the Remote console immediately after `mobdebug.start()` (closes #100).
- Fixed invalid escape sequence that fails under LuaJIT.
- Fixed an issue with spec files when a separator (sep) is not specified.
## v0.34 (Dec 12 2012)
### Highlights
- Added **internationalization** support (with Russian, Italian, Spanish, and French translations).
- Added **key binding** configuration for menu and toolbar items.
- Added **Corona SDK integration** with debugging and auto-complete.
- Added **Moai scratchpad support**.
- Added **color scheme support** with several schemes included.
- Added **GSL-shell support**.
- Added ability to pause and resume scratchpad.
### Special thanks
- To Srdjan Markovic for Corona auto-complete support and Zenburn color scheme.
- To Roland Yonaba for French translation.
- To Leo Bartoloni for Italian translation.
- To Inigo Sola for Spanish translation.
- To toiffel for Russian translation and several patches.
- To Fringale for spec and API files cleanup and update for Lua 5.2.
- To Marcel van Herk for assistance with scratchpad break/resume functionality.
### Improvements
- Added an option to specify the width of the calltip.
- Added showing short descriptions in tooltip for functions without lib/package.
- Added 'Project Directory' menu.
- Added ability to pause scratchpad when the script is completed (closes #83).
- Added ability to pause and resume scratchpad.
- Added GSL-shell support (closes #72).
- Added more color schemes (Solarized and Monokai).
- Added customized yield function for debugging (MobDebug v0.508; closes #81).
- Added proper hiding of current line marker during debugging (except when tracing).
- Added Corona auto-complete support (thanks to Srdjan Markovic).
- Added logic to show application windows without explicitly listing their class (closes #80); Windows only.
- Added Moai scratchpad support.
- Added missing constants to Moai API.
- Added setting focus on the window when a file is loaded in the existing instance.
- Added two more wxwindow window classes to the list of windows to show (Windows).
- Added scheme picker script to test color schemes from the IDE.
- Added Zenburn as a color scheme.
- Added styling for markers and Output/Console windows.
- Added Italian translation (thanks to Leo Bartoloni).
- Added Spanish translation (thanks to Inigo Sola).
- Added reporting of run-time errors from remote processes (helps #73).
- Added 'tomorrow' color theme.
- Added redirect of remote 'print' commands for Gideros applications.
- Added check for 'main.lua' in Corona projects.
- Added ability to suspend a running application even when there is no editor tab or file to activate.
- Added serialization of remote 'print' results and an output filter for debugging (helps #73).
- Added redirect of remote 'print' commands to the Output window in the IDE (helps #73).
- Added Corona SDK support (closes #73).
- Added French translation (thanks to Roland Yonaba).
- Added (more) verbose output to debugger to assist in troubleshooting.
- Added handling of LUA_DEV to make loading Lua for Windows libraries working out of the box (fixes #71).
- Added internationalization support (closes #70).
- Added notes about estrela being gone and compatibility.
- Added multi-tab support for scratchpad.
- Added documentation on accelerator/shortcut syntax.
- Added key map to change key binding for menu and toolbar items from a config file (closes #64).
- Added hiding IDE while closing and saving configuration.
- Completed reorganization of front-end processing (closes #67 and #5).
- Disabled editor autoactivation during debugging when tracing is on.
- Disabled functions that are not available under Corona on OSX (helps #73).
- Disabled showing auto-complete when the only option is already typed.
- Disabled showing a calltip on mouse over when it's already active.
- Extended list of default folders for interpreters where executables are searched for.
- Finished Russian translation.
- Limited auto-showing windows to Lua interpreter only (related to #80).
- Removed window types from config as they are no longer needed to be listed.
- Switched to showing short tooltips by default as some of the updated Lua API descriptions are very long.
- Updated descriptions for io.* functions; moved file:* functions to a pseudo library (f); helps #84.
- Updated LICENSE to add remdebug license information.
- Updated tooltip to show shortened descriptions on mouse-over.
- Updated spec and API files for Lua 5.2 (thanks to Fringale).
- Updated MobDebug to v0.507 to fix serialization issues (closes #77).
- Updated style processing to support styling of markup and allow dynamic switching of color schemes.
- Updated Lua keyword definitions to improve grouping for styling (closes #79).
- Updated love2d api to an updated version as of 11/1/2012 (fixes #78).
### Incompatibilities
- The default port in the debugger has been changed from 8171 to 8172 to avoid conflicts with existing RemDebug implementations.
### Fixes
- Fixed an issue with overlapping auto-complete suggestions.
- Fixed auto-complete not working after closed brackets.
- Fixed tooltip being shown when mouse moving outside of the editor area.
- Fixed a font zooming bug with Ctrl+MouseWheel.
- Fixed file marking in the project tree after opening a new file.
- Fixed an issue with breakpoints not available after aborting tracing on Linux/OSX.
- Fixed an issue with running scratchpad when entry points are configured.
- Fixed Linux launcher to pass filename parameter to the IDE.
- Fixed fold style to properly set background color.
- Fixed an issue with a config file being loaded into the editor when specified in the command line.
- Fixed an issue with markdown formatting not working after setting styles from a config file (fixes #74).
## v0.33 (Oct 22 2012)
### Highlights
- Added **Linux support**.
- Added **Moai auto-complete**.
- Added **Gideros debugging, auto-complete, and live coding**.
- Added **syntax aware indentation**.
- Added **re/storing open files and interpreter** when switching project folders.
### Special thanks
- To Andy Bower and Atilim Cetin for their assistance with Gideros integration and live coding.
- To toiffel for Linux/OSX/Windows CMake-based launcher build.
- To Christoph Kubisch for help with Estrela merge.
### Improvements
- Added configuration option to specify hostname when the default one is not reachable (fixes #68).
- Added search for Moai and Love2d executables in default locations on OSX and Windows.
- Added handling of command line parameters on OSX and Linux; updated documentation.
- Added auto-recovery to save/restore editor content (fixes #23).
- Added syntax aware indentation.
- Added re/storing open files and interpreter when switching project folders.
- Added auto-activation of files requested during debugging.
- Added editor.autoactivate parameter (false by default) to enable activation.
- Added zbstudio.sh script to run on OSX/Linux; updated permissions (closes #15).
- Added variable ratio for sliders in scratchpad.
- Added Linux/OSX/Windows CMake-based launcher build (thanks to toiffel).
- Added configuration parameter for the number of characters typed before displaying auto-complete suggestions for dynamic words.
- Added proper closing of the application after Shutdown/Logoff events (fixes #57).
- Added Moai auto-complete (closes #52).
- Added hiding auto-complete suggestions on losing focus in the editor.
- Added proper reporting of errors in the stack window.
- Added wxlua.deb file and install script that pull and build all required dependencies on Linux (covers most of #15).
- Added osx executables and build files.
- Added disabling full screen mode when the last editor tab is closed.
- Added proper reporting of errors in config files.
- Added toggling folders in project pane by single click (fixes #41).
- Added examples for configuring tabs and moai entry points.
- Added reporting compilation success rate (fixes #39)
- Added shortcuts for adding and removing watches.
- Added highlighting rows with updated values in the Watch window.
- Added 'Add Watch Expression' and 'Evaluate in Console' context menu items in the editor.
- Added handling of canceling editing in adding a watch.
- Added Gideros auto-complete and live coding support (closes #62).
- Added Gideros integration on OSX; added search for gideros in default locations on Windows and OSX.
- Added Gideros integration and debugging support.
- Added debugging-related buttons to the toolbar.
- Improved reporting of compilation and run-time errors when running as scratchpad.
- Made debugger strict.lua and LuaJIT friendly (upgraded to MobDebug v0.502).
- Updated configuration example to avoid using ide.spec that is not available (fixes #67).
- Updated CMake build script to handle wildcards in the MANIFEST.
- Updated configuring toolbar size to improve Linux compatibility.
- Updated MobDebug to v0.497 to fix issues and improve performance.
- Updated a warning message about single instance communication.
- Updated cpath processing to allow Linux version to run side-by-side with Windows and Mac.
- Updated licensing information.
- Enabled scratchpad support in the debugger when interpreter is capable of providing it.
- Disabled auto-complete in comments and strings.
- Disabled toggling breakpoints while debugger is running (as they wouldn't be changed anyway).
- Disabled 'not activated file for debugging' message when auto-activation is disabled.
- Disabled tooltip when scratchpad is on (fixes #51).
- Disabled showing calltip when the editor is not in focus.
- Disabled showing calltip over markup in comments.
- Disabled 'Run as Scratchpad' in the menu for those intepreters that don't support scratchpad.
- Updated configuration examples to add editor settings and fix user.lua path.
- Moved all Estrela features into a separate bundle that can be loaded using cfg/estrela.lua config.
- Removed multiple file types offered in Save As dialog.
### Incompatibilities
- Changed searching for user config in '$HOME/.zbstudio' from '$HOME/.zbs'.
- Temporarily removed the ability to modify spec-related configuration parameters from configuration files.
### Fixes
- Fixed opening a non-existing file from the Recent Files list.
- Fixed Find/Replace dialog checkboxes that didn't react to clicks on OSX (fixes #63).
- Fixed an auto-complete issue with mixed case dynamic words (fixes #60).
- Fixed 'Trying to solve a NULL hostname' warning message.
- Fixed a typo that prevented a corner case in autocomplete from working.
- Fixed inconsistent error messages about various config files.
- Fixed an issue with auto-complete when dot or colon is used (fixes #56).
- Fixed an issue with debugging scripts started using absolute file path.
- Fixed setting working directory for interpreters to the file path when the project directory is not set.
- Fixed an issue with Backspace not closing auto-complete suggestions.
- Fixed enabling items in the Edit menu (fixes #56).
- Fixed function list in the toolbar on Mac (helps #14).
- Fixed deleting of comment blocks with hidden markup (fixes #40).
- Fixed an issue with function list when all editor tabs are closed.
- Fixed multiple calltips shown on Linux (helps #15).
- Fixed an issue with mouse cursor in scratchpad not properly updated on Linux (fixes #49; helps #15).
- Fixed an issue with static analyzer that failes on function names like a.b.c (fixes #50).
- Fixed disabling Paste menu on Linux when needed (fixes #46; helps #15).
- Fixed an issue with context menu on Linux (fixes #47; helps #15).
- Fixed debugger failure when debugging is initiated externally and there is an unsaved file in one of editor tabs.
- Fixed stopping the debugger when an editor tab where debugging happens is closed.
- Fixed enabling of several menu items with no editor tab (fixes #42).
- Fixed an issue with loading stock icons on Linux.
- Fixed Cut/Copy menu items to reflect proper status in the editor.
- Fixed typo in the static analyzer output.
- Resolved conflict between lua executable names on Windows and Mac.
## v0.32 (Sep 03 2012)
### Highlights
- Added **Unicode support** for file encoding and file paths on Windows (fixes #30).
- Added **Moai integration and debugging** (including debugging of Moai threads and callbacks).
- Added refresh of Stack and Watch windows after executing a statement in remote shell.
- Added **display of complex values** on multiple lines in shell with '='.
- Added calltip on mouseover for functions during editing and for variables/expressions during debugging.
- Added configuration options to set paths to lua and love2d executables.
- Added support for **coroutine debugging** with stepping through coroutine.resume/.yield calls.
- Updated wx.dll to wxlua 2.8.12.2 and wxwidgets 2.8.12.
- Signed zbstudio app and executable to avoid issues with files not being saved without admin privileges and to remove warning about 'unknown publisher' on windows (fixes #25).
### Improvements
- Added calltip on mouseover for functions during editing and for variables/expressions during debugging.
- Added an IO filter to fix an issue with 0d0d0a line endings on Windows.
- Added support for debugging moai callbacks (upgraded to mobdebug v0.489).
- Added refresh of Stack and Watch windows to show updated values after executing a statement in remote shell.
- Added display of complex values on multiple lines in shell with '='.
- Added rockspec to the list of extensions for lua (fixes #37).
- Added a check to avoid evaluating keywords in tooltip.
- Added current interpreter to the status bar; adding closing debugger when the interpreter is changed.
- Added aborting scratchpad processing when an interpreter can't start or report a fatal error.
- Added support for unicode path files on Windows (fixes #30).
- Added an option to set path to lua executable.
- Added error handler to trap and display debugger errors.
- Added search in PATH for love2d executable.
- Added a workaround for GetExecutablePath() reporting 'wx.dll' instead of a proper exe name with wxlua 2.8.12.2 on Windows.
- Added reporting of function name of the form a.b and a:b in static analysis (fixes #27).
- Added ability for user to keep their settings file in their home directory.
- Added per user settings file. Users can now move their settings file to ~/.zbs/user.lua.
- Added ignoring Cmd-key combinations on Mac as this should be handled by wxwidgets, but is not (fixes #19).
- Added support for coroutine debugging with stepping through coroutine.resume/.yield calls.
- Changed reporting of program execution time from CPU time to user time.
- Changed the call to unhide windows to the async version (ShowWindowAsync) to avoid blocking the IDE when the application doesn't respond.
- Upgraded to wxlua 2.8.12.2 (wxwidgets 2.8.12; unicode version); added lua51.dll proxy (fixes #10 and #7).
- Updated love2d interpreter to use the project folder to check for main.lua.
- Updated test module to use stringified values for comparison.
- Updated status bar style to make it consistent across platforms.
- Removed .bak files from being replaced in when backup copies are saved.
- Removed explicit path conversions and comparisons.
- Refactored LUA_PATH/CPATH processing to set it for all interpreters.
- Signed zbstudio app and executable to avoid issues with files not being saved without admin privileges and to remove warning about 'unknown publisher' on windows (fixes #25).
### Incompatibilities
- Reassigned hotkeys in the Project menu to minimize conflicts on Mac (reassigned Shift-F12 and F11).
### Fixes
- Fixed an issue with double click on analylsis results being out-of-sync when the editor switched to another file (fixes #38)
- Fixed an issue with debugger not activating files with relative path information.
- Fixed 'break' command to work after coming from debugger calls (like on()).
- Fixed an issue with highlighting selected item in the project tree.
- Fixed evaluation of foo:bar in tooltip (now evaluates as foo.bar).
- Fixed debugger termination after internal errors.
- Fixed activating current file in the project tree on Mac (closes #29).
- Fixed running scripts with single quotes in path names.
- Fixed an issue with Run/Debug commands when IDE path includes exclamation mark ('!').
- Fixed an issue with the app not starting on those systems that don't have HOME environment variable; fixes #28.
- Fixed an issue with showing/hiding GUI windows that was occasionally causing a runtime error when the window disappears before it is manipulated.
- Fixed returning proper name for unsaved files in reporting compilation and static analysis results; moved default names to ide.config (fixes #26).
- Fixed pasting text into the Find dialog and project path box on Mac (fixes #22).
- Fixed handling of dashes in paths (upgraded to mobdebug 0.479).
- Reorganized handling of automcomplete event (to use AddPendingEvent instead of PostEvent) to avoid runtime application error.
## v0.31 (Jul 14 2012)
### Highlights
- Added **scratchpad support for love2d**.
- Added tooltip to display variable/expression values during debugging.
- Added **MacOS support**.
### Improvements
- Added handling of balanced brackets in markup links.
- Added unit test module.
- Added reporting the number of traced lines during debugging.
- Added setting of PATH and CPATH to find proper libs on windows and mac os platforms.
- Added scratchpad support for love2d.
- Added reset of 'modified' status to keep tab names and their config settings correct upon exit.
- Added window title update and filetree refresh after SaveAs command.
- Added tooltip to display variable/expression values during debugging.
- Made 'View Stack Window' and 'View Watch Window' refresh window content if it's already shown.
- Removed setting the editor font in the config as the default font is different on different platforms.
- Removed extension from the template to match folders to make it more portable.
- Reorganized handling of font configuration and added font config for filetree (with a different size default on MacOS).
- Updated matching logic for function definitions to allow for a.b.c() definitions (fixes #17).
### Fixes
- Fixed markup styling and file tree drawing on MacOS.
- Fixed detecting executable name in commands with spaces.
- Fixed incorrect folders reported in the file tree when no project directory is set and a file is open.
- Fixed incorrect filename reported in compile errors when the file is not saved.
- Fixed refresh of filetree on MacOS to get it displayed correctly when the app is started.
- Fixed an error thrown when a window with debugging is closed before the application being debugged is terminated.
- Fixed incorrect storing of settings for editor tabs with the same text (filename). This was causing only one tab displayed for multiple StyledText controls with interesting effects.
- Fixed an issue with launching a process when its output is not redirected to the IDE (fixes #16).
- Fixed console to evaluate 'function a() ... end' without errors.
- Fixed a compilation error caused by shebang in scripts.
- Fixed an issue with love2d path with spaces.
- Corrected resetting of project directory when it's already set and doesn't need to be changed.
- Added checks around ShowFullScreen() calls to avoid failures on those systems that don't provide it (linux/GTK).
- Added check for debugger calls to avoid errors when debugger is not loaded.
- Updated matching of links to make them less greedy (to avoid capturing link terminators).
- Upgraded deprecated constants and logic for compatibility with wxwidgets 2.9.x.
- Reset project directory if the current one doesn't exist.
- Removed styling of function calls and capturing definitions in strings and comments (fixed #18).
- Removed setting focus to the Output window when output is processed as it interfered with Run as Scratchpad.
## v0.30 (Jun 27 2012)
### Highlights
- Added **love2d support**.
- Added auto complete for love2d API.
- Added support for debugging processes running under LuaJIT.
- Added display of **hierarchical data in Stack window**.
- Added **pretty printing in Watch and Console** (local and remote) windows and handling of multiple results in Console.
- Added **Stack window to display stack information** and local/upvalue values for each stack frame.
- Added ability to **interact with scripts** by allowing text to be entered in the 'Output' window.
### Improvements
- Added love2d support.
- Added auto complete for love2d API.
- Added support for debugging processes running under LuaJIT.
- Added display of hierarchical data in Stack window.
- Added execution time and updated messages in the Output window to be more consistent.
- Added displaying 'nil' values in local console when no result is returned by an expression.
- Added a check to refuse starting a new debugging session if there is one in progress already.
- Added handling of tail calls in the Stack window.
- Added pretty printing in Watch and Console (local and remote) windows and handling of multiple results in Console.
- Added Stack window to display stack information and local/upvalue values for each stack frame.
- Added ability to set font encoding in the config.
- Added restoring cursor position when a modified file is reloaded in the editor.
- Added ability to interact with scripts by allowing text to be entered in the 'Output' window.
- Improved logic in love2d integration to distinguish Debug and Run commands (closes #13).
- Improved reporting in static analysis for functions and global variables.
- Updated menus to avoid conflicts with MacOS shortcuts.
- Updated logic creating menubar to make it work correctly on MacOS with special Help/About items.
- Updated path handling to better detect how the app is started and to avoid loading dlls on non-windows platforms.
- Updated logic for detecting hostname (used in the debugger) to make sure it is resolvable.
- Changed order of lualibs/ and bin/ directories in package.path and package.cpath to load included modules first.
- Removed extensions from launch commands and updated display logic in the Output window.
### Fixes
- Fixed aborting running/debugged programs on MacOS by adding MAKE_GROUP_LEADER option to wxExecute.
- Fixed an issue in the logic for setting breakpoints, which ignored breakpoints in luxinia2 debug sessions.
- Fixed logic in the local/remote console that returned incorrect error message on executing code like '%s':format(1).
- Fixed IDs for Project menu items to allow them to be removed from the menu if needed.
- Fixed an issue with remote application not terminating when IDE is closed while debugging is in progress.
- Fixed refreshing a modified file when the editor is set to read-only mode.
- Fixed saving/restoring configuration of 'Output'/'Console' tabs when IDE is closed while debugging is in progress.
- Fixed removing variable name in Watch window after escaping editing.
- Fixed #9 as it had incorrect logic in one of UTF filters.
- Fixed edit menu shortcuts to work in the 'Output' window (when allowed).
- Fixed reporting of processes that failed to start after 'Run' or 'Debug' commands.
- Fixed executable path matching to work on systems that don't have file extensions.
- Fixed #3 'unused parameter...' check not to fail on anonymous functions that are part of an expression.
- Moved processing of `user.lua` to a later phase after tools and specs are already loaded to allow modification of IDE configuration from `user.lua`. Closes #5.
- Added checks to prevent text modification in 'Output' and 'Console' windows. Fixes #8.
- Disabled 'Run as Scratchpad' if there is no debugger registered capable of running it.
- Disabled Stack and Watch updates when scratchpad is active as they interfere with application execution.
## v0.29 (May 31 2012)
### Highlights
- Added **scratchpad** (running live) functionality.
- Added **code analyzer** based on lua-inspect.
- Updated **comment styling** to follow markdown syntax.
### Improvements
- Added scratchpad (running live) functionality.
- Added code analyzer based on lua-inspect.
- Added Ctrl(-Shift)-TAB navigation between tabs in the editor.
- Added navigation between editor tabs using Ctrl-PgUp and Ctrl-PgDn.
- Added reporting of assignment to global variables in the code analyzer.
- Added ability to turn external processes that connect to debugger into a scratchpad.
- Added exit from full screen mode using ESC key.
- Added reporting of compilation errors during debugging sessions.
- Added handling of more errors in the shell to allow calculations like '(1+2)' to be executed correctly.
- Added moving focus back to the notebook after unhiding/activating a wx window.
- Added missing mime/code.dll and reorganized socket module files (socket.*) to load correctly with require.
- Added stopping the debugger when a debugged program exits.
- Added to static analysis reporting of unused parameters in functions.
- Disabled warning in static analysis about unused 'self' in methods.
- Removed 'error during pre-compilation' message from compile errors.
- Updated comment styling to follow markdown syntax.
### Fixes
- Fixed handling of scripts with comments in the remote shell.
- Fixed an issue with Analyze process when the analyzed script has compilation errors.
- Fixed an issue with scratchpad being on after Save dialog is canceled.
- Fixed about screen.
## v0.28 (Mar 21 2012)
### Highlights
- Added full screen mode.
### Improvements
- Added option to activate output/console when Run/Debug/Compile commands are executed.
- Added full screen mode.
- Added killing a running process on IDE exit.
- Added killing a running process with Shift-F12.
- Disabled buffering of the output for scripts run from IDE.
### Fixes
- Fixed 'Trace' command to continue working when a debugged file is not activated.
- Fixed an issue with saving a file when no project directory is set.
- Fixed missing semicolon in lualibs path; added path for debugger to search under lualibs.
- Fixed an issue with a missing path separator, which prevented debugging from executing step commands in some cases.
- Fixed missing slash on SaveAs by enforcing trailing slash for the project path.
## v0.27 (Feb 14 2012)
### Highlights
- Added markup formatting in the comments.
### Improvements
- Added markup formatting in the comments.
- Added Debug and Run methods to simulate menu commands.
- Added setting a project folder on initial start.
- Added style processing for font name, font size, visibility and hotspot attributes.
- Added setting the current project directory for the shell to allow 'require' commands to work with local modules.
- Updated markup processing with run and debug commands, http link processing, and opening local files in a new window.
- Enforced visibility for shell prompt.
### Fixes
- Fixed activation of a correct tab when one of the editor tabs is closed.
- Fixed an issue with file activation from a debugger.
- Fixed the issue of ClosePage method being called with two different parameters.
- Fixed the issue of the project dir being returned with two trailing slashes.
- Fixed an issue with activating the currenly edited file in the file tree.
- Wrapped DragAcceptFiles into a protected call to make it not fail on MacOS (compiled with wxwidgets 2.8.12).
## v0.26 (Jan 18 2012)

28
LICENSE
View File

@@ -49,7 +49,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
--[[ wxLua License License ]]----------------------------------------------
--[[ wxLua License ]]------------------------------------------------------
http://wxlua.sourceforge.net/
@@ -61,7 +61,7 @@ Original wxLua Lua sample IDE:
luascript at thersgb.net
wxLua is based on
wxWindows Library Licence, Version 3
wxWindows Library License, Version 3
Copyright (c) 1998 Julian Smart, Robert Roebling et al
@@ -178,7 +178,29 @@ output file generation.
MobDebug sources are released under the MIT License
Copyright (c) 2011 Paul Kulchenko (paul@kulchenko.com)
Copyright (c) 2011-2012 Paul Kulchenko (paul@kulchenko.com)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
--[[ RemDebug License ]]---------------------------------------------------
Copyright (c) 2006 The Kepler Project.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

63
README
View File

@@ -1,63 +0,0 @@
A simple and extensible Lua IDE and debugger. It supports multiple file
formats, "api" for autocompletion and tooltips, and custom command-line
tools. Its main focus is extensibility for target applications using Lua.
--[[ FEATURES ]]-----------------------------------------------------------
* Written in Lua, so easily customizable
* Automatically loads several 'plugin' like classes
- applications: overall control of applications settings
- specs (spec/): file syntax, lexer, keywords
- apis (api/): for code-completion and tool-tips
- interpreters (interpreters/): how a project is run
- config (cfg/): contains style and basic editor settings
- tools (tools/): additional tools, e.g. cg compiler, dx fxc compiler
* Auto-completion for functions, keywords...
* Function tips
* Function list in file (quick jump to)
* Function call highlighting
* Bracket matching/highlighting
* Project file browser
* Experimental type/class guessing for auto-completion
* Support for different editor styles
* Console to directly test code snippets with local and remote execution
* Integrated debugger (with support for local and remote debugging)
--[[ FRONT-ENDS ]]--------------------------------------------------------
There is currently two front-ends using the same editor engine. The original
is "estrela", which has a focus on 3d graphics related usage of Lua, especially
in combination with the luxinia engine or luxinia2 framework.
The second is "zbstudio" which has a focus on remote use of Lua in robotics.
Both are part of the standard distribution.
--[[ INSTALLATION ]]-------------------------------------------------------
git clone git://github.com/pkulchenko/ZeroBraneStudio.git zbstudio
or
git clone git://estrelaeditor.git.sourceforge.net/gitroot/estrelaeditor/estrelaeditor estrelaeditor
--[[ USAGE ]]--------------------------------------------------------------
Open File(s):
<exe> <filename> [<filename>...]
any non-option will be treated as filename
Overriding Config:
<exe> [...] -cfg "<luacode overriding config>" [...]
e.g.: zbstudio.exe -cfg "singleinstance=false;" somefile.lua
--[[ AUTHOR ]]-------------------------------------------------------------
Estrela Editor
Luxinia Dev: Christoph Kubisch (crazybutcher@luxinia.de)
ZeroBrane Studio and MobDebug
ZeroBrane LLC: Paul Kulchenko (paul@kulchenko.com)
--[[ LICENSE ]]------------------------------------------------------------
See LICENSE file

71
README.md Normal file
View File

@@ -0,0 +1,71 @@
# Project Description
[ZeroBrane Studio](http://studio.zerobrane.com/) is a lightweight Lua IDE with code completion, syntax
highlighting, remote debugger, code analyzer, live coding, and debugging
support for several Lua engines (LuaJIT, Löve 2D, Moai, Gideros, Corona, Marmalade Quick,
MobileLua, GSL-shell, and others). It originated from the [Estrela Editor](http://www.luxinia.de/index.php/Estrela/).
## Features
* Written in Lua, so easily customizable.
* Small, portable, and cross-platform (Windows, Mac OSX, and Linux).
* Auto-completion for functions, keywords, and custom APIs.
* Interactive console to directly test code snippets with local and remote execution.
* Integrated debugger (with support for local and remote debugging).
* Live coding with Lua ([demo](http://notebook.kulchenko.com/zerobrane/live-coding-in-lua-bret-victor-style)), Löve 2D ([demo](http://notebook.kulchenko.com/zerobrane/live-coding-with-love)), Gideros ([demo](http://notebook.kulchenko.com/zerobrane/gideros-live-coding-with-zerobrane-studio-ide)), Moai ([demo](http://notebook.kulchenko.com/zerobrane/live-coding-with-moai-and-zerobrane-studio)), and Corona SDK ([demo](http://notebook.kulchenko.com/zerobrane/debugging-and-live-coding-with-corona-sdk-applications-and-zerobrane-studio)).
* Support for plugin-like components:
- specs (spec/): file syntax, lexer, keywords (e.g. glsl);
- apis (api/): for code-completion and tool-tips;
- interpreters (interpreters/): how a project is run;
- config (cfg/): contains style and basic editor settings;
- tools (tools/): additional tools (e.g. DirectX/Cg shader compiler...).
## Documentation
* A [short and simple overview](http://studio.zerobrane.com/doc-getting-started.html) for those who are new to this development environment.
* A list of [frequently asked questions](http://studio.zerobrane.com/doc-faq.html) about the IDE.
* [Tutorials and demos](http://studio.zerobrane.com/tutorials.html) that cover debugging and live coding for different environments.
## Screenshot
![ZeroBrane Studio debugger screenshot](http://studio.zerobrane.com/images/debugging.png)
## Usage
```
Open file(s):
zbstudio <filename> [<filename>...]
any non-option will be treated as filename
Overriding default configuration:
zbstudio -cfg "<luacode overriding config>" [<filename>]
e.g.: zbstudio -cfg "editor.fontsize=12" somefile.lua
Loading custom configuration:
zbstudio -cfg path/file.lua [<filename>]
e.g.: zbstudio -cfg cfg/estrela.lua
```
## Author
### ZeroBrane Studio and MobDebug
**ZeroBrane LLC:** Paul Kulchenko (paul@kulchenko.com)
### Estrela Editor
**Luxinia Dev:** Christoph Kubisch (crazybutcher@luxinia.de)
## Where is Estrela?
The projects have been merged and ZeroBrane Studio will lead the future.
Please reassociate files with ZeroBrane Studio. To keep your history of files
and projects copy the contents of the `EstrelaEditor.ini` in your HOME
directory to `ZeroBraneStudio.ini`. If you have used Estrela for graphics
shader authoring or luxinia, create/modify the `cfg/user.lua` to include the
content of `cfg/estrela.lua` to load all tools and specifications by default
again.
## License
See LICENSE file.

View File

@@ -64,6 +64,11 @@ smoothstep = fn "clip and smooth blend [a,b]. - (vecN)(vecN a, b, x)",
floatBitsToInt = fn "returns the 32-bit integer representation of an IEEE 754 floating-point scalar or vector - (uintN/intN)(floatN)",
intBitsToFloat = fn "returns the float value corresponding to a given bit represention.of a scalar int value or vector of int values. - (floatN)(intN)",
uintBitsToFloat = fn "returns the float value corresponding to a given bit represention.of a scalar int value or vector of int values. - (floatN)(uintN)",
doubleBitsToInt64 = fn "returns the 64-bit integer representation of an IEEE 754 double precision floating-point scalar or vector - (int64N)(doubleN)",
doubleBitsToUint64 = fn "returns the 64-bit integer representation of an IEEE 754 double precision floating-point scalar or vector - (uint64N)(doubleN)",
int64BitsToDouble = fn "returns the double value corresponding to a given bit represention.of a scalar int value or vector of int values. - (doubleN)(uint64N)",
uint64BitsToDouble = fn "returns the double value corresponding to a given bit represention.of a scalar int value or vector of int values. - (doubleN)(uint64N)",
fma = fn "return a*b + c, treated as single operation when using precise - (vecN a, vecN b, vecN c)",
frexp = fn "splits scalars and vectors into normalized fraction [0.5,1.0) and a power of 2. - (vecN)(vecN x, out vecN e)",
ldexp = fn "build floating point number from x and the corresponding integral exponen of 2 in exp. - (vecN)(vecN x, exp)",
@@ -71,13 +76,21 @@ ldexp = fn "build floating point number from x and the corresponding integral ex
packUnorm2x16 = fn "Converts each comp. of v into 16-bit ints, packs results into the returned 32-bit uint. - (uint)(vec2 v)",
packUnorm4x8 = fn "Converts each comp. of v into 8-bit ints, packs results into the returned 32-bit uint. - (uint)(vec4 v)",
packSnorm4x8 = fn "Converts each comp. of v into 8-bit ints, packs results into the returned 32-bit uint. - (uint)(vec4 v)",
packDouble2x32 = fn "Packs components of v into a 64-bit value and returns a double-prec value. - (double)(uvec2 v)",
packHalf2x16 = fn "Converts each comp. of v into 16-bit half float, packs results into the returned 32-bit uint. - (uint)(vec2 v)",
packInt2x32 = fn "Packs two 32 bit into one 64-bit value. - (int64_t)(ivec2)",
packUint2x32 = fn "Packs two 32 bit into one 64-bit value. - (uint64_t)(uvec2)",
packFloat2x16 = fn "returns an unsigned integer obtained by interpreting the components of a two-component 16-bit floating-point as integers and packing them into 32 bit. - (uint)(f16vec2 v)",
unpackUnorm2x16 = fn "Unpacks 32-bit p into two 16-bit uints and converts them to normalized float. - (vec2)(uint p)",
unpackUnorm4x8 = fn "Unpacks 32-bit p into four 8-bit uints and converts them to normalized float. - (vec4)(uint p)",
unpackSnorm4x8 = fn "Unpacks 32-bit p into four 8-bit uints and converts them to normalized float. - (vec4)(uint p)",
packDouble2x32 = fn "Packs components of v into a 64-bit value and returns a double-prec value. - (double)(uvec2 v)",
unpackDouble2x32 = fn "Returns a 2 component vector representation of v. - (uvec2)(double v)",
unpackHalf2x16 = fn "Interprets p as two 16-bit half floats and returns them as vector. - (vec2)(uint p)",
unpackInt2x32 = fn "Unpacks 64-bit into two 32-bit values. - (ivec2)(int64_t)",
unpackUint2x32 = fn "Unpacks 64-bit into two 32-bit values. - (uvec2)(uint64_t)",
unpackFloat2x16 = fn "returns a two-component vector with 16-bit floating-point components obtained by unpacking a 32-bit unsigned integer into a pair of 16-bit values. - (f16vec2)(uint)",
length = fn "return scalar Euclidean length of a vector. - (type)(vecN)",
distance = fn "return the Euclidean distance between two points. - (vecN)(vecN a, b)",
@@ -135,6 +148,11 @@ EndPrimitive = fn "Completes current output primitive and starts a new one. - ()
barrier = fn "Synchronizes across shader invocations. - ()()",
memoryBarrier = fn "control ordering of memory transactions issued by shader thread. - ()()",
memoryBarrierAtomicCounter = fn "control ordering of memory transactions issued by shader thread. - ()()",
memoryBarrierShared = fn "control ordering of memory transactions issued by shader thread. - ()()",
memoryBarrierBuffer = fn "control ordering of memory transactions issued by shader thread. - ()()",
memoryBarrierImage = fn "control ordering of memory transactions issued by shader thread. - ()()",
groupMemoryBarrier = fn "control ordering of memory transactions issued by shader thread. - ()()",
imageAtomicAdd = fn "performs atomic operation on individual texels returns new value. - (uint)(imageN, intN coord, [int sample], uint data)",
imageAtomicMin = fn "performs atomic operation on individual texels returns new value. - (uint)(imageN, intN coord, [int sample], uint data)",
imageAtomicMax = fn "performs atomic operation on individual texels returns new value. - (uint)(imageN, intN coord, [int sample], uint data)",
@@ -164,44 +182,71 @@ textureGather = fn "gather lookup (pixel quad of 4 single channel samples at onc
textureGatherOffset = fn "gather lookup (pixel quad of 4 single channel samples at once) with offset. Component 0: x, 1: y ... is ignored for shadow samplers instead reference value must be passed. Only 2D/Cube. Illegal for MS. - (vec4)(samplerN, vecN coord, [float shadowRefZ], intN offset / intN offset[4] , [int comp])",
texelFetch = fn "integer coordinate lookup for a single texel. No lod parameter for Buffer, MS, Rect. Illegal for Cube - (vec4)(samplerN, intN coord, [int lod/sample])",
texelFetchOffset = fn "integer coordinate lookup for a single texel with offset. No lod parameter for Buffer, MS, Rect. Illegal for Cube, Buffer, MS. - (vec4)(samplerN, intN coord, [int lod/sample], intN offset)",
anyInvocationARB = fn "returns true if and only if <value> is true for at least one active invocation in the group. - (bool)(bool value)",
allInvocationsARB = fn "returns true if and only if <value> is true for all active invocations in the group - (bool)(bool value)",
allInvocationsEqualARB = fn "returns true if <value> is the same for all active invocation in the group. - (bool)(bool value)",
}
local keyw =
[[int uint half float bool double
vec2 vec3 vec4 dvec2 dvec3 dvec4
ivec2 ivec3 ivec4 uvec2 uvec3 uvec4 bvec2 bvec3 bvec4
mat2 mat3 mat4 mat2x2 mat3x3 mat4x4 mat2x3 mat3x2 mat4x2 mat2x4 mat4x3 mat3x4
dmat2 dmat3 dmat4 dmat2x2 dmat3x3 dmat4x4 dmat2x3 dmat3x2 dmat4x2 dmat2x4 dmat4x3 dmat3x4
struct typedef void
usampler1D usampler2D usampler3D usampler2DRect usamplerCube isampler1DArray usampler2DARRAY usamplerCubeArray usampler2DMS usampler2DMSArray
isampler1D isampler2D isampler3D isampler2DRect isamplerCube isampler1DArray isampler2DARRAY isamplerCubeArray isampler2DMS isampler2DMSArray
sampler1D sampler2D sampler3D sampler2DRect samplerCube sampler1DArray sampler2DArray samplerCubeArray sampler2DMS sampler2DMSArray
sampler1DShadow sampler2DShadow sampler2DRectShadow sampler1DArrayShadow sampler2DArrayShadow samplerCubeArrayShadow
usamplerBuffer isamplerBuffer samplerBuffer
in out inout uniform const centroid sample attribute varying patch
return switch case for do while if else break continue
layout location vertices line_strip triangle_strip max_vertices stream
triangles quads equal_spacing isolines fractional_even_spacing
fractional_odd_spacing cw ccw point_mode lines_adjacency triangles_adjacency
invocations
origin_upper_left pixel_center_integer
smooth flat noperspective highp mediump lowp shared packed std140 row_major column_major
gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_Color gl_SecondaryColor
subroutine gl_Position
gl_VertexID gl_InstanceID gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1
gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6
gl_MultiTexCoord7 gl_FogCoord gl_PointSize gl_ClipDistance
gl_TexCoord gl_FogFragCoord gl_ClipVertex gl_in
gl_PatchVerticesIn
gl_PrimitiveID gl_InvocationID gl_TessLevelOuter gl_TessLevelInner gl_TessCoord
gl_InvocationID gl_PrimitiveIDIn gl_Layer gl_ViewportIndex gl_FrontFacing
gl_PointCoord gl_SampleID gl_SamplePosition gl_FragColor
gl_FragData gl_FragDepth gl_SampleMask
[[ int uint half float bool double atomic_uint binding offset
vec2 vec3 vec4 dvec2 dvec3 dvec4
ivec2 ivec3 ivec4 uvec2 uvec3 uvec4 bvec2 bvec3 bvec4
mat2 mat3 mat4 mat2x2 mat3x3 mat4x4 mat2x3 mat3x2 mat4x2 mat2x4 mat4x3 mat3x4
dmat2 dmat3 dmat4 dmat2x2 dmat3x3 dmat4x4 dmat2x3 dmat3x2 dmat4x2 dmat2x4 dmat4x3 dmat3x4
float16_t f16vec2 f16vec3 f16vec4
float32_t f32vec2 f32vec3 f32vec4
float64_t f64vec2 f64vec3 f64vec4
int8_t i8vec2 i8vec3 i8vec4
int8_t i8vec2 i8vec3 i8vec4
int16_t i16vec2 i16vec3 i16vec4
int32_t i32vec2 i32vec3 i32vec4
int64_t i64vec2 i64vec3 i64vec4
uint8_t u8vec2 u8vec3 u8vec4
uint16_t u16vec2 u16vec3 u16vec4
uint32_t u32vec2 u32vec3 u32vec4
uint64_t u64vec2 u64vec3 u64vec4
struct typedef void
usampler1D usampler2D usampler3D usampler2DRect usamplerCube isampler1DArray usampler2DARRAY usamplerCubeArray usampler2DMS usampler2DMSArray
isampler1D isampler2D isampler3D isampler2DRect isamplerCube isampler1DArray isampler2DARRAY isamplerCubeArray isampler2DMS isampler2DMSArray
sampler1D sampler2D sampler3D sampler2DRect samplerCube sampler1DArray sampler2DArray samplerCubeArray sampler2DMS sampler2DMSArray
sampler1DShadow sampler2DShadow sampler2DRectShadow sampler1DArrayShadow sampler2DArrayShadow samplerCubeArrayShadow
usamplerBuffer isamplerBuffer samplerBuffer samplerRenderbuffer isamplerRenderbuffer usamplerRenderbuffer
in out inout uniform const centroid sample attribute varying patch index true false
return switch case for do while if else break continue main inline
layout location vertices line_strip triangle_strip max_vertices stream
triangles quads equal_spacing isolines fractional_even_spacing lines points
fractional_odd_spacing cw ccw point_mode lines_adjacency triangles_adjacency
invocations offset align xfb_offset xfb_buffer
origin_upper_left pixel_center_integer depth_greater depth_greater depth_greater depth_unchanged
smooth flat noperspective highp mediump lowp shared packed std140 std430 row_major column_major buffer
gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_Color gl_SecondaryColor
subroutine gl_Position gl_FragCoord
gl_VertexID gl_InstanceID gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1
gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6
gl_MultiTexCoord7 gl_FogCoord gl_PointSize gl_ClipDistance
gl_TexCoord gl_FogFragCoord gl_ClipVertex gl_in
gl_PatchVerticesIn
gl_PrimitiveID gl_InvocationID gl_TessLevelOuter gl_TessLevelInner gl_TessCoord
gl_InvocationID gl_PrimitiveIDIn gl_Layer gl_ViewportIndex gl_FrontFacing
gl_PointCoord gl_SampleID gl_SamplePosition gl_FragColor
gl_FragData gl_FragDepth gl_SampleMask
gl_NumWorkGroups gl_WorkGroupSize gl_WorkGroupID gl_LocalInvocationID gl_GlobalInvocationID gl_LocalInvocationIndex
local_size_x local_size_y local_size_z
gl_BaseVertexARB gl_BaseInstanceARB gl_DrawIDARB
coherent volatile restrict readonly writeonly
image1D image2D image3D image2DRect imageCube imageBuffer image1DArray image2DArray imageCubeArray image2DMS image2DMSArray
uimage1D uimage2D uimage3D uimage2DRect uimageCube uimageBuffer uimage1DArray uimage2DArray uimageCubeArray uimage2DMS uimage2DMSArray
iimage1D iimage2D iimage3D iimage2DRect iimageCube iimageBuffer iimage1DArray iimage2DArray iimageCubeArray iimage2DMS iimage2DMSArray
size1x8 size1x16 size1x32 size2x32 size4x32 rgba32f rgba16f rg32f rg16f r32f r16f rgba8 rgba16 r11f_g11f_b10f rgb10_a2ui
rgb10_a2i rg16 rg8 r16 r8 rgba32i rgba16i rgba8i rg32i rg16i rg8i r32i r16i r8i rgba32ui rgba16ui rgba8ui rg32ui rg16ui rg8ui
r32ui r16ui r8ui rgba16_snorm rgba8_snorm rg16_snorm rg8_snorm r16_snorm r8_snorm
]]
-- keywords - shouldn't be left out
for w in keyw:gmatch("([a-zA-Z_0-9]+)") do
api[w] = {type="keyword"}
api[w] = {type="keyword"}
end
return api

553
api/lua/anttweakbar.lua Normal file
View File

@@ -0,0 +1,553 @@
--[[// tw tweakbar | AntTweakBar UI
enum { TW_VERSION = 114 }
typedef enum ETwType {
TW_TYPE_UNDEF,
TW_TYPE_BOOLCPP,
TW_TYPE_BOOL8,
TW_TYPE_BOOL16,
TW_TYPE_BOOL32,
TW_TYPE_CHAR,
TW_TYPE_INT8,
TW_TYPE_UINT8,
TW_TYPE_INT16,
TW_TYPE_UINT16,
TW_TYPE_INT32,
TW_TYPE_UINT32,
TW_TYPE_FLOAT,
TW_TYPE_DOUBLE,
TW_TYPE_COLOR32, // 32 bits color. Order is RGBA if API is OpenGL or Direct3D10, and inversed if API is Direct3D9 (can be modified by defining 'colorOrder=...', see doc)
TW_TYPE_COLOR3F, // 3 floats color. Order is RGB.
TW_TYPE_COLOR4F, // 4 floats color. Order is RGBA.
TW_TYPE_CDSTRING, // Null-terminated C Dynamic String (pointer to an array of char dynamically allocated with malloc/realloc/strdup)
TW_TYPE__TEMP1, //
TW_TYPE_QUAT4F, // 4 floats encoding a quaternion {qx,qy,qz,qs}
TW_TYPE_QUAT4D, // 4 doubles encoding a quaternion {qx,qy,qz,qs}
TW_TYPE_DIR3F, // direction vector represented by 3 floats
TW_TYPE_DIR3D, // direction vector represented by 3 doubles
TW_TYPE_CSSTRING_LEN0 = 0x30000000,
TW_TYPE_CSSTRING_LEN256 = 0x30000000 + 256,
} TwType;
typedef struct CTwEnumVal {
int Value;
const char * Label;
} TwEnumVal;
typedef struct CTwStructMember {
const char * Name;
TwType Type;
size_t Offset;
const char * DefString;
} TwStructMember;
typedef enum ETwParamValueType {
TW_PARAM_INT32,
TW_PARAM_FLOAT,
TW_PARAM_DOUBLE,
TW_PARAM_CSTRING // Null-terminated array of char (ie, c-string)
} TwParamValueType;
typedef enum ETwGraphAPI {
TW_OPENGL = 1,
TW_DIRECT3D9 = 2,
TW_DIRECT3D10 = 3,
TW_DIRECT3D11 = 4
} TwGraphAPI;
typedef enum ETwKeyModifier {
TW_KMOD_NONE = 0x0000, // same codes as SDL keysym.mod
TW_KMOD_SHIFT = 0x0003,
TW_KMOD_CTRL = 0x00c0,
TW_KMOD_ALT = 0x0100,
TW_KMOD_META = 0x0c00
} TwKeyModifier;
typedef enum EKeySpecial {
TW_KEY_BACKSPACE = '\b',
TW_KEY_TAB = '\t',
TW_KEY_CLEAR = 0x0c,
TW_KEY_RETURN = '\r',
TW_KEY_PAUSE = 0x13,
TW_KEY_ESCAPE = 0x1b,
TW_KEY_SPACE = ' ',
TW_KEY_DELETE = 0x7f,
TW_KEY_UP = 273,
TW_KEY_DOWN,
TW_KEY_RIGHT,
TW_KEY_LEFT,
TW_KEY_INSERT,
TW_KEY_HOME,
TW_KEY_END,
TW_KEY_PAGE_UP,
TW_KEY_PAGE_DOWN,
TW_KEY_F1,
TW_KEY_F2,
TW_KEY_F3,
TW_KEY_F4,
TW_KEY_F5,
TW_KEY_F6,
TW_KEY_F7,
TW_KEY_F8,
TW_KEY_F9,
TW_KEY_F10,
TW_KEY_F11,
TW_KEY_F12,
TW_KEY_F13,
TW_KEY_F14,
TW_KEY_F15,
TW_KEY_LAST
} TwKeySpecial;
typedef enum ETwMouseAction {
TW_MOUSE_RELEASED,
TW_MOUSE_PRESSED
} TwMouseAction;
typedef enum ETwMouseButtonID {
TW_MOUSE_LEFT = 1,
TW_MOUSE_MIDDLE = 2,
TW_MOUSE_RIGHT = 3
} TwMouseButtonID;
typedef void (*TwSetVarCallback) ( const void *value, void *clientData );
typedef void (*TwGetVarCallback) ( void *value, void *clientData );
typedef void (*TwButtonCallback) ( void *clientData );
typedef void (*TwSummaryCallback) ( char *summaryString, size_t summaryMaxLength, const void *value, void *clientData );
typedef void (*TwCopyCDStringToClient) ( char **destinationClientStringPtr, const char *sourceString );
typedef void (*TwErrorHandler) ( const char *errorMessage );
typedef void (*TwGLUTmousebuttonfun) ( int glutButton, int glutState, int mouseX, int mouseY );
typedef void (*TwGLUTmousemotionfun) ( int mouseX, int mouseY );
typedef void (*TwGLUTkeyboardfun) ( unsigned char glutKey, int mouseX, int mouseY );
typedef void (*TwGLUTspecialfun) ( int glutKey, int mouseX, int mouseY );
typedef struct CTwBar TwBar;
TwBar* TwNewBar( const char *barName );
int TwDeleteBar( TwBar *bar );
int TwDeleteAllBars( );
int TwSetTopBar( const TwBar *bar );
TwBar* TwGetTopBar( );
int TwSetBottomBar( const TwBar *bar );
TwBar* TwGetBottomBar( );
const char* TwGetBarName( TwBar *bar );
int TwGetBarCount( );
TwBar* TwGetBarByIndex( int barIndex );
TwBar* TwGetBarByName( const char *barName );
int TwRefreshBar( TwBar *bar );
int TwAddVarRW( TwBar *bar, const char *name, TwType type, void *var, const char *def );
int TwAddVarRO( TwBar *bar, const char *name, TwType type, const void *var, const char *def );
int TwAddVarCB( TwBar *bar, const char *name, TwType type, TwSetVarCallback setCallback, TwGetVarCallback getCallback, void *clientData, const char *def );
int TwAddButton( TwBar *bar, const char *name, TwButtonCallback callback, void *clientData, const char *def );
int TwAddSeparator( TwBar *bar, const char *name, const char *def );
int TwRemoveVar( TwBar *bar, const char *name );
int TwRemoveAllVars( TwBar *bar );
int TwDefine( const char *def );
TwType TwDefineEnum( const char *name, const TwEnumVal *enumValues, unsigned int nbValues );
TwType TwDefineEnumFromString( const char *name, const char *enumString );
TwType TwDefineStruct( const char *name, const TwStructMember *structMembers, unsigned int nbMembers, size_t structSize, TwSummaryCallback summaryCallback, void *summaryClientData );
void TwCopyCDStringToClientFunc( TwCopyCDStringToClient copyCDStringFunc );
void TwCopyCDStringToLibrary( char **destinationLibraryStringPtr, const char *sourceClientString );
int TwGetParam( TwBar *bar, const char *varName, const char *paramName, TwParamValueType paramValueType, unsigned int outValueMaxCount, void *outValues );
int TwSetParam( TwBar *bar, const char *varName, const char *paramName, TwParamValueType paramValueType, unsigned int inValueCount, const void *inValues );
int TwInit( TwGraphAPI graphAPI, void *device );
int TwTerminate();
int TwDraw();
int TwWindowSize( int width, int height);
int TwSetCurrentWindow( int windowID); // multi-windows support
int TwGetCurrentWindow();
int TwWindowExists( int windowID);
int TwKeyPressed( int key, int modifiers);
int TwKeyTest( int key, int modifiers);
int TwMouseButton( TwMouseAction action, TwMouseButtonID button);
int TwMouseMotion( int mouseX, int mouseY);
int TwMouseWheel( int pos);
const char* TwGetLastError( );
void TwHandleErrors( TwErrorHandler errorHandler);
int TwEventSDL( const void *sdlEvent, unsigned char sdlMajorVersion, unsigned char sdlMinorVersion);
int TwEventSDL12( const void *sdlEvent);
int TwEventSDL13( const void *sdlEvent);
int TwEventMouseButtonGLFW( int glfwButton, int glfwAction );
int TwEventKeyGLFW( int glfwKey, int glfwAction );
int TwEventCharGLFW( int glfwChar, int glfwAction );
int TwEventMouseButtonGLUT( int glutButton, int glutState, int mouseX, int mouseY);
int TwEventMouseMotionGLUT( int mouseX, int mouseY);
int TwEventKeyboardGLUT( unsigned char glutKey, int mouseX, int mouseY );
int TwEventSpecialGLUT( int glutKey, int mouseX, int mouseY );
int TwGLUTModifiersFunc( int (*glutGetModifiersFunc)(void) );
int TwEventSFML( const void *sfmlEvent, unsigned char sfmlMajorVersion, unsigned char sfmlMinorVersion);
]]
--auto-generated api from ffi headers
local api =
{
["TW_TYPE_UNDEF"] = { type ='value', },
["TW_TYPE_BOOLCPP"] = { type ='value', },
["TW_TYPE_BOOL8"] = { type ='value', },
["TW_TYPE_BOOL16"] = { type ='value', },
["TW_TYPE_BOOL32"] = { type ='value', },
["TW_TYPE_CHAR"] = { type ='value', },
["TW_TYPE_INT8"] = { type ='value', },
["TW_TYPE_UINT8"] = { type ='value', },
["TW_TYPE_INT16"] = { type ='value', },
["TW_TYPE_UINT16"] = { type ='value', },
["TW_TYPE_INT32"] = { type ='value', },
["TW_TYPE_UINT32"] = { type ='value', },
["TW_TYPE_FLOAT"] = { type ='value', },
["TW_TYPE_DOUBLE"] = { type ='value', },
["TW_TYPE_COLOR32"] = { type ='value', },
["TW_TYPE_COLOR3F"] = { type ='value', },
["TW_TYPE_COLOR4F"] = { type ='value', },
["TW_TYPE_CDSTRING"] = { type ='value', },
["TW_TYPE__TEMP1"] = { type ='value', },
["TW_TYPE_QUAT4F"] = { type ='value', },
["TW_TYPE_QUAT4D"] = { type ='value', },
["TW_TYPE_DIR3F"] = { type ='value', },
["TW_TYPE_DIR3D"] = { type ='value', },
["TW_TYPE_CSSTRING_LEN0"] = { type ='value', },
["TW_TYPE_CSSTRING_LEN256"] = { type ='value', },
["TW_PARAM_INT32"] = { type ='value', },
["TW_PARAM_FLOAT"] = { type ='value', },
["TW_PARAM_DOUBLE"] = { type ='value', },
["TW_PARAM_CSTRING"] = { type ='value', },
["TW_OPENGL"] = { type ='value', },
["TW_DIRECT3D9"] = { type ='value', },
["TW_DIRECT3D10"] = { type ='value', },
["TW_DIRECT3D11"] = { type ='value', },
["TW_KMOD_NONE"] = { type ='value', },
["TW_KMOD_SHIFT"] = { type ='value', },
["TW_KMOD_CTRL"] = { type ='value', },
["TW_KMOD_ALT"] = { type ='value', },
["TW_KMOD_META"] = { type ='value', },
["TW_KEY_BACKSPACE"] = { type ='value', },
["TW_KEY_TAB"] = { type ='value', },
["TW_KEY_CLEAR"] = { type ='value', },
["TW_KEY_RETURN"] = { type ='value', },
["TW_KEY_PAUSE"] = { type ='value', },
["TW_KEY_ESCAPE"] = { type ='value', },
["TW_KEY_SPACE"] = { type ='value', },
["TW_KEY_DELETE"] = { type ='value', },
["TW_KEY_UP"] = { type ='value', },
["TW_KEY_DOWN"] = { type ='value', },
["TW_KEY_RIGHT"] = { type ='value', },
["TW_KEY_LEFT"] = { type ='value', },
["TW_KEY_INSERT"] = { type ='value', },
["TW_KEY_HOME"] = { type ='value', },
["TW_KEY_END"] = { type ='value', },
["TW_KEY_PAGE_UP"] = { type ='value', },
["TW_KEY_PAGE_DOWN"] = { type ='value', },
["TW_KEY_F1"] = { type ='value', },
["TW_KEY_F2"] = { type ='value', },
["TW_KEY_F3"] = { type ='value', },
["TW_KEY_F4"] = { type ='value', },
["TW_KEY_F5"] = { type ='value', },
["TW_KEY_F6"] = { type ='value', },
["TW_KEY_F7"] = { type ='value', },
["TW_KEY_F8"] = { type ='value', },
["TW_KEY_F9"] = { type ='value', },
["TW_KEY_F10"] = { type ='value', },
["TW_KEY_F11"] = { type ='value', },
["TW_KEY_F12"] = { type ='value', },
["TW_KEY_F13"] = { type ='value', },
["TW_KEY_F14"] = { type ='value', },
["TW_KEY_F15"] = { type ='value', },
["TW_KEY_LAST"] = { type ='value', },
["TW_MOUSE_RELEASED"] = { type ='value', },
["TW_MOUSE_PRESSED"] = { type ='value', },
["TW_MOUSE_LEFT"] = { type ='value', },
["TW_MOUSE_MIDDLE"] = { type ='value', },
["TW_MOUSE_RIGHT"] = { type ='value', },
["TwNewBar"] = { type ='function',
description = "",
returns = "(TwBar*)",
valuetype = nil,
args = "(const char *barName)", },
["TwDeleteBar"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar)", },
["TwDeleteAllBars"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "()", },
["TwSetTopBar"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const TwBar *bar)", },
["TwGetTopBar"] = { type ='function',
description = "",
returns = "(TwBar*)",
valuetype = nil,
args = "()", },
["TwSetBottomBar"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const TwBar *bar)", },
["TwGetBottomBar"] = { type ='function',
description = "",
returns = "(TwBar*)",
valuetype = nil,
args = "()", },
["TwGetBarName"] = { type ='function',
description = "",
returns = "(const char*)",
valuetype = "string",
args = "(TwBar *bar)", },
["TwGetBarCount"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "()", },
["TwGetBarByIndex"] = { type ='function',
description = "",
returns = "(TwBar*)",
valuetype = nil,
args = "(int barIndex)", },
["TwGetBarByName"] = { type ='function',
description = "",
returns = "(TwBar*)",
valuetype = nil,
args = "(const char *barName)", },
["TwRefreshBar"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar)", },
["TwAddVarRW"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name, TwType type, void *var, const char *def)", },
["TwAddVarRO"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name, TwType type, const void *var, const char *def)", },
["TwAddVarCB"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name, TwType type, TwSetVarCallback setCallback, TwGetVarCallback getCallback, void *clientData, const char *def)", },
["TwAddButton"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name, TwButtonCallback callback, void *clientData, const char *def)", },
["TwAddSeparator"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name, const char *def)", },
["TwRemoveVar"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *name)", },
["TwRemoveAllVars"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar)", },
["TwDefine"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const char *def)", },
["TwDefineEnum"] = { type ='function',
description = "",
returns = "(TwType)",
valuetype = nil,
args = "(const char *name, const TwEnumVal *enumValues, unsigned int nbValues)", },
["TwDefineEnumFromString"] = { type ='function',
description = "",
returns = "(TwType)",
valuetype = nil,
args = "(const char *name, const char *enumString)", },
["TwDefineStruct"] = { type ='function',
description = "",
returns = "(TwType)",
valuetype = nil,
args = "(const char *name, const TwStructMember *structMembers, unsigned int nbMembers, size_t structSize, TwSummaryCallback summaryCallback, void *summaryClientData)", },
["TwCopyCDStringToClientFunc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(TwCopyCDStringToClient copyCDStringFunc)", },
["TwCopyCDStringToLibrary"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(char **destinationLibraryStringPtr, const char *sourceClientString)", },
["TwGetParam"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *varName, const char *paramName, TwParamValueType paramValueType, unsigned int outValueMaxCount, void *outValues)", },
["TwSetParam"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwBar *bar, const char *varName, const char *paramName, TwParamValueType paramValueType, unsigned int inValueCount, const void *inValues)", },
["TwInit"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwGraphAPI graphAPI, void *device)", },
["TwTerminate"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "()", },
["TwDraw"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "()", },
["TwWindowSize"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int width, int height)", },
["TwSetCurrentWindow"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int windowID)", },
["TwGetCurrentWindow"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "()", },
["TwWindowExists"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int windowID)", },
["TwKeyPressed"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int key, int modifiers)", },
["TwKeyTest"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int key, int modifiers)", },
["TwMouseButton"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(TwMouseAction action, TwMouseButtonID button)", },
["TwMouseMotion"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int mouseX, int mouseY)", },
["TwMouseWheel"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int pos)", },
["TwGetLastError"] = { type ='function',
description = "",
returns = "(const char*)",
valuetype = "string",
args = "()", },
["TwHandleErrors"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(TwErrorHandler errorHandler)", },
["TwEventSDL"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const void *sdlEvent, unsigned char sdlMajorVersion, unsigned char sdlMinorVersion)", },
["TwEventSDL12"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const void *sdlEvent)", },
["TwEventSDL13"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const void *sdlEvent)", },
["TwEventMouseButtonGLFW"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int glfwButton, int glfwAction)", },
["TwEventKeyGLFW"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int glfwKey, int glfwAction)", },
["TwEventCharGLFW"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int glfwChar, int glfwAction)", },
["TwEventMouseButtonGLUT"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int glutButton, int glutState, int mouseX, int mouseY)", },
["TwEventMouseMotionGLUT"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int mouseX, int mouseY)", },
["TwEventKeyboardGLUT"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(unsigned char glutKey, int mouseX, int mouseY)", },
["TwEventSpecialGLUT"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(int glutKey, int mouseX, int mouseY)", },
["glutGetModifiersFunc"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(void))", },
["TwEventSFML"] = { type ='function',
description = "",
returns = "(int)",
valuetype = nil,
args = "(const void *sfmlEvent, unsigned char sfmlMajorVersion, unsigned char sfmlMinorVersion)", },
["TwEnumVal"] = { type ='class',
description = "",
childs = {
["Value"] = { type ='value', description = "int ", valuetype = nil, },
["Label"] = { type ='value', description = "const char * ", valuetype = "string", },
}
},
["TwStructMember"] = { type ='class',
description = "",
childs = {
["Name"] = { type ='value', description = "const char * ", valuetype = "string", },
["Type"] = { type ='value', description = "TwType ", valuetype = nil, },
["Offset"] = { type ='value', description = "size_t ", valuetype = nil, },
["DefString"] = { type ='value', description = "const char * ", valuetype = "string", },
}
},
}
return {
tw = {
type = 'lib',
description = "AntTweakBar UI",
childs = api,
},
tweakbar = {
type = 'lib',
description = "AntTweakBar UI",
childs = api,
},
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,572 +0,0 @@
--[[// cggl cgGL | Cg OpenGL runtime
typedef unsigned int GLuint;
typedef unsigned int GLenum;
typedef void GLvoid;
typedef int GLsizei;
typedef int GLint;
typedef enum
{
CG_GL_MATRIX_IDENTITY = 0,
CG_GL_MATRIX_TRANSPOSE = 1,
CG_GL_MATRIX_INVERSE = 2,
CG_GL_MATRIX_INVERSE_TRANSPOSE = 3,
CG_GL_MODELVIEW_MATRIX = 4,
CG_GL_PROJECTION_MATRIX = 5,
CG_GL_TEXTURE_MATRIX = 6,
CG_GL_MODELVIEW_PROJECTION_MATRIX = 7,
CG_GL_VERTEX = 8,
CG_GL_FRAGMENT = 9,
CG_GL_GEOMETRY = 10,
CG_GL_TESSELLATION_CONTROL = 11,
CG_GL_TESSELLATION_EVALUATION = 12
} CGGLenum;
CGbool cgGLIsProfileSupported(CGprofile profile);
void cgGLEnableProfile(CGprofile profile);
void cgGLDisableProfile(CGprofile profile);
CGprofile cgGLGetLatestProfile(CGGLenum profile_type);
void cgGLSetOptimalOptions(CGprofile profile);
char const ** cgGLGetOptimalOptions(CGprofile profile);
void cgGLLoadProgram(CGprogram program);
void cgGLUnloadProgram(CGprogram program);
CGbool cgGLIsProgramLoaded(CGprogram program);
void cgGLBindProgram(CGprogram program);
void cgGLUnbindProgram(CGprofile profile);
GLuint cgGLGetProgramID(CGprogram program);
void cgGLSetParameter1f(CGparameter param, float x);
void cgGLSetParameter2f(CGparameter param, float x, float y);
void cgGLSetParameter3f(CGparameter param, float x, float y, float z);
void cgGLSetParameter4f(CGparameter param, float x, float y, float z, float w);
void cgGLSetParameter1fv(CGparameter param, const float *v);
void cgGLSetParameter2fv(CGparameter param, const float *v);
void cgGLSetParameter3fv(CGparameter param, const float *v);
void cgGLSetParameter4fv(CGparameter param, const float *v);
void cgGLSetParameter1d(CGparameter param, double x);
void cgGLSetParameter2d(CGparameter param, double x, double y);
void cgGLSetParameter3d(CGparameter param, double x, double y, double z);
void cgGLSetParameter4d(CGparameter param, double x, double y, double z, double w);
void cgGLSetParameter1dv(CGparameter param, const double *v);
void cgGLSetParameter2dv(CGparameter param, const double *v);
void cgGLSetParameter3dv(CGparameter param, const double *v);
void cgGLSetParameter4dv(CGparameter param, const double *v);
void cgGLGetParameter1f(CGparameter param, float *v);
void cgGLGetParameter2f(CGparameter param, float *v);
void cgGLGetParameter3f(CGparameter param, float *v);
void cgGLGetParameter4f(CGparameter param, float *v);
void cgGLGetParameter1d(CGparameter param, double *v);
void cgGLGetParameter2d(CGparameter param, double *v);
void cgGLGetParameter3d(CGparameter param, double *v);
void cgGLGetParameter4d(CGparameter param, double *v);
void cgGLSetParameterArray1f(CGparameter param, long offset, long nelements, const float *v);
void cgGLSetParameterArray2f(CGparameter param, long offset, long nelements, const float *v);
void cgGLSetParameterArray3f(CGparameter param, long offset, long nelements, const float *v);
void cgGLSetParameterArray4f(CGparameter param, long offset, long nelements, const float *v);
void cgGLSetParameterArray1d(CGparameter param, long offset, long nelements, const double *v);
void cgGLSetParameterArray2d(CGparameter param, long offset, long nelements, const double *v);
void cgGLSetParameterArray3d(CGparameter param, long offset, long nelements, const double *v);
void cgGLSetParameterArray4d(CGparameter param, long offset, long nelements, const double *v);
void cgGLGetParameterArray1f(CGparameter param, long offset, long nelements, float *v);
void cgGLGetParameterArray2f(CGparameter param, long offset, long nelements, float *v);
void cgGLGetParameterArray3f(CGparameter param, long offset, long nelements, float *v);
void cgGLGetParameterArray4f(CGparameter param, long offset, long nelements, float *v);
void cgGLGetParameterArray1d(CGparameter param, long offset, long nelements, double *v);
void cgGLGetParameterArray2d(CGparameter param, long offset, long nelements, double *v);
void cgGLGetParameterArray3d(CGparameter param, long offset, long nelements, double *v);
void cgGLGetParameterArray4d(CGparameter param, long offset, long nelements, double *v);
void cgGLSetParameterPointer(CGparameter param, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer);
void cgGLEnableClientState(CGparameter param);
void cgGLDisableClientState(CGparameter param);
void cgGLSetMatrixParameterdr(CGparameter param, const double *matrix);
void cgGLSetMatrixParameterfr(CGparameter param, const float *matrix);
void cgGLSetMatrixParameterdc(CGparameter param, const double *matrix);
void cgGLSetMatrixParameterfc(CGparameter param, const float *matrix);
void cgGLGetMatrixParameterdr(CGparameter param, double *matrix);
void cgGLGetMatrixParameterfr(CGparameter param, float *matrix);
void cgGLGetMatrixParameterdc(CGparameter param, double *matrix);
void cgGLGetMatrixParameterfc(CGparameter param, float *matrix);
void cgGLSetStateMatrixParameter(CGparameter param, CGGLenum matrix, CGGLenum transform);
void cgGLSetMatrixParameterArrayfc(CGparameter param, long offset, long nelements, const float *matrices);
void cgGLSetMatrixParameterArrayfr(CGparameter param, long offset, long nelements, const float *matrices);
void cgGLSetMatrixParameterArraydc(CGparameter param, long offset, long nelements, const double *matrices);
void cgGLSetMatrixParameterArraydr(CGparameter param, long offset, long nelements, const double *matrices);
void cgGLGetMatrixParameterArrayfc(CGparameter param, long offset, long nelements, float *matrices);
void cgGLGetMatrixParameterArrayfr(CGparameter param, long offset, long nelements, float *matrices);
void cgGLGetMatrixParameterArraydc(CGparameter param, long offset, long nelements, double *matrices);
void cgGLGetMatrixParameterArraydr(CGparameter param, long offset, long nelements, double *matrices);
void cgGLSetTextureParameter(CGparameter param, GLuint texobj);
GLuint cgGLGetTextureParameter(CGparameter param);
void cgGLEnableTextureParameter(CGparameter param);
void cgGLDisableTextureParameter(CGparameter param);
GLenum cgGLGetTextureEnum(CGparameter param);
void cgGLSetManageTextureParameters(CGcontext ctx, CGbool flag);
CGbool cgGLGetManageTextureParameters(CGcontext ctx);
void cgGLSetupSampler(CGparameter param, GLuint texobj);
void cgGLRegisterStates(CGcontext ctx);
void cgGLEnableProgramProfiles(CGprogram program);
void cgGLDisableProgramProfiles(CGprogram program);
void cgGLSetDebugMode(CGbool debug);
CGbuffer cgGLCreateBuffer(CGcontext context, int size, const void *data, GLenum bufferUsage);
GLuint cgGLGetBufferObject(CGbuffer buffer);
]]
--auto-generated api from ffi headers
local api =
{
["CGGLenum"] = { type ='value', description = "", valuetype = nil, },
["CG_GL_MATRIX_IDENTITY"] = { type ='value', },
["CG_GL_MATRIX_TRANSPOSE"] = { type ='value', },
["CG_GL_MATRIX_INVERSE"] = { type ='value', },
["CG_GL_MATRIX_INVERSE_TRANSPOSE"] = { type ='value', },
["CG_GL_MODELVIEW_MATRIX"] = { type ='value', },
["CG_GL_PROJECTION_MATRIX"] = { type ='value', },
["CG_GL_TEXTURE_MATRIX"] = { type ='value', },
["CG_GL_MODELVIEW_PROJECTION_MATRIX"] = { type ='value', },
["CG_GL_VERTEX"] = { type ='value', },
["CG_GL_FRAGMENT"] = { type ='value', },
["CG_GL_GEOMETRY"] = { type ='value', },
["CG_GL_TESSELLATION_CONTROL"] = { type ='value', },
["CG_GL_TESSELLATION_EVALUATION"] = { type ='value', },
["cgGLIsProfileSupported"] = { type ='function',
description = "",
returns = "(CGbool)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLEnableProfile"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLDisableProfile"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLGetLatestProfile"] = { type ='function',
description = "",
returns = "(CGprofile)",
valuetype = nil,
args = "(CGGLenum profile_type)", },
["cgGLSetOptimalOptions"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLGetOptimalOptions"] = { type ='function',
description = "",
returns = "(char const **)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLLoadProgram"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLUnloadProgram"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLIsProgramLoaded"] = { type ='function',
description = "",
returns = "(CGbool)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLBindProgram"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLUnbindProgram"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprofile profile)", },
["cgGLGetProgramID"] = { type ='function',
description = "",
returns = "(GLuint)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLSetParameter1f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float x)", },
["cgGLSetParameter2f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float x, float y)", },
["cgGLSetParameter3f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float x, float y, float z)", },
["cgGLSetParameter4f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float x, float y, float z, float w)", },
["cgGLSetParameter1fv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *v)", },
["cgGLSetParameter2fv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *v)", },
["cgGLSetParameter3fv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *v)", },
["cgGLSetParameter4fv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *v)", },
["cgGLSetParameter1d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double x)", },
["cgGLSetParameter2d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double x, double y)", },
["cgGLSetParameter3d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double x, double y, double z)", },
["cgGLSetParameter4d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double x, double y, double z, double w)", },
["cgGLSetParameter1dv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *v)", },
["cgGLSetParameter2dv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *v)", },
["cgGLSetParameter3dv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *v)", },
["cgGLSetParameter4dv"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *v)", },
["cgGLGetParameter1f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *v)", },
["cgGLGetParameter2f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *v)", },
["cgGLGetParameter3f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *v)", },
["cgGLGetParameter4f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *v)", },
["cgGLGetParameter1d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *v)", },
["cgGLGetParameter2d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *v)", },
["cgGLGetParameter3d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *v)", },
["cgGLGetParameter4d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *v)", },
["cgGLSetParameterArray1f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *v)", },
["cgGLSetParameterArray2f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *v)", },
["cgGLSetParameterArray3f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *v)", },
["cgGLSetParameterArray4f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *v)", },
["cgGLSetParameterArray1d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *v)", },
["cgGLSetParameterArray2d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *v)", },
["cgGLSetParameterArray3d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *v)", },
["cgGLSetParameterArray4d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *v)", },
["cgGLGetParameterArray1f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *v)", },
["cgGLGetParameterArray2f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *v)", },
["cgGLGetParameterArray3f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *v)", },
["cgGLGetParameterArray4f"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *v)", },
["cgGLGetParameterArray1d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *v)", },
["cgGLGetParameterArray2d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *v)", },
["cgGLGetParameterArray3d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *v)", },
["cgGLGetParameterArray4d"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *v)", },
["cgGLSetParameterPointer"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, GLint fsize, GLenum type, GLsizei stride, const GLvoid *pointer)", },
["cgGLEnableClientState"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLDisableClientState"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLSetMatrixParameterdr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *matrix)", },
["cgGLSetMatrixParameterfr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *matrix)", },
["cgGLSetMatrixParameterdc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const double *matrix)", },
["cgGLSetMatrixParameterfc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, const float *matrix)", },
["cgGLGetMatrixParameterdr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *matrix)", },
["cgGLGetMatrixParameterfr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *matrix)", },
["cgGLGetMatrixParameterdc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, double *matrix)", },
["cgGLGetMatrixParameterfc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, float *matrix)", },
["cgGLSetStateMatrixParameter"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, CGGLenum matrix, CGGLenum transform)", },
["cgGLSetMatrixParameterArrayfc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *matrices)", },
["cgGLSetMatrixParameterArrayfr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const float *matrices)", },
["cgGLSetMatrixParameterArraydc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *matrices)", },
["cgGLSetMatrixParameterArraydr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, const double *matrices)", },
["cgGLGetMatrixParameterArrayfc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *matrices)", },
["cgGLGetMatrixParameterArrayfr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, float *matrices)", },
["cgGLGetMatrixParameterArraydc"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *matrices)", },
["cgGLGetMatrixParameterArraydr"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, long offset, long nelements, double *matrices)", },
["cgGLSetTextureParameter"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, GLuint texobj)", },
["cgGLGetTextureParameter"] = { type ='function',
description = "",
returns = "(GLuint)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLEnableTextureParameter"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLDisableTextureParameter"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLGetTextureEnum"] = { type ='function',
description = "",
returns = "(GLenum)",
valuetype = nil,
args = "(CGparameter param)", },
["cgGLSetManageTextureParameters"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGcontext ctx, CGbool flag)", },
["cgGLGetManageTextureParameters"] = { type ='function',
description = "",
returns = "(CGbool)",
valuetype = nil,
args = "(CGcontext ctx)", },
["cgGLSetupSampler"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGparameter param, GLuint texobj)", },
["cgGLRegisterStates"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGcontext ctx)", },
["cgGLEnableProgramProfiles"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLDisableProgramProfiles"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGprogram program)", },
["cgGLSetDebugMode"] = { type ='function',
description = "",
returns = "(void)",
valuetype = nil,
args = "(CGbool debug)", },
["cgGLCreateBuffer"] = { type ='function',
description = "",
returns = "(CGbuffer)",
valuetype = nil,
args = "(CGcontext context, int size, const void *data, GLenum bufferUsage)", },
["cgGLGetBufferObject"] = { type ='function',
description = "",
returns = "(GLuint)",
valuetype = nil,
args = "(CGbuffer buffer)", },
}
return {
cggl = {
type = 'lib',
description = "Cg OpenGL runtime",
childs = api,
},
cgGL = {
type = 'lib',
description = "Cg OpenGL runtime",
childs = api,
},
}

1510
api/lua/corona.lua Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,79 +0,0 @@
--[[// cugl cuGL | Cuda GL Interop
/*
* Copyright 1993-2010 NVIDIA Corporation. All rights reserved.
*
* NOTICE TO USER:
*
* This source code is subject to NVIDIA ownership rights under U.S. and
* international Copyright laws. Users and possessors of this source code
* are hereby granted a nonexclusive, royalty-free license to use this code
* in individual and commercial software.
*
* NVIDIA MAKES NO REPRESENTATION ABOUT THE SUITABILITY OF THIS SOURCE
* CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR
* IMPLIED WARRANTY OF ANY KIND. NVIDIA DISCLAIMS ALL WARRANTIES WITH
* REGARD TO THIS SOURCE CODE, INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE.
* IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL,
* OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
* OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
* OR PERFORMANCE OF THIS SOURCE CODE.
*
* U.S. Government End Users. This source code is a "commercial item" as
* that term is defined at 48 C.F.R. 2.101 (OCT 1995), consisting of
* "commercial computer software" and "commercial computer software
* documentation" as such terms are used in 48 C.F.R. 12.212 (SEPT 1995)
* and is provided to the U.S. Government only as a commercial end item.
* Consistent with 48 C.F.R.12.212 and 48 C.F.R. 227.7202-1 through
* 227.7202-4 (JUNE 1995), all U.S. Government End Users acquire the
* source code with only those rights set forth herein.
*
* Any use of this source code in individual and commercial software must
* include, in the user documentation and internal comments to the code,
* the above Disclaimer and U.S. Government End Users Notice.
*/
CUresult cuGLCtxCreate_v2(CUcontext *pCtx, unsigned int Flags, CUdevice device );
CUresult cuGraphicsGLRegisterBuffer(CUgraphicsResource *pCudaResource, GLuint buffer, unsigned int Flags);
CUresult cuGraphicsGLRegisterImage(CUgraphicsResource *pCudaResource, GLuint image, GLenum target, unsigned int Flags);
typedef void* HGPUNV;
CUresult cuWGLGetDevice(CUdevice *pDevice, HGPUNV hGpu);
]]
--auto-generated api from ffi headers
local api =
{
["cuGLCtxCreate_v2"] = { type ='function',
description = "",
returns = "(CUresult)",
valuetype = nil,
args = "(CUcontext *pCtx, unsigned int Flags, CUdevice device)", },
["cuGraphicsGLRegisterBuffer"] = { type ='function',
description = "",
returns = "(CUresult)",
valuetype = nil,
args = "(CUgraphicsResource *pCudaResource, GLuint buffer, unsigned int Flags)", },
["cuGraphicsGLRegisterImage"] = { type ='function',
description = "",
returns = "(CUresult)",
valuetype = nil,
args = "(CUgraphicsResource *pCudaResource, GLuint image, GLenum target, unsigned int Flags)", },
["cuWGLGetDevice"] = { type ='function',
description = "",
returns = "(CUresult)",
valuetype = nil,
args = "(CUdevice *pDevice, HGPUNV hGpu)", },
}
return {
cugl = {
type = 'lib',
description = "Cuda GL Interop",
childs = api,
},
cuGL = {
type = 'lib',
description = "Cuda GL Interop",
childs = api,
},
}

3607
api/lua/gideros.lua Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

4624
api/lua/love2d.lua Normal file

File diff suppressed because it is too large Load Diff

2506
api/lua/marmalade.lua Normal file

File diff suppressed because it is too large Load Diff

7546
api/lua/moai.lua Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

BIN
bin/clibs/mime/core.dll Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
bin/clibs/socket/core.dylib Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
bin/liblua.dylib Executable file

Binary file not shown.

BIN
bin/libwx.dylib Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
bin/linux/x64/libwx.so Normal file

Binary file not shown.

BIN
bin/linux/x64/lua Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
bin/linux/x86/libwx.so Normal file

Binary file not shown.

BIN
bin/linux/x86/lua Executable file

Binary file not shown.

BIN
bin/lua Executable file

Binary file not shown.

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>lua</string>
<key>CFBundleDisplayName</key>
<string>Lua</string>
<key>CFBundleGetInfoString</key>
<string></string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.Lua.LuaInterpreter</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleLongVersionString</key>
<string></string>
<key>CFBundleName</key>
<string>Lua</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string></string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string></string>
<key>CSResourcesFileMapped</key>
<true/>
<key>LSRequiresCarbon</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string></string>
</dict>
</plist>

BIN
bin/lua.app/Contents/MacOS/lua Executable file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
bin/lua51.dll Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

142
build/CMakeLists.txt Normal file
View File

@@ -0,0 +1,142 @@
# setup the minimum allowed CMake version
cmake_minimum_required(VERSION 2.8)
# set the default build type (this needs to be done *before* project command)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build." FORCE)
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "RelWithDebInfo" "MinSizeRel")
endif()
# restrict configuration types to the selected build type
set(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE} CACHE INTERNAL "" FORCE)
# set the project name
project("zbstudio")
# set the top-level project directory relative to CMakeLists.txt location
set(TOPDIR ..)
# checks if the Lua module is available
function(check_lua_module MODULE)
if(NOT ${MODULE}_FOUND)
# find Lua executable at first
find_program(LUA_EXECUTABLE "lua")
if(NOT LUA_EXECUTABLE)
message(FATAL_ERROR "Lua executable is not found")
endif()
# run a short script with "require" statement to determine if the Lua module is available
execute_process(COMMAND "${LUA_EXECUTABLE}" -e "require(\"${MODULE}\")"
RESULT_VARIABLE EXIT_CODE OUTPUT_QUIET ERROR_QUIET)
if(EXIT_CODE EQUAL 0)
set(${MODULE}_FOUND TRUE CACHE INTERNAL "")
message(STATUS "Found Lua module: ${MODULE}")
elseif(ARGV1)
message(FATAL_ERROR "Lua module \"${MODULE}\" is not found")
endif()
endif()
endfunction()
# adds an user option to select between system-wide and bundled Lua module
function(add_system_lua_module_option MODULE)
string(TOUPPER ${MODULE} UPPERCASE_MODULE)
if(NOT DEFINED USE_SYSTEM_${UPPERCASE_MODULE})
option(USE_SYSTEM_${UPPERCASE_MODULE}
"Use a system-wide \"${MODULE}\" Lua module instead of the bundled one." ${${MODULE}_FOUND})
endif()
endfunction()
# installs all files listed in the manifest
function(install_from_manifest TYPE MANIFEST DESTDIR EXCLUDE_REGEX)
file(STRINGS ${MANIFEST} PATTERN_LIST)
foreach(PATTERN ${PATTERN_LIST})
string(STRIP ${PATTERN} PATTERN)
if(NOT PATTERN MATCHES ${EXCLUDE_REGEX})
file(GLOB FILELIST RELATIVE "${CMAKE_SOURCE_DIR}/${TOPDIR}" "${CMAKE_SOURCE_DIR}/${TOPDIR}/${PATTERN}")
foreach(FILENAME ${FILELIST})
get_filename_component(FILEPATH ${FILENAME} PATH)
install(${TYPE} ${TOPDIR}/${FILENAME} DESTINATION ${DESTDIR}/${FILEPATH})
endforeach()
endif()
endforeach()
endfunction()
if(WIN32)
# add the executable file to our project
add_executable(zbstudio WIN32 ${TOPDIR}/build/win32_starter.c ${TOPDIR}/zbstudio/res/zbstudio.rc)
# link to the static multi-threaded CRT under MSVC
if(MSVC)
string(TOUPPER ${CMAKE_BUILD_TYPE} BUILD_TYPE)
foreach(FLAGS_VAR CMAKE_C_FLAGS CMAKE_CXX_FLAGS CMAKE_C_FLAGS_${BUILD_TYPE} CMAKE_CXX_FLAGS_${BUILD_TYPE})
string(REGEX REPLACE "/MD" "/MT" ${FLAGS_VAR} ${${FLAGS_VAR}})
string(REGEX REPLACE "/MDd" "/MTd" ${FLAGS_VAR} ${${FLAGS_VAR}})
endforeach()
endif()
# setup the data directory
set(DATADIR .)
# install IDE executable
install(TARGETS zbstudio DESTINATION ${DATADIR})
# install files from manifest
install_from_manifest(FILES ${TOPDIR}/zbstudio/MANIFEST ${DATADIR} "^$")
install_from_manifest(FILES ${TOPDIR}/zbstudio/MANIFEST-bin-win32 ${DATADIR} "^zbstudio.exe$")
elseif(APPLE)
# setup the data directory
set(ROOTDIR ZeroBraneStudio.app/Contents)
set(DATADIR ${ROOTDIR}/ZeroBraneStudio)
# install IDE shell script
install(PROGRAMS ${TOPDIR}/zbstudio/ZeroBraneStudio.app/Contents/MacOS/ZeroBraneStudio DESTINATION ${ROOTDIR}/MacOS)
# install icon pack and .plist file
install(DIRECTORY ${TOPDIR}/zbstudio/ZeroBraneStudio.app/Contents/Resources DESTINATION ${ROOTDIR})
install(FILES ${TOPDIR}/zbstudio/ZeroBraneStudio.app/Contents/Info.plist DESTINATION ${ROOTDIR})
# install files from manifest
install_from_manifest(FILES ${TOPDIR}/zbstudio/MANIFEST ${DATADIR} "^$")
install_from_manifest(PROGRAMS ${TOPDIR}/zbstudio/MANIFEST-bin-macos ${DATADIR} "^$")
else()
# check the available Lua modules
check_lua_module(wx TRUE)
check_lua_module(socket TRUE)
check_lua_module(copas ${USE_SYSTEM_COPAS})
check_lua_module(luainspect ${USE_SYSTEM_LUAINSPECT})
#check_lua_module(mobdebug ${USE_SYSTEM_MOBDEBUG})
# add user options to select between system-wide and bundled Lua modules
add_system_lua_module_option(copas)
add_system_lua_module_option(luainspect)
#add_system_lua_module_option(mobdebug)
# setup the data directory
set(DATADIR share/zbstudio)
# install IDE shell script
set(IDE_DATADIR "${CMAKE_INSTALL_PREFIX}/${DATADIR}")
configure_file(${TOPDIR}/zbstudio/zbstudio.in "${CMAKE_BINARY_DIR}/zbstudio")
install(PROGRAMS "${CMAKE_BINARY_DIR}/zbstudio" DESTINATION bin)
# install bundled Lua modules
if(NOT USE_SYSTEM_COPAS)
install(DIRECTORY ${TOPDIR}/lualibs/copas ${TOPDIR}/lualibs/coxpcall DESTINATION ${DATADIR}/lualibs)
endif()
if(NOT USE_SYSTEM_LUAINSPECT)
install(DIRECTORY ${TOPDIR}/lualibs/luainspect ${TOPDIR}/lualibs/metalua DESTINATION ${DATADIR}/lualibs)
endif()
if(NOT USE_SYSTEM_MOBDEBUG)
install(DIRECTORY ${TOPDIR}/lualibs/mobdebug DESTINATION ${DATADIR}/lualibs)
endif()
# install .desktop file and hicolor icon theme
install(DIRECTORY ${TOPDIR}/zbstudio/res/icons/ DESTINATION share/icons/hicolor)
install(FILES ${TOPDIR}/zbstudio/res/zbstudio.desktop DESTINATION share/applications)
# install miscellaneous documentation files
install(FILES ${TOPDIR}/CHANGELOG.md ${TOPDIR}/LICENSE ${TOPDIR}/README.md DESTINATION share/doc/zbstudio)
# install files from manifest
install_from_manifest(FILES ${TOPDIR}/zbstudio/MANIFEST ${DATADIR} "^(CHANGELOG.md|LICENSE|README.md)$|^lualibs/")
endif()

22
build/build-linux-prep-deb.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
# this script installs prerequisites to build binary files on Linux with deb
sudo apt-get install git-core
sudo apt-get install g++
sudo apt-get install subversion
sudo apt-get install libgtk2.0-dev
# install cmake as wxwidgets needs 2.8.4+ but "sudo apt-get install cmake"
# only installs 2.8.0 on some systems (like Ubuntu 10.4)
mkdir build-cmake
cd build-cmake
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
gunzip cmake-2.8.10.2.tar.gz
tar xvf cmake-2.8.10.2.tar
cd cmake-2.8.10.2
./bootstrap
make
sudo make install
cd ../..
rm -rf build-cmake

View File

@@ -0,0 +1,9 @@
#!/bin/bash
# this script installs prerequisites to build binary files on Linux with rpm
sudo yum install gcc-c++
sudo yum install git
sudo yum install svn
sudo yum install cmake
sudo yum install gtk2-devel

204
build/build-linux.sh Executable file
View File

@@ -0,0 +1,204 @@
#!/bin/bash
if [ "$(uname -m)" = "x86_64" ]; then
FPIC="-fpic"
ARCH="x64"
else
FPIC=""
ARCH="x86"
fi
# ZBS binary directory
BIN_DIR="$(dirname "$PWD")/bin/linux/$ARCH"
# temporary installation directory for dependencies
INSTALL_DIR="$PWD/deps"
# number of parallel jobs used for building
MAKEFLAGS="-j4"
# flags for manual building with gcc
BUILD_FLAGS="-O2 -shared -s -I $INSTALL_DIR/include -L $INSTALL_DIR/lib $FPIC"
# paths configuration
WXWIDGETS_BASENAME="wxWidgets"
WXWIDGETS_URL="http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk"
LIBPNG_BASENAME="libpng-1.6.2"
LIBPNG_FILENAME="$LIBPNG_BASENAME.tar.gz"
LIBPNG_URL="http://sourceforge.net/projects/libpng/files/libpng16/1.6.2/libpng-1.6.2.tar.gz/download"
ZLIB_BASENAME="zlib-1.2.8"
ZLIB_FILENAME="$ZLIB_BASENAME.tar.gz"
ZLIB_URL="https://github.com/madler/zlib/archive/v1.2.8.tar.gz"
LUA_BASENAME="lua-5.1.5"
LUA_FILENAME="$LUA_BASENAME.tar.gz"
LUA_URL="http://www.lua.org/ftp/$LUA_FILENAME"
WXLUA_BASENAME="wxlua"
WXLUA_URL="https://wxlua.svn.sourceforge.net/svnroot/wxlua/trunk"
LUASOCKET_BASENAME="luasocket-2.0.3"
LUASOCKET_FILENAME="$LUASOCKET_BASENAME-rc2.zip"
LUASOCKET_URL="https://github.com/downloads/diegonehab/luasocket/$LUASOCKET_FILENAME"
# exit if the command line is empty
if [ $# -eq 0 ]; then
echo "Usage: $0 LIBRARY..."
exit 0
fi
# iterate through the command line arguments
for ARG in "$@"; do
case $ARG in
wxwidgets)
BUILD_WXWIDGETS=true
;;
lua)
BUILD_LUA=true
;;
wxlua)
BUILD_WXLUA=true
;;
luasocket)
BUILD_LUASOCKET=true
;;
all)
BUILD_WXWIDGETS=true
BUILD_LUA=true
BUILD_WXLUA=true
BUILD_LUASOCKET=true
;;
*)
echo "Error: invalid argument $ARG"
exit 1
;;
esac
done
# check for g++
if [ ! "$(which g++)" ]; then
echo "Error: g++ isn't found. Please install GNU C++ compiler."
exit 1
fi
# check for cmake
if [ ! "$(which cmake)" ]; then
echo "Error: cmake isn't found. Please install CMake and add it to PATH."
exit 1
fi
# check for svn
if [ ! "$(which svn)" ]; then
echo "Error: svn isn't found. Please install console SVN client."
exit 1
fi
# check for wget
if [ ! "$(which wget)" ]; then
echo "Error: wget isn't found. Please install GNU Wget."
exit 1
fi
# create the installation directory
mkdir -p "$INSTALL_DIR" || { echo "Error: cannot create directory $INSTALL_DIR"; exit 1; }
# build wxWidgets
if [ $BUILD_WXWIDGETS ]; then
# first build get/configure libpng as v1.6 is needed
wget -c "$LIBPNG_URL" -O "$LIBPNG_FILENAME" || { echo "Error: failed to download libpng"; exit 1; }
tar -xzf "$LIBPNG_FILENAME"
(cd "$LIBPNG_BASENAME"; ./configure --with-libpng-prefix=wxpng_; make $MAKEFLAGS)
wget -c "$ZLIB_URL" -O "$ZLIB_FILENAME" || { echo "Error: failed to download zlib"; exit 1; }
tar -xzf "$ZLIB_FILENAME"
(cd "$ZLIB_BASENAME"; ./configure; make $MAKEFLAGS)
svn co "$WXWIDGETS_URL" "$WXWIDGETS_BASENAME" || { echo "Error: failed to checkout wxWidgets"; exit 1; }
# replace src/png with the libpng folder
rm -rf "$WXWIDGETS_BASENAME/src/png"
mv "$LIBPNG_BASENAME" "$WXWIDGETS_BASENAME/src/png"
# replace src/zlib with the zlib folder
rm -rf "$WXWIDGETS_BASENAME/src/zlib"
mv "$ZLIB_BASENAME" "$WXWIDGETS_BASENAME/src/zlib"
cd "$WXWIDGETS_BASENAME"
./configure --prefix="$INSTALL_DIR" --disable-debug --disable-shared --enable-unicode \
--with-libjpeg=builtin --with-libpng=builtin --with-libtiff=no --with-expat=no \
--with-zlib=builtin --disable-richtext --with-gtk=2 \
CFLAGS="-Os -fPIC" CXXFLAGS="-Os -fPIC"
# update gzio to gzlib as this has changed between zlib 1.2.3 to 1.2.8
sed -i 's/gzio.c/gzlib.c/' Makefile
make $MAKEFLAGS || { echo "Error: failed to build wxWidgets"; exit 1; }
make install
cd ..
rm -rf "$WXWIDGETS_BASENAME" "$LIBPNG_FILENAME"
fi
# build Lua
if [ $BUILD_LUA ]; then
wget -c "$LUA_URL" -O "$LUA_FILENAME" || { echo "Error: failed to download Lua"; exit 1; }
tar -xzf "$LUA_FILENAME"
cd "$LUA_BASENAME"
# use POSIX as it has minimum dependencies (no readline and no ncurses required)
# LUA_USE_DLOPEN is required for loading libraries
(cd src; make all MYCFLAGS="$FPIC -DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E -ldl") || { echo "Error: failed to build Lua"; exit 1; }
make install INSTALL_TOP="$INSTALL_DIR"
cd ..
rm -rf "$LUA_FILENAME" "$LUA_BASENAME"
fi
# build wxLua
if [ $BUILD_WXLUA ]; then
svn co "$WXLUA_URL" "$WXLUA_BASENAME" || { echo "Error: failed to checkout wxLua"; exit 1; }
cd "$WXLUA_BASENAME/wxLua"
# the following patches wxlua source to fix live coding support in wxlua apps
# http://www.mail-archive.com/wxlua-users@lists.sourceforge.net/msg03225.html
sed -i 's/\(m_wxlState = wxLuaState(wxlState.GetLuaState(), wxLUASTATE_GETSTATE|wxLUASTATE_ROOTSTATE);\)/\/\/ removed by ZBS build process \/\/ \1/' modules/wxlua/wxlcallb.cpp
cmake -G "Unix Makefiles" -DBUILD_INSTALL_PREFIX="$INSTALL_DIR" -DCMAKE_BUILD_TYPE=MinSizeRel -DBUILD_SHARED_LIBS=FALSE \
-DwxWidgets_CONFIG_EXECUTABLE="$INSTALL_DIR/bin/wx-config" \
-DwxWidgets_COMPONENTS="stc;html;aui;adv;core;net;base" \
-DwxLuaBind_COMPONENTS="stc;html;aui;adv;core;net;base" -DwxLua_LUA_LIBRARY_USE_BUILTIN=FALSE \
-DwxLua_LUA_INCLUDE_DIR="$INSTALL_DIR/include" -DwxLua_LUA_LIBRARY="$INSTALL_DIR/lib/liblua.a" .
(cd modules/luamodule; make $MAKEFLAGS) || { echo "Error: failed to build wxLua"; exit 1; }
(cd modules/luamodule; make install/strip)
[ -f "$INSTALL_DIR/lib/libwx.so" ] || { echo "Error: libwx.so isn't found"; exit 1; }
cd ../..
rm -rf "$WXLUA_BASENAME"
fi
# build LuaSocket
if [ $BUILD_LUASOCKET ]; then
wget --no-check-certificate -c "$LUASOCKET_URL" -O "$LUASOCKET_FILENAME" || { echo "Error: failed to download LuaSocket"; exit 1; }
unzip "$LUASOCKET_FILENAME"
cd "$LUASOCKET_BASENAME"
mkdir -p "$INSTALL_DIR/lib/lua/5.1/"{mime,socket}
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/mime/core.so" src/mime.c -llua \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/socket/core.so" \
src/{auxiliar.c,buffer.c,except.c,inet.c,io.c,luasocket.c,options.c,select.c,tcp.c,timeout.c,udp.c,usocket.c} -llua \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
mkdir -p "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ftp.lua,http.lua,smtp.lua,tp.lua,url.lua} "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ltn12.lua,mime.lua,socket.lua} "$INSTALL_DIR/share/lua/5.1"
[ -f "$INSTALL_DIR/lib/lua/5.1/mime/core.so" ] || { echo "Error: mime/core.so isn't found"; exit 1; }
[ -f "$INSTALL_DIR/lib/lua/5.1/socket/core.so" ] || { echo "Error: socket/core.so isn't found"; exit 1; }
cd ..
rm -rf "$LUASOCKET_FILENAME" "$LUASOCKET_BASENAME"
fi
# now copy the compiled dependencies to ZBS binary directory
mkdir -p "$BIN_DIR" || { echo "Error: cannot create directory $BIN_DIR"; exit 1; }
[ $BUILD_LUA ] && cp "$INSTALL_DIR/bin/lua" "$BIN_DIR"
[ $BUILD_WXLUA ] && cp "$INSTALL_DIR/lib/libwx.so" "$BIN_DIR"
if [ $BUILD_LUASOCKET ]; then
mkdir -p "$BIN_DIR/clibs/"{mime,socket}
cp "$INSTALL_DIR/lib/lua/5.1/mime/core.so" "$BIN_DIR/clibs/mime"
cp "$INSTALL_DIR/lib/lua/5.1/socket/core.so" "$BIN_DIR/clibs/socket"
fi
# show a message about successful completion
echo "*** Build has been successfully completed ***"
exit 0

189
build/build-macosx.sh Executable file
View File

@@ -0,0 +1,189 @@
#!/bin/bash
# ZBS binary directory
BIN_DIR="$(dirname "$PWD")/bin"
# temporary installation directory for dependencies
INSTALL_DIR="$PWD/deps"
# Mac OS X global settings
MACOSX_ARCH="i386"
MACOSX_VERSION="10.6"
MACOSX_SDK_PATH="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.6.sdk"
# number of parallel jobs used for building
MAKEFLAGS="-j4"
# flags for manual building with gcc; build universal binaries for luasocket
MACOSX_FLAGS="-arch $MACOSX_ARCH -mmacosx-version-min=$MACOSX_VERSION -isysroot $MACOSX_SDK_PATH"
BUILD_FLAGS="-O2 -arch x86_64 -dynamiclib -undefined dynamic_lookup $MACOSX_FLAGS -I $INSTALL_DIR/include -L $INSTALL_DIR/lib"
# paths configuration
WXWIDGETS_BASENAME="wxWidgets"
WXWIDGETS_URL="http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk"
LUA_BASENAME="lua-5.1.5"
LUA_FILENAME="$LUA_BASENAME.tar.gz"
LUA_URL="http://www.lua.org/ftp/$LUA_FILENAME"
WXLUA_BASENAME="wxlua"
WXLUA_URL="https://wxlua.svn.sourceforge.net/svnroot/wxlua/trunk"
LUASOCKET_BASENAME="luasocket-2.0.3"
LUASOCKET_FILENAME="$LUASOCKET_BASENAME-rc2.zip"
LUASOCKET_URL="https://github.com/downloads/diegonehab/luasocket/$LUASOCKET_FILENAME"
# exit if the command line is empty
if [ $# -eq 0 ]; then
echo "Usage: $0 LIBRARY..."
exit 0
fi
# iterate through the command line arguments
for ARG in "$@"; do
case $ARG in
wxwidgets)
BUILD_WXWIDGETS=true
;;
lua)
BUILD_LUA=true
;;
wxlua)
BUILD_WXLUA=true
;;
luasocket)
BUILD_LUASOCKET=true
;;
all)
BUILD_WXWIDGETS=true
BUILD_LUA=true
BUILD_WXLUA=true
BUILD_LUASOCKET=true
;;
*)
echo "Error: invalid argument $ARG"
exit 1
;;
esac
done
# check for g++
if [ ! "$(which g++)" ]; then
echo "Error: g++ isn't found. Please install GNU C++ compiler."
exit 1
fi
# check for cmake
if [ ! "$(which cmake)" ]; then
echo "Error: cmake isn't found. Please install CMake and add it to PATH."
exit 1
fi
# check for svn
if [ ! "$(which svn)" ]; then
echo "Error: svn isn't found. Please install console SVN client."
exit 1
fi
# check for wget
if [ ! "$(which wget)" ]; then
echo "Error: wget isn't found. Please install GNU Wget."
exit 1
fi
# create the installation directory
mkdir -p "$INSTALL_DIR" || { echo "Error: cannot create directory $INSTALL_DIR"; exit 1; }
# build wxWidgets
if [ $BUILD_WXWIDGETS ]; then
svn co "$WXWIDGETS_URL" "$WXWIDGETS_BASENAME" || { echo "Error: failed to checkout wxWidgets"; exit 1; }
cd "$WXWIDGETS_BASENAME"
./configure --prefix="$INSTALL_DIR" --disable-debug --disable-shared --enable-unicode \
--with-libjpeg=builtin --with-libpng=builtin --with-libtiff=no --with-expat=no \
--with-zlib=builtin --disable-richtext \
--enable-macosx_arch=$MACOSX_ARCH --with-macosx-version-min=$MACOSX_VERSION --with-macosx-sdk="$MACOSX_SDK_PATH" \
--with-osx_cocoa CFLAGS="-Os" CXXFLAGS="-Os"
make $MAKEFLAGS || { echo "Error: failed to build wxWidgets"; exit 1; }
make install
cd ..
rm -rf "$WXWIDGETS_BASENAME"
fi
# build Lua
if [ $BUILD_LUA ]; then
wget -c "$LUA_URL" -O "$LUA_FILENAME" || { echo "Error: failed to download Lua"; exit 1; }
tar -xzf "$LUA_FILENAME"
cd "$LUA_BASENAME"
sed -i "" 's/PLATS=/& macosx_dylib/' Makefile
printf "macosx_dylib:\n" >> src/Makefile
printf "\t\$(MAKE) LUA_A=\"liblua.dylib\" AR=\"\$(CC) -dynamiclib $MACOSX_FLAGS -o\" RANLIB=\"strip -u -r\" \\\\\n" >> src/Makefile
printf "\tMYCFLAGS=\"-DLUA_USE_LINUX $MACOSX_FLAGS\" MYLDFLAGS=\"$MACOSX_FLAGS\" MYLIBS=\"-lreadline\" lua\n" >> src/Makefile
printf "\t\$(MAKE) MYCFLAGS=\"-DLUA_USE_LINUX $MACOSX_FLAGS\" MYLDFLAGS=\"$MACOSX_FLAGS\" luac\n" >> src/Makefile
make macosx_dylib || { echo "Error: failed to build Lua"; exit 1; }
make install INSTALL_TOP="$INSTALL_DIR"
strip -u -r "$INSTALL_DIR/bin/lua"
cp src/liblua.dylib "$INSTALL_DIR/lib"
[ -f "$INSTALL_DIR/lib/liblua.dylib" ] || { echo "Error: liblua.dylib isn't found"; exit 1; }
cd ..
rm -rf "$LUA_FILENAME" "$LUA_BASENAME"
fi
# build wxLua
if [ $BUILD_WXLUA ]; then
svn co "$WXLUA_URL" "$WXLUA_BASENAME" || { echo "Error: failed to checkout wxLua"; exit 1; }
cd "$WXLUA_BASENAME/wxLua"
# the following patches wxlua source to fix live coding support in wxlua apps
# http://www.mail-archive.com/wxlua-users@lists.sourceforge.net/msg03225.html
sed -i "" 's/\(m_wxlState = wxLuaState(wxlState.GetLuaState(), wxLUASTATE_GETSTATE|wxLUASTATE_ROOTSTATE);\)/\/\/ removed by ZBS build process \/\/ \1/' modules/wxlua/wxlcallb.cpp
cmake -G "Unix Makefiles" -DBUILD_INSTALL_PREFIX="$INSTALL_DIR" -DCMAKE_BUILD_TYPE=MinSizeRel -DBUILD_SHARED_LIBS=FALSE \
-DCMAKE_OSX_ARCHITECTURES=$MACOSX_ARCH -DCMAKE_OSX_DEPLOYMENT_TARGET=$MACOSX_VERSION CMAKE_OSX_SYSROOT="$MACOSX_SDK_PATH" \
-DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DwxWidgets_CONFIG_EXECUTABLE="$INSTALL_DIR/bin/wx-config" \
-DwxWidgets_COMPONENTS="stc;html;aui;adv;core;net;base" \
-DwxLuaBind_COMPONENTS="stc;html;aui;adv;core;net;base" -DwxLua_LUA_LIBRARY_USE_BUILTIN=FALSE \
-DwxLua_LUA_INCLUDE_DIR="$INSTALL_DIR/include" -DwxLua_LUA_LIBRARY="$INSTALL_DIR/lib/liblua.dylib" .
(cd modules/luamodule; make $MAKEFLAGS) || { echo "Error: failed to build wxLua"; exit 1; }
(cd modules/luamodule; make install/strip)
strip -u -r "$INSTALL_DIR/lib/libwx.dylib"
[ -f "$INSTALL_DIR/lib/libwx.dylib" ] || { echo "Error: libwx.dylib isn't found"; exit 1; }
cd ../..
rm -rf "$WXLUA_BASENAME"
fi
# build LuaSocket
if [ $BUILD_LUASOCKET ]; then
wget --no-check-certificate -c "$LUASOCKET_URL" -O "$LUASOCKET_FILENAME" || { echo "Error: failed to download LuaSocket"; exit 1; }
unzip "$LUASOCKET_FILENAME"
cd "$LUASOCKET_BASENAME"
mkdir -p "$INSTALL_DIR/lib/lua/5.1/"{mime,socket}
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/mime/core.dylib" src/mime.c \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/socket/core.dylib" \
src/{auxiliar.c,buffer.c,except.c,inet.c,io.c,luasocket.c,options.c,select.c,tcp.c,timeout.c,udp.c,usocket.c} \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
strip -u -r "$INSTALL_DIR/lib/lua/5.1/mime/core.dylib" "$INSTALL_DIR/lib/lua/5.1/socket/core.dylib"
mkdir -p "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ftp.lua,http.lua,smtp.lua,tp.lua,url.lua} "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ltn12.lua,mime.lua,socket.lua} "$INSTALL_DIR/share/lua/5.1"
[ -f "$INSTALL_DIR/lib/lua/5.1/mime/core.dylib" ] || { echo "Error: mime/core.dylib isn't found"; exit 1; }
[ -f "$INSTALL_DIR/lib/lua/5.1/socket/core.dylib" ] || { echo "Error: socket/core.dylib isn't found"; exit 1; }
cd ..
rm -rf "$LUASOCKET_FILENAME" "$LUASOCKET_BASENAME"
fi
# now copy the compiled dependencies to ZBS binary directory
mkdir -p "$BIN_DIR" || { echo "Error: cannot create directory $BIN_DIR"; exit 1; }
if [ $BUILD_LUA ]; then
mkdir -p "$BIN_DIR/lua.app/Contents/MacOS"
cp "$INSTALL_DIR/bin/lua" "$BIN_DIR/lua.app/Contents/MacOS"
cp "$INSTALL_DIR/bin/lua" "$INSTALL_DIR/lib/liblua.dylib" "$BIN_DIR"
fi
[ $BUILD_WXLUA ] && cp "$INSTALL_DIR/lib/libwx.dylib" "$BIN_DIR"
if [ $BUILD_LUASOCKET ]; then
mkdir -p "$BIN_DIR/clibs/"{mime,socket}
cp "$INSTALL_DIR/lib/lua/5.1/mime/core.dylib" "$BIN_DIR/clibs/mime"
cp "$INSTALL_DIR/lib/lua/5.1/socket/core.dylib" "$BIN_DIR/clibs/socket"
fi
# show a message about successful completion
echo "*** Build has been successfully completed ***"
exit 0

271
build/build-win32.sh Normal file
View File

@@ -0,0 +1,271 @@
#!/bin/bash
# ZBS binary directory
BIN_DIR="$(dirname "$PWD")/bin"
# temporary installation directory for dependencies
INSTALL_DIR="$PWD/deps"
# number of parallel jobs used for building
MAKEFLAGS="-j4"
# flags for manual building with gcc
BUILD_FLAGS="-O2 -shared -s -I $INSTALL_DIR/include -L $INSTALL_DIR/lib"
# paths configuration
WXWIDGETS_BASENAME="wxWidgets"
WXWIDGETS_URL="http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk"
LUA_BASENAME="lua-5.1.5"
LUA_FILENAME="$LUA_BASENAME.tar.gz"
LUA_URL="http://www.lua.org/ftp/$LUA_FILENAME"
WXLUA_BASENAME="wxlua"
WXLUA_URL="https://wxlua.svn.sourceforge.net/svnroot/wxlua/trunk"
LUASOCKET_BASENAME="luasocket-2.0.3"
LUASOCKET_FILENAME="$LUASOCKET_BASENAME-rc2.zip"
LUASOCKET_URL="https://github.com/downloads/diegonehab/luasocket/$LUASOCKET_FILENAME"
OPENSSL_BASENAME="openssl-1.0.1e"
OPENSSL_FILENAME="$OPENSSL_BASENAME.tar.gz"
OPENSSL_URL="http://www.openssl.org/source/$OPENSSL_FILENAME"
LUASEC_BASENAME="luasec-0.4.1"
LUASEC_FILENAME="$LUASEC_BASENAME.zip"
LUASEC_URL="https://github.com/brunoos/luasec/archive/$LUASEC_FILENAME"
WINAPI_BASENAME="winapi"
WINAPI_URL="https://github.com/stevedonovan/winapi.git"
# exit if the command line is empty
if [ $# -eq 0 ]; then
echo "Usage: $0 LIBRARY..."
exit 0
fi
WXLUASTRIP="/strip"
WXLUABUILD="MinSizeRel"
WXWIDGETSDEBUG="--disable-debug"
# iterate through the command line arguments
for ARG in "$@"; do
case $ARG in
wxwidgets)
BUILD_WXWIDGETS=true
;;
lua)
BUILD_LUA=true
;;
wxlua)
BUILD_WXLUA=true
;;
luasocket)
BUILD_LUASOCKET=true
;;
luasec)
BUILD_LUASEC=true
;;
winapi)
BUILD_WINAPI=true
;;
zbstudio)
BUILD_ZBSTUDIO=true
;;
debug)
WXLUASTRIP=""
WXWIDGETSDEBUG="--enable-debug"
;;
all)
BUILD_WXWIDGETS=true
BUILD_LUA=true
BUILD_WXLUA=true
BUILD_LUASOCKET=true
BUILD_WINAPI=true
BUILD_ZBSTUDIO=true
;;
*)
echo "Error: invalid argument $ARG"
exit 1
;;
esac
done
# check for g++
if [ ! "$(which g++)" ]; then
echo "Error: g++ isn't found. Please install MinGW C++ compiler."
exit 1
fi
# check for cmake
if [ ! "$(which cmake)" ]; then
echo "Error: cmake isn't found. Please install CMake and add it to PATH."
exit 1
fi
# check for svn
if [[ ($BUILD_WXWIDGETS || $BUILD_LUA) && ! "$(which svn)" ]]; then
echo "Error: svn isn't found. Please install console SVN client."
exit 1
fi
# check for git
if [[ $BUILD_WINAPI && ! "$(which git)" ]]; then
echo "Error: git isn't found. Please install console GIT client."
exit 1
fi
# check for wget
if [ ! "$(which wget)" ]; then
# NOTE: can't check the return status since mingw-get always returns 0 even in the case of errors :(
mingw-get install msys-wget
fi
# create the installation directory
mkdir -p "$INSTALL_DIR" || { echo "Error: cannot create directory $INSTALL_DIR"; exit 1; }
# build wxWidgets
if [ $BUILD_WXWIDGETS ]; then
svn co "$WXWIDGETS_URL" "$WXWIDGETS_BASENAME" || { echo "Error: failed to checkout wxWidgets"; exit 1; }
svn revert -R "$WXWIDGETS_BASENAME"
cd "$WXWIDGETS_BASENAME"
./configure --prefix="$INSTALL_DIR" $WXWIDGETSDEBUG --disable-shared --enable-unicode \
--with-libjpeg=builtin --with-libpng=builtin --with-libtiff=no --with-expat=no \
--with-zlib=builtin --disable-richtext \
CFLAGS="-Os -fno-keep-inline-dllexport" CXXFLAGS="-Os -fno-keep-inline-dllexport"
make $MAKEFLAGS || { echo "Error: failed to build wxWidgets"; exit 1; }
make install
cd ..
rm -rf "$WXWIDGETS_BASENAME"
fi
# build Lua
if [ $BUILD_LUA ]; then
wget -c "$LUA_URL" -O "$LUA_FILENAME" || { echo "Error: failed to download Lua"; exit 1; }
tar -xzf "$LUA_FILENAME"
cd "$LUA_BASENAME"
make mingw || { echo "Error: failed to build Lua"; exit 1; }
make install INSTALL_TOP="$INSTALL_DIR"
cp src/lua51.dll "$INSTALL_DIR/lib"
[ -f "$INSTALL_DIR/lib/lua51.dll" ] || { echo "Error: lua51.dll isn't found"; exit 1; }
cd ..
rm -rf "$LUA_FILENAME" "$LUA_BASENAME"
fi
# build wxLua
if [ $BUILD_WXLUA ]; then
svn co "$WXLUA_URL" "$WXLUA_BASENAME" || { echo "Error: failed to checkout wxLua"; exit 1; }
svn revert -R "$WXLUA_BASENAME"
cd "$WXLUA_BASENAME/wxLua"
sed -i 's|:-/\(.\)/|:-\1:/|' "$INSTALL_DIR/bin/wx-config"
sed -i 's/execute_process(COMMAND/& sh/' build/CMakewxAppLib.cmake modules/wxstedit/build/CMakewxAppLib.cmake
# the following patches wxlua source to fix live coding support in wxlua apps
# http://www.mail-archive.com/wxlua-users@lists.sourceforge.net/msg03225.html
sed -i 's/\(m_wxlState = wxLuaState(wxlState.GetLuaState(), wxLUASTATE_GETSTATE|wxLUASTATE_ROOTSTATE);\)/\/\/ removed by ZBS build process \/\/ \1/' modules/wxlua/wxlcallb.cpp
# remove check for Lua 5.2 as it doesn't work with Twoface ABI mapper
sed -i 's/LUA_VERSION_NUM < 502/0/' modules/wxlua/wxlcallb.cpp
# (temporary) fix for compilation issue in wxlua in Windows using mingw (r184)
sed -i 's/defined(__MINGW32__) || defined(__GNUWIN32__)/0/' modules/wxbind/src/wxcore_bind.cpp
cp "$INSTALL_DIR/lib/libwxscintilla-2.9.a" "$INSTALL_DIR/lib/libwx_mswu_scintilla-2.9.a"
echo "set_target_properties(wxLuaModule PROPERTIES LINK_FLAGS -static)" >> modules/luamodule/CMakeLists.txt
cmake -G "MSYS Makefiles" -DBUILD_INSTALL_PREFIX="$INSTALL_DIR" -DCMAKE_BUILD_TYPE=$WXLUABUILD -DBUILD_SHARED_LIBS=FALSE \
-DwxWidgets_CONFIG_EXECUTABLE="$INSTALL_DIR/bin/wx-config" \
-DwxWidgets_COMPONENTS="stc;html;aui;adv;core;net;base" \
-DwxLuaBind_COMPONENTS="stc;html;aui;adv;core;net;base" -DwxLua_LUA_LIBRARY_USE_BUILTIN=FALSE \
-DwxLua_LUA_INCLUDE_DIR="$INSTALL_DIR/include" -DwxLua_LUA_LIBRARY="$INSTALL_DIR/lib/lua51.dll" .
(cd modules/luamodule; make $MAKEFLAGS) || { echo "Error: failed to build wxLua"; exit 1; }
(cd modules/luamodule; make install$WXLUASTRIP)
[ -f "$INSTALL_DIR/bin/libwx.dll" ] || { echo "Error: libwx.dll isn't found"; exit 1; }
cd ../..
rm -rf "$WXLUA_BASENAME"
fi
# build LuaSocket
if [ $BUILD_LUASOCKET ]; then
wget --no-check-certificate -c "$LUASOCKET_URL" -O "$LUASOCKET_FILENAME" || { echo "Error: failed to download LuaSocket"; exit 1; }
unzip "$LUASOCKET_FILENAME"
cd "$LUASOCKET_BASENAME"
mkdir -p "$INSTALL_DIR/lib/lua/5.1/"{mime,socket}
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/mime/core.dll" src/mime.c -llua51 \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/socket/core.dll" \
src/{auxiliar.c,buffer.c,except.c,inet.c,io.c,luasocket.c,options.c,select.c,tcp.c,timeout.c,udp.c,wsocket.c} -lwsock32 -llua51 \
|| { echo "Error: failed to build LuaSocket"; exit 1; }
mkdir -p "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ftp.lua,http.lua,smtp.lua,tp.lua,url.lua} "$INSTALL_DIR/share/lua/5.1/socket"
cp src/{ltn12.lua,mime.lua,socket.lua} "$INSTALL_DIR/share/lua/5.1"
[ -f "$INSTALL_DIR/lib/lua/5.1/mime/core.dll" ] || { echo "Error: mime/core.dll isn't found"; exit 1; }
[ -f "$INSTALL_DIR/lib/lua/5.1/socket/core.dll" ] || { echo "Error: socket/core.dll isn't found"; exit 1; }
cd ..
rm -rf "$LUASOCKET_FILENAME" "$LUASOCKET_BASENAME"
fi
# build LuaSec
if [ $BUILD_LUASEC ]; then
# build openSSL
wget --no-check-certificate -c "$OPENSSL_URL" -O "$OPENSSL_FILENAME" || { echo "Error: failed to download OpenSSL"; exit 1; }
tar -xzf "$OPENSSL_FILENAME"
cd "$OPENSSL_BASENAME"
bash Configure mingw
make
make install_sw INSTALLTOP="$INSTALL_DIR"
cd ..
rm -rf "$OPENSSL_FILENAME" "$OPENSSL_BASENAME"
# build LuaSec
wget --no-check-certificate -c "$LUASEC_URL" -O "$LUASEC_FILENAME" || { echo "Error: failed to download LuaSec"; exit 1; }
unzip "$LUASEC_FILENAME"
# the folder in the archive is "luasec-luasec-....", so need to fix
mv "luasec-$LUASEC_BASENAME" $LUASEC_BASENAME
cd "$LUASEC_BASENAME"
gcc $BUILD_FLAGS -o "$INSTALL_DIR/lib/lua/5.1/ssl.dll" \
src/{timeout.c,buffer.c,io.c,context.c,ssl.c,wsocket.c} -lssl -lcrypto -lws2_32 -lgdi32 -llua51 \
|| { echo "Error: failed to build LuaSec"; exit 1; }
cp src/{ssl.lua,https.lua} "$INSTALL_DIR/share/lua/5.1"
[ -f "$INSTALL_DIR/lib/lua/5.1/ssl.dll" ] || { echo "Error: luasec.dll isn't found"; exit 1; }
cd ..
rm -rf "$LUASEC_FILENAME" "$LUASEC_BASENAME"
fi
# build winapi
if [ $BUILD_WINAPI ]; then
git clone "$WINAPI_URL" "$WINAPI_BASENAME"
cd "$WINAPI_BASENAME"
gcc $BUILD_FLAGS -DPSAPI_VERSION=1 -o "$INSTALL_DIR/lib/lua/5.1/winapi.dll" winapi.c wutils.c -lpsapi -lmpr -llua51 \
|| { echo "Error: failed to build winapi"; exit 1; }
[ -f "$INSTALL_DIR/lib/lua/5.1/winapi.dll" ] || { echo "Error: winapi.dll isn't found"; exit 1; }
cd ..
rm -rf "$WINAPI_BASENAME"
fi
# build ZBS launcher
if [ $BUILD_ZBSTUDIO ]; then
windres ../zbstudio/res/zbstudio.rc zbstudio.rc.o
gcc -O2 -s -mwindows -o ../zbstudio.exe win32_starter.c zbstudio.rc.o
rm zbstudio.rc.o
[ -f ../zbstudio.exe ] || { echo "Error: zbstudio.exe isn't found"; exit 1; }
fi
# now copy the compiled dependencies to ZBS binary directory
mkdir -p "$BIN_DIR" || { echo "Error: cannot create directory $BIN_DIR"; exit 1; }
[ $BUILD_LUA ] && cp "$INSTALL_DIR/bin/lua.exe" "$INSTALL_DIR/lib/lua51.dll" "$BIN_DIR"
[ $BUILD_WXLUA ] && cp "$INSTALL_DIR/bin/libwx.dll" "$BIN_DIR/wx.dll"
[ $BUILD_WINAPI ] && cp "$INSTALL_DIR/lib/lua/5.1/winapi.dll" "$BIN_DIR"
[ $BUILD_LUASEC ] && cp "$INSTALL_DIR/lib/lua/5.1/ssl.dll" "$BIN_DIR"
if [ $BUILD_LUASOCKET ]; then
mkdir -p "$BIN_DIR/clibs/"{mime,socket}
cp "$INSTALL_DIR/lib/lua/5.1/mime/core.dll" "$BIN_DIR/clibs/mime"
cp "$INSTALL_DIR/lib/lua/5.1/socket/core.dll" "$BIN_DIR/clibs/socket"
fi
# To build lua5.1.dll proxy:
# (1) get mkforwardlib-gcc.lua from http://lua-users.org/wiki/LuaProxyDllThree
# (2) run it as "lua mkforwardlib-gcc.lua lua51 lua5.1 X86"
# show a message about successful completion
echo "*** Build has been successfully completed ***"
exit 0

92
build/messages.lua Normal file
View File

@@ -0,0 +1,92 @@
-- This scrips extracts all text messages for ZeroBrane Studio and generates
-- a file that can be used to provide translation to a particular language.
-- The name of the file -- ll-cc.lua -- has two segments:
-- ll (mandatory) -- two letter [language code](http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes);
-- cc (optional) -- two letter [country code](http://en.wikipedia.org/wiki/ISO_3166-1#Officially_assigned_code_elements).
-- You can generate an empty file with all messages by running:
-- > bin\lua.exe build/messages.lua
-- You can also update an existing file with new messages by running:
-- > bin\lua.exe build/messages.lua cfg/i18n/ru.lua
local iswindows = os.getenv('WINDIR') or (os.getenv('OS') or ''):match('[Ww]indows')
if iswindows or not pcall(require, "wx") then
package.cpath = (iswindows and 'bin/?.dll;' or 'bin/lib?.dylib;') .. package.cpath
end
require "wx"
function FileSysGet(dir,spec)
local content = {}
local browse = wx.wxFileSystem()
local cwd = wx.wxGetCwd()
if not wx.wxFileName(dir):DirExists() then return content end
local f = browse:FindFirst(dir,spec)
while #f>0 do
if f:match("^file:") then -- remove file: protocol (wx2.9+)
f = f:gsub(iswindows and "^file:/?" or "^file:","")
:gsub('%%(%x%x)', function(n) return string.char(tonumber(n, 16)) end)
end
-- wx2.9+ return absolute path here instead of expected relative; fix it
if wx.wxIsAbsolutePath(f) then
local relative = wx.wxFileName(f)
relative:MakeRelativeTo(cwd)
f = relative:GetFullPath()
end
table.insert(content, f)
f = browse:FindNext()
end
return content
end
function FileRead(file)
local f = wx.wxFile(file, wx.wxFile.read)
if not f:IsOpened() then
error("Can't open file '"..file.."': "..wx.wxSysErrorMsg()) end
local _, content = f:Read(f:Length())
f:Close()
return content
end
local file = ... -- pass an existing file name as a parameter
local messages = {}
for _, mask in ipairs({"zbstudio/*.lua", "src/main.lua", "src/editor/*.lua"}) do
for _, file in ipairs(FileSysGet(mask, wx.wxFILE)) do
local content = FileRead(file)
for msg in content:gmatch("[^%w]TR(%b())") do
-- remove brackets aroung ("foo")
-- extract message from ("foo", count)
msg = msg:gsub("^%(", ""):gsub("%)$", ""):gsub([[(["']), .+]], "%1")
messages[msg] = messages[msg] or {}
messages[msg][file] = (messages[msg][file] or 0) + 1
end
end
end
local existing = {}
if file then
local content = FileRead(file)
for msg, translation in content:gmatch("%s*%[([^%]]+)%]%s*=%s*([^\010\013]+)") do
if not translation:find('^nil') then existing[tonumber(msg) or msg] = translation end
end
end
local plural = existing[0] and (" [0] = "..existing[0].."\n") or ""
existing[0] = nil
local msgs = {}
for m, files in pairs(messages) do
local str = " ["..m.."] = "..(existing[m] or 'nil, --')
str = str:gsub(" %-%-.*$", "").." -- "
for f in pairs(files) do str = str .. f .. ", " end
msgs[#msgs+1] = str:gsub(", $", "")
existing[m] = nil -- remove from the list of existing elements
end
table.sort(msgs)
print("return {\n"..plural..table.concat(msgs, "\n").."\n}")
if next(existing) then
local str = "-- no match found for the following elements: "
for msg in pairs(existing) do str = str .. msg .. ", " end
print((str:gsub(", $", "")))
end

View File

@@ -4,7 +4,7 @@
// (providing a single exe file in our main directory without
// polluting it with all these dlls located in the /bin folder)
#ifdef __MINGW__ /* not sure if this is the *official* define */
#ifdef __MINGW32__
#define _WIN32_WINNT 0x0502
#endif
@@ -24,7 +24,6 @@ typedef void varfuncvoid (void *L,...);
// from lua.h
#define LUA_GLOBALSINDEX (-10002)
static voidfunc *luaL_newstate;
static varfunc *luaL_loadbuffer;
static varfunc *luaL_openlibs;
@@ -146,13 +145,12 @@ int main (int argc, char *argv[])
#endif
HINSTANCE hinstLib;
char buffer[MAX_PATH],*file;
if (!GetFullPathName(argv[0],MAX_PATH,buffer,&file)) {
MessageBox(NULL,
TEXT("Couldn't find the correct working directory"),
TEXT("Failed to start estrela"),
TEXT("Failed to start editor"),
MB_OK|MB_ICONERROR);
return 0;
}
@@ -166,7 +164,7 @@ int main (int argc, char *argv[])
SetDllDirectory(".\\bin\\");
hinstLib = LoadLibrary("lua5.1.dll");
hinstLib = LoadLibrary("lua51.dll");
if (hinstLib != NULL)
{
luaL_newstate = (voidfunc*) GetProcAddress(hinstLib, "luaL_newstate");
@@ -207,18 +205,18 @@ int main (int argc, char *argv[])
else
MessageBox(NULL,
TEXT("An unexpected error occured while loading the lua chunk."),
TEXT("Failed to start estrela"),
TEXT("Failed to start editor"),
MB_OK|MB_ICONERROR);
} else
MessageBox(NULL,
TEXT("Couldn't initialize a luastate"),
TEXT("Failed to start estrela"),
TEXT("Failed to start editor"),
MB_OK|MB_ICONERROR);
} else {
MessageBox(NULL,
TEXT("Could not load all functions that are supposed to be located in the lua5.1.dll\n"
TEXT("Could not load all functions that are supposed to be located in the lua51.dll\n"
"This is not supposed to be happening..."),
TEXT("Failed to start estrela"),
TEXT("Failed to start editor"),
MB_OK|MB_ICONERROR);
}
@@ -226,11 +224,10 @@ int main (int argc, char *argv[])
FreeLibrary(hinstLib);
} else {
MessageBox(NULL,
TEXT("The lua5.1.dll could not be found or loaded, please check the working directory of the application.\n"),
TEXT("Failed to initialize estrela"),
TEXT("The lua51.dll could not be found or loaded, please check the working directory of the application.\n"),
TEXT("Failed to initialize editor"),
MB_OK|MB_ICONERROR);
}
return 0;
}

View File

@@ -1,38 +0,0 @@
styles = {
-- lexer specific (inherit fg/bg from text)
lexerdef = {fg = {128, 128, 128},},
comment = {fg = {0, 127, 0 },bg = {240, 240, 220}, fill= true,},
stringtxt = {fg = {127, 0, 127},},
stringeol = {fg = {0, 0, 0 },bg = {224, 192, 224}, fill = true, },
preprocessor = {fg = {127, 127, 0 },},
operator = {fg = {0, 0, 0 },},
number = {fg = {90, 100, 0 },},
keywords0 = {fg = {0, 0, 127}, b = true,},
keywords1 = {fg = {127, 0, 0}, b = true,},
keywords2 = {fg = {0, 127, 0}, b = true,},
keywords3 = {fg = {0, 0, 127}, b = true,},
keywords4 = {fg = {127, 0, 95}, b = true,},
keywords5 = {fg = {35, 95, 175}, b = true,},
keywords6 = {fg = {0, 127, 127}, b = true,},
keywords7 = {fg = {240, 255, 255}, b = true,},
-- common (inherit fg/bg from text)
text = nil, -- let os pick
linenumber = {fg = {90, 90, 80},},
bracematch = {fg = {0, 0, 255}, b = true},
bracemiss = {fg = {255, 0, 0 }, b = true},
ctrlchar = nil,
indent = {fg = {192, 192, 192},bg = {255, 255, 255},},
calltip = nil,
-- common special (need custom fg & bg)
calltipbg = nil,
sel = nil,
caret = nil,
caretlinebg = nil,
fold = nil,
whitespace = {fg = {180, 180, 180,},},
fncall = {fg = {175,175,255}, st= wxstc.wxSTC_INDIC_BOX},
}

View File

@@ -1,38 +0,0 @@
styles = {
-- lexer specific (inherit fg/bg from text)
lexerdef = {fg = {128, 128, 128},},
comment = {fg = {200, 230, 120 },bg = {30, 40, 30 }, fill= true,},
stringtxt = {fg = {240,128,240},},
stringeol = {fg = {240,128,200},bg = {48, 24, 24}, fill = true,},
preprocessor = {fg = {220,175,140},},
operator = {fg = {210, 230, 240 },},
number = {fg = {210, 230, 255, },},
keywords0 = {fg = {240,240,0}},
keywords1 = {fg = {255,64,64},},
keywords2 = {fg = {0,240,240},},
keywords3 = {fg = {140,140,240},},
keywords4 = {fg = {255, 128, 0},},
keywords5 = {fg = {200,200,240},},
keywords6 = {fg = {64, 250, 64},},
keywords7 = {fg = {255, 128, 128},},
-- common (inherit fg/bg from text)
text = {fg = {240,240,240},bg = {24,24,24},},
linenumber = {fg = {30, 30, 40},bg = {230, 230, 230},},
bracematch = {fg = {255, 127, 0}, b = true},
bracemiss = {fg = {255, 0,0}, b = true},
ctrlchar = nil,
indent = {fg = {80, 80, 80},bg = {24,24,24},},
calltip = {fg = {255,255,255},bg = {10,10,10},},
-- common special (need custom fg & bg)
calltipbg = {fg = {240,240,240},bg = {10,10,10},},
sel = {fg = {180,220,140},bg = {70,105,100},},
caret = {fg = {250,250,250},},
caretlinebg = {fg = {180,220,140},bg = {24,44,44},},
fold = nil,
whitespace = {fg = {54,54,54},},
fncall = {fg = {140,140,0}, st = wxstc.wxSTC_INDIC_BOX},
}

View File

@@ -1,38 +0,0 @@
styles = {
-- lexer specific (inherit fg/bg from text)
lexerdef = {fg = {128, 128, 128},},
comment = {fg = {100, 155, 65}, bg = {30, 35, 30 }, fill= true,},
stringtxt = {fg = {200, 145, 145},},
stringeol = {fg = {200, 145, 145},bg = {48, 24, 24}, fill = true,},
preprocessor = {fg = {220, 175, 140},},
operator = {fg = {210, 230, 240 },},
number = {fg = {210, 230, 255, },},
keywords0 = {fg = {128,128,255},},
keywords1 = {fg = {210,90,90},},
keywords2 = {fg = {0,220,220},},
keywords3 = {fg = {220,220,0},},
keywords4 = {fg = {240, 128,0},},
keywords5 = {fg = {200,200,240},},
keywords6 = {fg = {64, 240, 64},},
keywords7 = {fg = {255, 128, 128},},
-- common (inherit fg/bg from text)
text = {fg = {200,200,200},bg = {18,24,26},},
linenumber = {fg = {30, 30, 40},bg = {230, 230, 230},},
bracematch = {fg = {255, 127, 0}, b = true},
bracemiss = {fg = {255, 0,0}, b = true},
ctrlchar = nil,
indent = {fg = {80, 80, 80},bg = {24,24,24},},
calltip = {fg = {255,255,255},bg = {10,10,10},},
-- common special (need custom fg & bg)
calltipbg = {fg = {240,240,240},bg = {10,10,10},},
sel = {fg = {180,220,140},bg = {70,105,100},},
caret = {fg = {250,250,250},},
caretlinebg = {fg = {180,220,140},bg = {24,44,44},},
fold = nil,
whitespace = {fg = {54,54,54},},
fncall = {fg = {75,75,150}, st= wxstc.wxSTC_INDIC_BOX},
}

20
cfg/estrela.lua Normal file
View File

@@ -0,0 +1,20 @@
-- If you have used Estrela before, please copy this content
-- to your user.lua file in the cfg/ directory
-- load all tools, specs, and interpreters
local all = function() return true end
load.tools(all)
load.specs(all)
load.interpreters(all)
-- this flag means that toggling between projects, will not affect the
-- list of opened files (old estrela default).
-- zbstudio defaults here to true, meaning that you get
-- per-project list of openend files
projectautoopen = false
-- default search paths for luxinia
local luxpath = os.getenv("LUXINIA")
path.luxinia = luxpath and luxpath.."/" or "../luxinia/engine/"
local luxpath2 = os.getenv("LUXINIA2")
path.luxinia2 = luxpath2 and luxpath2.."/" or "../luxinia2/runtime/bin_Windows_x86/"

231
cfg/i18n/cn.lua Normal file
View File

@@ -0,0 +1,231 @@
return {
["%d instance"] = "%d 个体", -- src\editor\findreplace.lua
["&About"] = "关于(&A)", -- src\editor\menu_help.lua
["&Add Watch"] = "添加监视(&A)", -- src\editor\debugger.lua
["&Break"] = "中断", -- src\editor\menu_project.lua
["&Close Page"] = "关闭页面", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "编译", -- src\editor\menu_project.lua
["&Copy"] = "复制", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "布局", -- src\editor\menu_view.lua
["&Delete Watch"] = "删除监视", -- src\editor\debugger.lua
["&Down"] = "往下", -- src\editor\findreplace.lua
["&Edit Watch"] = "编辑监视", -- src\editor\debugger.lua
["&Edit"] = "编辑", -- src\editor\menu_edit.lua
["&File"] = "文件", -- src\editor\menu_file.lua
["&Find All"] = "查找全部", -- src\editor\findreplace.lua
["&Find Next"] = "查找下一个", -- src\editor\findreplace.lua
["&Find"] = "查找", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "全 折叠/展开", -- src\editor\menu_edit.lua
["&Goto Line"] = "到...行", -- src\editor\menu_search.lua
["&Help"] = "帮助", -- src\editor\menu_help.lua
["&New"] = "新建", -- src\editor\menu_file.lua
["&Open..."] = "打开...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "输出/主控台视窗", -- src\editor\menu_view.lua
["&Paste"] = "粘贴", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "项目", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "重做", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace All"] = "全替换", -- src\editor\findreplace.lua
["&Replace"] = "替换", -- src\editor\findreplace.lua, src\editor\menu_search.lua
["&Run"] = "执行", -- src\editor\menu_project.lua
["&Save"] = "保存", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "搜索", -- src\editor\menu_search.lua
["&Sort"] = "分类", -- src\editor\menu_search.lua
["&Stack Window"] = "叠视窗/堆栈视窗", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "开启除错器伺服机", -- src\editor\menu_project.lua
["&Subdirectories"] = "子文件夹", -- src\editor\findreplace.lua
["&Undo"] = "撤消", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Up"] = "往上", -- src\editor\findreplace.lua
["&View"] = "视图", -- src\editor\menu_view.lua
["&Watch Window"] = "监视视窗", -- src\editor\menu_view.lua
["About %s"] = "关于 %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "添加监视表达式", -- src\editor\editor.lua
["Add to Scratchpad"] = "添加至暂存器", -- src\editor\editor.lua
["All files"] = "全部文件", -- src\editor\commands.lua
["Allow external process to start debugging"] = "允许外部进程开启除错", -- src\editor\menu_project.lua
["Analyze the source code"] = "分析源代码", -- src\editor\inspect.lua
["Analyze"] = "分析", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "自动补全标识符", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "当输入时自动补全", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "执行下一语句之后中断执行", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "清除输出视窗", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "注释/消除注释", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "不能在现行编辑视窗对脚本进行除错", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "在当前项目中寻找不到文件 '%s' 以进行激活然后除错, 更新项目或是在编辑器里开启文件后再除错", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "不能处理自动恢复存档: %s", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "不能执行entry point脚本 ('%s')", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "除错动作失败 '%s'.", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "不能启动除错,没有文档被开启或当前更改过的文档还没保存('%s')", -- src\editor\debugger.lua
["Cancel"] = "取消", -- src\editor\findreplace.lua
["Choose ..."] = "请选 ...", -- src\editor\menu_project.lua
["Choose a project directory"] = "选择项目文件夹", -- src\editor\findreplace.lua, src\editor\menu_project.lua
["Clear &Dynamic Words"] = "清除动态词汇", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "编译或除错前清除输出视窗", -- src\editor\menu_project.lua
["Close &Other Pages"] = "关闭其他页面", -- src\editor\gui.lua
["Close A&ll Pages"] = "关闭全部页面", -- src\editor\gui.lua
["Close the current editor window"] = "关闭当前编译视窗", -- src\editor\menu_file.lua
["Co&ntinue"] = "继续", -- src\editor\menu_project.lua
["Col: %d"] = "列: %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = "注释/消除注释 当前或被选的语句", -- src\editor\menu_edit.lua
["Compilation error"] = "编译错误", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "编译成功; 成功率: %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "编译当前的文档", -- src\editor\menu_project.lua
["Complete &Identifier"] = "补全标识符", -- src\editor\menu_edit.lua
["Complete the current identifier"] = "补全当前标识符", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "复制被选的text到clipboard", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "不能激活 '%s' 以除错; 省略后继续进行", -- src\editor\debugger.lua
["Create an empty document"] = "新建空文档", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "剪切", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "剪切被选的text到clipboard", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "除错伺服器起始于 %s:%d.", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "除错会话完成 (%s)", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "除错会话于 '%s' 起始", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = "除错挂起于 %s:%s (不能激活文档).", -- src\editor\debugger.lua
["Directory"] = "文件夹", -- src\editor\findreplace.lua
["Do you want to reload it?"] = "需要重新导入吗?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "需要把更改保存于 '%s'?", -- src\editor\commands.lua
["E&xit"] = "离开", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "输入Lua代码然后按 <Enter> 以执行", -- src\editor\shellbox.lua
["Enter line number"] = "输入行号码", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "导入API档时出错误: %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = "导入configuration档时出错误: %s", -- src\editor\style.lua
["Error while processing API file: %s"] = "处理API档时出错误: %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = "处理configuration档时出错误: %s", -- src\editor\style.lua
["Error"] = "错误", -- src\editor\commands.lua
["Evaluate in Console"] = "在主控台中估值", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "执行当前项目/文档和更新代码以便得到执行结果", -- src\editor\menu_project.lua
["Execute the current project/file"] = "执行当前项目/文档", -- src\editor\menu_project.lua
["Execution error"] = "执行出错误", -- src\editor\debugger.lua
["Exit program"] = "离开程式", -- src\editor\menu_file.lua
["Expr"] = "表达式", -- src\editor\debugger.lua
["Expression"] = "表达式", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "磁碟上的文档 '%s' 已被更改", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] =
"文档 '%s' 的时间戳比 '%s' 更新近; 请检验后再保存", -- src\editor\commands.lua
["File '%s' no longer exists."] = "文档 '%s' 已不存在", -- src\editor\editor.lua, src\editor\menu_file.lua
["File Type"] = "文档类", -- src\editor\findreplace.lua
["File history"] = "文档历史", -- src\editor\menu_file.lua
["Find &In Files"] = "在文档中查找", -- src\editor\menu_search.lua
["Find &Next"] = "查找下一个", -- src\editor\menu_search.lua
["Find &Previous"] = "查找上一个", -- src\editor\menu_search.lua
["Find In Files"] = "在文档中查找", -- src\editor\findreplace.lua
["Find and replace text in files"] = "在文档中查找text然后更换", -- src\editor\menu_search.lua
["Find and replace text"] = "查找text然后更换", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "在文档中查找text", -- src\editor\menu_search.lua
["Find text"] = "查找text", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "查找之前出现的text", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "查找之後将出现的text", -- src\editor\menu_search.lua
["Find"] = "查找", -- src\editor\findreplace.lua
["Fold or unfold all code folds"] = "折叠/展开所有代码折叠", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "找到自动恢复存档和恢复已存对话", -- src\editor\commands.lua
["Found"] = "找到", -- src\editor\findreplace.lua
["Full &Screen"] = "全屏", -- src\editor\menu_view.lua
["Go to a selected line"] = "到所选的行", -- src\editor\menu_search.lua
["Goto Line"] = "到...行", -- src\editor\menu_search.lua
["INS"] = "INS", -- src\editor\editor.lua
["In Files"] = "在档案里", -- src\editor\findreplace.lua
["Jump to a function definition..."] = "跳到函数定义", -- src\editor\editor.lua
["Known Files"] = "所知的文档", -- src\editor\commands.lua
["Ln: %d"] = "行: %d", -- src\editor\editor.lua
["Local console"] = "本地主控台", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "Lua 解释器", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = "映射远程请求 '%s' 至 '%s'", -- src\editor\debugger.lua
["Match &case"] = "case匹配", -- src\editor\findreplace.lua
["Match &whole word"] = "全句匹配", -- src\editor\findreplace.lua
["Mixed end-of-line encodings detected."] = "发现混杂的EOL编码", -- src\editor\commands.lua
["OVR"] = "OVR", -- src\editor\editor.lua
["Open an existing document"] = "打开现存文档", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "打开文档", -- src\editor\commands.lua
["Options"] = "选项", -- src\editor\findreplace.lua
["Output (running)"] = "输出 (进行中)", -- src\editor\output.lua
["Output"] = "输出", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "从clipboard粘贴text", -- src\editor\menu_edit.lua
["Preferences"] = "首选项", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "在多行展现复杂值请前置 '='", -- src\editor\shellbox.lua
["Press cancel to abort."] = "按 <cancel> 以退出", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "程式 '%s' 执行于 '%s' (pid: %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "程序不能启动因为有名为 '%s' 的冲突进程", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "程序于 %.2f 秒完成 (pid: %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "程式以 '%s' 执行", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "程式停止 (pid: %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "程式不能以 '%s' 执行", -- src\editor\output.lua
["Project Directory"] = "项目文件夹", -- src\editor\menu_project.lua
["Project"] = "项目", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "项目/文档树 视窗", -- src\editor\menu_view.lua
["R/O"] = "唯读", -- src\editor\editor.lua
["R/W"] = "读写", -- src\editor\editor.lua
["Re&place In Files"] = "在文档中替换", -- src\editor\menu_search.lua
["Recent Files"] = "最近的文档", -- src\editor\menu_file.lua
["Redo last edit undone"] = "重做最后被取消的编辑", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "因为有另一个除错在进行,拒绝开启新的除错对话", -- src\editor\debugger.lua
["Regular &expression"] = "正则表达式", -- src\editor\findreplace.lua
["Remote console"] = "远程主控台", -- src\editor\shellbox.lua
["Replace &All"] = "更换全部", -- src\editor\findreplace.lua
["Replace"] = "更换", -- src\editor\findreplace.lua
["Replaced an invalid UTF8 character with %s."] = "以%s更换无效的UTF8字元", -- src\editor\commands.lua
["Replaced"] = "更换", -- src\editor\findreplace.lua
["Replacing"] = "更换中", -- src\editor\findreplace.lua
["Reset to default layout"] = "重置缺省布局", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "为自动补全重置动态word list", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "以Scratchpad执行", -- src\editor\menu_project.lua
["S&top Debugging"] = "停止除错", -- src\editor\menu_project.lua
["S&top Process"] = "停止进程", -- src\editor\menu_project.lua
["Save &As..."] = "另存为...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "全部存档", -- src\editor\menu_file.lua
["Save Changes?"] = "存档更新?", -- src\editor\commands.lua
["Save all open documents"] = "保存所有开启的文档", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "文档另存为", -- src\editor\commands.lua
["Save file?"] = "保存文档?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "用新档案名称保存当前文档", -- src\editor\menu_file.lua
["Save the current document"] = "保存当前文档", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "在 %s 存档自动恢复", -- src\editor\commands.lua
["Scope"] = "范围", -- src\editor\findreplace.lua
["Scratchpad error"] = "暂存器错误", -- src\editor\debugger.lua
["Searching for"] = "搜索", -- src\editor\findreplace.lua
["Select &All"] = "选全部", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "选编辑器内的所有text", -- src\editor\menu_edit.lua
["Set From Current File"] = "从当前文档设置", -- src\editor\menu_project.lua
["Set project directory from current file"] = "从当前文档设置项目文件夹", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "设置解释器", -- src\editor\menu_project.lua
["Set the project directory to be used"] = "设置项目文件夹", -- src\editor\menu_project.lua
["Settings: System"] = "设置: 系统", -- src\editor\menu_edit.lua
["Settings: User"] = "设置: 用户", -- src\editor\menu_edit.lua
["Show &Tooltip"] = "展现tooltip", -- src\editor\menu_edit.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "在当前的位置展现tooltip; 把游标放置于函数的开括号之后", -- src\editor\menu_edit.lua
["Sort selected lines"] = "对被选的行进行排列", -- src\editor\menu_search.lua
["Stack"] = "堆栈", -- src\editor\debugger.lua
["Start &Debugging"] = "开始除错", -- src\editor\menu_project.lua
["Start debugging"] = "开始除错", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "除错运行 进入子程序/函数", -- src\editor\menu_project.lua
["Step &Over"] = "除错运行 掠过子程序/函数", -- src\editor\menu_project.lua
["Step O&ut"] = "除错运行 离开子程序/函数", -- src\editor\menu_project.lua
["Step into"] = "除错运行 进入子程序/函数", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "除错运行 离开当前的函数", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "除错运行 掠过子程序/函数", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "终止目前进行着的进程", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "切换全屏模式", -- src\editor\menu_view.lua
["Text not found."] = "寻找不到text", -- src\editor\findreplace.lua
["The API file must be located in a subdirectory of the API directory."] = "API file必须存放在API文件夹中的子文件夹", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "切换中断点", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "切换中断点", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "追踪", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "执行追踪展示每一执行过的语句", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "导出文件失败 '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "保存文件失败 '%s': %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "停止程序失败 (pid: %d), 代码 %d.", -- src\editor\debugger.lua
["Undo last edit"] = "清除前编辑动作", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = "用 '%s' 来看全解析", -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = "用 '%s' 来显示语句的终结和 '%s' 来进行转换", -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "用 'clear' 来清除shell的输出和历史", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "用 <Shift-Enter> 来处理多行代码", -- src\editor\shellbox.lua
["Value"] = "数值", -- src\editor\debugger.lua
["View the output/console window"] = "查看输出/主控台视窗", -- src\editor\menu_view.lua
["View the project/filetree window"] = "查看项目/文件树视窗", -- src\editor\menu_view.lua
["View the stack window"] = "查看堆栈视窗", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "查看监视视窗", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = "监视", -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "欢迎来到互动 Lua interpreter.", -- src\editor\shellbox.lua
["Wrap ar&ound"] = "卷绕", -- src\editor\findreplace.lua
["You must save the program first."] = "必须先保存程序", -- src\editor\commands.lua
["on line %d"] = "在 %d 行", -- src\editor\debugger.lua, src\editor\commands.lua
["traced %d instruction"] = "追踪 %d 指令", -- src\editor\debugger.lua
}

236
cfg/i18n/de.lua Normal file
View File

@@ -0,0 +1,236 @@
return {
[0] = function(c) return c == 1 and 1 or 2 end, -- plural
["%d instance"] = {"%d Instanz", "%d Instanzen"}, -- src\editor\findreplace.lua
["%s event failed: %s"] = "Ereignis fehlgeschlagen : %s", -- src\editor\package.lua
["&About"] = "&Über", -- src\editor\menu_help.lua
["&Add Watch"] = "&Beobachtungspunkt hinzufügen", -- src\editor\debugger.lua
["&Break"] = "&Unterbrechung", -- src\editor\menu_project.lua
["&Close Page"] = "S&eite schließen", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "&Compiler", -- src\editor\menu_project.lua
["&Copy"] = "&Kopieren", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "Standard-&Layout", -- src\editor\menu_view.lua
["&Delete Watch"] = "&Beobachtungspunkt entfernen", -- src\editor\debugger.lua
["&Down"] = "&Runter", -- src\editor\findreplace.lua
["&Edit Watch"] = "&Beobachtungspunkt bearbeiten", -- src\editor\debugger.lua
["&Edit"] = "&Bearbeiten", -- src\editor\menu_edit.lua
["&File"] = "&Datei", -- src\editor\menu_file.lua
["&Find All"] = "&Alle finden", -- src\editor\findreplace.lua
["&Find Next"] = "&Nächsten finden", -- src\editor\findreplace.lua
["&Find"] = "&Finden", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "A&lles ein-/ausklappen", -- src\editor\menu_edit.lua
["&Goto Line"] = "&Gehe zu Zeile", -- src\editor\menu_search.lua
["&Help"] = "&Hilfe", -- src\editor\menu_help.lua
["&New"] = "&Neu", -- src\editor\menu_file.lua
["&Open..."] = "&Öffnen...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "&Ausgabefenster/Konsole", -- src\editor\menu_view.lua
["&Paste"] = "&Einfügen", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "&Projekt", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "&Wiederholen", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace All"] = "&Alles ersetzen", -- src\editor\findreplace.lua
["&Replace"] = "&Ersetzen", -- src\editor\findreplace.lua, src\editor\menu_search.lua
["&Run"] = "&Starten", -- src\editor\menu_project.lua
["&Save"] = "&Speichern", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "&Suchen", -- src\editor\menu_search.lua
["&Sort"] = "&Sortieren", -- src\editor\menu_search.lua
["&Stack Window"] = "&Stapel/Stack", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "De&bugserver starten", -- src\editor\menu_project.lua
["&Subdirectories"] = "&Unterverzeichnisse", -- src\editor\findreplace.lua
["&Undo"] = "&Rückgängig", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Up"] = "&Hoch", -- src\editor\findreplace.lua
["&View"] = "&Ansicht", -- src\editor\menu_view.lua
["&Watch Window"] = "&Beobachtungspunkte", -- src\editor\menu_view.lua
[".&bak on Replace"] = ".&bak bei Ersetzen", -- src\editor\findreplace.lua
["About %s"] = "Über %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "Beobachtungspunkt hinzufügen", -- src\editor\editor.lua
["Add To Scratchpad"] = "Zu Entwurf hinzufügen", -- src\editor\editor.lua
["All files"] = "Alle Dateien", -- src\editor\commands.lua
["Allow external process to start debugging"] = "Externem Prozeß erlauben, den Debugger zu starten", -- src\editor\menu_project.lua
["Analyze the source code"] = "Quellcode analysieren", -- src\editor\inspect.lua
["Analyze"] = "&Analyseroutine", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "Auto-Vervollständigen von Bezeichnern", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "Auto-Vervollständigen beim Tippen", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "Programmausführung bei der nächsten ausgeführten Zeile stoppen", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "Ausgabefenster &löschen", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "(Aus-)/&Kommentieren", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "Script kann im aktiven Editorfenster nicht gedebuggt werden.", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "Kann Datei '%s' zwecks Debugging im aktuellen Projekt nicht finden. Bitte Projekt aktualisieren oder Datei in den Editor laden.", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "Auto-Wiederherstellen nicht möglich; ungültiges Format: %s.", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "Kann Script für Einsprungspunkt ('%s') nicht ausführen.", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "Debugging kann nicht gestartet werden wegen internem Fehler '%s'.", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "Debugging kann nicht gestartet werden ohne geöffnete Datei oder wenn die aktuelle Datei nicht gespeichert ist ('%s').", -- src\editor\debugger.lua
["Cancel"] = "Abbrechen", -- src\editor\findreplace.lua
["Choose ..."] = "Wählen...", -- src\editor\menu_project.lua
["Choose a project directory"] = "Projektverzeichnis auswählen", -- src\editor\findreplace.lua, src\editor\menu_project.lua
["Clear &Dynamic Words"] = "&Dynamic Words löschen", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "Vor Kompilieren oder Debuggen das Ausgabefenster löschen", -- src\editor\menu_project.lua
["Close &Other Pages"] = "A&ndere Seiten schließen", -- src\editor\gui.lua
["Close A&ll Pages"] = "&Alle Seiten schließen", -- src\editor\gui.lua
["Close the current editor window"] = "Aktuelles Editorfenster schließen", -- src\editor\menu_file.lua
["Co&ntinue"] = "&Fortsetzen", -- src\editor\menu_project.lua
["Col: %d"] = "Spalte: %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = "Ausgewählte bzw. aktive Zeile (un-)kommentieren", -- src\editor\menu_edit.lua
["Compilation error"] = "Fehler beim Kompilieren", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "Kompilieren erfolgreich; Erfolgsquote von %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "Aktuelle Datei kompilieren", -- src\editor\menu_project.lua
["Complete &Identifier"] = "&Bezeichner vervollständigen", -- src\editor\menu_edit.lua
["Complete the current identifier"] = " Aktuellen Bezeichner vervollständigen", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "Text in Zwischenablage kopieren", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "Konnte Datei '%s' zwecks nicht Debugging aktivieren; fahre ohne die Datei fort.", -- src\editor\debugger.lua
["Create an empty document"] = "Leeres Dokument anlegen", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "A&usschneiden", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "Schneide ausgewählten Text in die Zwischenablage hinein", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "Debugserver gestartet an %s:%d.", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "Debugging Session beendet (%s).", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "Debugging Session gestartet '%s'.", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = "Debugging angehalten bei %s:%s (konnte Datei nicht aktivieren).", -- src\editor\debugger.lua
["Directory"] = "Verzeichnis", -- src\editor\findreplace.lua
["Do you want to reload it?"] = "Neu laden?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "Änderungen an '%s' speichern?", -- src\editor\commands.lua
["E&xit"] = "&Beenden", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "Lua-Code eingeben und Enter drücken zum Ausführen.", -- src\editor\shellbox.lua
["Enter line number"] = "Zeilennummer eingeben", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "Fehler beim Laden von API-Datei: %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = "Fehler beim Laden von Konfigurationsdatei: %s", -- src\editor\style.lua
["Error while processing API file: %s"] = "Fehler beim Lesen von API-Datei: %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = "Fehler beim Lesen von Konfiguratonsdatei: %s", -- src\editor\style.lua
["Error"] = "Fehler", -- src\editor\commands.lua
["Evaluate In Console"] = "In Konsole auswerten", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "Aktuelles Projekt/ aktuelle Datei ausführen und Quellcode ändern, um Ergebnisse in Echtzeit zu sehen", -- src\editor\menu_project.lua
["Execute the current project/file"] = "Aktuelles Projekt/ aktuelle Datei ausführen", -- src\editor\menu_project.lua
["Execution error"] = "Fehler bei Ausführung", -- src\editor\debugger.lua
["Exit program"] = "Programm beenden", -- src\editor\menu_file.lua
["Expr"] = "Ausdr.", -- src\editor\debugger.lua
["Expression"] = "Ausdruck", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "Datei '%s' wurde auf der Festplatte geändert.", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] = "Datei '%s' hat neueren Zeitstempel als wiederhergestellte Datei '%s'; bitte vor dem Speichern kontrollieren.", -- src\editor\commands.lua
["File '%s' no longer exists."] = "Datei '%s' existiert nicht mehr.", -- src\editor\editor.lua, src\editor\menu_file.lua
["File Type"] = "Dateityp", -- src\editor\findreplace.lua
["File history"] = "Dateiverlauf", -- src\editor\menu_file.lua
["Find &In Files"] = "Finde &in Dateien", -- src\editor\menu_search.lua
["Find &Next"] = "Finde &Nächste", -- src\editor\menu_search.lua
["Find &Previous"] = "Finde &Vorherige", -- src\editor\menu_search.lua
["Find In Files"] = "Finde in Dateien", -- src\editor\findreplace.lua
["Find and replace text in files"] = "Finde und ersetze Text in Dateien", -- src\editor\menu_search.lua
["Find and replace text"] = "Finde und ersetze Text", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "Finde Text in Dateien", -- src\editor\menu_search.lua
["Find text"] = "Finde Text", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "Finde vorheriges Auftreten des Textes", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "Finde nächstes Auftreten des Textes", -- src\editor\menu_search.lua
["Find"] = "Finden", -- src\editor\findreplace.lua
["Fold or unfold all code folds"] = "Alle Stellen im Code ein-/ausklappen ", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "Autowiederherstellen-Aufzeichnung gefunden und vorherige Sitzung wiederhergestellt.", -- src\editor\commands.lua
["Found"] = "Gefunden", -- src\editor\findreplace.lua
["Full &Screen"] = "&Vollbild", -- src\editor\menu_view.lua
["Go To Definition"] = "Gehe zu Definition", -- src\editor\editor.lua
["Go to a selected line"] = "Gehe zu ausgewählter Zeile", -- src\editor\menu_search.lua
["Goto Line"] = "Gehe zu Zeile", -- src\editor\menu_search.lua
["INS"] = "INS", -- src\editor\editor.lua
["In Files"] = "In Dateien", -- src\editor\findreplace.lua
["Jump to a function definition..."] = "Springe zu Funktions-Definition...", -- src\editor\editor.lua
["Known Files"] = "Bekannte Dateien", -- src\editor\commands.lua
["Ln: %d"] = "Zeile: %d", -- src\editor\editor.lua
["Local console"] = "Lokale Konsole", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "&Lua Interpreter", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = "Mapped remote request for '%s' to '%s'.", -- src\editor\debugger.lua
["Match &case"] = "&Groß-/Kleinschreibung", -- src\editor\findreplace.lua
["Match &whole word"] = "Ganzes &Wort", -- src\editor\findreplace.lua
["Mixed end-of-line encodings detected."] = "Gemischte End-of-Line Kodierung entdeckt.", -- src\editor\commands.lua
["OVR"] = "OVR", -- src\editor\editor.lua
["Open an existing document"] = "Öffne existierendes Dokument", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "Öffne Datei", -- src\editor\commands.lua
["Options"] = "Optionen", -- src\editor\findreplace.lua
["Output (running)"] = "Ausgabe (ausgeführt)", -- src\editor\output.lua
["Output"] = "Ausgabe", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "Text aus Zwischenablage einfügen", -- src\editor\menu_edit.lua
["Preferences"] = "Einstellungen", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "'=' voranstellen, um komplexe Ausdrücke auf mehrere Zeilen zu verteilen.", -- src\editor\shellbox.lua
["Press cancel to abort."] = "Abbrechen Drücken zum Beenden.", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "Programm '%s' gestartet in '%s' (pid : %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "Programm kann nicht starten, da blockierender Prozeß als '%s' läuft.", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "Programm beendet nach %.2f Sekunden (pid : %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "Programm gestartet als '%s'.", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "Programm gestoppt (pid: %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "Programm kann nicht als '%s' laufen.", -- src\editor\output.lua
["Project Directory"] = "&Projektverzeichnis", -- src\editor\menu_project.lua
["Project"] = "Projekt", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "&Projekt/Datei Fenster", -- src\editor\menu_view.lua
["R/O"] = "R/O", -- src\editor\editor.lua
["R/W"] = "R/W", -- src\editor\editor.lua
["Re&place In Files"] = "Ersetze in &Dateien", -- src\editor\menu_search.lua
["Recent Files"] = "Letzte Dateien", -- src\editor\menu_file.lua
["Redo last edit undone"] = "Stelle letzte rückgängig gemachte Bearbeitung wieder her", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "Starten einer neuen Debuggingsession abgelehnt, da bereits eine läuft.", -- src\editor\debugger.lua
["Regular &expression"] = "&Regulärer Ausdruck", -- src\editor\findreplace.lua
["Remote console"] = "Fensteuerungs-Konsole", -- src\editor\shellbox.lua
["Rename All Instances"] = "Umbenennen aller Instanzen", -- src\editor\editor.lua
["Replace &All"] = "&Alles ersetzen", -- src\editor\findreplace.lua
["Replace"] = "Ersetzen", -- src\editor\findreplace.lua
["Replaced an invalid UTF8 character with %s."] = "Unbekanntes UTF8-Symbol ersetzt mit %s.", -- src\editor\commands.lua
["Replaced"] = "Ersetzt:", -- src\editor\findreplace.lua
["Replacing"] = "Am Ersetzen", -- src\editor\findreplace.lua
["Reset to default layout"] = "Standard-Layout wiederherstellen", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "Zurücksetzen der Liste der dynamischen Wörter für Autovervollständigung", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "Als &Entwurf starten", -- src\editor\menu_project.lua
["S&top Debugging"] = "Debugging a&nhalten", -- src\editor\menu_project.lua
["S&top Process"] = "Prozeß &anhalten", -- src\editor\menu_project.lua
["Save &As..."] = "S&peichern als...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "&Alle Speichern", -- src\editor\menu_file.lua
["Save Changes?"] = "Änderungen speichern?", -- src\editor\commands.lua
["Save all open documents"] = "Alle offenen Dokumente speichern", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "Datei speichern als", -- src\editor\commands.lua
["Save file?"] = "Datei speichern?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "Aktuelles Dokument unter neuem Namen speichern", -- src\editor\menu_file.lua
["Save the current document"] = "Aktuelles Dokument speichern", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "Autowiederherstellen gespeichert unter %s.", -- src\editor\commands.lua
["Scope"] = "Richtung", -- src\editor\findreplace.lua
["Scratchpad error"] = "Fehler im Entwurf", -- src\editor\debugger.lua
["Searching for"] = "Suchen nach", -- src\editor\findreplace.lua
["Select &All"] = "&Alles Auswählen", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "Kompletten Text im Editor auswählen", -- src\editor\menu_edit.lua
["Set From Current File"] = "Anhand der aktuellen Datei festlegen", -- src\editor\menu_project.lua
["Set project directory from current file"] = "Lege Projektverzeichnis anhand der aktuellen Datei fest", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "Wähle zu benutzenden Interpreter aus", -- src\editor\menu_project.lua
["Set the project directory to be used"] = "Lege zu benutzendes Projektverzeichnis fest", -- src\editor\menu_project.lua
["Settings: System"] = "Einstellungen: System", -- src\editor\menu_edit.lua
["Settings: User"] = "Einstellungen: Nutzer", -- src\editor\menu_edit.lua
["Show &Tooltip"] = "&Tooltip zeigen", -- src\editor\menu_edit.lua
["Show Location"] = "Ordner öffnen", -- src\editor\gui.lua, src\editor\filetree.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "Zeige Tooltip für aktuelle Position; setze Cursor hinter die öffnende Klammer der Funktion", -- src\editor\menu_edit.lua
["Sort selected lines"] = "Ausgewählte Zeilen sortieren", -- src\editor\menu_search.lua
["Stack"] = "Stack", -- src\editor\debugger.lua
["Start &Debugging"] = "&Debugging starten", -- src\editor\menu_project.lua
["Start debugging"] = "Debugging starten", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "Schritt h&inein", -- src\editor\menu_project.lua
["Step &Over"] = "&Überspringen", -- src\editor\menu_project.lua
["Step O&ut"] = "Schritt &raus", -- src\editor\menu_project.lua
["Step into"] = "Schritt hinein", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "Schritt aus der aktuellen Funktion heraus", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "Überspringen", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "Aktuell laufenden Prozeß stoppen", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "Vollbild an/aus", -- src\editor\menu_view.lua
["Text not found."] = "Text nicht gefunden.", -- src\editor\findreplace.lua
["The API file must be located in a subdirectory of the API directory."] = "Die API-Datei muß sich in einem Unterverzeichnis des API-Vereichnisses befinden.", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "&Haltepunkt an/aus", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "Haltepunkt an/aus", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "Ablauf &verfolgen", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "Ablaufverfolgung zeigt jede ausgeführte Zeile an", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "Scheitern beim Laden von Datei '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "Scheitern beim Speichern von Datei '%s' : %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "Scheitern beim Stoppen des Prozesses (pid : %d), code %d.", -- src\editor\debugger.lua
["Undo last edit"] = "Letzte Änderung rückgängig machen", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = "'%s' für eine komplette Beschreibung.", -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = "'%s' um Zeilenende-Codes zu sehen, und '%s' um sie zu konvertieren.", -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "'clear' um Ausgabefenster und Verlauf zu löschen.", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "<Umsch-Eingabetaste> für Code in mehreren Zeilen.", -- src\editor\shellbox.lua
["Value"] = "Wert", -- src\editor\debugger.lua
["View the output/console window"] = "Ausgabe-/Konsolenfenster ansehen", -- src\editor\menu_view.lua
["View the project/filetree window"] = "Projekt-/Dateifenster ansehen", -- src\editor\menu_view.lua
["View the stack window"] = "Stapel/Stack-Fenster ansehen", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "Fenster für Beobachtungspunkte ansehen", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = "Beobachtungspunkte", -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "Willkommen zum interaktiven Lua-Interpretr!", -- src\editor\shellbox.lua
["Wrap ar&ound"] = "Am Anfang fortsetzen", -- src\editor\findreplace.lua
["You must save the program first."] = "Erst das Programm speichern.", -- src\editor\commands.lua
["on line %d"] = "in Zeile %d", -- src\editor\debugger.lua, src\editor\commands.lua, src\editor\editor.lua
["traced %d instruction"] = {"%d Anweisung verfolgt", "%d Anweisungen verfolgt"} -- src\editor\debugger.lua
}

5
cfg/i18n/en.lua Normal file
View File

@@ -0,0 +1,5 @@
return {
[0] = function(c) return c == 1 and 1 or 2 end, -- plural
["traced %d instruction"] = {"traced %d instruction", "traced %d instructions"}, -- src\editor\debugger.lua
["%d instance"] = {"%d instance", "%d instances"}, -- src\editor\findreplace.lua
}

205
cfg/i18n/es.lua Normal file
View File

@@ -0,0 +1,205 @@
-- Traducción realiazada por Iñigo Sola
-- para la versión ZeroBrane Studio 17bdb48
-- 10 de Noviembre de 2012
return {
[0] = function(c) return c == 1 and 1 or 2 end, -- plural
["&About"] = "&Acerca de...", -- src\editor\menu_help.lua
["&Add Watch"] = "Añadir observación", -- src\editor\debugger.lua
["&Break"] = "Ruptura", -- src\editor\menu_project.lua
["&Close Page"] = "Cerrar página", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "Compilar", -- src\editor\menu_project.lua
["&Copy"] = "Copiar", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "Diseño por defecto", -- src\editor\menu_view.lua
["&Delete Watch"] = "Eliminar observación", -- src\editor\debugger.lua
["&Edit Watch"] = "Editar observación", -- src\editor\debugger.lua
["&Edit"] = "Editar", -- src\editor\menu_edit.lua
["&File"] = "Archivo", -- src\editor\menu_file.lua
["&Find"] = "Buscar", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "Plegar/desplegar todo", -- src\editor\menu_edit.lua
["&Goto Line"] = "Ir a línea", -- src\editor\menu_search.lua
["&Help"] = "Ayuda", -- src\editor\menu_help.lua
["&New"] = "&Nuevo", -- src\editor\menu_file.lua
["&Open..."] = "&Abrir...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "Salida/Consola", -- src\editor\menu_view.lua
["&Paste"] = "Pegar", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "Proyecto", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "Rehacer", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace"] = "Remplazar", -- src\editor\menu_search.lua
["&Run"] = "Ejecutar", -- src\editor\menu_project.lua
["&Save"] = "Guardar", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "Buscar", -- src\editor\menu_search.lua
["&Sort"] = "Clasificar", -- src\editor\menu_search.lua
["&Stack Window"] = "Ventana de la pila de ejecución", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "Lanzar servidor de depuración", -- src\editor\menu_project.lua
["&Undo"] = "Deshacer", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&View"] = "Ver", -- src\editor\menu_view.lua
["&Watch Window"] = "Ventana de observaciones", -- src\editor\menu_view.lua
["About %s"] = "Acerca de %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "Añadir expresión de observación", -- src\editor\editor.lua
["Add To Scratchpad"] = "Añadir al borrador", -- src\editor\editor.lua
["All files"] = "Todos los archivos", -- src\editor\commands.lua
["Allow external process to start debugging"] = "Permitir proceso externo para iniciar depuración", -- src\editor\menu_project.lua
["Analyze the source code"] = "Analizar el código fuente", -- src\editor\inspect.lua
["Analyze"] = "Analizar", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "Autocompletar identificadores", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "Autocompletar mientras se escribe", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "Parar ejecución en la siguiente línea de código", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "Limpiar ventana de Salida", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "Comentar/descomentar", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "No se puede depurar el script en la ventana activa del editor", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "No se puede encontrar el archivo '%s' en el proyecto actual para activar la depuración. Actualiza el proyecto o abre el archivo en el editor antes de depurar.", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "No se puede procesar la autorrecuperación; formato inválido: %s.", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "No se pude ejecutar el punto de entrada del script (%s).", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "No se puede iniciar la sesión de depuración debido a un error interno '%s'.'", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "No se puede iniciar la depuración sin abrir un archivo o si no ha sido guardado ('%s').", -- src\editor\debugger.lua
["Choose ..."] = nil, -- src\editor\menu_project.lua
["Choose a project directory"] = "Elegir el directorio del proyecto", -- src\editor\menu_project.lua
["Clear &Dynamic Words"] = "Limpiar las palabras dinámicas", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "Limpiar la ventana de salida antes de compilar o depurar", -- src\editor\menu_project.lua
["Close &Other Pages"] = nil, -- src\editor\gui.lua
["Close A&ll Pages"] = nil, -- src\editor\gui.lua
["Close the current editor window"] = "Cerrar la ventana actual del editor", -- src\editor\menu_file.lua
["Co&ntinue"] = "Continuar", -- src\editor\menu_project.lua
["Col: %d"] = "Col: %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = {"Comentar o descomentar la línea activa (seleccionada)","Comentar o descomentar las líneas activas (seleccionadas)"}, -- src\editor\menu_edit.lua
["Compilation error"] = "Error de compilación", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "Compilación exitosa; factor de éxito: %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "Compilar el archivo actual", -- src\editor\menu_project.lua
["Complete &Identifier"] = "Completar identificador", -- src\editor\menu_edit.lua
["Complete the current identifier"] = "Completar el actual identificador", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "Copiar el texto seleccionado al portapapeles", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "No se pudo activar el archivo '%s' para la depuración; continuar sin él.", -- src\editor\debugger.lua
["Create an empty document"] = "Crear un documento en blanco", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "Cortar", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "Cortar el texto selecionado al portapapeles", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "Servidor de depuración inciado en %s:%s", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "Sesión de depuración completada (%s).", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "Sesión de depuración iniciada en '%s'.", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = nil, -- src\editor\debugger.lua
["Do you want to reload it?"] = "¿Quieres recargarlo?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "¿Quieres guardar los cambios en '%s'?", -- src\editor\commands.lua
["E&xit"] = "Salir", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "Introduce código Lua y pulsa <Entrer> para ejecutarlo.", -- src\editor\shellbox.lua
["Enter line number"] = "Introduce número de línea", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "Error mientras se cargaba el archivo de API: %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = nil, -- src\editor\style.lua
["Error while processing API file: %s"] = "Error mientras se procesaba el archivo de API: %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = nil, -- src\editor\style.lua
["Error"] = "Error", -- src\editor\commands.lua
["Evaluate In Console"] = "Evaluar en consola", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "Ejecutar el proyecto/archivo actual y manteniendo actualizado el código para ver resultados en tiempo real", -- src\editor\menu_project.lua
["Execute the current project/file"] = "Ejecutar el proyecto/archivo actual", -- src\editor\menu_project.lua
["Execution error"] = "Error de ejecución", -- src\editor\debugger.lua
["Exit program"] = "Salir del programa", -- src\editor\menu_file.lua
["Expr"] = "Expr.", -- src\editor\debugger.lua
["Expression"] = "Expresión", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "El archivo '%s' ha sido modificado en el disco.", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] = "El archivo '%s' tiene una fecha más reciente que el restaurado '%s'; por favor, revísalo antes de guardar.", -- src\editor\commands.lua
["File '%s' no longer exists."] = "El archivo '%s' no existe.", -- src\editor\editor.lua
["File history"] = "Historial de archivos", -- src\editor\menu_file.lua
["Find &In Files"] = "Buscar en archivos", -- src\editor\menu_search.lua
["Find &Next"] = "Buscar siguiente", -- src\editor\menu_search.lua
["Find &Previous"] = "Buscar anterior", -- src\editor\menu_search.lua
["Find and replace text in files"] = "Buscar y remplazar texto en archivos", -- src\editor\menu_search.lua
["Find and replace text"] = "Buscar y rempleazar texto", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "Buscar texto en archivos", -- src\editor\menu_search.lua
["Find text"] = "Buscar texto", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "Buscar la anterior aparición del texto", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "Buscar la siguiente aparecición del texto", -- src\editor\menu_search.lua
["Fold or unfold all code folds"] = "Plegar o desplegar todo el código plegado", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "Encontrada autorrecuperación y sesión restaurada.", -- src\editor\commands.lua
["Full &Screen"] = "Pantalla completa", -- src\editor\menu_view.lua
["Go to a selected line"] = "Ir a línea seleccionada", -- src\editor\menu_search.lua
["Goto Line"] = "Ir a línea", -- src\editor\menu_search.lua
["INS"] = "INS", -- src\editor\editor.lua
["Jump to a function definition..."] = "Saltar a la definición de la función...", -- src\editor\editor.lua
["Known Files"] = "Archivos conocidos", -- src\editor\commands.lua
["Ln: %d"] = "Ln: %d", -- src\editor\editor.lua
["Local console"] = "Consola local", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "Intérprete Lua", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = nil, -- src\editor\debugger.lua
["Mixed end-of-line encodings detected."] = nil, -- src\editor\commands.lua
["OVR"] = "OVR", -- src\editor\editor.lua
["Open an existing document"] = "Abrir un documento existente", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "Abrir archivo", -- src\editor\commands.lua
["Output (running)"] = "Salida (en ejecución)", -- src\editor\output.lua
["Output"] = "Salida", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "Pegar texto desde el portapapeles", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "Antepón '=' para ver valores complejos en líneas múltiples", -- src\editor\shellbox.lua
["Press cancel to abort."] = "Presiona cancelar para abortar.", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "Programa '%s' iniciado en '%s' (pid: %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "El programa no puede iniciarse porque hay un proceso conflictivo en ejecución como '%s'.", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "Programa completado en %.2f segundos (pid: %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "Programa iniciado como '%s'.", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "Programa parado (pid: %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "No se puede ejecutar el programa como '%s'.", -- src\editor\output.lua
["Project Directory"] = nil, -- src\editor\menu_project.lua
["Project"] = "Proyecto", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "Ventana de proyecto/árbol de archivos", -- src\editor\menu_view.lua
["R/O"] = "R/O", -- src\editor\editor.lua
["R/W"] = "R/W", -- src\editor\editor.lua
["Re&place In Files"] = "Remplazar en archivos", -- src\editor\menu_search.lua
["Recent Files"] = "Archivos recientes", -- src\editor\menu_file.lua
["Redo last edit undone"] = "Rehacer la última edición deshecha", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "No se pudo lanzar una nueva sesión de depuración porque ya hay una en curso.", -- src\editor\debugger.lua
["Remote console"] = "Consola remota", -- src\editor\shellbox.lua
["Replaced an invalid UTF8 character with %s."] = nil, -- src\editor\commands.lua
["Reset to default layout"] = "Restablecer el diseño por defecto", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "Restablecer la lista dinámica de palabras para autocompletado", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "Ejecutar como borrador", -- src\editor\menu_project.lua
["S&top Debugging"] = "Parar depuración", -- src\editor\menu_project.lua
["S&top Process"] = "Parar proceso", -- src\editor\menu_project.lua
["Save &As..."] = "Guardar como...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "Guardar todo", -- src\editor\menu_file.lua
["Save Changes?"] = "¿Guardar cambios?", -- src\editor\commands.lua
["Save all open documents"] = "Guardar todos los documentos abiertos", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "Guardar archivo como", -- src\editor\commands.lua
["Save file?"] = "¿Guardar archivo?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "Guardar el documento actual en un archivo con un nombre nuevo", -- src\editor\menu_file.lua
["Save the current document"] = "Guardar el documento actual", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "Guardar autorrecuperación en %s.", -- src\editor\commands.lua
["Scratchpad error"] = "Error en el borrador", -- src\editor\debugger.lua
["Select &All"] = "Seleccionar todo", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "Seleccionar todo el texto en el editor", -- src\editor\menu_edit.lua
["Set From Current File"] = nil, -- src\editor\menu_project.lua
["Set project directory from current file"] = "Establecer el directorio del proyecto del archivo actual", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "Establecer el intérprete a ser usado", -- src\editor\menu_project.lua
["Set the project directory to be used"] = nil, -- src\editor\menu_project.lua
["Show &Tooltip"] = "Ver tooltip", -- src\editor\menu_edit.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "Ver tooltip para la posición actual; posicionar el cursor después de abrir el paréntisis de los argumentos de la función", -- src\editor\menu_edit.lua
["Sort selected lines"] = "Clasificar las líneas seleccionadas", -- src\editor\menu_search.lua
["Stack"] = nil, -- src\editor\debugger.lua
["Start &Debugging"] = "Comenzar depuración", -- src\editor\menu_project.lua
["Start debugging"] = "Comenzar depuración", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "Paso dentro", -- src\editor\menu_project.lua
["Step &Over"] = "Paso sin entrar", -- src\editor\menu_project.lua
["Step O&ut"] = "Paso fuera", -- src\editor\menu_project.lua
["Step into"] = "Paso dentro", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "Hasta salir de la función actual", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "Paso sin entrar", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "Parar el proceso en ejecución", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "Conmutar el modo de pantalla completa", -- src\editor\menu_view.lua
["The API file must be located in a subdirectory of the API directory."] = "El archivo de API debe ser almacenado en un subdirectorio del directorio de API.", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "Conmutar punto de ruptura", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "Conmutar punto de ruptura", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "Traza", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "Traza de ejecución mostrando cada línea ejecutada", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "No se pudo cargar el archivo '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "No se pudo guardar el archivo '%s': %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "No se puedo parar el programa (pid: %d), código %d.", -- src\editor\debugger.lua
["Undo last edit"] = "Deshacer la última edición", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = nil, -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = nil, -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "Usa 'clear' para limpiar la consola de salida y el historial.", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "Usa <Shift-Enter> para código multilínea.", -- src\editor\shellbox.lua
["Value"] = "Valor", -- src\editor\debugger.lua
["View the output/console window"] = "Ver ventana de salida/consola", -- src\editor\menu_view.lua
["View the project/filetree window"] = "Ver la ventana de proyecto/árbol de archivos", -- src\editor\menu_view.lua
["View the stack window"] = "Ver la ventana de la pila de ejecución", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "Ver la ventana de observación", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = nil, -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "Bienvenido al intérprete interactico de Lua.", -- src\editor\shellbox.lua
["You must save the program first."] = "Debes guardar el programa primero", -- src\editor\commands.lua
["on line %d"] = "en la línea %d", -- src\editor\debugger.lua, src\editor\commands.lua
["traced %d instruction"] = {"%d instrucción trazada", "%d instrucciones trazadas"} -- src\editor\debugger.lua
}

236
cfg/i18n/fr.lua Normal file
View File

@@ -0,0 +1,236 @@
return {
[0] = function(c) return c == 1 and 1 or 2 end, -- plural
["%d instance"] = {"%d occurrence", "%d occurrences"}, -- src\editor\findreplace.lua
["%s event failed: %s"] = "L'événement %s a échoué : %s", -- src\editor\package.lua
["&About"] = "À &propos", -- src\editor\menu_help.lua
["&Add Watch"] = "&Ajouter une expression", -- src\editor\debugger.lua
["&Break"] = "&Interrompre", -- src\editor\menu_project.lua
["&Close Page"] = "&Fermer la page", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "&Compiler", -- src\editor\menu_project.lua
["&Copy"] = "Co&pier", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "Affichage par &défaut", -- src\editor\menu_view.lua
["&Delete Watch"] = "&Supprimer une expression", -- src\editor\debugger.lua
["&Down"] = "Vers le &bas", -- src\editor\findreplace.lua
["&Edit Watch"] = "&Modifier une expression", -- src\editor\debugger.lua
["&Edit"] = "É&dition", -- src\editor\menu_edit.lua
["&File"] = "&Fichier", -- src\editor\menu_file.lua
["&Find All"] = "&Rechercher tout", -- src\editor\findreplace.lua
["&Find Next"] = "&Rechercher", -- src\editor\findreplace.lua
["&Find"] = "&Rechercher", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "Re&plier/Déplier tout", -- src\editor\menu_edit.lua
["&Goto Line"] = "&Aller à la ligne", -- src\editor\menu_search.lua
["&Help"] = "Aid&e", -- src\editor\menu_help.lua
["&New"] = "&Nouveau", -- src\editor\menu_file.lua
["&Open..."] = "&Ouvrir...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "&Sortie/Console", -- src\editor\menu_view.lua
["&Paste"] = "Co&ller", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "&Projet", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "&Rétablir", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace All"] = "Remplacer &tout", -- src\editor\findreplace.lua
["&Replace"] = "Re&mplacer", -- src\editor\findreplace.lua, src\editor\menu_search.lua
["&Run"] = "&Exécuter", -- src\editor\menu_project.lua
["&Save"] = "&Enregistrer", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "&Recherche", -- src\editor\menu_search.lua
["&Sort"] = "&Trier", -- src\editor\menu_search.lua
["&Stack Window"] = "&Pile d'exécution", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "Lancer le &serveur de débogage", -- src\editor\menu_project.lua
["&Subdirectories"] = "&Sous-répertoires", -- src\editor\findreplace.lua
["&Undo"] = "&Annuler", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Up"] = "Vers le &haut", -- src\editor\findreplace.lua
["&View"] = "&Affichage", -- src\editor\menu_view.lua
["&Watch Window"] = "&Expressions espionnes", -- src\editor\menu_view.lua
[".&bak on Replace"] = ".&bak avant remplacement", -- src\editor\findreplace.lua
["About %s"] = "À propos de %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "Ajouter une expression", -- src\editor\editor.lua
["Add To Scratchpad"] = "Ajouter au brouillon", -- src\editor\editor.lua
["All files"] = "Tous les fichiers", -- src\editor\commands.lua
["Allow external process to start debugging"] = "Autoriser les processus externes à lancer le débogage", -- src\editor\menu_project.lua
["Analyze the source code"] = "Analyser le code source", -- src\editor\inspect.lua
["Analyze"] = "Analyser", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "Auto-compléter les identifiants", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "Auto-compléter lors de la saisie", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "Interrompre l'exécution à la ligne suivante", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "E&ffacer la fenêtre de sortie", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "Co&mmenter/Décommenter", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "Impossible de déboguer le script dans la fenêtre d'édition active.", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "Impossible de trouver le fichier '%s' dans le projet courant pour permettre le débogage. Mettez le projet à jour ou ouvrez le fichier dans l'éditeur avant débogage.", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "Impossible de lire la récupération automatique ; format invalide : %s.", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "Impossible d'exécuter le point d'entrée du script ('%s').", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "Impossible de lancer la session de débogage : erreur interne '%s'.", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "Impossible de lancer le débogage si aucun fichier n'est ouvert ou si le fichier courant n'a pas été enregistré ('%s').", -- src\editor\debugger.lua
["Cancel"] = "Annuler", -- src\editor\findreplace.lua
["Choose ..."] = "Choisir...", -- src\editor\menu_project.lua
["Choose a project directory"] = "Choisissez un répertoire de projet", -- src\editor\findreplace.lua, src\editor\menu_project.lua
["Clear &Dynamic Words"] = "Effacer les mots &dynamiques", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "Effacer la fenêtre de sortie avant compilation ou débogage", -- src\editor\menu_project.lua
["Close &Other Pages"] = "Fermer les &autres pages", -- src\editor\gui.lua
["Close A&ll Pages"] = "Fermer &toutes les pages", -- src\editor\gui.lua
["Close the current editor window"] = "Fermer la fenêtre d'édition active", -- src\editor\menu_file.lua
["Co&ntinue"] = "Co&ntinuer", -- src\editor\menu_project.lua
["Col: %d"] = "Col : %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = "Commenter ou décommenter les lignes courantes ou sélectionnées", -- src\editor\menu_edit.lua
["Compilation error"] = "Erreur de compilation", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "Compilation réussie ; taux de succès : %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "Сompiler le fichier courant", -- src\editor\menu_project.lua
["Complete &Identifier"] = "Compléter l'&identifiant", -- src\editor\menu_edit.lua
["Complete the current identifier"] = "Compléter l'identifiant courant", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "Copier le texte sélectionné dans le presse-papiers", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "Impossible d'activer le fichier '%s' pour débogage ; poursuite du processus en ignorant le fichier.", -- src\editor\debugger.lua
["Create an empty document"] = "Créer un document vierge", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "&Couper", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "Couper le texte sélectionné et copier dans le presse-papiers", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "Serveur de débogage démarré à %s:%d.", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "Session de débogage terminée (%s).", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "Session de débogage démarrée dans '%s'.", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = "Débogage interrompu à %s:%s (impossible d'activer le fichier).", -- src\editor\debugger.lua
["Directory"] = "Répertoire ", -- src\editor\findreplace.lua
["Do you want to reload it?"] = "Voulez-vous le recharger ?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "Voulez-vous enregistrer les modifications dans '%s' ?", -- src\editor\commands.lua
["E&xit"] = "&Quitter", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "Saisissez du code Lua et appuyez sur <Entrée> pour l´exécuter.", -- src\editor\shellbox.lua
["Enter line number"] = "Entrez le numéro de ligne", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "Erreur lors du chargement du fichier d'API : %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = "Erreur lors du chargement du fichier de configuration : %s", -- src\editor\style.lua
["Error while processing API file: %s"] = "Erreur lors de la lecture du fichier d'API : %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = "Erreur lors de la lecture du fichier de configuration : %s", -- src\editor\style.lua
["Error"] = "Erreur", -- src\editor\commands.lua
["Evaluate In Console"] = "Évaluer dans la console", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "Exécuter le projet/fichier courant en mettant le code à jour afin de voir les résultats en temps réel", -- src\editor\menu_project.lua
["Execute the current project/file"] = "Exécuter le projet/fichier courant", -- src\editor\menu_project.lua
["Execution error"] = "Erreur d'exécution", -- src\editor\debugger.lua
["Exit program"] = "Quitter le programme", -- src\editor\menu_file.lua
["Expr"] = "Expr.", -- src\editor\debugger.lua
["Expression"] = "Expression", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "Le fichier '%s' a été modifié sur le disque.", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] = "Le fichier '%s' a un horodatage plus récent que celui restauré '%s' ; veuillez vérifier avant d'enregistrer.", -- src\editor\commands.lua
["File '%s' no longer exists."] = "Le fichier '%s' n'existe plus.", -- src\editor\editor.lua, src\editor\menu_file.lua
["File Type"] = "Type de fichier ", -- src\editor\findreplace.lua
["File history"] = "Historique de fichier", -- src\editor\menu_file.lua
["Find &In Files"] = "Rec&hercher dans les fichiers", -- src\editor\menu_search.lua
["Find &Next"] = "Rechercher l'occurrence &suivante", -- src\editor\menu_search.lua
["Find &Previous"] = "Rechercher l'occurrence &précédente", -- src\editor\menu_search.lua
["Find In Files"] = "Rechercher dans les fichiers", -- src\editor\findreplace.lua
["Find and replace text in files"] = "Rechercher et remplacer le texte dans les fichiers", -- src\editor\menu_search.lua
["Find and replace text"] = "Rechercher et remplacer le texte", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "Rechercher le texte dans les fichiers", -- src\editor\menu_search.lua
["Find text"] = "Rechercher le texte", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "Recherche l'occurrence précédente du texte", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "Recherche l'occurrence suivante du texte", -- src\editor\menu_search.lua
["Find"] = "Rechercher ", -- src\editor\findreplace.lua
["Fold or unfold all code folds"] = "Replier ou déplier tous les blocs de code", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "Une récupération automatique a été trouvé et la session a été restaurée.", -- src\editor\commands.lua
["Found"] = "Occurrences trouvées :", -- src\editor\findreplace.lua
["Full &Screen"] = "&Plein écran", -- src\editor\menu_view.lua
["Go To Definition"] = "Aller à la définition", -- src\editor\editor.lua
["Go to a selected line"] = "Aller à la ligne sélectionnée", -- src\editor\menu_search.lua
["Goto Line"] = "Aller à la ligne", -- src\editor\menu_search.lua
["INS"] = "INS", -- src\editor\editor.lua
["In Files"] = "Dans les fichiers", -- src\editor\findreplace.lua
["Jump to a function definition..."] = "Aller à la définition de fonction...", -- src\editor\editor.lua
["Known Files"] = "Fichiers connus", -- src\editor\commands.lua
["Ln: %d"] = "Lig : %d", -- src\editor\editor.lua
["Local console"] = "Console locale", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "Interpréteur L&ua", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = "La requête distante pour '%s' a été associée à '%s'.", -- src\editor\debugger.lua
["Match &case"] = "Respecter la &casse", -- src\editor\findreplace.lua
["Match &whole word"] = "&Mot entier uniquement", -- src\editor\findreplace.lua
["Mixed end-of-line encodings detected."] = "Plusieurs codages de fin de ligne détectés.", -- src\editor\commands.lua
["OVR"] = "OVR", -- src\editor\editor.lua
["Open an existing document"] = "Ouvrir un document existant", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "Ouvrir un fichier", -- src\editor\commands.lua
["Options"] = "Options", -- src\editor\findreplace.lua
["Output (running)"] = "Sortie (en cours d'exécution)", -- src\editor\output.lua
["Output"] = "Sortie", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "Coller le texte depuis le presse-papiers", -- src\editor\menu_edit.lua
["Preferences"] = "Préférences", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "Préfixez par '=' pour afficher les valeurs complexes sur plusieurs lignes.", -- src\editor\shellbox.lua
["Press cancel to abort."] = "Cliquez sur Annuler pour annuler.", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "Programme '%s' démarré dans '%s' (pid : %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "Le programme ne peut démarrer à cause d'un conflit de processus avec '%s' (en cours d'exécution).", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "Programme terminé en %.2f secondes (pid : %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "Programme démarré en tant que '%s'.", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "Programme stoppé (pid : %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "Impossible d'exécuter le programme en tant que '%s'.", -- src\editor\output.lua
["Project Directory"] = "Répertoire de projet", -- src\editor\menu_project.lua
["Project"] = "Projet", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "&Explorateur de projet", -- src\editor\menu_view.lua
["R/O"] = "R/O", -- src\editor\editor.lua
["R/W"] = "R/W", -- src\editor\editor.lua
["Re&place In Files"] = "Remp&lacer dans les fichiers", -- src\editor\menu_search.lua
["Recent Files"] = "Fichiers récents", -- src\editor\menu_file.lua
["Redo last edit undone"] = "Rétablir la dernière modification", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "Une requête de lancement de débogage a été refusée car une session de débogage est déjà en cours.", -- src\editor\debugger.lua
["Regular &expression"] = "&Expression régulière", -- src\editor\findreplace.lua
["Remote console"] = "Console à distance", -- src\editor\shellbox.lua
["Rename All Instances"] = "Renommer toutes les occurrences", -- src\editor\editor.lua
["Replace &All"] = "Remplacer &tout", -- src\editor\findreplace.lua
["Replace"] = "Remplacer par ", -- src\editor\findreplace.lua
["Replaced an invalid UTF8 character with %s."] = "Un caractère UTF8 invalide a été remplacé par %s.", -- src\editor\commands.lua
["Replaced"] = "Occurrences remplacées :", -- src\editor\findreplace.lua
["Replacing"] = "Remplacement de", -- src\editor\findreplace.lua
["Reset to default layout"] = "Restaurer l'affichage par défaut", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "Réinitialiser la liste des mots dynamiques pour l'auto-complétion", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "Exécuter comme brouillon", -- src\editor\menu_project.lua
["S&top Debugging"] = "&Arrêter le débogage", -- src\editor\menu_project.lua
["S&top Process"] = "&Arrêter le processus", -- src\editor\menu_project.lua
["Save &As..."] = "Enregistrer &sous...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "Enregistrer &tout", -- src\editor\menu_file.lua
["Save Changes?"] = "Enregistrer les modifications ?", -- src\editor\commands.lua
["Save all open documents"] = "Enregistrer tous les documents ouverts", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "Enregistrer le fichier sous", -- src\editor\commands.lua
["Save file?"] = "Enregistrer le fichier ?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "Enregistrer le document courant sous un nouveau nom", -- src\editor\menu_file.lua
["Save the current document"] = "Enregistrer le document courant", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "Récup. auto enregistrée à %s.", -- src\editor\commands.lua
["Scope"] = "Direction", -- src\editor\findreplace.lua
["Scratchpad error"] = "Erreur dans le brouillon", -- src\editor\debugger.lua
["Searching for"] = "Recherche de", -- src\editor\findreplace.lua
["Select &All"] = "Sélectionner &tout", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "Sélectionner tout le texte dans l'éditeur", -- src\editor\menu_edit.lua
["Set From Current File"] = "Définir depuis le fichier courant", -- src\editor\menu_project.lua
["Set project directory from current file"] = "Définir le répertoire de projet depuis le fichier courant", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "Définir l'interpréteur à utiliser", -- src\editor\menu_project.lua
["Set the project directory to be used"] = "Définir le répertoire de projet à utiliser", -- src\editor\menu_project.lua
["Settings: System"] = "Paramètres : Système", -- src\editor\menu_edit.lua
["Settings: User"] = "Paramètres : Utilisateur", -- src\editor\menu_edit.lua
["Show &Tooltip"] = "Afficher l'info-&bulle", -- src\editor\menu_edit.lua
["Show Location"] = "Afficher l'emplacement", -- src\editor\gui.lua, src\editor\filetree.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "Afficher l'info-bulle pour la position actuelle ; placez le curseur après la parenthèse ouvrante de la fonction", -- src\editor\menu_edit.lua
["Sort selected lines"] = "Trier les lignes sélectionnées", -- src\editor\menu_search.lua
["Stack"] = "Pile d'exécution", -- src\editor\debugger.lua
["Start &Debugging"] = "Lancer le &débogage", -- src\editor\menu_project.lua
["Start debugging"] = "Lancer le débogage", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "Pas à pas détai&llé", -- src\editor\menu_project.lua
["Step &Over"] = "Pas à pas so&mmaire", -- src\editor\menu_project.lua
["Step O&ut"] = "Pas à pas so&rtant", -- src\editor\menu_project.lua
["Step into"] = "Rentrer dans l'instruction suivante", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "Sortir de la fonction courante", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "Enjamber l'instruction suivante", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "Arrêter le processus en cours d'exécution", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "Activer ou désactiver le mode plein écran", -- src\editor\menu_view.lua
["Text not found."] = "Texte non trouvé.", -- src\editor\findreplace.lua
["The API file must be located in a subdirectory of the API directory."] = "Le fichier d'API doit être placé dans un sous-répertoire du répertoire d'API.", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "Créer/Supprimer un &point d'arrêt", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "Créer ou supprimer un point d'arrêt", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "&Tracer", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "Tracer l'exécution en montrant chaque ligne de code exécutée", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "Impossible de charger le le fichier '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "Impossible d'enregistrer le fichier '%s' : %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "Impossible d'arrêter le programme (pid : %d), code %d.", -- src\editor\debugger.lua
["Undo last edit"] = "Annuler la dernière modification", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = "Utilisez '%s' pour voir la description complète.", -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = "Utilisez '%s' pour afficher les fins de ligne et '%s' pour les convertir.", -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "Utilisez 'clear' pour effacer la sortie console et l´historique.", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "Appuyez sur <Shift-Entrée> pour du code multiligne.", -- src\editor\shellbox.lua
["Value"] = "Valeur", -- src\editor\debugger.lua
["View the output/console window"] = "Afficher la fenêtre de sortie/console", -- src\editor\menu_view.lua
["View the project/filetree window"] = "Afficher la fenêtre d'explorateur de projet", -- src\editor\menu_view.lua
["View the stack window"] = "Afficher la fenêtre de pile d'exécution", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "Afficher la fenêtre d'expressions espionnes", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = "Expressions espionnes", -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "Bienvenue dans l´interpréteur interactif Lua.", -- src\editor\shellbox.lua
["Wrap ar&ound"] = "B&oucler", -- src\editor\findreplace.lua
["You must save the program first."] = "Vous devez d'abord enregistrer le programme.", -- src\editor\commands.lua
["on line %d"] = "à la ligne %d", -- src\editor\debugger.lua, src\editor\commands.lua, src\editor\editor.lua
["traced %d instruction"] = {"%d instruction tracée", "%d instructions tracées"} -- src\editor\debugger.lua
}

202
cfg/i18n/it.lua Normal file
View File

@@ -0,0 +1,202 @@
return {
[0] = function(c) return c == 1 and 1 or 2 end, -- plural
["&About"] = "Informazioni", -- src\editor\menu_help.lua
["&Add Watch"] = "&Aggiungi Espressione di Controllo", -- src\editor\debugger.lua
["&Break"] = "Interrompi", -- src\editor\menu_project.lua
["&Close Page"] = "&Chiudi pagina", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "&Compila", -- src\editor\menu_project.lua
["&Copy"] = "&Copia", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "Visualizzazione di &Default", -- src\editor\menu_view.lua
["&Delete Watch"] = "Elimina Espressione di Controllo", -- src\editor\debugger.lua
["&Edit Watch"] = "Modifica Espressione di Controllo", -- src\editor\debugger.lua
["&Edit"] = "Modifica", -- src\editor\menu_edit.lua
["&File"] = "File", -- src\editor\menu_file.lua
["&Find"] = "Ricerca", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "Apri/Chiudi tutto", -- src\editor\menu_edit.lua
["&Goto Line"] = "Vai a riga", -- src\editor\menu_search.lua
["&Help"] = "Aiuto", -- src\editor\menu_help.lua
["&New"] = "&Nuovo", -- src\editor\menu_file.lua
["&Open..."] = "&Apri...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "Finestra di Output/Console", -- src\editor\menu_view.lua
["&Paste"] = "Incolla", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "&Progetto", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "&Ripeti", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace"] = "Sostituisci", -- src\editor\menu_search.lua
["&Run"] = "Lancia", -- src\editor\menu_project.lua
["&Save"] = "&Salva", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "Ricerca", -- src\editor\menu_search.lua
["&Sort"] = "Ordina", -- src\editor\menu_search.lua
["&Stack Window"] = "Stack di chiamate", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "Avvia Debugger Server", -- src\editor\menu_project.lua
["&Undo"] = "Annulla", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&View"] = "Visualizza", -- src\editor\menu_view.lua
["&Watch Window"] = "Finestra Espressioni di Controllo", -- src\editor\menu_view.lua
["About %s"] = "Informazioni su %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "Aggiungi Espressione di Controllo", -- src\editor\editor.lua
["Add To Scratchpad"] = "Aggiungi a Scratchpad ", -- src\editor\editor.lua
["All files"] = "Tutti i files", -- src\editor\commands.lua
["Allow external process to start debugging"] = "Permetti a processi esterni di avviare il debug", -- src\editor\menu_project.lua
["Analyze the source code"] = "Analizza il codice", -- src\editor\inspect.lua
["Analyze"] = "Analizza", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "Autocompletamento identificatori", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "Autocompletamento in linea", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "Interrompi l'esecuzione alla successiva riga di codice ", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "Pulisci finestra di output", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "Commenta/Scommenta", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "Impossibile farte debug dello script nella finestra attiva", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "File '%s' non trovato nel progetto per attivare il debug. Modificare il progetto o apire il file prima di lanciare il debug.", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "Impossibile procedere all'auto-recovery; Formato non valido: %s.", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "Impossibile eseguire il punto di ingresos dello script (%s).", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "Impossibile lanciare la sessione di debug: errore interno '%s'.'", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "Impossibile lanciare il debug senza aver aperto un file o se il file corrente non è stato salvato ('%s').", -- src\editor\debugger.lua
["Choose ..."] = "Scegli...", -- src\editor\menu_project.lua
["Choose a project directory"] = "Scegli la directory di un progetto", -- src\editor\menu_project.lua
["Clear &Dynamic Words"] = "Elimna le &Dynamic Words", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "Pulisci la finestra di output prima di compilare o lanciare debug", -- src\editor\menu_project.lua
["Close &Other Pages"] = "Chidi le Altre Pagine", -- src\editor\gui.lua
["Close A&ll Pages"] = "Chiudi Tutte le Pagine", -- src\editor\gui.lua
["Close the current editor window"] = "Chiude la finestra dell'edit corrente", -- src\editor\menu_file.lua
["Co&ntinue"] = "Co&ntinua", -- src\editor\menu_project.lua
["Col: %d"] = "Col: %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = "Commenta o scommenta la linea corrente o selezionat", -- src\editor\menu_edit.lua
["Compilation error"] = "Errore di compilazione", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "Compilazione riuscita; tasso di successo : %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "Compila il file corrente", -- src\editor\menu_project.lua
["Complete &Identifier"] = "Completa l'&Identificatore", -- src\editor\menu_edit.lua
["Complete the current identifier"] = "Completa l'identificatore corrente", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "Copia il testo selezionato negli appunti", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "Impossibile attivare il file '%s' per debug; si prosegue senza.", -- src\editor\debugger.lua
["Create an empty document"] = "Crea un documento vuoto", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "&Taglia", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "Taglia il testo selezionato e mette negli appunti", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "Server Debugger iniziato %s:%s", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "Sessione di debug completata (%s).", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "Sessione di debug iniziata da '%s'.", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = "Debug sospeso a %s:%s (impossibile attivare il file).", -- src\editor\debugger.lua
["Do you want to reload it?"] = "Vuoi ricaricarlo?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "Vuoi salvare le modifiche a '%s'?", -- src\editor\commands.lua
["E&xit"] = "Uscita", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "Inserisci codice Lua e premi <Enter> per eseguirlo.", -- src\editor\shellbox.lua
["Enter line number"] = "Inserisci il numero di linea", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "Errore durante il caricamento del file API: %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = "Errore nel caricamento del file di configurazione: %s", -- src\editor\style.lua
["Error while processing API file: %s"] = "Errore durante l'elaborazione del file API: %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = "Errore durante l'elaborazione del file di configurazione: %s", -- src\editor\style.lua
["Error"] = "Errore", -- src\editor\commands.lua
["Evaluate In Console"] = "Elabora in console", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "Esegue il progetto/file corrente e permette di modificare il codice per vedere i risultati in tempo reale", -- src\editor\menu_project.lua
["Execute the current project/file"] = "Esegue il progetto/file corrente", -- src\editor\menu_project.lua
["Execution error"] = "Errore di esecuzione", -- src\editor\debugger.lua
["Exit program"] = "Uscita dal programma", -- src\editor\menu_file.lua
["Expr"] = "Expr.", -- src\editor\debugger.lua
["Expression"] = "Espressione", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "Il file '%s' e' stato modificato sul disco.", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] = "Il file '%s' ha un timestamp più recente di quello ripristinato '%s'; verificare prima di salvare.", -- src\editor\commands.lua
["File '%s' no longer exists."] = "Il file '%s' non esiste piu'.", -- src\editor\editor.lua
["File history"] = "Storia del file", -- src\editor\menu_file.lua
["Find &In Files"] = "Ricerca nei files", -- src\editor\menu_search.lua
["Find &Next"] = "Cerca il successivo", -- src\editor\menu_search.lua
["Find &Previous"] = "Cerca il precedente", -- src\editor\menu_search.lua
["Find and replace text in files"] = "Cerca e sostituisci testo nei files", -- src\editor\menu_search.lua
["Find and replace text"] = "Cerca e sostituisci testo", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "Cerca testo nei files", -- src\editor\menu_search.lua
["Find text"] = "Cerca testo", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "Cerca la precedente occorrenza nel testo", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "Cerca la successiva occorrenza nel testo", -- src\editor\menu_search.lua
["Fold or unfold all code folds"] = "Apri o chiudi tutti i blocchi di codice", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "Trovato punto di auto-revcovery e ripristinata la sessione salvata", -- src\editor\commands.lua
["Full &Screen"] = "Schermo pieno", -- src\editor\menu_view.lua
["Go to a selected line"] = "Vai alla riga selezionata", -- src\editor\menu_search.lua
["Goto Line"] = "Vai alla riga", -- src\editor\menu_search.lua
["INS"] = "INS", -- src\editor\editor.lua
["Jump to a function definition..."] = "Salta alla definizione della funzione...", -- src\editor\editor.lua
["Known Files"] = "Files conosciuti", -- src\editor\commands.lua
["Ln: %d"] = "Ln: %d", -- src\editor\editor.lua
["Local console"] = "Console locale", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "&Interprete Lua", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = "Richiesta remota '%s' mappata su '%s'.", -- src\editor\debugger.lua
["Mixed end-of-line encodings detected."] = "Trovata codifica Fine-Riga mista.", -- src\editor\commands.lua
["OVR"] = "OVR", -- src\editor\editor.lua
["Open an existing document"] = "Apri un documento esistente", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "Apri un file", -- src\editor\commands.lua
["Output (running)"] = "Output (in corso d'esecuzione)", -- src\editor\output.lua
["Output"] = "Output", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "Incolla testo dagli appunti", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "Prefissa '=' per visualizzare valori complessi su piu` righe", -- src\editor\shellbox.lua
["Press cancel to abort."] = "Premi cancel per bloccare.", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "Programma '%s' partito da '%s' (pid: %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "Il programma non puo' partire perchè in conflitto con il processo in esecuzione '%s'.", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "Programma completato in %.2f secondi (pid: %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "Programma partito da '%s'.", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "Programma fermato (pid: %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "Il programma non puo' partire '%s'.", -- src\editor\output.lua
["Project Directory"] = "Directory del Progetto", -- src\editor\menu_project.lua
["Project"] = "Progetto", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "Progetto/Explorer", -- src\editor\menu_view.lua
["R/O"] = "R/O", -- src\editor\editor.lua
["R/W"] = "R/W", -- src\editor\editor.lua
["Re&place In Files"] = "Sostituisci nei files", -- src\editor\menu_search.lua
["Recent Files"] = "Files recenti", -- src\editor\menu_file.lua
["Redo last edit undone"] = "Ripeti l'ultima azione annullata", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "Impossibile aprire una nuova sessione di debug in quanto ne esiste una in corso", -- src\editor\debugger.lua
["Remote console"] = "Console remota", -- src\editor\shellbox.lua
["Replaced an invalid UTF8 character with %s."] = "Sostituito un carattere UTF8 invalido con %s.", -- src\editor\commands.lua
["Reset to default layout"] = "Ritorna al default layout", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "Azzera la lista di dynamic words per l'autocompletamento", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "Esegui in Scratchpad (Live coding)", -- src\editor\menu_project.lua
["S&top Debugging"] = "Ferma il debugger", -- src\editor\menu_project.lua
["S&top Process"] = "Ferma il processo", -- src\editor\menu_project.lua
["Save &As..."] = "S&alva con nome...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "Sa&lva tutto", -- src\editor\menu_file.lua
["Save Changes?"] = "Vuoi salvare le modifiche?", -- src\editor\commands.lua
["Save all open documents"] = "Salva tutti i documenti aperti", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "Salva il file con nome", -- src\editor\commands.lua
["Save file?"] = "Vuoi salvare il file?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "Salva il documento corrente in un file con un nuovo nome", -- src\editor\menu_file.lua
["Save the current document"] = "Salva il documento corrente", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "Salvato auto-recover a %s.", -- src\editor\commands.lua
["Scratchpad error"] = "Errore durente Scratchpad", -- src\editor\debugger.lua
["Select &All"] = "Selezion&a Tutto", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "Seleziona tutto il testo nell'editor", -- src\editor\menu_edit.lua
["Set From Current File"] = "Impostato da file corrente", -- src\editor\menu_project.lua
["Set project directory from current file"] = "Definisci la directory del progeetto dal file corrente", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "Definisci l'interprete da utilizzare", -- src\editor\menu_project.lua
["Set the project directory to be used"] = "Imposta la directory di progetto da usare", -- src\editor\menu_project.lua
["Show &Tooltip"] = "Mos&tra i consgli", -- src\editor\menu_edit.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "Mostra i consigli per la posizione corrente; muovi il cursore dopo la parentesi o la funzione", -- src\editor\menu_edit.lua
["Sort selected lines"] = "Ordina le righe selezionate", -- src\editor\menu_search.lua
["Stack"] = "Stack", -- src\editor\debugger.lua
["Start &Debugging"] = "Inizia il &Debug", -- src\editor\menu_project.lua
["Start debugging"] = "Inizia il Debug", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "Step &Into", -- src\editor\menu_project.lua
["Step &Over"] = "Step &Over", -- src\editor\menu_project.lua
["Step O&ut"] = "Step O&ut", -- src\editor\menu_project.lua
["Step into"] = "Step into", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "Contina fino all'uscita della funzione", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "Continua senza entrare nella funzione", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "Ferma il processo in esecuzione", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "Passa da tutto schermo a finestra", -- src\editor\menu_view.lua
["The API file must be located in a subdirectory of the API directory."] = "Il file API deve essere presente in una sottodirectory o nella direcotory API.", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "Attiva/Disattiva Break&point", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "Attiva/Disattiva Breakpoint", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "Tr&ace", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "Traccia l'esecuzione mostrando le righe eseguite", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "Impossibile aprire il file '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "Impossibile salvare il file '%s': %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "Impossibile fermare il programma (pid: %d), code %d.", -- src\editor\debugger.lua
["Undo last edit"] = "Annulla l'ultima azione di edit", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = "Utilizza '%s' per vedere la descrizione completa.", -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = "Utilizza '%s' per vedere la fine della riga e '%s' per convertirli.", -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "Utilizza 'clear' per pulire l`output e lo storico.", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "Premi <Shift-Invio> per inserire piu` righe di codice.", -- src\editor\shellbox.lua
["Value"] = "Valore", -- src\editor\debugger.lua
["View the output/console window"] = "Mostra la finestra di output/console", -- src\editor\menu_view.lua
["View the project/filetree window"] = "Mostra la finestra di progetto/explorer", -- src\editor\menu_view.lua
["View the stack window"] = "Mostra la finestra dello Stack", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "Mostra la finestra delle Espressioni di Controllo", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = "Watch", -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "Benvenuti nell`interprete interattivo Lua.", -- src\editor\shellbox.lua
["You must save the program first."] = "Devi prima salvare il programma", -- src\editor\commands.lua
["on line %d"] = "alla linea %d", -- src\editor\debugger.lua, src\editor\commands.lua
["traced %d instruction"] = {"tracciata %d istruzione", "%d istruzioni tracciate"} -- src\editor\debugger.lua
}

232
cfg/i18n/ru.lua Normal file
View File

@@ -0,0 +1,232 @@
return {
[0] = function(c) c = (c-9)%100 < 9 and 9 or (c-1)%10 return c == 0 and 1 or c < 4 and 2 or 3 end, -- plural
["%d instance"] = {"%d совпадение", "%d совпадения", "%d совпадений"}, -- src\editor\findreplace.lua
["&About"] = "&О программе", -- src\editor\menu_help.lua
["&Add Watch"] = "&Добавить выражение", -- src\editor\debugger.lua
["&Break"] = "Пр&ервать", -- src\editor\menu_project.lua
["&Close Page"] = "&Закрыть", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Compile"] = "&Компилировать", -- src\editor\menu_project.lua
["&Copy"] = "&Копировать", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Default Layout"] = "Вид по &умолчанию", -- src\editor\menu_view.lua
["&Delete Watch"] = "&Удалить выражение", -- src\editor\debugger.lua
["&Down"] = "Вниз", -- src\editor\findreplace.lua
["&Edit Watch"] = "&Редактировать выражение", -- src\editor\debugger.lua
["&Edit"] = "&Правка", -- src\editor\menu_edit.lua
["&File"] = "&Файл", -- src\editor\menu_file.lua
["&Find All"] = "Найти все", -- src\editor\findreplace.lua
["&Find Next"] = "Найти далее", -- src\editor\findreplace.lua
["&Find"] = "&Найти", -- src\editor\menu_search.lua
["&Fold/Unfold All"] = "Св&ернуть/развернуть все", -- src\editor\menu_edit.lua
["&Goto Line"] = "&Перейти к строке", -- src\editor\menu_search.lua
["&Help"] = "&Справка", -- src\editor\menu_help.lua
["&New"] = "Соз&дать", -- src\editor\menu_file.lua
["&Open..."] = "&Открыть...", -- src\editor\menu_file.lua
["&Output/Console Window"] = "Окно &вывода/консоли", -- src\editor\menu_view.lua
["&Paste"] = "В&ставить", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Project"] = "Пр&оект", -- src\editor\menu_project.lua, src\editor\inspect.lua
["&Redo"] = "Верну&ть", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Replace All"] = "Заменить всe", -- src\editor\findreplace.lua
["&Replace"] = "За&менить", -- src\editor\findreplace.lua, src\editor\menu_search.lua
["&Run"] = "За&пустить", -- src\editor\menu_project.lua
["&Save"] = "&Сохранить", -- src\editor\menu_file.lua, src\editor\gui.lua
["&Search"] = "По&иск", -- src\editor\menu_search.lua
["&Sort"] = "&Cортировать", -- src\editor\menu_search.lua
["&Stack Window"] = "Окно &стека", -- src\editor\menu_view.lua
["&Start Debugger Server"] = "Запустить сервер отла&дки", -- src\editor\menu_project.lua
["&Subdirectories"] = "В папках", -- src\editor\findreplace.lua
["&Undo"] = "&Отменить", -- src\editor\editor.lua, src\editor\menu_edit.lua
["&Up"] = "Вверх", -- src\editor\findreplace.lua
["&View"] = "&Вид", -- src\editor\menu_view.lua
["&Watch Window"] = "Окно &выражений", -- src\editor\menu_view.lua
[".&bak on Replace"] = ".&bak после замены", -- src\editor\findreplace.lua
["About %s"] = "О %s", -- src\editor\menu_help.lua
["Add Watch Expression"] = "Добавить выражение", -- src\editor\editor.lua
["Add To Scratchpad"] = "Добавить в черновик", -- src\editor\editor.lua
["All files"] = "Все файлы", -- src\editor\commands.lua
["Allow external process to start debugging"] = "Разрешить внешнему процессу начать отладку", -- src\editor\menu_project.lua
["Analyze the source code"] = "Проанализировать исходный код", -- src\editor\inspect.lua
["Analyze"] = "Анализировать", -- src\editor\inspect.lua
["Auto Complete Identifiers"] = "Автодополнение идентификаторов", -- src\editor\menu_edit.lua
["Auto complete while typing"] = "Автоматически дополнять идентификаторы при наборе", -- src\editor\menu_edit.lua
["Break execution at the next executed line of code"] = "Прервать выполнение на следующей строке", -- src\editor\menu_project.lua, src\editor\gui.lua
["C&lear Output Window"] = "Очистка ок&на вывода", -- src\editor\menu_project.lua
["C&omment/Uncomment"] = "Зако&мментировать/раскомментировать", -- src\editor\menu_edit.lua
["Can't debug the script in the active editor window."] = "Невозможно отладить скрипт в текущем окне редактирования.", -- src\editor\debugger.lua
["Can't find file '%s' in the current project to activate for debugging. Update the project or open the file in the editor before debugging."] = "Файл '%s', необходимый для отладки, не найден в текущем проекте. Обновите проект или откройте файл в редакторе перед началом отладки.", -- src\editor\debugger.lua
["Can't process auto-recovery record; invalid format: %s."] = "Ошибка обработки записи автоматического восстановления; неверный формат: %s.", -- src\editor\commands.lua
["Can't run the entry point script ('%s')."] = "Ошибка выполнения стартового скрипта ('%s').", -- src\editor\debugger.lua
["Can't start debugging session due to internal error '%s'."] = "Невозможно начать отладочную сессию из-за внутренней ошибки '%s'.", -- src\editor\debugger.lua
["Can't start debugging without an opened file or with the current file not being saved ('%s')."] = "Невозможно начать отладку без открытого файла или с несохраненным текущим файлом ('%s').", -- src\editor\debugger.lua
["Cancel"] = "Отмена", -- src\editor\findreplace.lua
["Choose ..."] = "Выбрать ...", -- src\editor\menu_project.lua
["Choose a project directory"] = "Выберите папку проекта", -- src\editor\findreplace.lua, src\editor\menu_project.lua
["Clear &Dynamic Words"] = "Очистить &динамические слова", -- src\editor\menu_edit.lua
["Clear the output window before compiling or debugging"] = "Очистить окно вывода перед компиляцией или отладкой", -- src\editor\menu_project.lua
["Close &Other Pages"] = "Закрыть &остальные вкладки", -- src\editor\gui.lua
["Close A&ll Pages"] = "Закрыть &все вкладки", -- src\editor\gui.lua
["Close the current editor window"] = "Закрыть текущее окно редактирования", -- src\editor\menu_file.lua
["Co&ntinue"] = "Пр&одолжить", -- src\editor\menu_project.lua
["Col: %d"] = "Стб: %d", -- src\editor\editor.lua
["Comment or uncomment current or selected lines"] = "Закомментировать или раскомментировать текущую или выделенные строки", -- src\editor\menu_edit.lua
["Compilation error"] = "Ошибка компиляции", -- src\editor\debugger.lua, src\editor\commands.lua
["Compilation successful; %.0f%% success rate (%d/%d)."] = "Компиляция завершена успешно; процент успеха: %.0f%% (%d/%d).", -- src\editor\commands.lua
["Compile the current file"] = "Скомпилировать текущий файл", -- src\editor\menu_project.lua
["Complete &Identifier"] = "Дополнить &идентификатор", -- src\editor\menu_edit.lua
["Complete the current identifier"] = "Дополнить текущий идентификатор", -- src\editor\menu_edit.lua
["Copy selected text to clipboard"] = "Скопировать выделенный текст в буфер обмена", -- src\editor\menu_edit.lua
["Couldn't activate file '%s' for debugging; continuing without it."] = "Невозможно открыть файл '%s' для отладки; выполнение будет продолжено без него.", -- src\editor\debugger.lua
["Create an empty document"] = "Создать новый документ", -- src\editor\menu_file.lua, src\editor\gui.lua
["Cu&t"] = "Вы&резать", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Cut selected text to clipboard"] = "Вырезать выделенный текст в буфер обмена", -- src\editor\menu_edit.lua
["Debugger server started at %s:%d."] = "Сервер отладки запущен на %s:%d.", -- src\editor\debugger.lua
["Debugging session completed (%s)."] = "Отладочная сессия завершена (%s).", -- src\editor\debugger.lua
["Debugging session started in '%s'."] = "Отладочная сессия запущена в '%s'.", -- src\editor\debugger.lua
["Debugging suspended at %s:%s (couldn't activate the file)."] = "Отладка остановлена на %s:%s (невозможно открыть файл).", -- src\editor\debugger.lua
["Directory"] = "Папка", -- src\editor\findreplace.lua
["Do you want to reload it?"] = "Перезагрузить его?", -- src\editor\editor.lua
["Do you want to save the changes to '%s'?"] = "Сохранить изменения в '%s'?", -- src\editor\commands.lua
["E&xit"] = "Вы&ход", -- src\editor\menu_file.lua
["Enter Lua code and press Enter to run it."] = "Введите код на Lua и нажмите Enter для выполнения.", -- src\editor\shellbox.lua
["Enter line number"] = "Введите номер строки", -- src\editor\menu_search.lua
["Error while loading API file: %s"] = "Ошибка загрузки файла определений API: %s", -- src\editor\autocomplete.lua
["Error while loading configuration file: %s"] = "Ошибка загрузки файла конфигурации: %s", -- src\editor\style.lua
["Error while processing API file: %s"] = "Ошибка обработки файла определений API: %s", -- src\editor\autocomplete.lua
["Error while processing configuration file: %s"] = "Ошибка обработки файла конфигурации: %s", -- src\editor\style.lua
["Error"] = "Ошибка", -- src\editor\commands.lua
["Evaluate In Console"] = "Выполнить в консоли", -- src\editor\editor.lua
["Execute the current project/file and keep updating the code to see immediate results"] = "Запустить текущий проект/файл и продолжать вносить изменения в код с немедленным выводом результатов", -- src\editor\menu_project.lua
["Execute the current project/file"] = "Запустить текущий проект/файл", -- src\editor\menu_project.lua
["Execution error"] = "Ошибка выполнения", -- src\editor\debugger.lua
["Exit program"] = "Выйти из программы", -- src\editor\menu_file.lua
["Expr"] = "Выр.", -- src\editor\debugger.lua
["Expression"] = "Выражение", -- src\editor\debugger.lua
["File '%s' has been modified on disk."] = "Файл '%s' был изменен на диске.", -- src\editor\editor.lua
["File '%s' has more recent timestamp than restored '%s'; please review before saving."] = "Файл '%s' имеет более позднее время модификации, чем восстановленный '%s'; пожалуйста просмотрите его перед сохранением.", -- src\editor\commands.lua
["File '%s' no longer exists."] = "Файл '%s' больше не существует.", -- src\editor\editor.lua, src\editor\menu_file.lua
["File Type"] = "Тип файла", -- src\editor\findreplace.lua
["File history"] = "История файлов", -- src\editor\menu_file.lua
["Find &In Files"] = "Н&айти в файлах", -- src\editor\menu_search.lua
["Find &Next"] = "Найти &далее", -- src\editor\menu_search.lua
["Find &Previous"] = "Найти &ранее", -- src\editor\menu_search.lua
["Find In Files"] = "Найти в файлах", -- src\editor\findreplace.lua
["Find and replace text in files"] = "Найти и заменить текст в файлах", -- src\editor\menu_search.lua
["Find and replace text"] = "Найти и заменить текст", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find text in files"] = "Найти текст в файлах", -- src\editor\menu_search.lua
["Find text"] = "Найти текст", -- src\editor\menu_search.lua, src\editor\gui.lua
["Find the earlier text occurence"] = "Найти предыдущее вхождение текста", -- src\editor\menu_search.lua
["Find the next text occurrence"] = "Найти следующее вхождение текста", -- src\editor\menu_search.lua
["Find"] = "Найти", -- src\editor\findreplace.lua
["Fold or unfold all code folds"] = "Свернуть или развернуть все блоки кода", -- src\editor\menu_edit.lua
["Found auto-recovery record and restored saved session."] = "Найдена запись авто-восстановления и восстановлена сохраненная сессия.", -- src\editor\commands.lua
["Found"] = "Найдено", -- src\editor\findreplace.lua
["Full &Screen"] = "Во весь экр&ан", -- src\editor\menu_view.lua
["Go to a selected line"] = "Перейти к заданной строке", -- src\editor\menu_search.lua
["Goto Line"] = "Перейти к строке", -- src\editor\menu_search.lua
["INS"] = "ВСТ", -- src\editor\editor.lua
["In Files"] = "Установки файлов", -- src\editor\findreplace.lua
["Jump to a function definition..."] = "Перейти к определению функции...", -- src\editor\editor.lua
["Known Files"] = "Файлы Lua", -- src\editor\commands.lua
["Ln: %d"] = "Стр: %d", -- src\editor\editor.lua
["Local console"] = "Локальная консоль", -- src\editor\shellbox.lua, src\editor\gui.lua
["Lua &Interpreter"] = "&Интерпретатор Lua", -- src\editor\menu_project.lua
["Mapped remote request for '%s' to '%s'."] = "Удаленный запрос для '%s' отображен на '%s'.", -- src\editor\debugger.lua
["Match &case"] = "Совпадение регистра", -- src\editor\findreplace.lua
["Match &whole word"] = "Совпадение целого слова", -- src\editor\findreplace.lua
["Mixed end-of-line encodings detected."] = "Обнаружены смешанные символы конца строки.", -- src\editor\commands.lua
["OVR"] = "ЗАМ", -- src\editor\editor.lua
["Open an existing document"] = "Открыть существующий документ", -- src\editor\menu_file.lua, src\editor\gui.lua
["Open file"] = "Открыть файл", -- src\editor\commands.lua
["Options"] = "Установки", -- src\editor\findreplace.lua
["Output (running)"] = "Вывод (запущен)", -- src\editor\output.lua
["Output"] = "Вывод", -- src\editor\output.lua, src\editor\settings.lua, src\editor\gui.lua
["Paste text from the clipboard"] = "Вставить текст из буфера обмена", -- src\editor\menu_edit.lua
["Preferences"] = "Настройки", -- src\editor\menu_edit.lua
["Prepend '=' to show complex values on multiple lines."] = "Укажите '=' в начале выражения для отображения сложных значений на нескольких строках.", -- src\editor\shellbox.lua
["Press cancel to abort."] = "Нажмите Отмена для завершения.", -- src\editor\commands.lua
["Program '%s' started in '%s' (pid: %d)."] = "Программа '%s' запущена в '%s' (pid: %d).", -- src\editor\output.lua
["Program can't start because conflicting process is running as '%s'."] = "Программа не может быть запущена из-за конфликтующего процесса, выполняющегося как '%s'.", -- src\editor\output.lua
["Program completed in %.2f seconds (pid: %d)."] = "Программа завершена за %.2f секунд (pid: %d).", -- src\editor\output.lua
["Program starting as '%s'."] = "Программа запускается как '%s'.", -- src\editor\output.lua
["Program stopped (pid: %d)."] = "Программа завершена (pid: %d).", -- src\editor\debugger.lua
["Program unable to run as '%s'."] = "Программа не может быть запущена как '%s'.", -- src\editor\output.lua
["Project Directory"] = "Папка проекта", -- src\editor\menu_project.lua
["Project"] = "Проект", -- src\editor\settings.lua, src\editor\gui.lua
["Project/&FileTree Window"] = "Окно &проекта/списка файлов", -- src\editor\menu_view.lua
["R/O"] = "R/O", -- src\editor\editor.lua
["R/W"] = "R/W", -- src\editor\editor.lua
["Re&place In Files"] = "Замени&ть в файлах", -- src\editor\menu_search.lua
["Recent Files"] = "Недавние файлы", -- src\editor\menu_file.lua
["Redo last edit undone"] = "Вернуть последнее отмененное изменение", -- src\editor\menu_edit.lua
["Refused a request to start a new debugging session as there is one in progress already."] = "Отказано в запросе на запуск новой отладочной сессии, поскольку одна сессия уже выполняется.", -- src\editor\debugger.lua
["Regular &expression"] = "Регулярное выражение", -- src\editor\findreplace.lua
["Remote console"] = "Удаленная консоль", -- src\editor\shellbox.lua
["Replace &All"] = "Заменить все", -- src\editor\findreplace.lua
["Replace"] = "Заменить", -- src\editor\findreplace.lua
["Replaced an invalid UTF8 character with %s."] = "Некорректный символ UTF8 заменен на %s.", -- src\editor\commands.lua
["Replaced"] = "Заменено", -- src\editor\findreplace.lua
["Replacing"] = "Замена", -- src\editor\findreplace.lua
["Reset to default layout"] = "Установить расположение окон по умолчанию", -- src\editor\menu_view.lua
["Resets the dynamic word list for autocompletion"] = "Очистить список динамических слов для автодополнения", -- src\editor\menu_edit.lua
["Run as Scratchpad"] = "Запустить как черновик", -- src\editor\menu_project.lua
["S&top Debugging"] = "&Завершить отладку", -- src\editor\menu_project.lua
["S&top Process"] = "&Завершить процесс", -- src\editor\menu_project.lua
["Save &As..."] = "Сохранить &как...", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save A&ll"] = "Сохранить &все", -- src\editor\menu_file.lua
["Save Changes?"] = "Сохранить изменения?", -- src\editor\commands.lua
["Save all open documents"] = "Сохранить все открытые документы", -- src\editor\menu_file.lua, src\editor\gui.lua
["Save file as"] = "Сохранить файл как", -- src\editor\commands.lua
["Save file?"] = "Сохранить файл?", -- src\editor\commands.lua
["Save the current document to a file with a new name"] = "Сохранить текущий документ в файл под новым именем", -- src\editor\menu_file.lua
["Save the current document"] = "Сохранить текущий документ", -- src\editor\menu_file.lua, src\editor\gui.lua
["Saved auto-recover at %s."] = "Сохранено авто-восст в %s.", -- src\editor\commands.lua
["Scope"] = "Направление", -- src\editor\findreplace.lua
["Scratchpad error"] = "Ошибка в черновике", -- src\editor\debugger.lua
["Searching for"] = "Поиск", -- src\editor\findreplace.lua
["Select &All"] = "Выделить &все", -- src\editor\editor.lua, src\editor\menu_edit.lua
["Select all text in the editor"] = "Выделить весь текст в редакторе", -- src\editor\menu_edit.lua
["Set From Current File"] = "Установить по текущему файлу", -- src\editor\menu_project.lua
["Set project directory from current file"] = "Установить папку проекта по текущему файлу", -- src\editor\menu_project.lua, src\editor\gui.lua
["Set the interpreter to be used"] = "Установить используемый интерпретатор", -- src\editor\menu_project.lua
["Set the project directory to be used"] = "Установить используемую папку проекта", -- src\editor\menu_project.lua
["Settings: System"] = "Установки: Системы", -- src\editor\menu_edit.lua
["Settings: User"] = "Установки: Пользователя", -- src\editor\menu_edit.lua
["Show &Tooltip"] = "Показать &подсказку", -- src\editor\menu_edit.lua
["Show tooltip for current position; place cursor after opening bracket of function"] = "Показать подсказку в текущей позиции; переместите курсор в позицию после открывающей скобки функции", -- src\editor\menu_edit.lua
["Sort selected lines"] = "Отсортировать выделенные строки", -- src\editor\menu_search.lua
["Stack"] = "Стек", -- src\editor\debugger.lua
["Start &Debugging"] = "Начать &отладку", -- src\editor\menu_project.lua
["Start debugging"] = "Начать отладку", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step &Into"] = "&Войти", -- src\editor\menu_project.lua
["Step &Over"] = "&Следующая строка", -- src\editor\menu_project.lua
["Step O&ut"] = "В&ыйти", -- src\editor\menu_project.lua
["Step into"] = "Войти в функцию", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step out of the current function"] = "Выйти из текущей функции", -- src\editor\menu_project.lua, src\editor\gui.lua
["Step over"] = "Перейти на следующую строку", -- src\editor\menu_project.lua, src\editor\gui.lua
["Stop the currently running process"] = "Завершить текущий процесс", -- src\editor\menu_project.lua, src\editor\gui.lua
["Switch to or from full screen mode"] = "Переключить полноэкранный режим", -- src\editor\menu_view.lua
["Text not found."] = "Текст не найден.", -- src\editor\findreplace.lua
["The API file must be located in a subdirectory of the API directory."] = "Файл определений API должен быть расположен внутри папки API.", -- src\editor\autocomplete.lua
["Toggle Break&point"] = "&Точка останова", -- src\editor\menu_project.lua
["Toggle breakpoint"] = "Переключить точку останова", -- src\editor\menu_project.lua, src\editor\gui.lua
["Tr&ace"] = "Т&рассировка", -- src\editor\menu_project.lua
["Trace execution showing each executed line"] = "Отслеживать выполнение, показывая каждую выполненную строку", -- src\editor\menu_project.lua
["Unable to load file '%s'."] = "Ошибка загрузки файла '%s'.", -- src\editor\commands.lua
["Unable to save file '%s': %s"] = "Ошибка сохранения файла '%s': %s", -- src\editor\commands.lua
["Unable to stop program (pid: %d), code %d."] = "Невозможно завершить программу (pid: %d), код %d.", -- src\editor\debugger.lua
["Undo last edit"] = "Отменить последнее действие", -- src\editor\menu_edit.lua
["Use '%s' to see full description."] = "Используйте '%s' для полного описания.", -- src\editor\editor.lua
["Use '%s' to show line endings and '%s' to convert them."] = "Используйте '%s' для отображения символов конца строки и '%s' для их преобразования.", -- src\editor\commands.lua
["Use 'clear' to clear the shell output and the history."] = "Используйте команду 'clear' для очистки содержимого окна и истории.", -- src\editor\shellbox.lua
["Use Shift-Enter for multiline code."] = "Используйте Shift-Enter для многострочного кода.", -- src\editor\shellbox.lua
["Value"] = "Значение", -- src\editor\debugger.lua
["View the output/console window"] = "Показать окно вывода/консоли", -- src\editor\menu_view.lua
["View the project/filetree window"] = "Показать окно проекта/списка файлов", -- src\editor\menu_view.lua
["View the stack window"] = "Показать окно стека", -- src\editor\menu_view.lua, src\editor\gui.lua
["View the watch window"] = "Показать окно выражений", -- src\editor\menu_view.lua, src\editor\gui.lua
["Watch"] = "Выражение", -- src\editor\debugger.lua
["Welcome to the interactive Lua interpreter."] = "Добро пожаловать в интерактивный интерпретатор Lua.", -- src\editor\shellbox.lua
["Wrap ar&ound"] = "Продолжить сначала", -- src\editor\findreplace.lua
["You must save the program first."] = "Вы должны сначала сохранить программу.", -- src\editor\commands.lua
["on line %d"] = "в строке %d", -- src\editor\debugger.lua, src\editor\commands.lua
["traced %d instruction"] = {"выполнена %d инструкция", "выполнено %d инструкции", "выполнено %d инструкций"}, -- src\editor\debugger.lua
}

28
cfg/scheme-picker.lua Normal file
View File

@@ -0,0 +1,28 @@
--[[
1. Pick a color scheme by clicking on its name:
- [Tomorrow](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','Tomorrow')))
- [TomorrowContrast](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','TomorrowContrast')))
- [TomorrowNight](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','TomorrowNight')))
- [TomorrowNightBlue](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','TomorrowNightBlue')))
- [TomorrowNightBright](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','TomorrowNightBright')))
- [TomorrowNightEighties](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','TomorrowNightEighties')))
- [Zenburn](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','Zenburn')))
- [Monokai](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','Monokai')))
- [Molokai](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','Molokai')))
- [SolarizedDark](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','SolarizedDark')))
- [SolarizedLight](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','SolarizedLight')))
- [Notepad++](macro:shell(ApplyStyleConfig('cfg/tomorrow.lua','NotepadPlusPlus')))
- [ZeroBrane Studio](macro:shell(ide.config.styles = StylesGetDefault(); ReApplySpecAndStyles()))
2. [Apply the same scheme to Output/Console windows](macro:shell(ide.config.stylesoutshell = ide.config.styles; ReApplySpecAndStyles())).
3. Add the following code with the scheme you selected to `cfg/user.lua`.
--]]
local G = ...
styles = G.loadfile('cfg/tomorrow.lua')('TomorrowNightBlue')
stylesoutshell = styles -- also apply the same scheme to Output/Console windows
-- code example
if false and true then func(1, 2, 3) end

296
cfg/tomorrow.lua Normal file
View File

@@ -0,0 +1,296 @@
-- This is a file that sets color scheme based on Tomorrow format.
-- Copyright 2011-12 Paul Kulchenko, ZeroBrane LLC
-- Tomorrow colors from https://github.com/chriskempson/tomorrow-theme
-- Zenburn colors from https://github.com/jnurmine/Zenburn/blob/master/colors/zenburn.vim (contributed by Srdjan Marković)
-- Monokai colors from http://www.monokai.nl/blog/2006/07/15/textmate-color-theme/
-- Solarized colors from https://github.com/altercation/vim-colors-solarized
local theme = ...
local function h2d(n) return 0+('0x'..n) end
local function H(c, bg) c = c:gsub('#','')
-- since alpha is not implemented, convert RGBA to RGB
-- assuming 0 is transparent and 255 is opaque
-- based on http://stackoverflow.com/a/2645218/1442917
local bg = bg and H(bg) or {255, 255, 255}
local a = #c > 6 and h2d(c:sub(7,8))/255 or 1
local r, g, b = h2d(c:sub(1,2)), h2d(c:sub(3,4)), h2d(c:sub(5,6))
return {
math.min(255, math.floor((1-a)*bg[1]+a*r)),
math.min(255, math.floor((1-a)*bg[2]+a*g)),
math.min(255, math.floor((1-a)*bg[3]+a*b))}
end
local colors = {
Tomorrow = {
Background = H'ffffff',
CurrentLine = H'efefef',
Selection = H'd6d6d6',
Foreground = H'4d4d4c',
Comment = H'8e908c',
Red = H'c82829',
Orange = H'f5871f',
Yellow = H'eab700',
Green = H'718c00',
Aqua = H'3e999f',
Blue = H'4271ae',
Purple = H'8959a8',
},
TomorrowContrast = { -- contributed by Sergey Lerg
Background = H'f7f7f7',
CurrentLine = H'efefef',
Selection = H'd6d6d6',
Foreground = H'202020',
Comment = H'8e908c',
Red = H'4669ff', --numbers
Orange = H'f5871f',
Yellow = H'eab700',
Green = H'108010', --strings
Aqua = H'4060b0', --built in functions
Blue = H'101080', --keywords
Purple = H'a01090',
},
TomorrowNight = {
Background = H'1d1f21',
CurrentLine = H'282a2e',
Selection = H'373b41',
Foreground = H'c5c8c6',
Comment = H'969896',
Red = H'cc6666',
Orange = H'de935f',
Yellow = H'f0c674',
Green = H'b5bd68',
Aqua = H'8abeb7',
Blue = H'81a2be',
Purple = H'b294bb',
},
TomorrowNightEighties = {
Background = H'2d2d2d',
CurrentLine = H'393939',
Selection = H'515151',
Foreground = H'cccccc',
Comment = H'999999',
Red = H'f2777a',
Orange = H'f99157',
Yellow = H'ffcc66',
Green = H'99cc99',
Aqua = H'66cccc',
Blue = H'6699cc',
Purple = H'cc99cc',
},
TomorrowNightBlue = {
Background = H'002451',
CurrentLine = H'00346e',
Selection = H'003f8e',
Foreground = H'ffffff',
Comment = H'7285b7',
Red = H'ff9da4',
Orange = H'ffc58f',
Yellow = H'ffeead',
Green = H'd1f1a9',
Aqua = H'99ffff',
Blue = H'bbdaff',
Purple = H'ebbbff',
},
TomorrowNightBright = {
Background = H'000000',
CurrentLine = H'2a2a2a',
Selection = H'424242',
Foreground = H'eaeaea',
Comment = H'969896',
Red = H'd54e53',
Orange = H'e78c45',
Yellow = H'e7c547',
Green = H'b9ca4a',
Aqua = H'70c0b1',
Blue = H'7aa6da',
Purple = H'c397d8',
},
Zenburn = {
Background = H'3f3f3f',
CurrentLine = H'363636',
Selection = H'1f1f1f',
Foreground = H'dcdccc',
Comment = H'7f9f7f',
Red = H'8cd0d3',
Orange = H'dfaf8f',
Yellow = H'e3ceab',
Green = H'cc9393',
Aqua = H'dca3a3',
Blue = H'f0dfaf',
Purple = H'efef8f',
},
Monokai = {
Background = H'272822',
CurrentLine = H'2D2F29',
Selection = H'49483E',
Foreground = H'F8F8F2',
Comment = H'75715E',
Red = H'AE81FF',
Orange = H'AE81FF',
Yellow = H'F8F8F2',
Green = H'E6DB74',
Aqua = H'66D9EF',
Blue = H'F92672',
Purple = H'A6E22E',
},
Molokai = { -- based on https://github.com/tomasr/molokai/blob/master/colors/molokai.vim
Background = H'1B1D1E',
CurrentLine = H'293739',
Selection = H'49483E',
Foreground = H'F8F8F2',
Comment = H'7E8E91',
Red = H'AE81FF',
Orange = H'AE81FF',
Yellow = H'F8F8F2',
Green = H'E6DB74',
Aqua = H'66D9EF',
Blue = H'F92672',
Purple = H'A6E22E',
},
SolarizedDark = {
Background = H'042029',
CurrentLine = H'0A2933',
Selection = H'073642',
Foreground = H'839496',
Comment = H'586E75',
Red = H'D33682',
Orange = H'B58900',
Yellow = H'839496',
Green = H'2AA198',
Aqua = H'839496',
Blue = H'859900',
Purple = H'268BD2',
},
SolarizedLight = {
Background = H'FDF6E3',
CurrentLine = H'EEE8D5',
Selection = H'E0E0D0',
Foreground = H'586E75',
Comment = H'93A1A1',
Red = H'D33682',
Orange = H'B58900',
Yellow = H'586E75',
Green = H'2AA198',
Aqua = H'586E75',
Blue = H'859900',
Purple = H'268BD2',
},
NotepadPlusPlus = { -- contributed by Florian (https://github.com/SiENcE)
Background = H'FFFFFF',
CurrentLine = H'E9E2FF',
Selection = H'ADADA1',
Foreground = H'000000',
Comment = H'008000',
Red = H'FF6900',
Orange = H'00FF00',
Yellow = H'FF4E00',
Green = H'808080',
Aqua = H'260099',
Blue = H'2123FF',
Purple = H'FFFFFF',
},
}
-- add more of the specified color (keeping all in 0-255 range)
local mixer = function(c, n, more)
if not c or #c == 0 then return c end
local c = {c[1], c[2], c[3]} -- create a copy, so it can be modified
c[n] = c[n] + more
local excess = c[n] - 255
if excess > 0 then
for clr = 1, 3 do
c[clr] = n == clr and 255 or c[clr] > excess and c[clr] - excess or 0
end
end
return c
end
local C = colors[theme] or colors.Tomorrow
return {
-- wxstc.wxSTC_LUA_DEFAULT
lexerdef = {fg = C.Foreground},
-- wxstc.wxSTC_LUA_COMMENT, wxstc.wxSTC_LUA_COMMENTLINE, wxstc.wxSTC_LUA_COMMENTDOC
comment = {fg = C.Comment, fill = true},
-- wxstc.wxSTC_LUA_STRING, wxstc.wxSTC_LUA_CHARACTER, wxstc.wxSTC_LUA_LITERALSTRING
stringtxt = {fg = C.Green},
-- wxstc.wxSTC_LUA_STRINGEOL
stringeol = {fg = C.Green, fill = true},
-- wxstc.wxSTC_LUA_PREPROCESSOR
preprocessor = {fg = C.Orange},
-- wxstc.wxSTC_LUA_OPERATOR
operator = {fg = C.Aqua},
-- wxstc.wxSTC_LUA_NUMBER
number = {fg = C.Red},
-- wxstc.wxSTC_LUA_WORD, wxstc.wxSTC_LUA_WORD2-8
keywords0 = {fg = C.Blue, b = true},
keywords1 = {fg = C.Aqua, b = false},
keywords2 = {fg = C.Aqua, b = true},
keywords3 = {fg = C.Purple, b = false},
keywords4 = {fg = C.Purple, b = false},
keywords5 = {fg = C.Purple, b = false},
keywords6 = {fg = C.Purple, b = false},
keywords7 = {fg = C.Purple, b = false},
-- common (inherit fg/bg from text)
-- wxstc.wxSTC_LUA_IDENTIFIER
text = {fg = C.Foreground, bg = C.Background},
linenumber = {fg = C.Comment},
bracematch = {fg = C.Orange, b = true},
bracemiss = {fg = C.Red, b = true},
ctrlchar = {fg = C.Yellow},
indent = {fg = C.Comment},
calltip = nil,
-- common special (need custom fg & bg)
calltipbg = nil,
sel = {bg = C.Selection},
caret = {fg = C.Foreground},
caretlinebg = {bg = C.CurrentLine},
fold = {fg = C.Comment, bg = C.Background, sel = mixer(C.Comment, 1, 96)},
whitespace = {fg = C.Comment, bg = C.Background},
indicator = {
fncall = {fg = C.Purple, st = wxstc.wxSTC_INDIC_ROUNDBOX},
--[[ other possible values are:
wxSTC_INDIC_PLAIN Single-line underline
wxSTC_INDIC_SQUIGGLE Squiggly underline
wxSTC_INDIC_TT Line of small T-shapes
wxSTC_INDIC_DIAGONAL Diagonal hatching
wxSTC_INDIC_STRIKE Strike-out
wxSTC_INDIC_BOX Box
wxSTC_INDIC_ROUNDBOX Rounded Box
--]]
-- these indicators have all different default styles
varlocal = {fg = C.Foreground},
varglobal = {fg = C.Foreground},
varmasked = {fg = C.Foreground},
varmasking = {fg = C.Foreground},
},
-- markup
['['] = {hs = mixer(C.Comment, 3, 64)},
['|'] = {fg = mixer(mixer(C.Comment, 1, 64), 3, 64)},
-- markers
marker = {
message = {bg = C.Selection},
output = {bg = C.CurrentLine},
prompt = {fg = C.Foreground, bg = C.Background},
error = {bg = mixer(C.Background, 1, 32)},
},
}
--[[
---- Solarized license ----
Copyright (c) 2011 Ethan Schoonover
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--]]

142
cfg/user-sample.lua Normal file
View File

@@ -0,0 +1,142 @@
--[[-- This file shows examples of settings you can adjust.
Configuration files with preferences are loaded in the following order:
1. cfg/user.lua (system-wide configuration)
2. HOME/.zbstudio/user.lua (per-user configuration)
3. -cfg <lua code fragment|filename> (command line configuration)
See [configuration](http://studio.zerobrane.com/doc-configuration.html) page for information about location of configuration files.
--]]--
-- an example of how loaded configuration can be modified from this file
local G = ... -- this now points to the global environment in the script
local luaspec = G.ide.specs['lua']
luaspec.exts[#luaspec.exts+1] = "luaz"
luaspec.keywords[1] = luaspec.keywords[1] .. ' foo'
-- to modify a key mapping; see the full list of IDs in src/editor/keymap.lua
local G = ...
keymap[G.ID_STARTDEBUG] = "Ctrl-Shift-D"
-- to change font size to 12
editor.fontsize = 12 -- this is mapped to ide.config.editor.fontsize
editor.fontname = "Courier New"
filehistorylength = 20 -- this is mapped to ide.config.filehistorylength
-- to specify full path to love2d *executable*; this is only needed
-- if the game folder and the executable are NOT in the same folder.
path.love2d = 'd:/lua/love/love'
-- to specify full path to moai *executable* if it's not in one of PATH folders
path.moai = 'd:/lua/moai/moai'
-- Moai config.lua file is searched in the following places: (1) MOAI_CONFIG,
-- (2) project directory (if set) or folder with the current file,
-- (3) folder with the moai executable.
-- to specify full path to gideros *executable* if it's not in one of PATH folders
path.gideros = 'd:/Program Files/Gideros/GiderosPlayer.exe'
-- to specify full path to corona *executable* if it's not in one of PATH folders
path.corona = 'd:/path/to/Corona SDK/Corona Simulator.exe'
-- to specify full path to lua interpreter if you need to use your own version
path.lua = 'd:/lua/lua'
-- to specify full path to GSL-shell *executable* if it's not in one of PATH folders
path.gslshell = [[D:\Lua\gsl-shell\gsl-shell.exe]]
-- to provide output filter for those engines that support redirecting
-- of "print" output to the IDE (like Corona SDK or Gideros)
debugger.outputfilter = function(m) return #m < 124 and m or m:sub(1,120).."...\n" end
-- to fix an issue with 0d0d0a line endings in MOAI examples,
-- which may negatively affect breakpoints during debugging
editor.iofilter = "0d0d0aFix"
-- to have 4 spaces when TAB is used in the editor
editor.tabwidth = 4
-- to have TABs stored in the file (to allow mixing tabs and spaces)
editor.usetabs = true
-- to disable wrapping of long lines in the editor
editor.usewrap = false
-- to turn dynamic words on and to start suggestions after 4 characters
acandtip.nodynwords = false
acandtip.startat = 4
-- to automatically open files requested during debugging
editor.autoactivate = true
-- to specify a list of MOAI entrypoints
moai = { entrypoints = { "main.lua", "source/main.lua" } }
-- to specify language to use in the IDE (requires a file in cfg/i18n folder)
language = "ru"
-- to change background color (or other colors in the IDE);
-- see cfg/tomorrow.lua for example/details on what other colors to change
styles.text = {bg = {240,240,220}}
-- to change the default color scheme; check tomorrow.lua for the list
-- of supported schemes or use cfg/scheme-picker.lua to pick a scheme.
local G = ...
styles = G.loadfile('cfg/tomorrow.lua')('Tomorrow')
-- also apply the same scheme to Output and Console windows
stylesoutshell = styles
-- to change markers used in console and output windows
styles.marker = styles.marker or {}
styles.marker.message = {ch = wxstc.wxSTC_MARK_ARROWS, {0, 0, 0}, {240, 240, 240}}
styles.marker.output = {ch = wxstc.wxSTC_MARK_BACKGROUND, {0, 0, 0}, {240, 240, 240}}
styles.marker.prompt = {ch = wxstc.wxSTC_MARK_CHARACTER+('>'):byte(), {0, 0, 0}, {240, 240, 240}}
stylesoutshell = styles
-- to disable indicators (underlining) on function calls
styles.indicator.fncall = nil
-- to change the color of the indicator used for function calls
styles.indicator.fncall.fg = {240,0,0}
-- to change the type of the indicator used for function calls
styles.indicator.fncall.st = wxstc.wxSTC_INDIC_PLAIN
--[[ other possible values are:
wxSTC_INDIC_PLAIN Single-line underline
wxSTC_INDIC_SQUIGGLE Squiggly underline
wxSTC_INDIC_TT Line of small T-shapes
wxSTC_INDIC_DIAGONAL Diagonal hatching
wxSTC_INDIC_STRIKE Strike-out
wxSTC_INDIC_BOX Box
wxSTC_INDIC_ROUNDBOX Rounded Box
--]]
-- to enable additional spec files (like spec/cpp.lua)
load.specs(function(file) return file:find('spec[/\\]cpp%.lua$') end)
-- to specify a default EOL encoding to be used for new files:
-- `wxstc.wxSTC_EOL_CRLF` or `wxstc.wxSTC_EOL_LF`;
-- `nil` means OS default: CRLF on Windows and LF on Linux/Unix and OSX.
-- (OSX had CRLF as a default until v0.36, which fixed it).
editor.defaulteol = wxstc.wxSTC_EOL_LF
-- to turn off checking for mixed end-of-line encodings in loaded files
editor.checkeol = false
-- to force execution to continue immediately after starting debugging;
-- set to `false` to disable (the interpreter will stop on the first line or
-- when debugging starts); some interpreters may use `true` or `false`
-- by default, but can be still reconfigured with this setting.
debugger.runonstart = true
-- to set compact fold that doesn't include empty lines after a block
editor.foldcompact = true
-- to disable zoom with mouse wheel as it may be too sensitive on OSX
editor.nomousezoom = true
-- to specify a skin for Corona simulator (OSX only);
-- you can also change it between runs from Local Console by executing
-- `ide.config.corona = {skin = 'iPad'}`
corona = { skin = "iPad" }

73
cfg/user-snippet.lua Normal file
View File

@@ -0,0 +1,73 @@
--[[-- Copy snippets from this file to `user.lua` --]]--
--[[ Add a shortcut to generate `~` if your keyboard doesn't have one
local G = ... -- this now points to the global environment in the script
local ide, wx, TR, ID = G.ide, G.wx, G.TR, G.ID
local postinit = ide.app.postinit
ide.app.postinit = function()
if postinit then postinit() end
local menu = ide.frame.menuBar:GetMenu(ide.frame.menuBar:FindMenu(TR("&Edit")))
menu:Append(ID "tilde", "Tilde\tAlt-'")
ide.frame:Connect(ID "tilde", wx.wxEVT_COMMAND_MENU_SELECTED,
function () GetEditor():AddText("~") end)
end
--]]
--[[ Add `Evaluate in Console` option to the Edit menu
local G = ... -- this now points to the global environment in the script
local ide, wx, TR, ID = G.ide, G.wx, G.TR, G.ID
local postinit = ide.app.postinit
ide.app.postinit = function()
if postinit then postinit() end
local menu = ide.frame.menuBar:GetMenu(ide.frame.menuBar:FindMenu(TR("&Edit")))
menu:Append(ID "eval", "Evaluate in Console\tCtrl-E")
ide.frame:Connect(ID "eval", wx.wxEVT_COMMAND_MENU_SELECTED,
function () ShellExecuteCode(GetEditor():GetSelectedText()) end)
ide.frame:Connect(ID "eval", wx.wxEVT_UPDATE_UI,
function (event) event:Enable(GetEditor() and #GetEditor():GetSelectedText() > 0) end)
end
--]]
--[[ Add `Zoom` menu to increase/decrease/reset font in the editor
local G = ... -- this now points to the global environment in the script
local ide, wx, TR, ID = G.ide, G.wx, G.TR, G.ID
local postinit = ide.app.postinit
ide.app.postinit = function()
if postinit then postinit() end
local zoomMenu = wx.wxMenu{
{ID "zoomreset", "Zoom to 100%\tCtrl-0"},
{ID "zoomin", "Zoom In\tCtrl-+"},
{ID "zoomout", "Zoom Out\tCtrl--"},
}
local menu = ide.frame.menuBar:GetMenu(ide.frame.menuBar:FindMenu(TR("&View")))
menu:Append(ID "zoom", "Zoom", zoomMenu)
ide.frame:Connect(ID "zoomreset", wx.wxEVT_COMMAND_MENU_SELECTED,
function () GetEditor():SetZoom(1) end)
ide.frame:Connect(ID "zoomin", wx.wxEVT_COMMAND_MENU_SELECTED,
function () GetEditor():SetZoom(GetEditor():GetZoom()+1) end)
ide.frame:Connect(ID "zoomout", wx.wxEVT_COMMAND_MENU_SELECTED,
function () GetEditor():SetZoom(GetEditor():GetZoom()-1) end)
-- only enable if there is an editor
for _, m in G.ipairs({"zoomreset", "zoomin", "zoomout"}) do
ide.frame:Connect(ID(m), wx.wxEVT_UPDATE_UI,
function (event) event:Enable(GetEditor() ~= nil) end)
end
end
--]]
--[[ An example of how individual keywords can be styled
local G = ... -- this now points to the global environment in the script
local luaspec = G.ide.specs['lua']
local num = #luaspec.keywords
-- take a new slot in the list of keywords (starting from 1)
luaspec.keywords[num+1] = 'return'
-- remove 'return' from the list of "regular" keywords
luaspec.keywords[1] = luaspec.keywords[1]:gsub(' return', '')
-- assign new style to the added slot (starting from 0)
styles["keywords"..num] = {fg = {240, 0, 0}, b = true}
--]]

View File

@@ -1,9 +0,0 @@
--[[--
estrela loads configs in the following order
1. <application>\config.lua
2. cfg\user.lua
3. -cfg commandline strings
--]]--

74
cfg/xcode-keys.lua Normal file
View File

@@ -0,0 +1,74 @@
-- Copy the content of this file to user.lua;
-- see the [configuration](http://studio.zerobrane.com/doc-configuration.html) page for details.
local G = ...
-- Alt-Shift-Cmd-X (Alt maps to Option, Ctrl maps to Command)
-- The mapping is largely based on [Xcode Keyboard Shortcuts](http://developer.apple.com/library/mac/#documentation/IDEs/Conceptual/xcode_help-command_shortcuts/MenuCommands/MenuCommands014.html).
local xcode = {
-- File menu
[G.ID_NEW] = "Ctrl-N",
[G.ID_OPEN] = "Ctrl-O",
[G.ID_CLOSE] = "Ctrl-W",
[G.ID_SAVE] = "Ctrl-S",
[G.ID_SAVEAS] = "Shift-Ctrl-S",
[G.ID_SAVEALL] = "Alt-Ctrl-S",
[G.ID_RECENTFILES] = "",
[G.ID_EXIT] = "Ctrl-Q",
-- Edit menu
[G.ID_CUT] = "Ctrl-X",
[G.ID_COPY] = "Ctrl-C",
[G.ID_PASTE] = "Ctrl-V",
[G.ID_SELECTALL] = "Ctrl-A",
[G.ID_UNDO] = "Ctrl-Z",
[G.ID_REDO] = "Shift-Ctrl-Z",
[G.ID_SHOWTOOLTIP] = "Ctrl-T",
[G.ID_AUTOCOMPLETE] = "Ctrl-K",
[G.ID_AUTOCOMPLETEENABLE] = "",
[G.ID_COMMENT] = "Ctrl-U",
[G.ID_FOLD] = "F12",
[G.ID_CLEARDYNAMICWORDS] = "",
-- Search menu
[G.ID_FIND] = "Ctrl-F",
[G.ID_FINDNEXT] = "Ctrl-G",
[G.ID_FINDPREV] = "Shift-Ctrl-G",
[G.ID_REPLACE] = "Alt-Ctrl-F",
[G.ID_FINDINFILES] = "Shift-Ctrl-F",
[G.ID_REPLACEINFILES] = "Alt-Shift-Ctrl-F",
[G.ID_GOTOLINE] = "",
[G.ID_SORT] = "",
-- View menu
[G.ID_VIEWFILETREE] = "Shift-Ctrl-P",
[G.ID_VIEWOUTPUT] = "Shift-Ctrl-O",
[G.ID_VIEWWATCHWINDOW] = "Shift-Ctrl-W",
[G.ID_VIEWCALLSTACK] = "Shift-Ctrl-S",
[G.ID_VIEWDEFAULTLAYOUT] = "",
[G.ID_VIEWFULLSCREEN] = "Shift-Ctrl-A",
-- Project menu
[G.ID_RUN] = "Ctrl-R",
[G.ID_RUNNOW] = "Shift-Ctrl-R",
[G.ID_COMPILE] = "Ctrl-B",
[G.ID_ANALYZE] = "Shift-Ctrl-B",
[G.ID_STARTDEBUG] = "F5",
[G.ID_ATTACHDEBUG] = "",
[G.ID_STOPDEBUG] = "Ctrl-.",
[G.ID_STEP] = "F7",
[G.ID_STEPOVER] = "F6",
[G.ID_STEPOUT] = "F8",
[G.ID_TRACE] = "",
[G.ID_BREAK] = "Ctrl-Y",
[G.ID_TOGGLEBREAKPOINT] = "Ctrl-\\",
[G.ID_CLEAROUTPUT] = "",
[G.ID_INTERPRETER] = "",
[G.ID_PROJECTDIR] = "",
-- Help menu
[G.ID_ABOUT] = "F1",
-- Watch window menu items
[G.ID_ADDWATCH] = "Ins",
[G.ID_EDITWATCH] = "F2",
[G.ID_DELETEWATCH] = "Del",
-- Editor popup menu items
[G.ID_QUICKADDWATCH] = "",
[G.ID_QUICKEVAL] = "",
}
for id, key in G.pairs(xcode) do keymap[id] = key end

Binary file not shown.

View File

@@ -1,29 +0,0 @@
local ide = ide
local app = {
loadfilters = {
tools = function(file) return true end,
specs = function(file) return true end,
interpreters = function(file) return true end,
},
postinit = function ()
dofile("estrela/menu_help.lua")
local icon = wx.wxIcon()
icon:LoadFile("estrela/res/estrela.ico",wx.wxBITMAP_TYPE_ICO)
ide.frame:SetIcon(icon)
end,
stringtable = {
editor = "Estrela Editor",
about = "About Estrela Editor",
editormessage = "Estrela Editor Message",
statuswelcome = "Welcome to Estrela Editor",
settingsapp = "EstrelaEditor",
settingsvendor = "LuxiniaDev",
},
}
return app

View File

@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<CodeBlocks_project_file>
<FileVersion major="1" minor="6" />
<Project>
<Option title="starter" />
<Option pch_mode="2" />
<Option compiler="gcc" />
<Build>
<Target title="Debug">
<Option output="..\..\estrela" prefix_auto="1" extension_auto="1" />
<Option working_dir="..\..\" />
<Option object_output="obj\Debug\" />
<Option type="1" />
<Option compiler="gcc" />
<Option use_console_runner="0" />
<Compiler>
<Add option="-g" />
</Compiler>
</Target>
<Target title="Release">
<Option output="..\..\estrela" prefix_auto="1" extension_auto="1" />
<Option working_dir="..\..\" />
<Option object_output="obj\Release\" />
<Option type="0" />
<Option compiler="gcc" />
<Compiler>
<Add option="-O2" />
</Compiler>
<Linker>
<Add option="-s" />
</Linker>
</Target>
</Build>
<Compiler>
<Add option="-Wall" />
<Add option="-D__MINGW__" />
</Compiler>
<Linker>
<Add library="kernel32" />
</Linker>
<Unit filename="..\res\estrela.ico" />
<Unit filename="..\res\estrela.rc">
<Option compilerVar="WINDRES" />
</Unit>
<Unit filename="..\win32_starter.c">
<Option compilerVar="CC" />
</Unit>
<Extensions>
<code_completion />
<envvars />
<debugger />
</Extensions>
</Project>
</CodeBlocks_project_file>

View File

@@ -1,212 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="estrela_editor"
ProjectGUID="{065C5DC6-EAE4-4A57-9069-39810D816C41}"
RootNamespace="luxinia_glfw"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
AdditionalIncludeDirectories=""
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
OutputFile="../../estrela.exe"
LinkIncremental="2"
AdditionalLibraryDirectories=""
IgnoreDefaultLibraryNames="libc"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetPath).pdb"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="1"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;"
RuntimeLibrary="0"
EnableEnhancedInstructionSet="0"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
AdditionalIncludeDirectories=""
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
OutputFile="../../estrela.exe"
LinkIncremental="1"
AdditionalLibraryDirectories=""
GenerateManifest="true"
IgnoreAllDefaultLibraries="false"
IgnoreDefaultLibraryNames=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetPath).pdb"
SubSystem="2"
OptimizeReferences="0"
EnableCOMDATFolding="0"
RandomizedBaseAddress="0"
DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Sources"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath="..\win32_starter.c"
>
</File>
</Filter>
<Filter
Name="Ressourcendateien"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\res\estrela.rc"
>
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Some files were not shown because too many files have changed in this diff Show More