如何在 Ace 编辑器中格式化 Java 代码
How to format Java code in Ace Editor
我正在使用 ACE 编辑器显示我的 Java 代码。我想在编辑器中格式化 java 代码。我试过这样的代码:
var editor = $('.file-content').ace(),
JavaMode = ace.require('ace/mode/java').Mode,
beautify = ace.require("ace/ext/beautify");
editor.getSession().setValue(content);
editor.getSession().setMode(new JavaMode());
beautify.beautify(editor.getSession());
但是我得到了这样漂亮的代码:
publicclassHelloWorld{publicstaticvoidmain(String args[]){System
.out.println(1);
}}
如何在 Ace Editor 中格式化 Java 代码?
这是将 JS Beautifier 挂接到您现有的 Ace 编辑器的示例。
var editor = ace.edit('editor');
var txtAra = document.querySelector('textarea[name="editor"]');
var jsbOpts = {
indent_size : 2
};
editor.setTheme("ace/theme/monokai");
editor.getSession().setMode("ace/mode/java");
syncEditor();
// Main Logic
setTimeout(formatCode, 1000); // Format sample Java after 1 second.
// Functions
function syncEditor() {
editor.getSession().setValue(txtAra.value);
}
function commitChanges() {
txtAra.value = editor.getSession().getValue();
}
function formatCode() {
var session = editor.getSession();
session.setValue(js_beautify(session.getValue(), jsbOpts));
}
.title {
font-size: 1.67em;
font-weight: bold;
text-align: center;
}
#editor {
height: 75vh;
width: 100%;
}
textarea[name="editor"] {
display: none;
}
.as-console-wrapper {
display: none !important;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.6/ace.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.6.8/beautify.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css" rel="stylesheet"/>
<div>
<div class="title">Ace Editor - Java Format</div>
<textarea name="editor">public class SpringTest {public static void main(String[] args) throws Exception {System.out.print("Hello world");}}</textarea>
<div id="editor"></div>
</div>
Ace 不提供美化方法java,您需要使用其他程序。
我正在使用 ACE 编辑器显示我的 Java 代码。我想在编辑器中格式化 java 代码。我试过这样的代码:
var editor = $('.file-content').ace(),
JavaMode = ace.require('ace/mode/java').Mode,
beautify = ace.require("ace/ext/beautify");
editor.getSession().setValue(content);
editor.getSession().setMode(new JavaMode());
beautify.beautify(editor.getSession());
但是我得到了这样漂亮的代码:
publicclassHelloWorld{publicstaticvoidmain(String args[]){System
.out.println(1);
}}
如何在 Ace Editor 中格式化 Java 代码?
这是将 JS Beautifier 挂接到您现有的 Ace 编辑器的示例。
var editor = ace.edit('editor');
var txtAra = document.querySelector('textarea[name="editor"]');
var jsbOpts = {
indent_size : 2
};
editor.setTheme("ace/theme/monokai");
editor.getSession().setMode("ace/mode/java");
syncEditor();
// Main Logic
setTimeout(formatCode, 1000); // Format sample Java after 1 second.
// Functions
function syncEditor() {
editor.getSession().setValue(txtAra.value);
}
function commitChanges() {
txtAra.value = editor.getSession().getValue();
}
function formatCode() {
var session = editor.getSession();
session.setValue(js_beautify(session.getValue(), jsbOpts));
}
.title {
font-size: 1.67em;
font-weight: bold;
text-align: center;
}
#editor {
height: 75vh;
width: 100%;
}
textarea[name="editor"] {
display: none;
}
.as-console-wrapper {
display: none !important;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/ace/1.2.6/ace.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.6.8/beautify.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css" rel="stylesheet"/>
<div>
<div class="title">Ace Editor - Java Format</div>
<textarea name="editor">public class SpringTest {public static void main(String[] args) throws Exception {System.out.print("Hello world");}}</textarea>
<div id="editor"></div>
</div>
Ace 不提供美化方法java,您需要使用其他程序。