小编Ash*_*vis的帖子

是否可以从 Monaco Editor 中删除某些错误?

我正在向我的应用程序Data-Forge Notebook添加 TypeScript 支持。

它是一个用于 JavaScript 的笔记本式应用程序。当我在代码单元格中使用 'await' 关键字时,Monaco 将其标记为错误,如下面的屏幕截图所示:

来自摩纳哥编辑器的错误

当代码被执行或导出时,整个代码块都被包裹在一个async函数中,这样当发生这种情况时就不会出现错误。

我需要能够自定义 Monaco 以消除此错误,因为在这种情况下它没有意义。

使用 Monaco 编辑器时是否可以删除或修改这样的错误?

monaco-editor

5
推荐指数
2
解决办法
762
查看次数

有没有办法以编程方式确定在C/C++中Lua函数需要多少个参数?

有没有办法确定Lua函数在从C/C++代码调用它之前需要多少参数?

我看了看lua_Debuglua_getinfo,但他们似乎并没有提供我所需要的.

看起来有点像我反对Lua的精神,但我真的想要证明我在Lua和C++之间的界面.当从Lua代码调用C++函数时,接口验证Lua提供了正确数量的参数,并且每个参数的类型都是正确的.如果发现参数a lua_error发出问题.

我想反过来检查类似的错误.当C++调用Lua函数时,它至少应该检查Lua函数是否没有声明更多参数.

c++ lua

3
推荐指数
2
解决办法
1587
查看次数

当子控件具有输入焦点时,为什么键盘输入不适用于ScrollViewer?

ScrollViewer当子控件具有输入焦点时,为什么键盘输入不起作用?

这就是场景.WPF窗口打开.它将焦点设置为嵌入在控件中的控件ScrollViewer.

我上下左右键.在ScrollViewer似乎没有处理关键事件,任何人都知道为什么吗?

这是最简单的例子:

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300"
    FocusManager.FocusedElement="{Binding ElementName=control}"
    >
    <Grid>
        <ScrollViewer
            HorizontalScrollBarVisibility="Auto"
           >
            <ItemsControl
                x:Name="control"
                Width="1000"
                Height="1000"
                />
        </ScrollViewer>        
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

当您启动包含此窗口的应用程序时,"控件"似乎具有我想要的焦点.按键似乎导致冒泡的关键事件到达ScrollViewer(我使用WPF Snoop检查了这一点).我无法弄清楚为什么它不响应输入.

c# wpf xaml

2
推荐指数
1
解决办法
4724
查看次数

有没有办法使用LINQ从文本中删除额外的换行符?

我刚刚编写了一些代码来从一些文本中删除额外的换行符.每组连续的换行符都会折叠成一个换行符.

这似乎是使用LINQ简化代码的好地方.虽然我对LINQ很新,所以不知道如何做到这一点.谁有人建议解决方案?

这是我的原始代码:

/// <summary>
/// Collapse extra newlines.
/// </summary>
private string CollapseNewlines(string script)
{
    // Remove extra newlines.
    var lines = script.Split('\n');

    var output = new StringBuilder();

    bool prevLineWasEmpty = false;

    foreach (var line in lines)
    {
        if (line.Trim() == string.Empty)
        {
            if (prevLineWasEmpty)
            {
                continue; // Ignore this line.
            }

            prevLineWasEmpty = true;
        }
        else
        {
            prevLineWasEmpty = false;
        }

        output.Append(line);
        output.Append("\n");
    }

    return output.ToString();
}
Run Code Online (Sandbox Code Playgroud)

c# linq

2
推荐指数
2
解决办法
1334
查看次数

标签 统计

c# ×2

c++ ×1

linq ×1

lua ×1

monaco-editor ×1

wpf ×1

xaml ×1