From cfbeb27c0a8948dcfc8384adab613a06aa7e6ddf Mon Sep 17 00:00:00 2001 From: coderaiser Date: Sat, 9 Aug 2014 05:58:20 -0400 Subject: [PATCH] feature(console) change directory to ~ + wildcard --- lib/server/console.js | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/lib/server/console.js b/lib/server/console.js index b92f7bc1..309103a7 100644 --- a/lib/server/console.js +++ b/lib/server/console.js @@ -38,13 +38,7 @@ HELP = { stdout : CLOUDCMD + ' exit \n' + CLOUDCMD + ' update \n', - }, - - glob = function(callback) {callback(null, [])}; - - Util.exec.try(function() { - glob = require('glob'); - }); + }; /** * function listen on servers port @@ -284,13 +278,13 @@ function onCD(command, currDir, callback) { var CD = 'cd ', + HOME = process.env.HOME, + isChangeVolume = win.isChangeVolume(command), isVolume = win.isVolume(command), paramDir = Util.rmStrOnce(command, [CD, 'cd']), - regStrEnd = getRegStrEnd(), - regStrHome = '^~$|^~', - regExpHome = new RegExp(regStrHome + regStrEnd), + regExpHome = new RegExp('^~'), isWildCard = Util.isContainStr(paramDir, ['*', '?']), isHome = paramDir.match(regExpHome) && !WIN, @@ -314,15 +308,17 @@ }; if (isHome) { - paramDir = process.env.HOME; - command = command.replace('~', paramDir); + command = command.replace('~', HOME); + paramDir = paramDir.replace('~', HOME); } if (!paramDir && !WIN) paramDir = '.'; - if (!isHome && !isChangeVolume || isVolume) { + if (!isChangeVolume || isVolume) { paramDir = getFirstWord(paramDir); + paramDir = path.normalize(paramDir); + command = Util.rmStrOnce(command, [ CD, paramDir, @@ -330,7 +326,7 @@ '"' + paramDir + '"', ]); - if (paramDir !== '/') + if (!isHome && paramDir !== '/') paramDir = path.join(currDir, paramDir); if (isWildCard)