 
         return
     }
-    ; DC_Run("cm_ChangeDirToParent")
-*/
-
-    Send, {left}
-    Sleep, 10
+
+    DC_Run("cm_ChangeDirToParent")
+    Sleep, % SleepTime
+
     Send, {up}
-    Sleep, 10
+    Sleep, % SleepTime
+
     Send, {right}
-
-/*
-    if (InStr(OldPwd, "wfx") == 1) {
-        ; 网络文件系统比较慢，等待下
-        Sleep, 50
-    }
 
     Clipboard := ClipSaved
     ClipSaved := ""
-*/
 return
 
 <DC_NextParallelDir>:
-; TODO
-    Send, {left}
-    Sleep, 10
+    SleepTime := 10
+
+    ClipSaved := ClipboardAll
+    Clipboard := ""
+    DC_Run("cm_CopyCurrentPathToClip")
+    ClipWait, 2
+
+    OldPwd := Clipboard
+
+    if (InStr(OldPwd, "\") == 1) {
+        ; 网络文件系统比较慢
+        SleepTime := 50
+    }
+
+    if (StrLen(OldPwd) == 3) {
+        ; 在根分区 TODO
+        ; Gosub, <cm_GotoPreviousDrive>
+
+        Clipboard := ClipSaved
+        ClipSaved := ""
+
+        return
+    }
+
+    DC_Run("cm_ChangeDirToParent")
+    Sleep, % SleepTime
+
     Send, {down}
-    Sleep, 10
+    Sleep, % SleepTime
+
     Send, {right}
+    Sleep, % SleepTime
+
+    Clipboard := ""
+    DC_Run("cm_CopyCurrentPathToClip")
+    ClipWait, 2
+
+    if (InStr(OldPwd, Clipboard) == 1) {
+        ; 下一个是文件
+        DC_Run("cm_ViewHistoryPrev")
+    }
+
+    Clipboard := ClipSaved
+    ClipSaved := ""
 return
 
 <DC_DownSelect>:

return

<DC_PreviousParallelDir>:
; TODO
/*
    ClipSaved := ClipboardAll
    Clipboard := ""
    DC_Run("cm_CopyCurrentPathToClip")
    ClipWait

    OldPwd := Clipboard

    if (StrLen(OldPwd) == 3) {
        ; 在根分区
        ; Gosub, <cm_GotoPreviousDrive>

        Clipboard := ClipSaved


    vim.SetWin(DC_Name, "DClass", "doublecmd.exe")
    vim.Mode("normal", DC_Name)

    vim.BeforeActionDo("DC_ForceInsertMode", DC_Name)
return
