小编Joh*_*sen的帖子

从鼠标坐标获取行号和列号

我在浏览器文本编辑器中使用 Ace。

editor.on("mousemove", function (e)
{
  // use clientX clientY to get row and column locations
});
Run Code Online (Sandbox Code Playgroud)

从 clientX clientY 坐标,我需要编辑器上的实际行号和列号。

查看 Ace api 但找不到任何相关内容。

你知道我有什么办法可以做到这一点吗?

谢谢

javascript mouse cursor ace-editor

5
推荐指数
1
解决办法
1210
查看次数

如何让Ace不再寻找当前目录中的主题和模式?

我一直在研究使用Cloud9提供的Ace浏览器代码编辑器的MVC Web应用程序.ace.js脚本和设置ace编辑器的脚本都在我的BundleConfig上的ScriptBundle中.捆绑正在装载完美.在我的本地服务器上,在web.config中将debug设置为true,脚本运行得非常好.但是,在web.config中启动调试设置为false的实时服务器后,出现了几个错误.

在修复了一些小故障之后,还有两个错误,我似乎无法理解其中的原因.这两个错误看起来非常相似,因为它们是Ace的chrome主题和Ace的HTML模式脚本都没有找到404错误.在设置编辑器的脚本中,它们的调用方式如下:

editor.setTheme("ace/theme/chrome");
editor.getSession().setMode("ace/mode/html");
Run Code Online (Sandbox Code Playgroud)

在我的本地计算机上,将调试设置为true,主题和模式设置得非常好,一切都按计划运行.但是,正如我所说,在调试设置为false的实时服务器上,因此缩小了ScriptBundles中的所有脚本,我得到了主题和模式的404错误.

当我在谷歌浏览器中启动JavaScript控制台时,我被告知有两个404错误.有关404错误的有趣之处在于它们链接到我正在查看的页面的当前目录,然后分别是"theme-chrome.js"和"mode-html.js".他们从来没有在那个目录中,但仍然没有.

所以我的问题是为什么脚本在缩小后开始在当前目录中查找其文件?我该怎么做才能解决这个问题,以便我可以将它们缩小,捆绑在一起,让它们工作?或者有办法吗?

提前感谢您的帮助.

javascript c# asp.net-mvc bundle ace-editor

5
推荐指数
1
解决办法
1802
查看次数

使用SystemJS将ng2-ace库集成到新创建的angular-cli(angular2)项目中

我刚刚使用最新的angular-cli 工具创建了一个angular2项目.我现在想要使用ng2-ace库来启动和运行ace编辑器.我想使用SystemJS作为模块加载器以干净的方式进行.

我做到了

npm install --save ng2-ace
Run Code Online (Sandbox Code Playgroud)

然后我将以下两行添加angular-cli-builds.jsvendorNpmFiles数组中

'ng2-ace/index.js',
'brace/**/*.js
Run Code Online (Sandbox Code Playgroud)

然后我添加了以下内容 system-config.ts

 const map: any = {
   'ng2-ace': 'vendor/ng2-ace',
   'brace': 'vendor/brace'
 };

 /** User packages configuration. */
 const packages: any = {
   'brace': {
     format: 'cjs',
     defaultExtension: 'js',
     main: 'index.js'
   },
   'ng2-ace': {
     format: 'cjs',
     defaultExtension: 'js',
     main: 'index.js'
   }
 };
Run Code Online (Sandbox Code Playgroud)

现在我尝试从组件导入指令

import { AceEditorDirective } from 'ng2-ace';
Run Code Online (Sandbox Code Playgroud)

这使编译器ng serve中止以下错误:

The Broccoli Plugin: [BroccoliTypeScriptCompiler] failed with:
Error: Typescript found the following …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs systemjs angular

5
推荐指数
1
解决办法
1030
查看次数

Ace编辑器获取当前光标行和列

我正在使用Ace编辑器.在Javascript中,(不是jQuery),我如何返回当前光标的行和列位置?

javascript cursor ace-editor

5
推荐指数
1
解决办法
4151
查看次数

带有 webpack 的 ACE 编辑器

如何在 webpack 中使用 ACE 编辑器?ACE 编辑器可以动态加载语法高亮或代码片段等扩展。但是,webpack 尝试静态加载脚本。

javascript ace-editor webpack

5
推荐指数
1
解决办法
2967
查看次数

未捕获的 ReferenceError:ace 未在 angular 4 中定义

