~~Title: Go ~~ The **Go** internal command can be used to: * [[:basic_concepts:the_lister:navigation|Navigate]] to a different folder in the Lister * Move back and forward in the [[:basic_concepts:the_lister:navigation:recent_and_history_lists|history list]], and display the contents of the history list * Connect and disconnect network shares * Display a list of drives on your toolbar * Display the contents of a folder in a drop-down menu * Display a list of sites in the [[:ftp:ftp_address_book|FTP address book]] * Open new Listers * Open and manipulate [[:basic_concepts:the_lister:tabs|folder tabs]] and [[:basic_concepts:the_lister:tabs:tab_groups|tab groups]]. **Command Arguments:** $$ Argument $$ Type $$ Possible values $$ Description $$ BACK $$ /S $$ //(no value)// $$ Navigate to the previous folder in the [[:basic_concepts:the_lister:navigation:recent_and_history_lists|history list]]. The history list preserves the file selection and scroll offset state of the folder. The **BACK** argument can be combined with the **UP** argument; in that case, if the previous folder in the history list is the current folder's parent, Opus will go back (preserving selections, etc) rather than **UP**. You can combine this with arguments that change the target of the navigation, like **NEW**, **NEWTAB**, **OPENINDUAL** etc. ``Go BACK`` $$ BACKLIST $$ /O $$ //(no value)// $$ Display a list of all previous folders in the history list (acts as a [[:customize:creating_your_own_buttons:editing_the_toolbar:dynamic_buttons|dynamic button]]). This is used on the drop-down menu attached to the Back button on the default toolbar. ``Go BACKLIST`` $$ $$ $$ **namesonly** $$ Display only folder names, not full paths. Tooltips will show full paths when hovering over items. ``Go BACKLIST=namesonly`` $$ $$ $$ **noicons** $$ Does not display icons on the generated history list. ``Go BACKLIST=noicons`` $$ $$ $$ **keys** $$ Assigns the accelerator keys **0** through **9** to the first ten items displayed on the generated history list. ``Go BACKLIST=noicons,keys`` $$ $$ $$ **sort** $$ Sorts the history list alphabetically instead of in chronological order. ``Go BACKLIST=sort`` $$ COMPATIBILITYFILES $$ /S $$ //(no value)// $$ Switch between a folder and its compatibility store. Not all folders have compatibility stores - this command will do nothing in that case. For example, from **C:\Program Files** you would be taken to **C:\Users\...\VirtualStore\Program Files**, and vice versa. The compatibility store concept was introduced in Windows Vista with the addition of UAC, to support older software that tried to save files in the program folder. These days the concept is hardly ever encountered. ``Go COMPATIBILITYFILES`` $$ CONNECT $$ /O $$ //(no value)// $$ Display the system dialog that allows you to map a network share to a drive letter. ``Go CONNECT`` $$ $$ $$ //// $$ Map the specified network path to a drive letter. ``Go CONNECT \\server\share`` $$ COPYARGS $$ /K/R $$ //(no value)// $$ A command like `Go FOLDERCONTENT=copy` which generates a list of buttons, each of which copies or moves files to or from a different place. Each generated button runs the Opus **Copy** command, which takes different arguments to the **Go** command. The **COPYARGS** argument allows you to specify one or more additional **Copy**-command arguments which are added to each of the generated buttons. Since this is a "raw" argument, it should be the last thing on the line. All text after the word "COPYARGS" will be taken as-is, including any quote characters, and appended to the copy command of each generated button. ``Go C:\ FOLDERCONTENT=copy COPYARGS COPYFILETIMES=no`` $$ CURDIR $$ /O $$ //(no value)// $$ Activates "current directory" mode for the **Go** command. When used with a drive letter for the **PATH** argument, this mode makes Opus navigate to the most recently accessed folder on the specified drive. Opus will remember the "current directory" for each drive in your system, even from one session to the next. When used in conjunction with the **DRIVEBUTTONS** argument, the generated drive letter buttons will have the same behaviour, and will highlight to indicate the "current drive". In this way you can click around from one drive to another remembering the previously used folder on each drive. ``Go D: CURDIR``\\ ``Go DRIVEBUTTONS=fixed CURDIR`` $$ $$ $$ **rootmode** $$ Modifies "current directory" mode so that clicking the button for the drive you are already on takes you to the root of the drive (ordinarily it would do nothing). ``Go DRIVEBUTTONS CURDIR=rootmode`` $$ CURRENT $$ /S $$ //(no value)// $$ Indicates the current source folder. This argument is used to open the current folder in another tab, Lister or file display. ``Go CURRENT OPENINDUAL`` $$ DESTPATH $$ /S $$ //(no value)// $$ Indicates the current destination folder. This argument is used to open the destination folder in the source file display (or another Lister, or tab). ``Go DESTPATH`` $$ DISCONNECT $$ /S $$ //(no value)// $$ Display the system dialog that allows you to disconnect (unmap) a network share. ``Go DISCONNECT`` $$ DRIVEBUTTONS $$ /O $$ //(no value)// $$ Display a list of all the drives currently on your system (acts as a [[:customize:creating_your_own_buttons:editing_the_toolbar:dynamic_buttons|dynamic button]]). Clicking a button navigates the source folder to that drive's root. The drive buttons can also be right-clicked to display the context menu for each drive. The various values for this argument can be used to restrict the drives that are shown. ``Go DRIVEBUTTONS`` $$ $$ $$ **fixed** $$ Only display the fixed drives (hard drives). ``Go DRIVEBUTTONS=fixed`` $$ $$ $$ **network** $$ Only display network (mapped) drives. ``Go DRIVEBUTTONS=network`` $$ $$ $$ **cdrom** $$ Only display CD-ROM (and DVD) drives. ``Go DRIVEBUTTONS=cdrom`` $$ $$ $$ **removable** $$ Only display removable drives (floppies, and some USB drives). ``Go DRIVEBUTTONS=removable,cdrom`` $$ $$ $$ **ramdisk** $$ Only display RAM drives. ``Go DRIVEBUTTONS=ramdisk`` $$ $$ $$ **mtp** $$ Only display MTP (portable) devices. ``Go DRIVEBUTTONS=mtp`` $$ $$ $$ **iconlettersoff** $$ Disable the display of small drive letters as part of each drive's icon. ``Go DRIVEBUTTONS=fixed,iconlettersoff`` $$ $$ $$ **iconletterson** $$ Enable the display of small drive letters as part of each drive's icon. ``Go DRIVEBUTTONS=iconletterson`` $$ $$ $$ **labels** $$ Displays the label of each drive. By default only each drive's letter is shown. ``Go DRIVEBUTTONS=fixed,labels`` $$ $$ $$ **noletters** $$ Prevents the display of each drive's letter, if labels are being shown using the **labels** keyword. Note that if you want to completely disable any text being displayed in the button you need to turn off the button's **Show Label** checkbox in the [[:customize:creating_your_own_buttons:command_editor|button editor]]. ``Go DRIVEBUTTONS=labels,noletters`` $$ $$ $$ **multifunc** $$ The generated drive buttons will be [[:customize:creating_your_own_buttons:editing_the_toolbar:multiple_function_buttons|multiple function buttons]] (three-button buttons) - clicking them with the left mouse button will act as if **OPENINLEFT** were set, the right button will act as if **OPENINRIGHT** were set, and the middle mouse button will act as if **NEW** were set. ``Go DRIVEBUTTONS=fixed,network,multifunc`` $$ $$ $$ **multifunctabs** $$ Similar to **multifunc**, except the left and right mouse button functions will open a new tab on the appropriate side of the Lister. You can control how new tabs are opened with the **NEWTAB** argument. ``Go DRIVEBUTTONS=multifunctabs,labels,fixed`` $$ $$ $$ **lettersbeforelabels** $$ When showing both drive letters and labels, the letters will be displayed first. Without this letters are shown following the labels. ``Go DRIVEBUTTONS=fixed,labels,lettersbeforelabels`` $$ $$ $$ **offline** $$ When showing network drives, only offline drives will be shown (by default both connected and offline drives are shown). ``Go DRIVEBUTTONS=network,offline`` $$ $$ $$ **online** $$ When showing network drives, only online (connected) drives will be shown. ``Go DRIVEBUTTONS=network,online`` $$ $$ $$ **hideempty** $$ Hides the display of empty drives. Removable disks (floppies, card readers, DVDs) that have no media inserted in them will not be displayed. ``Go DRIVEBUTTONS=cdrom,removable,hideempty`` $$ $$ $$ **+**//// $$ Only display the specified drive letters. Any drives not specified will be hidden. ``Go DRIVEBUTTONS=removable,+fhjm`` $$ $$ $$ **-**//// $$ Do not display the specified drive letters. ``Go DRIVEBUTTONS=-d`` $$ DUALPATH $$ /K $$ //// $$ Specify a path to read into the destination file display of a dual-display Lister (the standard **PATH** argument reads into the source file display). ``Go C:\ DUALPATH D:\`` $$ EJECT $$ /S $$ //(no value)// $$ Trigger an eject of the media in the drive specified by the **PATH** argument. This command has no effect if the drive does not have an eject mechanism. ``Go D: EJECT`` $$ EXISTINGLISTER $$ /O $$ //(no value)// $$ If the specified folder is already open in an existing lister (including inactive folder tabs in other windows) then the command will activate that lister and the appropriate tab within it and do nothing else. If another window is found then the rest of the command's arguments are ignored. If the specified path is not already open in another window then the command continues as if the **EXISTINGLISTER** argument had not been given. ``Go "C:\Program Files" NEW EXISTINGLISTER`` $$ $$ $$ **seltabsonly** $$ Only selected folder tabs will be considered. If the specified folder is open in an existing lister, but in a folder tab which is not currently selected, then that tab will be ignored. ``Go "C:\Program Files" NEW EXISTINGLISTER=seltabsonly`` $$ EXPANDBRANCH $$ /O $$ //(no value)// $$ When [[:preferences:preferences_categories:file_displays:folder_expansion|Folder Expansion]] is turned on in Preferences, this command lets you programmatically expand folders in the current file display. When used with no value, all currently selected folders will be expanded. You can combine this with the **PATH** argument to specify the item to expand by path - or in conjunction with the **wild** or **regexp** keywords, by pattern matching. ``Go EXPANDBRANCH`` $$ $$ $$ **case** $$ Use with `regexp` or `wild` to make the wildcard operation case sensitive. ``Go EXPANDBRANCH=toggle,regexp,case PATH [a-z]+`` $$ $$ $$ **clearselect** $$ Use with `collapse` to automatically clear the selection of any files or folders inside the folders being collapsed. ``Go EXPANDBRANCH=collapse,clearselect`` $$ $$ $$ **collapse** $$ Collapses currently selected folders if they're currently expanded. Additionally, if a single file or unexpanded folder is selected and it's inside an expanded parent folder, the parent folder will be collapsed. ``Go EXPANDBRANCH=collapse`` $$ $$ $$ **noparent** $$ When used with `Go EXPANDBRANCH=collapse` this prevents it collapsing the parent folder of a selected file or unexpanded folder. ``Go EXPANDBRANCH=collapse,noparent`` $$ $$ $$ **regexp** $$ The **PATH** argument will be interpreted as a [[..:..:wildcard_reference:regular_expression_syntax|regular expression]]. ``Go EXPANDBRANCH=toggle,regexp PATH [a-z]+`` $$ $$ $$ **script** $$ When run from a script, uses the folders added to the [[:reference:scripting_reference:scripting_objects:command|Command]] object to expand/collapse rather than selected folders. ``Go EXPANDBRANCH=script,toggle`` $$ $$ $$ **toggle** $$ Toggles the expansion state of currently selected folers. ``Go EXPANDBRANCH=toggle`` $$ $$ $$ **toggleall** $$ Toggles the expansion state of selected folders as a group. If any are not expanded, all will be expanded. If all are expanded, all will be collapsed. ``Go EXPANDBRANCH=toggleall`` $$ $$ $$ **top** $$ Restricts the command to expanding/collapsing items at the top level, ignoring nested items. (Has no effect if the **PATH** argument is used to specify the item). ``Go EXPANDBRANCH=toggleall,top`` $$ $$ $$ **wild** $$ The **PATH** argument will be interpreted as a [[..:..:wildcard_reference:pattern_matching_syntax|wildcard]]. Note the wildcard is tested against names only, not complete paths. Any folders matching the wildcard will be expanded or collapsed, whether they are currently selected or not. ``Go EXPANDBRANCH=toggleall,top,wild PATH *_backup`` $$ FDBBUTTONS $$ /O $$ //(no value)// $$ This command acts as a [[:customize:creating_your_own_buttons:editing_the_toolbar:dynamic_buttons|dynamic button]]. It lets you add buttons to a toolbar that mimic the standard File Display Border buttons. The command is designed to be used on the File Display toolbar as an alternative to the standard buttons. By default the command will add //Back//, //Forward//, //Up//, //Copy//, //Swap// and //Toggle Layout// buttons. You can use the various keywords to control exactly which buttons are added. ``Go FDBBUTTONS`` $$ $$ $$ //