Dword

Web editor based on CodeMirror. Fork of edward.
Features
- Syntax highlighting based on extension of file for over 90 languages.
- Built-in
emmet(for html files) - Drag n drop (drag file from desktop to editor).
- Built-in
jshint(with options in.jshintrcfile, could be overriden by~/.jshintrc) - Built-in beautifier (with options in json/beautify.json, could be overriden by
~/.beautify.json) - Configurable options (json/edit.json could be overriden by
~/.dword.json)
Install
npm i dword -g
Command line parameters
Usage: dword [filename]
| Parameter | Operation |
|---|---|
-h, --help |
display help and exit |
-v, --version |
output version information and exit |
Hot keys
| Key | Operation |
|---|---|
Ctrl + s |
save |
Ctrl + f |
find |
Ctrl + h |
replace |
Ctrl + g |
go to line |
Ctrl + b |
beautify js, css or html |
Ctrl + m |
minify js, css or html |
Ctrl + e |
evaluate (JavaScript only supported) |
API
dword could be used as middleware for express. For this purpuse API could be used.
Server
dword(options)
Middleware of dword. Options could be omitted.
const dword = require('dword');
const express = require('express');
const app = express();
app.use(dword({
minify : true, /* default */
online : true, /* default */
diff : true, /* default */
zip : true, /* default */
authCheck: function(socket, success) { /* optional */
}
}));
app.listen(31337);dword.listen(socket)
Could be used with socket.io to handle editor events with.
const io = require('socket.io'),
const socket = io.listen(server);
dword.listen(socket);Client
Dword uses codemirror on client side, so API is similar.
All you need is put minimal html, css, and js into your page.
Minimal html:
<div class="edit" data-name="js-edit"></div>
<script src="/dword/dword.js"></script>Minimal css:
html, body, .edit {
height: 100%;
margin: 0;
}Minimal js:
dword('[data-name="js-edit"]', function(editor) {
editor.setValue('hello dword');
console.log('dword is ready');
});For more information you could always look around into assets and bin directory.
Environments
In old node.js environments that supports es5 only, dword could be used with:
var dword = require('dword/legacy');Related
License
MIT

