Skip to content

Commit

Permalink
修改交互方式
Browse files Browse the repository at this point in the history
  • Loading branch information
dafeng.xdf committed Sep 25, 2014
1 parent 09e021c commit 31c791d
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 7 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ npm-debug.log
Thumbs.db
coverage/
.project
*.html
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ $ npm i startserver -g

```bash
$ startserver
$ start
$ server
$ ss
```

## Help
Expand Down
18 changes: 18 additions & 0 deletions bin/startserver
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,22 @@

process.title = 'startserver';

var path = require('path');
var util = require('xutil');
var ipv4 = require('ipv4') || 'localhost';
var StartServer = require('../');
var exec = require('child_process').exec;
var middleware = require('../lib/middleware');
var markdown = require('../lib/middleware/markdown').markdown;
var platform = process.platform;
var program = require('commander');
var request = require('request');
var logx = require('logx');
require('colorx');
var pkg = require('../package.json');
var open = true;
var root = process.cwd();


program
.option('-v, --version', 'output version infomation')
Expand All @@ -36,6 +40,20 @@ program
console.log('\n ' + pkg.version.blue + '\n');
process.exit(0);
})
.option('-s, --static', 'generate static file for markdown')
.on('static', function() {
var args = this.rawArgs;
if (args.length !== 4) {
console.log('\n Arguments Error.'.red + '\n');
program.help();
process.exit(0);
}
var dir = path.dirname(root).split(path.sep);
var dist = path.resolve(args[3]);
var content = markdown('slide', dir[dir.length - 1], path.resolve(args[3]));
util.file.writeFile(dist + '.html' ,content);
process.exit(0);
})
.on('normal', function() {
open = false;
})
Expand Down
17 changes: 12 additions & 5 deletions lib/middleware/markdown/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,23 @@ function render(type, data) {
return template(data);
}

function _markdown(type, dir, file) {
var content = fileUtil.readFile(file, 'utf-8');
content = render(type, {
content: marked(content),
title: dir
});
return content;
}

function Markdown(req, res, next) {
var url = parse(req.url),
dir = decodeURIComponent(url.pathname),
file = normalize(join(root, dir));

if (path.extname(file).toLowerCase() === '.md'){
var type = req.headers.cookie && !!~req.headers.cookie.indexOf('startserver-slide=true') ? 'slide' : 'default';
file = fileUtil.readFile(file, 'utf-8');
file = render(type, {
content: marked(file),
title: dir
});
file = _markdown(type, dir, file);
res.writeHead(200, {'Content-Type': 'text/html; charset=UTF-8'});
res.write(file, 'utf-8');
res.end();
Expand All @@ -52,4 +57,6 @@ function Markdown(req, res, next) {
}
}

Markdown.markdown = _markdown;

module.exports = Markdown;
2 changes: 1 addition & 1 deletion lib/middleware/markdown/slide.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ allowtransparency="true" frameborder="0" scrolling="0" width="80px" height="20px
global.addEventListener("mousewheel", function(e) {
var target = pages[index - 1];
var delta = e.wheelDelta / 120;
target.scrollTop += delta > 0 ? 10 : -10;
target.scrollTop += delta > 0 ? -10 : 10;
});
left.addEventListener("click", function() {
prev();
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "startserver",
"version": "0.5.8",
"version": "0.5.10",
"description": "A simple http server witch can be used like `python -m SimpleHTTPServer` and be more easy to generate a slider.",
"preferGlobal": true,
"bin": {
Expand Down

0 comments on commit 31c791d

Please sign in to comment.