当我使用命令时,我有一个像这张图片一样的错误 ng serve --prod 像下面

当我在本地运行它时,npm start它运行良好!

在生产中运行时,它说“未定义王牌”?

代码表.component.html

<div class="codeEditor" ace-editor [(text)]="text" [mode]="languageMode" [theme]="editorTheme" [options]="options" [readOnly]="false"
    [autoUpdateContent]="true" [durationBeforeCallback]="1000" (textChanged)="codeChange($event)"></div>
Run Code Online (Sandbox Code Playgroud)

代码表.component.ts

import { Component, OnInit, ViewChild } from '@angular/core';
// import { AceEditorDirective } from 'ng2-ace';
// import { AceEditorDirective } from 'ng2-ace-editor';
import 'brace/theme/cobalt';
import 'brace/mode/c_cpp';
import 'brace/mode/java';
import 'brace/mode/python';
import 'brace/mode/ruby';
import { CompilerService } from '../compiler.service';
@Component({
  selector: 'app-code-table',
  templateUrl: './code-table.component.html',
  styleUrls: ['./code-table.component.css']
})
export class CodeTableComponent implements OnInit {
  text: string = "";
  loading: boolean …
Run Code Online (Sandbox Code Playgroud)

components module ace-editor angular

5
推荐指数
1
解决办法
2881
查看次数

错误:函数组件不能有字符串引用。我们建议使用 useRef() 代替

我在我的 React 应用程序中使用 ace Editor 并收到上述错误。我想通过提交按钮触发的函数调用将我在 React 应用程序中使用的 Ace Editor IDE 的内容放入其中。

<AceEditor
ref='aceEditor'
height='100%'
width='100%'
mode={ideLanguage}
theme={ideTheme}
fontSize={ideFontSize}
showGutter={true}
showPrintMargin={false}/>
Run Code Online (Sandbox Code Playgroud)

这是按钮

<Button
type='button'
buttonStyle='btn--primary--normal'
buttonSize='btn--medium'
onClick={SendCode}
>SUBMIT</Button>
Run Code Online (Sandbox Code Playgroud)

这就是函数

const SendCode = () => {
  console.log(this.refs.aceEditor.editor.getValue());
};
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么??

javascript web-deployment ace-editor reactjs

5
推荐指数
1
解决办法
3万
查看次数

如何在ace编辑器中只读取多个行

我试图在Ace编辑器中将部分代码设置为只读.

我试过使用JsFiddle中给出的代码

$(function() {
    var editor     = ace.edit("editor1")
        , session  = editor.getSession()
        , Range    = require("ace/range").Range
        , range    = new Range(1, 4, 1, 10)
        , markerId = session.addMarker(range, "readonly-highlight");

    session.setMode("ace/mode/javascript");
    editor.keyBinding.addKeyboardHandler({
        handleKeyboard : function(data, hash, keyString, keyCode, event) {
            if (hash === -1 || (keyCode <= 40 && keyCode >= 37)) return false;

            if (intersects(range)) {
                return {command:"null", passEvent:false};
            }
        }
    });

    before(editor, 'onPaste', preventReadonly);
    before(editor, 'onCut',   preventReadonly);

    range.start  = session.doc.createAnchor(range.start);
    range.end    = session.doc.createAnchor(range.end);
    range.end.$insertRight = true; …
Run Code Online (Sandbox Code Playgroud)

javascript editor ace-editor

4
推荐指数
1
解决办法
2264
查看次数

Ace编辑器 - 在编辑器中添加超链接

我很擅长使用Ace Editor.我正在尝试使用该库开发一个小工具,我希望能够在编辑器中添加超链接.

到目前为止,我已经能够使用超链接替换纯文本:

editor.renderer.on('afterRender', function(){
    // replace specific text with hyperlinks
});
Run Code Online (Sandbox Code Playgroud)

唯一的问题是链接不可点击.我想知道是否有任何方式让他们可以点击以获得我想要的行为.

先感谢您.

javascript jquery frontend ace-editor

3
推荐指数
1
解决办法
1140
查看次数

如何在ace中建立模式?

我使用http://ace.c9.io/tool/mode_creator.html创建了一个模式

将其构建为现有 ace 版本的可用文件的过程是什么?看来我可能必须通过某种构建步骤传递该代码才能获得输出,例如https://github.com/ajaxorg/ace-builds/blob/master/src/mode-golang.js ...

ace-editor

3
推荐指数
1
解决办法
947
查看次数