ã‚ã¾ã‚Šã«ã‚‚特殊ãªè©±ãªã®ã§æ›¸ãã‹è¿·ã£ãŸã®ã§ã™ãŒã€è¨˜éŒ²ã®ãŸã‚ã«æ›¸ã„ã¦ãŠãã¾ã™ã€‚
Ghostã¯node.jsベースã®ãƒ–ãƒã‚°ã‚·ã‚¹ãƒ†ãƒ ã§ã™ã€‚ 先日ã€Ghostã‚’herokuã«ãƒ‡ãƒ—ãƒã‚¤ã™ã‚‹è©±ã‚’書ãã¾ã—ãŸãŒã€ 使ã£ã¦ã¿ã¦ä¸€ã¤ã ã‘ä¸ä¾¿ã«æ„Ÿã˜ã‚‹ã“ã¨ãŒã‚りã¾ã—ãŸã€‚
エディタã§C-hãŒåйã‹ãªã„ã®ã§ã™ã€‚
C-hã¨ã„ã†ã®ã¯æ™®æ®µBackspaceã®ä»£ã‚りã«ä½¿ã£ã¦ã„ã‚‹ã‚ーãƒã‚¤ãƒ³ãƒ‰ã§ã€ Ctrlã‚ーを押ã—ãªãŒã‚‰hを押ã—ã¾ã™ã€‚ãªã„ã¨å›°ã‚‹äººã«ã¯å›°ã‚‹ã®ã§ã™ã€‚ ブラウザã§ã‚‚使ãˆã‚‹ã‚ˆã†ã«ã—ã¦ã„ã¾ã™ã€‚ã—ã‹ã—ã€ã“れãŒå›°ã‚‹ã®ã¯Linuxユーザã ã‘ã‹ã‚‚ã—れã¾ã›ã‚“。 OSXã®å ´åˆã¯Ctrlã§ã¯ãªãã¦CommandãŒã‚りã¾ã™ã—ã€Windowsã®å ´åˆã¯ãã‚‚ãã‚‚C-hãŒåйã‹ãªã„ã¨æ€ã„ã¾ã™ã€‚
Ghostã®Markdownã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã¯æ°—ã«å…¥ã£ãŸã®ã§ã€ãªã‚“ã¨ã‹ã—ã¦C-hを使ãˆã‚‹ã‚ˆã†ã«ã—ãŸã„ã¨ã“ã‚。 ã¡ãªã¿ã«ã€C-hãŒä½¿ãˆãªã„ç†ç”±ã¯C-hãŒGhostã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆã«å‰²ã‚ŠæŒ¯ã‚‰ã‚Œã¦ã„ã¦ã€ ãƒ˜ãƒƒãƒ€ãƒ¼ã‚¿ã‚°ã®æŒ¿å…¥ã«ãªã‚‹ã‹ã‚‰ã§ã™ã€‚ ã¡ã‚‡ã£ã¨èª¿ã¹ã¦ã¿ã¾ã—ãŸãŒã€æœ¬å®¶Ghostã§ã¯ã™ãã«ã¯è§£æ±ºã—ãã†ã«ãªã„(ã‚ã¾ã‚Šã«ç‰¹æ®Šç’°å¢ƒã‹)ã®ã§ã€ forkã™ã‚‹ã“ã¨ã«ã—ã¾ã—ãŸã€‚
https://github.com/dai-shi/Ghost
ã§ã™ã€‚ä¿®æ£ã—ãŸã‚³ãƒ¼ãƒ‰ã¯ã»ã‚“ã®2行ã§ã™ã€‚ C-hã¨C-bã«è¨å®šã•れã¦ã„ãŸã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆã‚’C-S-hã¨C-S-bã«ã—ã¾ã—ãŸã€‚ã¤ã¾ã‚Šã€Shiftã‚ãƒ¼ã‚‚åŒæ™‚ã«æŠ¼ã—ãŸæ™‚ã ã‘ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆãŒæœ‰åйã«ãªã‚‹ã‚ˆã†ã«ã—ã¾ã—ãŸã€‚
ã•ã¦ã€ã“れをghost-on-herokuã§ã‚‚使ã„ãŸã„ã®ã§ã™ãŒã€ä¸€ç‹ç¸„ã§ã¯è¡Œãã¾ã›ã‚“ã§ã—ãŸã€‚ ã¨ã„ã†ã®ã‚‚ã€gitリãƒã‚¸ãƒˆãƒªã‹ã‚‰cloneã—ã¦ãƒ‡ãƒ—ãƒã‚¤ã™ã‚‹ã«ã¯ã€gruntã®ã‚¿ã‚¹ã‚¯ã‚’走らã›ã¦ ビルドã™ã‚‹å¿…è¦ãŒã‚ã‚‹ã‹ã‚‰ã§ã™ã€‚手動ã§ã‚„ã‚‹ã®ã¯ç°¡å˜ã§ã™ãŒã€ã“れをnpmã§ã‚„ã‚‹å¿…è¦ãŒã‚りã¾ã—ãŸã€‚
çµæžœçš„ã«ã¯ã€ghost-on-herokuã®package.jsonを次ã®ã‚ˆã†ã«ä¿®æ£ã™ã‚‹ã“ã¨ã§è§£æ±ºã§ãã¾ã—ãŸã€‚
diff --git a/package.json b/package.json
index 3af466a..aec84be 100644
--- a/package.json
+++ b/package.json
@@ -10,14 +10,37 @@
"private": true,
"version": "0.6.4",
"dependencies": {
- "ghost": "0.6.4",
+ "ghost": "https://github.com/dai-shi/Ghost/archive/0.6.4-for-emacs-keybinding.tar.gz",
"ghost-s3-storage": "~0.2.1",
"pg": "latest"
},
+ "devDependencies": {
+ "bower": "1.4.1",
+ "csscomb": "3.0.4",
+ "grunt": "0.4.5",
+ "grunt-bg-shell": "2.3.1",
+ "grunt-cli": "0.1.13",
+ "grunt-contrib-clean": "0.6.0",
+ "grunt-contrib-compress": "0.13.0",
+ "grunt-contrib-copy": "0.8.0",
+ "grunt-contrib-jshint": "0.11.2",
+ "grunt-contrib-uglify": "0.9.1",
+ "grunt-contrib-watch": "0.6.1",
+ "grunt-docker": "0.0.10",
+ "grunt-express-server": "0.5.1",
+ "grunt-jscs": "1.8.0",
+ "grunt-mocha-cli": "1.13.0",
+ "grunt-mocha-istanbul": "2.4.0",
+ "grunt-shell": "1.1.2",
+ "grunt-update-submodules": "0.4.1",
+ "matchdep": "0.3.0",
+ "top-gh-contribs": "2.0.2"
+ },
"engines": {
"node": "~0.10.0"
},
"scripts": {
+ "postinstall": "(cd node_modules/ghost/node_modules && ln -s -b ../../grunt-* .) && (cd node_modules/ghost/node_modules/.bin && ln -s -b ../../../.bin/bower) && (cd node_modules/ghost && grunt --force init && grunt prod)",
"start": "node server.js"
}
}
devDependenciesã¯ã‚‚ã†å°‘ã—削れるã‹ã‚‚ã—れã¾ã›ã‚“。 ã“ã®ä¿®æ£ã«åŠ ãˆã¦ã€heroku configã®è¨å®šã‚‚行ã„ã¾ã—ãŸã€‚
$ heroku config:set NPM_CONFIG_PRODUCTION=false NODE_MODULES_CACHE=false
ã“ã‚Œã§æœŸå¾…通りã«ãªã‚Šã¾ã—ãŸã€‚