Code Monkey home page Code Monkey logo

luaide's Issues

渴望增加自定义api的功能

因为不同平台的需求,我们项目是unity的,有一些代码api都是由C# 提供的,原生api是由unity提供的库提供的,还有一些第三方dll库。如果可以自定义api提示,我们就可以直接自己生成这些api出来,在写代码提示的不会那么累 而且还可以做代码检查 是否使用规范 。

语法检查问题

local test1 = 0.2
if 0.1>test1 then
end
if test>0.2 and 0.1>test1 then
end

0.1会报红

local test1 = 10010010
local test2 = test1/100%10

100会报红

mac下面客户端的cocos的c++ log没法输出

在mac下面c++的log没法输出,在cocos中表现为CCLog的输出没有在vscode的调试控制台输出。但是oc的log也就是NSLog倒是可以输出。我尝试了用下面代码,是可以输出log的
var callfile = require('child_process');
var h = callfile.spawn("/Users/nervecell/workspaces/game.app/Contents/MacOS/game");
h.stdout.on('data', function (s) {
console.log(s.toString());
});
h.stdout.on('end', function () {
console.log('ls done');
});

代码格式化时字符串中有‘\’时仍然会有问题

1:采用[[ string ]]定义字符串时,
2:‘“’。 和”‘“ 会有问题:
3:” \a \x \b“ 之类的一些字符
以上情况格式化时都会出现‘\’数量变化的情况,

在我4月9号提交的pull request中针对解决了上述问题

自动补全功能有问题

RT
当前自动补全只能提示本文件,而VSCODE自带的自动补全提示是整个项目,期待更新。

调试出错

触发断点后,点击F5继续执行,此后的print都不会再有输出,如果按的是f10,则会有继续的输出.

格式化代码bug

右键点击格式化代码时会将转义字符的反斜杠 \ 删掉
格式化之代码前字符串 : local str = ""%s""
格式化代码之后变成 : local str = ""%s""

格式化代码

建议格式化的时候 不要把空行直接格式化掉
程序员都是强迫症患者 可以把多余的空行格式化成一行
再次感谢luaide

错误提示bug

BUG1:

for i,v in pairs(self.tempTeam) do
       g_DataPool:GetArenaData().defLayout[i] = v
end

这样v有红线

for i,v in pairs(self.tempTeam) do
       g_DataPool:GetArenaData().defLayout = v
end

这样就没有

BUG2
math.floor(x/60%z) 这样会有错误提示
math.floor(x/60 %z) 多个空格, 这样就不会有

删除断点功能失效, 获取断点信息时, 盘符大小写不匹配导致不能正确删除断点.

windows cocos2dx 3.x + lua 工程
luadebug文件: luadebugJit.lua

获取断点信息时, 盘符大小写不匹配导致不能正确删除断点.

输出信息:

**第一次添加断点**
dump from: [string ".\luadebugJit.lua"]:841: in function 'debugger_setBreak'	
      断点信息
- "datas" = {	
-     1 = {	
-         "fileName"   = "LogonScene.lua"	
-         "lines" = {	
-             1 = 261	
-         }	
-         "serverPath" = "d:/RYclient/client/client/src/plaza/views/LogonScene.lua"<===小写盘符
-     }	
- }	
      添加断点结果
dump from: [string ".\luadebugJit.lua"]:869: in function 'debugger_setBreak'	
- "breakInfos" = {	
-     "LogonScene.lua" = {	
-         "d:/RYclient/client/client/src/plaza/views/LogonScene.lua" = {	<===小写盘符
-             "lines" = {	
-                 261 = true	
-             }	
-             "pathNames" = {	
-                 1 = "d:"	
-                 2 = "RYclient"	
-                 3 = "client"	
-                 4 = "client"	
-                 5 = "src"	
-                 6 = "plaza"	
-                 7 = "views"	
-                 8 = "LogonScene.lua"	
-             }	
-         }	
-     }	
- }	
isHook=>true	

**在断点断下后 删除断点**
      断点信息
dump from: [string ".\luadebugJit.lua"]:841: in function 'debugger_setBreak'	
- "datas" = {	
-     1 = {	
-         "fileName"   = "LogonScene.lua"	
-         "lines" = {	
-         }	
-         "serverPath" = "D:/RYclient/client/client/src/plaza/views/LogonScene.lua"<===大写盘符	
-     }	
- }	
      删除断点结果
dump from: [string ".\luadebugJit.lua"]:869: in function 'debugger_setBreak'	
- "breakInfos" = {	
-     "LogonScene.lua" = {	
-         "d:/RYclient/client/client/src/plaza/views/LogonScene.lua" = {	<===不能匹配小写盘符
-             "lines" = {	
-                 261 = true	
-             }	
-             "pathNames" = {	
-                 1 = "d:"	
-                 2 = "RYclient"	
-                 3 = "client"	
-                 4 = "client"	
-                 5 = "src"	
-                 6 = "plaza"	
-                 7 = "views"	
-                 8 = "LogonScene.lua"	
-             }	
-         }	
-     }	
- }	
isHook=>true	

**再次添加断点**
      断点信息
dump from: [string ".\luadebugJit.lua"]:841: in function 'debugger_setBreak'	
- "datas" = {	
-     1 = {	
-         "fileName"   = "LogonScene.lua"	
-         "lines" = {	
-             1 = 261	
-         }	
-         "serverPath" = "D:/RYclient/client/client/src/plaza/views/LogonScene.lua"<==大写盘符	
-     }	
- }	
      添加断点结果
dump from: [string ".\luadebugJit.lua"]:869: in function 'debugger_setBreak'	
- "breakInfos" = {	
-     "LogonScene.lua" = {	
-         "D:/RYclient/client/client/src/plaza/views/LogonScene.lua" = {	<============
-             "lines" = {	
-                 261 = true	
-             }	
-             "pathNames" = {	
-                 1 = "D:"	
-                 2 = "RYclient"	
-                 3 = "client"	
-                 4 = "client"	
-                 5 = "src"	
-                 6 = "plaza"	
-                 7 = "views"	
-                 8 = "LogonScene.lua"	
-             }	
-         }	
-         "d:/RYclient/client/client/src/plaza/views/LogonScene.lua" = {	<============
-             "lines" = {	
-                 261 = true	
-             }	
-             "pathNames" = {	
-                 1 = "d:"	
-                 2 = "RYclient"	
-                 3 = "client"	
-                 4 = "client"	
-                 5 = "src"	
-                 6 = "plaza"	
-                 7 = "views"	
-                 8 = "LogonScene.lua"	
-             }	
-         }	
-     }	
- }	
isHook=>true	

关键字颜色 and or

if ets and type(ets) == str_table then --希望在此处的and加个颜色
	for k, v in pairs(ets) do
        
	end
end

支持动态变量的智能提示

local data = require "data"

function get_data(id)

  return data

end

local temp_data = get_data(1)

temp_data.init() --这里就没法提示了

lua 关键字的提示优先级别高点

一、像if for 这样的,现在在整个队列的最下面。
二、关键字结束需要按ese才能关闭提示,像end 后面会有一堆提示 end
endaa
endbbb 这样子,

自动提示问题

file1

local test1 = {}
function test1:func1()
end
return test1

file2使用
mgr.Test1 = require("test1")
mgr.Test1:fun

mgr.Test1:将无法提示

lua5.3 非符号提示非法

~0xff 例如这样的写法,十六进制数据前面的非符号会是红色的。不知道这个VS Code问题还是LuaIDE问题?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.