同様の質問を見つけました: Ace Editorのオートコンプリートと複数の言語
しかし、応答はACEがオートコンプリートをサポートしていないというものでした。 Ace EditorのGoogleグループ 「Aceの私の願いであり、Cloud9には間違いなく必要です」。
この投稿は1年前のもので、ご覧のとおり、cloud9はオートコンプリートをサポートしています: https://c9.io/site/features/
Ace Editorでデフォルトでオートコンプリートを利用できますか?私はそれに関する情報を見つけることができません。
オートコンプリートは現在、APIの公式部分です。有効にするには、3行のコードが必要です。
ace.require("ace/ext/language_tools");
var editor = ace.edit("editor");
editor.setOptions({
enableBasicAutocompletion: true
});
Require-jsでの設定に応じて、ページのhtmlに追加のjavascriptファイルを含める必要がある場合があります。
<script src="ace/ext-language_tools.js"></script>
https://github.com/ajaxorg/ace/blob/master/demo/autocompletion.html でデモを見つけることができます
そして、このトピックについて書いたばかりのwikiページは次のとおりです。
https://github.com/ajaxorg/ace/wiki/How-to-enable-Autocomplete-in-the-Ace-editor
オートコンプリートは [〜#〜] ace [〜#〜] apiの一部になったため:
1)HTMLの先頭に ace.js を含めます:
<script type="text/javascript" src="js/ace.js"></script>
2)また、 モード (言語タイプ)を含めます:
<script type="text/javascript" src="js/mode-yaml.js"></script>
3) theme :も含めてください
<script type="text/javascript" src="js/theme-monokai.js"></script>
4) ex-language_tools.js も含めます:
<script src="js/ext-language_tools.js"></script>
5)IDエディターでdivを追加します(これは [〜#〜] ide [〜#〜] になります):
<div id="editor"></div>
6)次のスクリプトを含めます(理解するには、コメントを参照してください)。
<script>
var langTools = ace.require("ace/ext/language_tools");
以下の行は、id = "editor"のdivをエディターに変換します
var editor = ace.edit("editor");
以下の行は、カラーテーマを設定します。利用可能な他のテーマ here ...試してみてください here
editor.setTheme("ace/theme/monokai");
以下の行は、プログラミング言語に基づいてモードを設定します...他のモードはここにあります:
editor.getSession().setMode("ace/mode/yaml");
editor.setShowPrintMargin(false);
以下の行は、リアルタイムでオートコンプリートをオンにします。
editor.setOptions({
enableBasicAutocompletion: true,
enableSnippets: true,
enableLiveAutocompletion: false
});
したがって、全体を次のように分類できます:
<!DOCTYPE html>
<html>
<head>
<title>IDE AUTOCOMPLETE</title>
<link rel="stylesheet" type="text/css" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.min.css">
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
<script type="text/javascript" src="js/ace.js"></script>
<script type="text/javascript" src="js/mode-yaml.js"></script>
<script type="text/javascript" src="js/theme-monokai.js"></script>
<script src="js/ext-language_tools.js"></script>
</head>
<body>
<!-- EDITOR SECTION BELOW! -->
<div id="editor"></div>
<script>
var langTools = ace.require("ace/ext/language_tools");
var editor = ace.edit("editor");
editor.setTheme("ace/theme/monokai");
editor.getSession().setMode("ace/mode/yaml");
editor.setShowPrintMargin(false);
editor.setOptions({
enableBasicAutocompletion: true,
enableSnippets: true,
enableLiveAutocompletion: false
});
</script>
<!-- EDITOR SECTION ABOVE -->
</body>
</html>
オートコンプリートはまだAceでネイティブに利用できませんが、Aceと完全なオープンソースに基づいている Codiad IDE でそれを行うコンポーネントを実装しました。 Github でコードを確認できます。独自のコードを作成するのに役立ちます。
AjaxOrgは、次のメッセージとともにCloud9リポジトリにコミットをプッシュしました:
コード補完プラグイン
これがこの質問の答えになると思います。
here はコミットです。
また、 this は私たちを助けることができる良いプロジェクトだと思います。
詳細については、 この問題がCloud9リポジトリで開かれた からのメッセージをたどることができます。
次のインポートがあることを確認してください
require('ace/ext/language_tools');
require('ace/multi_select');
必要に応じてスニペットの下で使用
editor.setOptions({
enableBasicAutocompletion: true,
enableSnippets: true,
enableLiveAutocompletion: true
});
現在、どの形式でも利用できません。この問題によると: https://github.com/ajaxorg/ace/issues/1031
オートコンプリートはCloud9でのみ利用可能IDE(ACEに基づく))、別のプラグインとして利用可能later ACE Editorの場合。