|
Title | SameDir |
File Name | SameDir.txt |
Description | Open the same directory on another drive |
Author | Vochomurka |
Parameters | "path", "drive" |
Plugins Called | file, win, miscplugin |
Icon | depends on drive |
Version | 1.0 |
Updated on | 12.07.2010 |
args Path, Where local Source = Path[0, 2] local Len = length(Path) local Source, Target local Str, Dir, i static Disks = file.alldrives static Quote = esc(?+\"+, ?+\+) local Num = line(Disks, 0) flag set 1 for(i = 1; i <= Num; i++) Str = line(Disks, i) if(Str == Source) do flag clear 1 Dir = slice(Path, 3 - Len) break endif endfor if(pproflag(1)) do messagebox("ok error", "Current drive not found", "SameDir Script") quit endif local hwnd = win.handle("c=TTOTAL_CMD") local Exepath = win.exepath(hwnd) Str = ifelse(miscplugin.is_int(Where), line(Disks, i + Where), Where ++ ":\" ) ++ Dir if(not validpath(Str)) do messagebox("ok error", "Invalid path: " ++ Str, "SameDir Script") quit endif do(Exepath, "/O /S /L=" ++ Quote ++ Str ++ Quote)
If current path is c:\path, the script changes it to d:\path or f:\path, that is, the same path on another drive, but only if such path exists.
First parameter can be "%P", "%T", or any explicit path. Second parameter can be numeric or alphabetic. In the first case one of previous (negative number), or next (positive one) drives is used. Suppose the current path is d:\dir1\dir2, and the script paramaters are ("%P", 2), then path f:\dir1\dir2 is open. Alphabetic one letter parameter points to some specific drive. For exmple, if target (inactive) path is any_drive:\dir1\dir2 and script parameters are ("%T", "g"), then the g:\dir1\dir2 path is open.
All Scripts | Total Commander | TotalCmd.net | PowerPro |