./0000700000175000017500000000000013567212013010141 5ustar daviddavid./4pane-6.0/0000777000175000017500000000000013567212013011467 5ustar daviddavid./4pane-6.0/MyFiles.cpp0000644000175000017500000030057613566743443013571 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyFiles.cpp // Purpose: File-view // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/tokenzr.h" #include "wx/scrolwin.h" #include "wx/menu.h" #include "wx/dirctrl.h" #include "wx/splitter.h" #include "wx/file.h" #include "wx/dragimag.h" #include "wx/config.h" #include "MyTreeCtrl.h" #include "MyDirs.h" #include "MyGenericDirCtrl.h" #include "Accelerators.h" #include "MyFrame.h" #include "Redo.h" #include "Dup.h" #include "Archive.h" #include "MyFiles.h" #include "Filetypes.h" #include "Misc.h" // For FileDirDilg needed by OnProperties //--------------------------------------------------------------------------------------------------------------------------- #include #include void GetAllUsers(wxArrayString& names) // Global function, to acquire list of all usernames { struct passwd pw, *results; static const size_t BUFLEN = 4096; char buf[BUFLEN]; setpwent(); // This call initialises what we're doing while (true) { getpwent_r(&pw, buf, BUFLEN, &results); // For every entry, get the user struct. The current item is pointed to by 'results' if (results == NULL) { endpwent(); // If NULL we've run out. Call endpwent() to sign off names.Sort(); return; // Sort the array & return } wxString str(results->pw_name, wxConvUTF8); // Extract this username & add it to the ArrayString names.Add(str); } } void GetProcessesGroupNames(wxArrayString& names) // Global function, to acquire list of user's groups { struct group grp, *results; static const size_t BUFLEN = 4096; char buf[BUFLEN]; if (getuid()==0) // If we're root, we want a list of ALL groups, not just ones root happens to be a member of { setgrent(); // This call initialises what we're doing while (true) { getgrent_r(&grp, buf, BUFLEN, &results); // For every entry, get the group struct if (results == NULL) { endgrent(); // If g==NULL we've run out. Call endgrent() to sign off names.Sort(); return; // Sort the array & return } wxString str(results->gr_name, wxConvUTF8);// Extract the group's name & add it to the ArrayString names.Add(str); } } // Otherwise do it the standard way, looking only at this user's groups int ngroups = getgroups(0, NULL); // This first call to getgroups() returns their number if (!ngroups) return; gid_t* idarray = new gid_t[ngroups * sizeof (gid_t)]; // Now we know the no of groups, make an int array to store them int ans = getgroups(ngroups, idarray); // This 2nd call to getgroups() fills this array if (ans != -1) for (int n=0; n < ngroups; ++n) { getgrgid_r(idarray[n], &grp, buf, BUFLEN, &results);// For every entry, fill the group struct if (results != NULL) { wxString str(results->gr_name, wxConvUTF8); // Extract the group's name & add it to the ArrayString names.Add(str); } } names.Sort(); // Sort the array delete[] idarray; } //--------------------------------------------------------------------------------------------------------------------------- static int wxCMPFUNC_CONV SortULLCompareFunction(DataBase**, DataBase**); static int wxCMPFUNC_CONV SortULLReverseCompareFunction(DataBase**, DataBase**); static int wxCMPFUNC_CONV FilenameCompareFunctionLC_COLLATE(DataBase **first, DataBase **second) // LC_COLLATE aware { return wxStrcoll((*first)->ReallyGetName().c_str(), (*second)->ReallyGetName().c_str()); } static int wxCMPFUNC_CONV FilenameReverseCompareFunctionLC_COLLATE(DataBase **second, DataBase **first) // Same as above but reverse the sort. LC_COLLATE aware { return wxStrcoll((*first)->ReallyGetName().c_str(), (*second)->ReallyGetName().c_str()); } static int wxCMPFUNC_CONV FilenameCompareFunction(DataBase **first, DataBase **second) // Ditto, _not_ LC_COLLATE aware { return (*first)->ReallyGetName().CmpNoCase((*second)->ReallyGetName()); } static int wxCMPFUNC_CONV FilenameReverseCompareFunction(DataBase **second, DataBase **first) { return (*first)->ReallyGetName().CmpNoCase((*second)->ReallyGetName()); } static int wxCMPFUNC_CONV SortFilenameULLLC_COLLATECompareFunction(DataBase **first, DataBase **second) // LC_COLLATE-aware alpha + decimal sort. This sorts foo1.txt, foo2.txt above foo10.txt, foo11.txt { if (((*first)->sortULL == (wxULongLong_t)-1) || ((*second)->sortULL == (wxULongLong_t)-1) || (*first)->sortstring.empty() || (*second)->sortstring.empty()) return FilenameCompareFunctionLC_COLLATE(first, second); // We aren't comparing foo1, foo2 so revert to the standard way int ans; if ((ans = wxStrcoll((*first)->sortstring.c_str(), (*second)->sortstring.c_str())) == 0) // Sortstring holds foo, sortULL the terminal 1, 2, 10 or... return SortULLCompareFunction(first, second); // If they match, re-sort by ULL return ans; } static int wxCMPFUNC_CONV SortFilenameULLReverseLC_COLLATECompareFunction(DataBase **second, DataBase **first) // Reverse LC_COLLATE-aware alpha + decimal sort { if (((*first)->sortULL == (wxULongLong_t)-1) || ((*second)->sortULL == (wxULongLong_t)-1) || (*first)->sortstring.empty() || (*second)->sortstring.empty()) return FilenameReverseCompareFunctionLC_COLLATE(second, first); int ans; if ((ans = wxStrcoll((*first)->sortstring.c_str(), (*second)->sortstring.c_str())) == 0) return SortULLReverseCompareFunction(second, first); // If they match, re-sort by ULL return ans; } static int wxCMPFUNC_CONV SortFilenameULLCompareFunction(DataBase **first, DataBase **second) // Standard alpha + decimal sort { if (((*first)->sortULL == (wxULongLong_t)-1) || ((*second)->sortULL == (wxULongLong_t)-1) || (*first)->sortstring.empty() || (*second)->sortstring.empty()) return FilenameCompareFunction(first, second); // We aren't comparing foo1, foo2 so revert to the standard way int ans; if ((ans = (*first)->sortstring.CmpNoCase((*second)->sortstring)) == 0) return SortULLCompareFunction(first, second); return ans; } static int wxCMPFUNC_CONV SortFilenameULLReverseCompareFunction(DataBase **second, DataBase **first) // Standard alpha + decimal reverse sort { if (((*first)->sortULL == (wxULongLong_t)-1) || ((*second)->sortULL == (wxULongLong_t)-1) || (*first)->sortstring.empty() || (*second)->sortstring.empty()) return FilenameReverseCompareFunction(second, first); int ans; if ((ans = (*first)->sortstring.CmpNoCase((*second)->sortstring)) == 0) return SortULLReverseCompareFunction(second, first); // If they match, re-sort by ULL return ans; } static int wxCMPFUNC_CONV CompareFunctionLC_COLLATE(DataBase **first, DataBase **second) // // Sort based on the string inserted into sortstring. LC_COLLATE aware { int ans; if ((ans = wxStrcoll((*first)->sortstring.c_str(), (*second)->sortstring.c_str())) == 0) return wxStrcoll((*first)->ReallyGetName().c_str(), (*second)->ReallyGetName().c_str()); // If they match, re-sort by filename return ans; } static int wxCMPFUNC_CONV ReverseCompareFunctionLC_COLLATE(DataBase **second, DataBase **first) // // LC_COLLATE aware { int ans; if ((ans = wxStrcoll((*first)->sortstring.c_str(), (*second)->sortstring.c_str())) == 0) return wxStrcoll((*first)->ReallyGetName().c_str(), (*second)->ReallyGetName().c_str()); return ans; } static int wxCMPFUNC_CONV CompareFunction(DataBase **first, DataBase **second) // // Sort based on the string inserted into sortstring { int ans; if ((ans = (*first)->sortstring.CmpNoCase((*second)->sortstring)) == 0) return (*first)->ReallyGetName().CmpNoCase((*second)->ReallyGetName()); // If they match, re-sort by filename return ans; } static int wxCMPFUNC_CONV ReverseCompareFunction(DataBase **second, DataBase **first) { int ans; if ((ans = (*first)->sortstring.CmpNoCase((*second)->sortstring)) == 0) return (*first)->GetFilename().CmpNoCase((*second)->GetFilename()); return ans; } static int wxCMPFUNC_CONV (*FilenameCompareFunc)(DataBase**, DataBase**) = &FilenameCompareFunctionLC_COLLATE; static int wxCMPFUNC_CONV (*FilenameReverseCompareFunc)(DataBase**, DataBase**) = &FilenameReverseCompareFunctionLC_COLLATE; static int wxCMPFUNC_CONV (*FilenameULLCompareFunc)(DataBase**, DataBase**) = &SortFilenameULLLC_COLLATECompareFunction; static int wxCMPFUNC_CONV (*FilenameULLReverseCompareFunc)(DataBase**, DataBase**) = &SortFilenameULLReverseLC_COLLATECompareFunction; static int wxCMPFUNC_CONV SortintCompareFunction(DataBase **first, DataBase **second) // // Sort based on contents of sortint { if ((*first)->sortint == (*second)->sortint) return (*FilenameCompareFunc)(first, second); return (*first)->sortint - (*second)->sortint; } static int wxCMPFUNC_CONV SortULLCompareFunction(DataBase **first, DataBase **second) // // Sort based on contents of sortULL { if ((*first)->sortULL == (*second)->sortULL) return (*FilenameCompareFunc)(first, second); return ((*first)->sortULL > (*second)->sortULL) ? 1: -1; } static int wxCMPFUNC_CONV SortintReverseCompareFunction(DataBase **second, DataBase **first) { if ((*first)->sortint == (*second)->sortint) return (*FilenameReverseCompareFunc)(second, first); return (*first)->sortint - (*second)->sortint; } static int wxCMPFUNC_CONV SortULLReverseCompareFunction(DataBase **second, DataBase **first) { if ((*first)->sortULL == (*second)->sortULL) return (*FilenameReverseCompareFunc)(second, first); return ((*first)->sortULL > (*second)->sortULL) ? 1: -1; } static int wxCMPFUNC_CONV (*CompareFunc)(DataBase**, DataBase**) = &CompareFunctionLC_COLLATE; static int wxCMPFUNC_CONV (*ReverseCompareFunc)(DataBase**, DataBase**) = &ReverseCompareFunctionLC_COLLATE; void SetSortMethod(bool LC_COLLATE_aware) // If true, make the dirpane and treelistctrl sorting take account of LC_COLLATE { if (LC_COLLATE_aware) { FilenameCompareFunc = &FilenameCompareFunctionLC_COLLATE; FilenameReverseCompareFunc = &FilenameReverseCompareFunctionLC_COLLATE; FilenameULLCompareFunc = &SortFilenameULLLC_COLLATECompareFunction; FilenameULLReverseCompareFunc = &SortFilenameULLReverseLC_COLLATECompareFunction; CompareFunc = &CompareFunctionLC_COLLATE; ReverseCompareFunc = &ReverseCompareFunctionLC_COLLATE; } else { FilenameCompareFunc = &FilenameCompareFunction; FilenameReverseCompareFunc = &FilenameReverseCompareFunction; FilenameULLCompareFunc = &SortFilenameULLCompareFunction; FilenameULLReverseCompareFunc = &SortFilenameULLReverseCompareFunction; CompareFunc = &CompareFunction; ReverseCompareFunc = &ReverseCompareFunction; } } const int HEADER_HEIGHT = 12; // // The ht of the header column. Originally 23 FileGenericDirCtrl::FileGenericDirCtrl(wxWindow* parent, const wxWindowID id, const wxString& START_DIR , const wxPoint& pos, const wxSize& size, long style, bool full_tree, const wxString& name) : MyGenericDirCtrl(parent, (MyGenericDirCtrl*)this, id, START_DIR , pos, size , style , wxEmptyString, 0, name, ISRIGHT, full_tree), reverseorder(false), m_decimalsort(false) { m_StatusbarInfoValid = false; SelectedCumSize = 0; headerwindow = new TreeListHeaderWindow(this, NextID++, (MyTreeCtrl*)GetTreeCtrl()); ((MyTreeCtrl*)GetTreeCtrl())->headerwindow = headerwindow; CreateAcceleratorTable(); // For the define-an-ext subsubmenu of the context menu Connect(SHCUT_EXT_FIRSTDOT, SHCUT_EXT_LASTDOT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(TreeListHeaderWindow::OnExtSortMethodChanged), NULL, headerwindow); } void FileGenericDirCtrl::CreateAcceleratorTable() { int AccelEntries[] = { SHCUT_CUT, SHCUT_COPY, SHCUT_PASTE, SHCUT_HARDLINK, SHCUT_SOFTLINK, SHCUT_TRASH, SHCUT_DELETE, SHCUT_OPEN, SHCUT_OPENWITH, SHCUT_RENAME, SHCUT_NEW, SHCUT_UNDO, SHCUT_REDO, SHCUT_REFRESH, SHCUT_FILTER, SHCUT_TOGGLEHIDDEN, SHCUT_PROPERTIES, SHCUT_REPLICATE, SHCUT_SWAPPANES, SHCUT_SPLITPANE_VERTICAL, SHCUT_SPLITPANE_HORIZONTAL, SHCUT_SPLITPANE_UNSPLIT, SHCUT_GOTO_SYMLINK_TARGET, SHCUT_GOTO_ULTIMATE_SYMLINK_TARGET, SHCUT_SWITCH_FOCUS_OPPOSITE, SHCUT_SWITCH_FOCUS_ADJACENT, SHCUT_SWITCH_FOCUS_PANES, SHCUT_SWITCH_FOCUS_TERMINALEM, SHCUT_SWITCH_FOCUS_COMMANDLINE, SHCUT_SWITCH_FOCUS_TOOLBARTEXT, SHCUT_SWITCH_TO_PREVIOUS_WINDOW, SHCUT_PREVIOUS_TAB,SHCUT_NEXT_TAB, SHCUT_EXT_FIRSTDOT, SHCUT_EXT_MIDDOT, SHCUT_EXT_LASTDOT, SHCUT_DECIMALAWARE_SORT }; const size_t shortcutNo = sizeof(AccelEntries)/sizeof(int); MyFrame::mainframe->AccelList->CreateAcceleratorTable(this, AccelEntries, shortcutNo); } void FileGenericDirCtrl::RecreateAcceleratorTable() { // It would be nice to be able to empty the old accelerator table before replacing it, but trying caused segfaulting! CreateAcceleratorTable(); // Make a new one, with up-to-date data ((MyTreeCtrl*)GetTreeCtrl())->RecreateAcceleratorTable(); // Tell the tree to do likewise } void FileGenericDirCtrl::DoSize() { int w, h; GetClientSize(&w, &h); GetTreeCtrl()->SetSize(0, HEADER_HEIGHT + 1, w, h - HEADER_HEIGHT - 1); // Set the treectrl 'body' size headerwindow->SetSize(0, 0, w, HEADER_HEIGHT); // Set the header-window size headerwindow->SizeColumns(); // and adjust the columns intelligently. Also does the scrollbars } void FileGenericDirCtrl::ShowContextMenu(wxContextMenuEvent& event) { if (((MyTreeCtrl*)GetTreeCtrl())->QueryIgnoreRtUp()) return; // If we've been Rt-dragging & now stopped, we don't want a context menu int flags; // First, make sure there is a selection, unless the user Rt-clicked in mid-air if (GetPath().IsEmpty()) // If there is no selection, select one if that's what the user probably wants { wxTreeItemId item = GetTreeCtrl()->HitTest(GetTreeCtrl()->ScreenToClient(event.GetPosition()), flags); if (item.IsOk()) // Find out if we're on the level of a tree item GetTreeCtrl()->SelectItem(item); // If so, select it } else if (GetPath() == startdir) // If the selection is startdir, yet the click is directly on an item, select it. That's probably what the user wants { wxTreeItemId item = GetTreeCtrl()->HitTest(GetTreeCtrl()->ScreenToClient(event.GetPosition()), flags); if (item.IsOk() && !(flags & wxTREE_HITTEST_ONITEMRIGHT)) // Find out if we're on a tree item (& not in the space to the right of it) GetTreeCtrl()->SelectItem(item); } bool show_Open = false; bool show_OpenWith = false; bool show_OpenWithKdesu = false; bool ItsaDir; bool WithinArchive = arcman->IsArchive(); // Are we rummaging around inside a virtual archive? // See if the user has cleverly filtered out *all* of the pane's content. If so, use startdir (otherwise he can't get a contextmenu to reset the filter!) wxString filepath(GetPath()); NoVisibleItems = filepath.IsEmpty(); if (NoVisibleItems) filepath = startdir; // The NoVisibleItems flag is used by updateUI to disable menuitems like Del, Cut FileData stat(filepath); if (WithinArchive) ItsaDir = arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(filepath) != NULL; // We can't test for dir-ness except by finding one with this name else { ItsaDir = stat.IsDir(); // We need to know if this file is in fact a Dir. If so, we'll call it such in the menu if (stat.IsSymlink()) filepath = stat.GetUltimateDestination(); // If it's a symlink, make filepath the (ultimate) destination. This makes FiletypeManager behave more sensibly } FiletypeManager manager; manager.Init(filepath); // Use specialist class to get file info. NB this won't work inside archives; we'll do those in a minute char buf[3]; // A char array will hold the answers buf[0] = buf[1] = buf[2] = 0; if (manager.QueryCanOpen(buf)) // See if we can open the file by double-clicking, ie executable or ext with default command { show_OpenWith = buf[0]; // No, but the file exists show_Open = buf[1]; // Yes, we can open show_OpenWithKdesu = buf[2]; // Yes, but we need root privilege } wxMenu menu(wxT("")); int Firstsection[] = { SHCUT_CUT, SHCUT_COPY, SHCUT_PASTE, SHCUT_SOFTLINK, SHCUT_HARDLINK, SHCUT_SELECTALL, wxID_SEPARATOR }; const wxString Firstsectionstrings[] = { wxT(""), wxT(""), wxT(""), _("Make a S&ymlink"), _("Make a Hard-Lin&k"), wxT(""), wxT("") }; // Don't use some defaults, to avoid mnemonic clashes if (WithinArchive) { for (size_t n=0; n < 3; ++n) // We start with a section where it's easier to insert with a loop. Just the 1st 3 for archives MyFrame::mainframe->AccelList->AddToMenu(menu, Firstsection[n]); if (!ItsaDir) { show_Open = manager.QueryCanOpenArchiveFile(filepath); show_OpenWith = true; } MyFrame::mainframe->AccelList->AddToMenu(menu, wxID_SEPARATOR); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_EXTRACT, _("Extract from archive")); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DELETE, _("De&lete from archive")); if (ItsaDir) { MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_RENAME, _("Rena&me Dir within archive")); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DUP, _("Duplicate Dir within archive")); } else { MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_RENAME, _("Rena&me File within archive")); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DUP, _("Duplicate File within archive")); } } else { for (size_t n=0; n < 7; ++n) // We start with a section where it's easier to insert with a loop MyFrame::mainframe->AccelList->AddToMenu(menu, Firstsection[n], Firstsectionstrings[n]); wxString delmsg, trashmsg; if (ItsaDir) { delmsg = _("De&lete Dir"); trashmsg = _("Send Dir to &Trashcan"); } else if (stat.IsSymlink()) { delmsg = _("De&lete Symlink"); trashmsg = _("Send Symlink to &Trashcan"); } else { delmsg = _("De&lete File"); trashmsg = _("Send File to &Trashcan"); } MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_TRASH, trashmsg); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DELETE, delmsg); } menu.AppendSeparator(); if (!WithinArchive && stat.IsSymlink()) // If we're dealing with a symlink, add the relevant GOTO commands { MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_GOTO_SYMLINK_TARGET); if (stat.IsSymlinktargetASymlink()) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_GOTO_ULTIMATE_SYMLINK_TARGET); menu.AppendSeparator(); } if (show_Open) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_OPEN); if (show_OpenWithKdesu) { wxArrayString Commands; // Invent an array to pass in OfferChoiceOfApplics. Using CommandArray directly segfaulted if (manager.OfferChoiceOfApplics(Commands) && !show_OpenWith) // If there are known applics to offer for this filetype, & we're not about to do this below { wxMenu* submenu = new wxMenu; // make a submenu & populate it with the applics for (size_t n=0; n < manager.Array.GetCount(); ++n) submenu->Append(SHCUT_RANGESTART + n, manager.Array[n]); submenu->AppendSeparator(); // Finish the submenu with a separator followed by an 'Other' option -> OpenWith submenu->Append(SHCUT_OPENWITH, _("Other . . .")); menu.Append(NextID++, _("Open using root privile&ges with . . . . "),submenu); CommandArray = Commands; // Store any commands } else menu.Append(SHCUT_OPENWITH_KDESU, _("Open using root privile&ges")); // Give kdesu option if appropriate } if (show_OpenWith) { wxArrayString Commands; // Invent an array to pass in OfferChoiceOfApplics. Using CommandArray directly segfaulted if (manager.OfferChoiceOfApplics(Commands)) // If there are known applics to offer for this filetype { wxMenu* submenu = new wxMenu; // make a submenu & populate it with the applics for (size_t n=0; n < manager.Array.GetCount(); ++n) submenu->Append(SHCUT_RANGESTART + n, manager.Array[n]); submenu->AppendSeparator(); // Finish the submenu with a separator followed by an 'Other' option -> OpenWith submenu->Append(SHCUT_OPENWITH, _("Other . . .")); menu.Append(NextID++, _("Open &with . . . . "), submenu); CommandArray = Commands; // Store any commands } else MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_OPENWITH); } if (show_Open || show_OpenWith || show_OpenWithKdesu) // If there's an OpenSomething, add another separator menu.AppendSeparator(); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_REFRESH); if (!WithinArchive) { if (ItsaDir) { MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_RENAME, _("Rena&me Dir")); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DUP, _("&Duplicate Dir")); } else { MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_RENAME, _("Rena&me File")); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DUP, _("&Duplicate File")); } MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_NEW); menu.AppendSeparator(); // Now for Archive/Compression entries. Don't add any if there's no selection, otherwise choose depending on selected filetypes wxArrayString paths; bool arc=false, comp=false, ordinaryfile=false; size_t count = GetMultiplePaths(paths); for (size_t n=0; n < count; ++n) // Look thru every selection, seeing if there're any archives, compressed files, ordinary ones switch (Archive::Categorise(paths[n])) { case zt_invalid: ordinaryfile = true; break; case zt_taronly: arc = true; break; case zt_gzip: case zt_bzip: comp = true; break; default: comp = true; arc = true; // Default catches targz, tarbz, zip } if (arc || comp) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_EXTRACT); if (ordinaryfile || comp) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_CREATE,_("Create a New Archive")); // Explicit labels to avoid mnemonic clashes if (arc) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_APPEND, _("Add to an Existing Archive")); if (arc || comp) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_TEST, _("Test integrity of Archive or Compressed Files")); if (ordinaryfile) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_ARCHIVE_COMPRESS, _("Compress Files")); if (count) menu.AppendSeparator(); } MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_FILTER); if (GetShowHidden()) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_TOGGLEHIDDEN, _("&Hide hidden dirs and files")); else MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_TOGGLEHIDDEN, _("&Show hidden dirs and files")); if (GetIsDecimalSort()) MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DECIMALAWARE_SORT, _("&Sort filenames ending in digits normally")); else MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_DECIMALAWARE_SORT, _("&Sort filenames ending in digits in Decimal order")); menu.AppendSeparator(); wxMenu* colmenu = new wxMenu; colmenu->SetClientData((wxClientData*)this); // In >wx2.8 we must store ourself in the menu, otherwise MyFrame::DoColViewUI can't work out who we are int columns[] = { SHCUT_SHOW_COL_EXT, SHCUT_SHOW_COL_SIZE, SHCUT_SHOW_COL_TIME, SHCUT_SHOW_COL_PERMS, SHCUT_SHOW_COL_OWNER, SHCUT_SHOW_COL_GROUP, SHCUT_SHOW_COL_LINK, wxID_SEPARATOR, SHCUT_SHOW_COL_ALL, SHCUT_SHOW_COL_CLEAR }; for (size_t n=0; n < 10; ++n) // This submenu is easy to insert with a loop { MyFrame::mainframe->AccelList->AddToMenu(*colmenu, columns[n], wxEmptyString, (n < 7 ? wxITEM_CHECK : wxITEM_NORMAL)); #ifdef __WXX11__ if (n < 7) colmenu->Check(columns[n], !GetHeaderWindow()->IsHidden(n+1)); // The usual updateui way of doing this doesn't work in X11 #endif } int extsubmenu[] = { SHCUT_EXT_FIRSTDOT, SHCUT_EXT_MIDDOT, SHCUT_EXT_LASTDOT }; wxMenu* submenu = new wxMenu(_("An extension starts at the filename's...")); for (size_t n=0; n < 3; ++n) MyFrame::mainframe->AccelList->AddToMenu(*submenu, extsubmenu[n], wxEmptyString, wxITEM_RADIO); submenu->FindItem(extsubmenu[EXTENSION_START])->Check(); MyFrame::mainframe->AccelList->AddToMenu(*colmenu, wxID_SEPARATOR); colmenu->AppendSubMenu(submenu, _("Extension definition...")); menu.Append(NextID++, _("Columns to Display"), colmenu); int Secondsection[] = { wxID_SEPARATOR, SHCUT_SPLITPANE_VERTICAL, SHCUT_SPLITPANE_HORIZONTAL, SHCUT_SPLITPANE_UNSPLIT, wxID_SEPARATOR, SHCUT_REPLICATE, SHCUT_SWAPPANES, wxID_SEPARATOR }; const wxString Secondsectionstrings[] = { wxT(""), wxT(""), wxT(""), _("Unsplit Panes"), wxT(""), _("Repl&icate in Opposite Pane"), _("Swap the Panes"), wxT("") }; // Avoid some mnemonic clashes size_t ptrsize = sizeof(Secondsection)/sizeof(int); for (size_t n=0; n < ptrsize; ++n) // And another section where it's easier to insert with a loop MyFrame::mainframe->AccelList->AddToMenu(menu, Secondsection[n], Secondsectionstrings[n]); MyFrame::mainframe->Layout->m_notebook->LaunchFromMenu->LoadMenu(&menu); // Now add the User-defined Tools submenu if (!WithinArchive) { menu.AppendSeparator(); MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_PROPERTIES); } wxPoint pt = event.GetPosition(); ScreenToClient(&pt.x, &pt.y); PopupMenu(&menu, pt.x, pt.y); } void FileGenericDirCtrl::OpenWithSubmenu(wxCommandEvent& event) // Events from the submenu of the context menu end up here { if (!CommandArray.GetCount()) return; if (event.GetId() >= SHCUT_RANGEFINISH) return; wxString open = CommandArray[event.GetId() - SHCUT_RANGESTART]; if (open.IsEmpty()) return; wxString path = GetPath(); if (path.empty()) path = GetCwd(); // This may happen if we're trying to launch a grep-result from the terminalem FileData stat(path); // We need to stat again to check if read-access: all the old info was lost with Context menu bool usingsu = !arcman->IsArchive() && !stat.CanTHISUserRead(); // stat will be invalid if this is inside an archive: I don't believe we can fail to have permissions though FiletypeManager::Openfunction(open, usingsu); // Do the rest in FiletypeManager submethod, shared by 'Open with' etc } void FileGenericDirCtrl::NewFile(wxCommandEvent& event) // Create a new File or Dir { wxString path, name; int ItsADir, flag = 0; // Where to put the new item path = GetPath(); // Get path of selected item, in case it's a subdir if (path.IsEmpty()) path = startdir; // If no selection, use "root" else { FileData fd(path); if (!fd.IsDir()) path = path.BeforeLast(wxFILE_SEP_PATH); // If it's not a dir, it's a filename; remove this to leave the path } if (path.Last() != wxFILE_SEP_PATH) path += wxFILE_SEP_PATH; // Whichever, we almost certainly need to add a terminal '/' FileData DestinationFD(path); if (!DestinationFD.CanTHISUserWriteExec()) // Make sure we have permission to write to the dir { wxString msg; if (arcman != NULL && arcman->IsArchive()) msg = _("I'm afraid you can't Create inside an archive.\nHowever you can create the new element outside, then Move it in."); else msg = _("I'm afraid you don't have permission to Create in this directory"); wxMessageDialog dialog(this, msg, _("No Entry!"), wxOK | wxICON_ERROR); dialog.ShowModal(); return; } wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("NewFileOrDir")); do // Do the rest in a loop, to give a 2nd chance if there's a name clash etc { if (dlg.ShowModal() != wxID_OK) return; // If user cancelled, abort name = ((wxTextCtrl*)dlg.FindWindow(wxT("FileDir_text")))->GetValue(); // Get the desired name if (name.IsEmpty()) return; ItsADir = ((wxRadioBox*)dlg.FindWindow(wxT("FileDir_radiobox")))->GetSelection(); // Dir or File requested. File is 0, Dir 1 flag = MyGenericDirCtrl::OnNewItem(name, path, (ItsADir==1)); // Do the rest in MyGenericDirCtrl, as shared with MyDirs version } while (flag==wxID_YES); // Loop if requested: means there was an error & we want another go if (!flag) return; wxArrayInt IDs; IDs.Add(GetId()); // Update the panes MyFrame::mainframe->OnUpdateTrees(path, IDs); bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); UnRedoNewDirFile *UnRedoptr = new UnRedoNewDirFile(name, path, (ItsADir==1), IDs); // Make a new UnRedoNewDirFile UnRedoManager::AddEntry(UnRedoptr); // and store it for Undoing if (ClusterWasNeeded) UnRedoManager::EndCluster(); BriefLogStatus bls(ItsADir==1 ? _("New directory created") : _("New file created")); } void FileGenericDirCtrl::OnArchiveAppend(wxCommandEvent& event) { MyFrame::mainframe->OnArchiveAppend(event); } void FileGenericDirCtrl::OnArchiveTest(wxCommandEvent& event) { MyFrame::mainframe->OnArchiveTest(event); } void MyGenericDirCtrl::OnDup(wxCommandEvent& WXUNUSED(event)) { wxArrayString paths; size_t count = GetMultiplePaths(paths); if (!count) return; if (count > 1) DoMultipleRename(paths, true); else DoRename(true); // Because this method can also rename, "true" flags that this is duplication } void MyGenericDirCtrl::OnRename(wxCommandEvent& WXUNUSED(event)) // Rename a File or Dir { wxArrayString paths; size_t count = GetMultiplePaths(paths); if (!count) return; if (count > 1) DoMultipleRename(paths, false); else DoRename(false); // Because this method can also duplicate, "false" flags that this is a rename } void MyGenericDirCtrl::DoRename(bool duplicate, const wxString& pathtodup /*=wxT("")*/) // Renames (or duplicates) a File or Dir { wxString path, origname, newname, oldname, displayname; int ItsADir, flag = 0; bool renamingstartdir = false; if (pathtodup.IsEmpty()) origname = GetPath(); // Get name of selected item else origname = pathtodup; // This happens if we arrived here from the within-archive section of MyGenericDirCtrl::OnDnDMove if (origname.IsEmpty()) return; // If no selection, disappear while (origname.Len() > 1 && origname.Right(1) == wxFILE_SEP_PATH) origname.RemoveLast(); // Avoid '/' problems if (origname == wxT("/")) { wxString msg; if (duplicate) msg = _("I don't think you really want to duplicate root, do you"); else msg = _("I don't think you really want to rename root, do you"); wxMessageDialog dialog(this, msg, _("Oops!"), wxICON_ERROR); dialog.ShowModal(); return; } FileData fd(origname); ItsADir = fd.IsDir(); // Store whether it's a dir; needed later path = origname.BeforeLast(wxFILE_SEP_PATH); // Get the path for this dir or file: SHOULD work for both path += wxFILE_SEP_PATH; // Add back the terminal '/' // We need tocheck whether we're renaming within an archive: if so things are different MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); // Yes, I know we're inside MyGenericDirCtrl, but we want the correct pane bool WithinArc = (active && active->arcman && active->arcman->IsArchive()); FileData DestinationFD(path); if (!WithinArc && !DestinationFD.CanTHISUserWriteExec()) // Make sure we have permission to write to the dir { wxString msg; if (duplicate) msg = _("I'm afraid you don't have permission to Duplicate in this directory"); else msg = _("I'm afraid you don't have permission to Rename in this directory"); wxMessageDialog dialog(this, msg, _("No Entry!"), wxOK | wxICON_ERROR); dialog.ShowModal(); return; } wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("RenameDlg")); // Use the filename in the dialog title, prefixed by .../ oldname = origname.AfterLast(wxFILE_SEP_PATH); displayname = wxFILE_SEP_PATH + oldname; if (displayname.Len() < origname.Len()) displayname = wxT("...") + displayname; // Don't want a prefix for eg /home if (duplicate) dlg.SetTitle(_("Duplicate ") + displayname); // Use the title as a way to confirm we're trying to dup the right item else dlg.SetTitle(_("Rename ") + displayname); // or rename it do // Do the rest in a loop, to give a 2nd chance if there's a name clash etc { wxTextCtrl* text = (wxTextCtrl*)dlg.FindWindow(wxT("newfilename")); text->Clear(); // In case this isn't the first iteration of the loop text->ChangeValue(oldname); text->SetSelection(-1, -1); text->SetFocus(); text->SetInsertionPoint(0); // Insert the original name & highlight it. Then move to start of text, so that END will unselect: this being a likely thing to want to do if (dlg.ShowModal() != wxID_OK) return; // If user cancelled, abort newname = text->GetValue(); // Get the desired name if (newname.IsEmpty()) return; if (newname == oldname) { if (duplicate) wxMessageBox(_("No, the idea is that you supply a NEW name")); else wxMessageBox(_("No, the idea is that you CHANGE the name")); flag = wxID_YES; continue; } if (ItsADir) { oldname += wxFILE_SEP_PATH; newname += wxFILE_SEP_PATH; } // Make sure they're recognised as dirs if (!WithinArc) flag = Rename(path, oldname, newname, ItsADir, duplicate); // Do the actual rename/dup in a submethod else // Things are very different within an archive { wxArrayString filepaths, newpaths; // Make arrays so as to cope with renaming a dir: all its descendants need to be listed too filepaths.Add(path+oldname); newpaths.Add(path+newname); if (active->arcman->GetArc()->Alter(filepaths, duplicate ? arc_dup : arc_rename, newpaths)) // and do the rename { bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); wxArrayInt IDs; IDs.Add(GetId()); UnRedoArchiveRen* UnRedoptr = new UnRedoArchiveRen(filepaths, newpaths, IDs, active, duplicate); UnRedoManager::AddEntry(UnRedoptr); if (ClusterWasNeeded) UnRedoManager::EndCluster();; MyFrame::mainframe->OnUpdateTrees(path, IDs, wxT(""), true); DoBriefLogStatus(1, wxEmptyString, duplicate ?_("duplicated") : _("renamed")); return; } if (wxMessageBox(_("Sorry, that didn't work. Try again?"), _("Oops"), wxYES_NO) != wxYES) return; flag = wxID_YES; // This flags to retry } } while (flag==wxID_YES); // Loop if requested: means there was an error & we want another go if (!flag) return; if (ItsADir && !duplicate && origname == GetCwd()) // If we've just renamed the cwd, change the cwd. Otherwise Ctrl-T will fail SetWorkingDirectory(path + newname); wxArrayInt IDs; IDs.Add(GetId()); // Update the panes if (origname == startdir) // If we've just renamed startdir, need to do things differently { wxString newstartdir = path + newname.BeforeLast(wxFILE_SEP_PATH); // We know that newname ends in /, we just put it there! MyFrame::mainframe->OnUpdateTrees(origname, IDs, newstartdir);// Newstartdir will be substituted for the old one renamingstartdir = true; } else MyFrame::mainframe->OnUpdateTrees(path, IDs); bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); if (duplicate) { UnRedoDup* UnRedoptr = new UnRedoDup(path, path, oldname, newname, ItsADir, IDs); UnRedoManager::AddEntry(UnRedoptr); DoBriefLogStatus(1, wxEmptyString, _("duplicated")); } else { UnRedoRen* UnRedoptr; if (ItsADir) // To get the UnRedoRen right, if it's a dir, we have to merge path & names { newname = path + newname; if (renamingstartdir) UnRedoptr = new UnRedoRen(origname, newname, wxT(""), newname, ItsADir, IDs); // If renaming startdir, use 4th string as notification else UnRedoptr = new UnRedoRen(origname, newname, wxT(""), wxT(""), ItsADir, IDs); // Otherwise make a new UnRedoRen the standard way wxString filepath = newname; // While we're in a ItsADir area, we need to select the new dir, else nothing is selected & the fileview is empty while (filepath.Right(1) == wxFILE_SEP_PATH && filepath.Len() > 1) filepath.RemoveLast(); // We don't want a terminal '/' in FindIdForPath wxTreeItemId item = FindIdForPath(filepath); // Find the new dir's id, & use this to select it if (item.IsOk()) GetTreeCtrl()->SelectItem(item); } else UnRedoptr = new UnRedoRen(path, path, oldname, newname, ItsADir, IDs); DoBriefLogStatus(1, wxEmptyString, _("renamed")); UnRedoManager::AddEntry(UnRedoptr); } if (ClusterWasNeeded) UnRedoManager::EndCluster(); } void MyGenericDirCtrl::DoMultipleRename(wxArrayString& OriginalFilepaths, bool duplicate) // Renames (or duplicates) multiple files/dirs { if (!OriginalFilepaths.GetCount()) return; // We need tocheck whether we're renaming within an archive: if so things are different MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); // Yes, I know we're inside MyGenericDirCtrl, but it doesn't get IsArchive() right otherwise bool WithinArc = (active && active->arcman && active->arcman->IsArchive()); FileData DestinationFD(OriginalFilepaths[0].BeforeLast(wxFILE_SEP_PATH)); if (!WithinArc && !DestinationFD.CanTHISUserWriteExec()) // Make sure we have permission to write to the dir { wxString msg; if (duplicate) msg = _("I'm afraid you don't have permission to Duplicate in this directory"); else msg = _("I'm afraid you don't have permission to Rename in this directory"); wxMessageDialog dialog(this, msg, _("No Entry!"), wxOK | wxICON_ERROR); dialog.ShowModal(); return; } for (size_t count = OriginalFilepaths.GetCount(); count > 0; --count) { wxString name = OriginalFilepaths[count-1]; while (name.Len() > 1 && name.Right(1) == wxFILE_SEP_PATH) name.RemoveLast(); // Avoid '/' problems if (name == wxT("/")) { wxString msg; if (duplicate) msg = _("I don't think you really want to duplicate root, do you"); else msg = _("I don't think you really want to rename root, do you"); wxMessageDialog dialog(this, msg, _("Oops!"), wxICON_ERROR); dialog.ShowModal(); OriginalFilepaths.RemoveAt(count-1); if (OriginalFilepaths.GetCount()==1) // If as a result of removing /, we no longer have a multiple situation, revert to the single method { SetPath(OriginalFilepaths[0]); return DoRename(duplicate); } } } MultipleRename Mult(MyFrame::mainframe, OriginalFilepaths, duplicate); wxArrayString NewFilepaths = Mult.DoRename(); //This fills NewFilepaths with the altered filenames if (NewFilepaths.IsEmpty()) return; if (WithinArc) // If in archive, do things elsewhere { if (active->arcman->GetArc()->Alter(OriginalFilepaths, duplicate ? arc_dup : arc_rename, NewFilepaths)) { bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); wxArrayInt IDs; IDs.Add(GetId()); wxString path = OriginalFilepaths[0].BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; UnRedoArchiveRen* UnRedoptr = new UnRedoArchiveRen(OriginalFilepaths, NewFilepaths, IDs, active, duplicate); UnRedoManager::AddEntry(UnRedoptr); if (ClusterWasNeeded) UnRedoManager::EndCluster(); MyFrame::mainframe->OnUpdateTrees(path, IDs, wxT(""), true); DoBriefLogStatus(OriginalFilepaths.GetCount(), wxEmptyString, duplicate ? _("duplicated") :_("renamed")); } return; } int successes = 0; bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); for (size_t n = NewFilepaths.GetCount(); n > 0 ; --n) // Loop backwards, in case we're renaming both a dir & its children: the dir should be before children in the array { bool renamingstartdir = false; wxString origfilepath = OriginalFilepaths[n-1], newfilepath = NewFilepaths[n-1]; if (newfilepath.Right(1) == wxFILE_SEP_PATH) newfilepath.RemoveLast(); // Make sure we can do AfterLast in a minute to get the filename: can't use FileData before the file exists FileData Oldfd(origfilepath); bool ItsADir = Oldfd.IsDir(); wxString oldname = Oldfd.GetFilename(), newname = newfilepath.AfterLast(wxFILE_SEP_PATH), path = Oldfd.GetPath(); if (path.Right(1) != wxFILE_SEP_PATH) path += wxFILE_SEP_PATH; if (ItsADir) { oldname += wxFILE_SEP_PATH; newname += wxFILE_SEP_PATH; } // Make sure they'll be recognised as dirs Rename(path, oldname, newname, ItsADir, duplicate); // Do the actual rename/dup in a submethod ++successes; if (ItsADir && !duplicate && origfilepath == GetCwd()) // If we've just renamed the cwd, change the cwd. Otherwise Ctrl-T will fail SetWorkingDirectory(newfilepath); wxArrayInt IDs; IDs.Add(GetId()); // Update the panes if (origfilepath == startdir) // If we've just renamed startdir, need to do things differently { wxString newstartdir = path + newname.BeforeLast(wxFILE_SEP_PATH); // We know that newname ends in /, we just put it there! MyFrame::mainframe->OnUpdateTrees(origfilepath, IDs, newstartdir); // Newstartdir will be substituted for the old one renamingstartdir = true; } else MyFrame::mainframe->OnUpdateTrees(path, IDs); if (duplicate) { UnRedoDup* UnRedoptr = new UnRedoDup(path, path, oldname, newname, ItsADir, IDs); UnRedoManager::AddEntry(UnRedoptr); } else { UnRedoRen* UnRedoptr; if (ItsADir) // To get the UnRedoRen right, if it's a dir, we have to merge path & names { newname = path + newname; // Reconstitute the full filepath. Could have used newfilepath, but this way we know there's a terminal / if (renamingstartdir) UnRedoptr = new UnRedoRen(origfilepath, newname, wxT(""), newname, ItsADir, IDs); // If renaming startdir, use 4th string as notification else UnRedoptr = new UnRedoRen(origfilepath, newname, wxT(""), wxT(""), ItsADir, IDs); // Otherwise make a new UnRedoRen the standard way } else UnRedoptr = new UnRedoRen(path, path, oldname, newname, ItsADir, IDs); UnRedoManager::AddEntry(UnRedoptr); } } if (fileview==ISLEFT) { SetPath(startdir); // We need to select the (possibly new) startdir, else nothing is selected & the fileview is empty ReCreateTreeFromSelection(); } if (ClusterWasNeeded) UnRedoManager::EndCluster(); DoBriefLogStatus(successes, wxEmptyString, duplicate ? _("duplicated") :_("renamed")); } int MyGenericDirCtrl::OnNewItem(wxString& newname, wxString& path, bool ItsADir) { if ((newname == wxT(".")) || (newname == wxT("..")) || (newname == wxT("/"))) { wxMessageDialog dialog(this, _("Sorry, this name is Illegal\n Try again?"), _("Oops!"), wxYES_NO |wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } wxString filepath = path + newname; // Now we can combine path & name wxLogNull log; FileData fd(filepath); if (fd.IsValid()) { wxMessageDialog dialog(this, _("Sorry, One of these already exists\n Try again?"), _("Oops!"), wxYES_NO |wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } bool success; if (ItsADir) success = wxFileName::Mkdir(filepath, 0777, wxPATH_MKDIR_FULL); // If a dir is requested. wxPATH_MKDIR_FULL means intermediate dirs are created too else { wxFile file; success = file.Create(filepath); } // else ditto a file if (!success) { wxMessageDialog dialog(this, _("Sorry, for some reason this operation failed\nTry again?"), _("Oops!"), wxYES_NO |wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } return true; } int MyGenericDirCtrl::Rename(wxString& path, wxString& origname, wxString& newname, bool ItsADir, bool dup /*=false*/) { int answer; if ((newname == wxT(".")) || (newname == wxT("..")) || (newname == wxT("/"))) { wxMessageDialog dialog(this, _("Sorry, this name is Illegal\n Try again?"), _("Oops!"), wxYES_NO |wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } wxLogNull log; wxString filepath = path + newname; // Combine path & name, & check for pre-existence FileData newfilepath(filepath); if (newfilepath.IsValid()) { wxMessageDialog dialog(this, _("Sorry, that name is already taken.\n Try again?"), _("Oops!"), wxYES_NO | wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } wxString OriginalFilepath = path + origname; CheckDupRen CheckIt(this, OriginalFilepath, wxT("")); CheckIt.WhattodoifCantRead = DR_Unknown; FileData stat(OriginalFilepath); if (stat.IsDir()) // If OriginalFilepath is a dir, see if it has offspring { wxDir d(OriginalFilepath); CheckIt.IsMultiple = (d.HasSubDirs() || d.HasFiles()); // If so, there are >1 items to test so use different dialogs in case of failure } if (!CheckIt.CheckForAccess(dup)) return false; // This checks for Read permission failure. Pass dup, as if false (renaming) we don't want to check dir contents, only the dir itself // OK, we can go ahead with the Rename or Dup, subcontracting as CheckDupRen is already set up to do so if (ItsADir) { wxString origpath = path + origname, newpath = path + newname; answer = CheckDupRen::RenameDir(origpath, newpath, dup); } else answer = CheckDupRen::RenameFile(path, origname, newname, dup); if (!answer) { wxMessageDialog dialog(this, _("Sorry, for some reason this operation failed\nTry again?"), _("Oops!"), wxYES_NO |wxICON_ERROR); int ans = dialog.ShowModal(); if (ans==wxID_YES) return wxID_YES; return false; } return answer; } void FileGenericDirCtrl::OnToggleHidden(wxCommandEvent& event) // Ctrl-H { bool hidden = !GetShowHidden(); // Do the toggle ShowHidden(hidden); // & make it happen. This time, I'm not telling partner, as it's slightly more likely that we'll want hidden dirs but not files wxString path = GetPath(); UpdateStatusbarInfo(path); // Make it appear in the statusbar } void FileGenericDirCtrl::OnToggleDecimalAwareSort(wxCommandEvent& event) // ?Sort foo1, foo2, foo11 in decimal order { SetIsDecimalSort(!GetIsDecimalSort()); // Do the toggle RefreshTree(GetPath(), false); } void FileGenericDirCtrl::OpenWithKdesu(wxCommandEvent& event) // Execute, or Launch appropriate application for this file-type { wxString filepath = GetPath(); // Get the selected item. if (filepath.IsEmpty()) return; // Check there IS a valid selection FileData stat(filepath); // See if it's a symlink. If so, try to Open the target, as opening a symlink is unlikely to be sensible if (stat.IsSymlink()) filepath = stat.GetUltimateDestination(); if (!wxDirExists(filepath)) // If it's not a dir, try to process it { wxString WorkingDir = GetCwd(); // Change the working dir to the file's path. Some badly-written programs malfunction otherwise wxString thisdir = filepath.BeforeLast(wxFILE_SEP_PATH); SetWorkingDirectory(thisdir); FiletypeManager manager(filepath); manager.SetKdesu(); CommandArray.Clear(); manager.Open(CommandArray); SetWorkingDirectory(WorkingDir); // Revert to the original working directory } } void FileGenericDirCtrl::OnOpen(wxCommandEvent& WXUNUSED(event)) // From Context menu, passes on to Open { wxString filepath = GetPath(); // Get the selected item DoOpen(filepath); } void FileGenericDirCtrl::DoOpen(wxString& filepath) // From Context menu or DClick in pane or TerminalEm { FiletypeManager manager; if (filepath.IsEmpty()) return; // Check there IS a valid selection DataBase* stat; bool IsArchive = false; if (arcman && arcman->IsArchive()) IsArchive = true; if (IsArchive) stat = new FakeFiledata(filepath); else stat = new FileData(filepath); if (!IsArchive && stat->IsSymlink()) { filepath = ((FileData*)stat)->GetUltimateDestination(); // See if it's a symlink. If so, try to Open the target, as opening a symlink is unlikely to be sensible if (filepath.IsEmpty()) { delete stat; return; } // unless of course it's a broken symlink! } bool IsDir = stat->IsDir(); delete stat; if (IsDir) return; // If it's not a dir, try to open directly with FiletypeManager::Open() wxString WorkingDir = GetCwd(); // Change the working dir to the file's path. Some badly-written programs malfunction otherwise wxString thisdir = filepath.BeforeLast(wxFILE_SEP_PATH); SetWorkingDirectory(thisdir); manager.Init(filepath); CommandArray.Clear(); bool result = manager.Open(CommandArray); SetWorkingDirectory(WorkingDir); // Revert to the original working directory if (!result) return; // If returns false, we're done // If we're here, Open returned true, signifying there's applic-choice data in Array/CommandArray // So do a pop-up menu with them if (!CommandArray.GetCount()) return; // after a quick check wxMenu menu(wxT(" ")); // Make a menu & populate it with the known applics for (size_t n=0; n < manager.Array.GetCount(); ++n) menu.Append(SHCUT_RANGESTART + n, _("Open with ") + manager.Array[n]); menu.AppendSeparator(); // Finish with a separator followed by an 'Other' option -> OpenWith MyFrame::mainframe->AccelList->AddToMenu(menu, SHCUT_OPENWITH); wxPoint pt = ScreenToClient(wxGetMousePosition()); PopupMenu(&menu, pt.x, pt.y); // Now do the pop-up. This relays to OpenWithSubmenu() or OpenWith } void FileGenericDirCtrl::OnOpenWith(wxCommandEvent& event) { wxString filename = GetPath(); if (filename.IsEmpty()) return; FiletypeManager manager(filename); manager.OpenWith(); } void FileGenericDirCtrl::UpdateStatusbarInfo(const wxString& selected) // Feeds the other overload with a wxArrayString if called with a single selection { if (!selected.empty()) { wxArrayString arr; arr.Add(selected); UpdateStatusbarInfo(arr); } } void FileGenericDirCtrl::UpdateStatusbarInfo(const wxArrayString& selections) // Writes filter info to statusbar(3), & selections' names/size (or whatever) to statusbar(2) { // First the filter info into the 4th statusbar pane wxString filterinfo, start, filter = GetFilterString(); if (filter.IsEmpty()) filter = wxT("*"); // Translate "" into "*" start = (DisplayFilesOnly ? wxT(" F") : _(" D F")); // Create a message string, D for dirs if applicable, F for files, R for recursive subdirs if (SHOW_RECURSIVE_FILEVIEW_SIZE) start += (_(" R")); // R for recursive subdirs start += (GetShowHidden() ? _(" H ") : wxT(" ")); // Add whether we're displaying Hidden ones filterinfo.Printf(wxT("%s%s"),start.c_str(), filter.c_str()); // Merge into message string, adding the current filter MyFrame::mainframe->SetStatusText(filterinfo, 3); if (selections.IsEmpty()) { MyFrame::mainframe->SetStatusText(wxT(""), 2); return; } // Nothing to display if the first-and-only focus click was on a blank line wxString text; DataBase* stat; bool IsArchive = arcman && arcman->IsArchive(); size_t count = selections.GetCount(); if (!count) return; if (count == 1) { wxString selected(selections.Item(0)); if (IsArchive) // Archives have to be treated differently { FakeFiledata* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(selected); if (fd) { stat = new FakeFiledata(*fd); // We can't just make a new FakeFiledata: the size etc would be unknown; so copy the real one SelectedCumSize = stat->Size(); } else { FakeDir* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(selected); // If it wasn't a file, try for a dir if (!fd) return; stat = new FakeDir(*fd); if (SHOW_RECURSIVE_FILEVIEW_SIZE) SelectedCumSize = fd->GetTotalSize(); else SelectedCumSize = fd->GetSize(); } } else stat = new FileData(selected); if (!stat || !stat->IsValid()) { MyFrame::mainframe->SetStatusText(wxT(""), 2); return; } if (!stat->IsSymlink()) { text.Printf(wxT("%s: %s"), stat->TypeString().c_str(), selected.AfterLast(wxFILE_SEP_PATH).c_str()); if (m_StatusbarInfoValid) { text += wxString::Format(wxT(" %s"), ParseSize(SelectedCumSize, true).c_str()); if (stat->IsDir()) text += wxString::Format(wxT("%s"), SHOW_RECURSIVE_FILEVIEW_SIZE ? _(" of files and subdirectories") : _(" of files")); } } else { text.Printf(wxT("%s: %s"), stat->TypeString().c_str(), selected.AfterLast(wxFILE_SEP_PATH).c_str()); // If possible, add the symlink target if (stat->IsFake) { if (!stat->GetSymlinkDestination().IsEmpty()) { wxString target; target.Printf(wxT(" --> %s"), stat->GetSymlinkDestination(true).c_str()); text << target; } } else if (stat->GetSymlinkData()) { wxString target(wxT(" --> ")); size_t len = target.Len(); // Store length without target if (stat->GetSymlinkData()->IsValid()) target << stat->GetSymlinkDestination(true); // 'true' says to display relative symlinks as relative else target << ((FileData*)stat)->GetSymlinkData()->BrokenlinkName; // If !IsValid, display any known broken-link name if (target.Len() > len) // See if we've successfully appended a target i.e. added something to " --> " text << target; // If so, use it } } } else { size_t failures(0), dirs(0), files(0); if (IsArchive) SelectedCumSize = 0; for (size_t n=0; n < count; ++n) { wxString selected(selections.Item(n)); if (IsArchive) // Archives have to be treated differently { FakeFiledata* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(selected); if (fd) { stat = new FakeFiledata(*fd); // We can't just make a new FakeFiledata: the size etc would be unknown; so copy the real one SelectedCumSize += stat->Size(); } else { FakeDir* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(selected); // If it wasn't a file, try for a dir if (!fd) return; stat = new FakeDir(*fd); if (SHOW_RECURSIVE_FILEVIEW_SIZE) SelectedCumSize += fd->GetTotalSize(); else SelectedCumSize += fd->GetSize(); } } else stat = new FileData(selected); if (!stat || !stat->IsValid()) { ++failures; continue; } if (stat->IsDir()) ++dirs; else ++files; } if (failures < count) { if (SHOW_RECURSIVE_FILEVIEW_SIZE && dirs) text = wxString::Format(_("%s in %zu %s"), ParseSize(SelectedCumSize, true), count, _("files and directories")); else { text = wxString::Format("%s", ParseSize(SelectedCumSize, true)); wxString DirOrDirs = (dirs>1 ? _("directories"):_("directory")); wxString FileOrFiles = (files>1 ? _("files"):_("file")); if (dirs && files) text << wxString::Format(_(" in %zu %s and %zu %s"), dirs, DirOrDirs, files, FileOrFiles); else { if (dirs) text << wxString::Format(_(" in %zu %s"), dirs, DirOrDirs); else text << wxString::Format(_(" in %zu %s"), files, FileOrFiles); } } } } MyFrame::mainframe->SetStatusText(text, 2); delete stat; } void FileGenericDirCtrl::UpdateFileDataArray(const wxString& filepath) { if (filepath.empty()) return; FileData* fd = new FileData(filepath); UpdateFileDataArray(fd); } void FileGenericDirCtrl::UpdateFileDataArray(DataBase* fd) // Updates for a change in size etc after a modification { if (!fd->IsValid()) { delete fd; return; } for (size_t n=0; n < CombinedFileDataArray.Count(); ++n) { DataBase* item = &CombinedFileDataArray.Item(n); wxCHECK_RET(item->IsFake == fd->IsFake, wxT("Trying to replace a DataBase with one of a different type")); if (item->IsValid() && item->GetFilepath() == fd->GetFilepath()) { CumFilesize += fd->Size() - item->Size(); // Note any change in size CombinedFileDataArray.Insert(fd, n); CombinedFileDataArray.RemoveAt(n+1); return; } } delete fd; // We shouldn't get here, but if so we need to delete the FileData or it'll leak } void FileGenericDirCtrl::DeleteFromFileDataArray(const wxString& filepath) // Updates for a deletion { if (filepath.empty() || CombinedFileDataArray.IsEmpty()) return; for (int n = (int)CombinedFileDataArray.Count() - 1; n >= 0 ; --n) { DataBase* item = &CombinedFileDataArray.Item(n); if (item && item->GetFilepath() == filepath) { CumFilesize -= item->Size(); // Adjust for the change in size if (item->IsDir()) --NoOfDirs; else --NoOfFiles; CombinedFileDataArray.RemoveAt(n); return; } } } void FileGenericDirCtrl::ReloadTree(wxString path, wxArrayInt& IDs) // Either F5 or after eg a Cut/Paste/Del/UnRedo, to keep treectrl congruent with reality { // First decide whether it's important for this pane to be refreshed ie if it is/was the active pane, or otherwise if a file/dir that's just been acted upon is visible here wxWindowID pane = GetId(); // This is us for (unsigned int c=0; c < IDs.GetCount(); c++) // For every ID passed here, if (IDs[c] == pane) { ReCreateTreeFromSelection(); return; } // see if it's us. If so, recreate the tree unconditionally // There are 2 possibilities. Either the file/subdir that's just been acted upon is visible, or its not. Remember, invisible means no TreeItemId exists wxTreeItemId item = FindIdForPath(path); // Translate path into wxTreeItemId if (!item.IsOk()) // If it's not valid, { if (path != wxFILE_SEP_PATH) // & it's not root! { while (path.Last() == wxFILE_SEP_PATH && path.Len() > 1)// and if it's got a terminal '/' or two path.RemoveLast(); // remove it and try again without. item = FindIdForPath(path); // This is cos the last dir of a branch doesn't have them, yet path DOES, so would never match } } if (item.IsOk()) // If it's valid, the item is visible, so definitely refresh it ReCreateTreeFromSelection(); // Since this is a fileview, there's no percentage in trying to be clever. Just redo the tree } enum columntype FileGenericDirCtrl::GetSelectedColumn() // Get the 'selected' col ie that has the up/down icon to control sort-orientation { return headerwindow->GetSelectedColumn(); } void FileGenericDirCtrl::SetSelectedColumn(enum columntype col) // Set the 'selected' col ie that has the up/down icon to control sort-orientation { if (col==headerwindow->GetSelectedColumn()) // See if the clicked column is was already selected { headerwindow->ReverseSelectedColumn(); return; } // If so, reverse its sort order headerwindow->SelectColumn(col); // Otherwise this must be a new selection } void FileGenericDirCtrl::CreateColumns(bool left) // Sets the column parameters. The bool distinguishes a LeftTop from a RtBottom pane { int* pArray = (left ? ParentTab->tabdata->Lwidthcol : ParentTab->tabdata->Rwidthcol); // Tabdata widths were loaded here bool* pBool = (left ? ParentTab->tabdata->LColShown : ParentTab->tabdata->RColShown); // Tabdata Do-we-show-this-column? for (size_t n=0; n < TOTAL_NO_OF_FILEVIEWCOLUMNS; ++n) { wxTreeListColumnInfo col(wxT("")); col.SetAlignment(wxTL_ALIGN_LEFT); int width = pArray[n]; if (width == 0) // If there's no user-defined width for this column, use the default width = GetTreeCtrl()->GetCharWidth() * DEFAULT_COLUMN_WIDTHS[n]; col.SetDesiredWidth(width); // This is the width to use when/if the column is visible width = pBool[n]==true ? width : 0; // If it's not supposed to be visible atm, zero it col.SetWidth(width); headerwindow->AddColumn(col); } headerwindow->SizeColumns(); enum columntype selectedcol = (columntype)(left ? ParentTab->tabdata->Lselectedcol : ParentTab->tabdata->Rselectedcol); // The tabdata's selected col headerwindow->SelectColumn(selectedcol); bool reversesort = (left ? ParentTab->tabdata->Lreversesort : ParentTab->tabdata->Rreversesort); // Was the sort-order reversed if (reversesort) headerwindow->ReverseSelectedColumn(); bool decimalsort = (left ? ParentTab->tabdata->Ldecimalsort : ParentTab->tabdata->Rdecimalsort); // Similarly should we decimal-sort SetIsDecimalSort(decimalsort); ReCreateTree(); // Now we have to redo the tree, or the col selection/reverse doesn't happen } void FileGenericDirCtrl::OnColumnSelectMenu(wxCommandEvent& event) { headerwindow->OnColumnSelectMenu(event); } void FileGenericDirCtrl::HeaderWindowClicked(wxListEvent& event) // A L click occurred on a header window column to select or reverse-sort { int col = event.GetColumn(); if (col >= 0 && col < (int)headerwindow->GetColumnCount()) // If the column is valid, change the master column (or reverse-sort if it's the same one) SetSelectedColumn((enum columntype)col); // If invalid it'll be from a column "hide & change selected" situation, so we've already done this ReCreateTree(); // This makes the change visible #if !defined(__WXGTK20__) headerwindow->Refresh(); // A gtk1.2 bug for a change: without this, the header doesn't scroll back to 0, yet the fileview does #endif } void FileGenericDirCtrl::SortStats(FileDataObjArray& array) // Sorts the FileData array according to column selection { static const wxString NUMBERS = wxT("0123456789"); bool reverse = headerwindow->GetSortOrder(); switch(headerwindow->GetSelectedColumn()) // Since the col selection defines the sort method required { case filename: if (reverse) // Here we're just sorting on the filepath, so use it direct, reverse or otherwise { if (GetIsDecimalSort()) { for (size_t n = 0; n < array.GetCount(); ++n) // For each array entry, { wxString filename = array[n].GetFilename().BeforeFirst(wxT('.')); size_t pos = filename.find_last_not_of(NUMBERS); if (pos != wxString::npos) { array[n].sortstring = filename.Mid(0, pos+1); wxULongLong_t ull((wxULongLong_t)-1); filename.Mid(pos+1).ToULongLong(&ull); array[n].sortULL = ull; } } array.Sort((*FilenameULLReverseCompareFunc)); } else array.Sort((*FilenameReverseCompareFunc)); } else { if (GetIsDecimalSort()) { for (size_t n = 0; n < array.GetCount(); ++n) // For each array entry, { wxString filename = array[n].GetFilename().BeforeFirst(wxT('.')); size_t pos = filename.find_last_not_of(NUMBERS); if (pos != wxString::npos) { array[n].sortstring = filename.Mid(0, pos+1); wxULongLong_t ull((wxULongLong_t)-1); filename.Mid(pos+1).ToULongLong(&ull); array[n].sortULL = ull; } } array.Sort(FilenameULLCompareFunc); } else array.Sort((*FilenameCompareFunc)); } break; case ext: for (size_t n = 0; n < array.GetCount(); ++n) { wxString ext = (array[n].GetFilename().Mid(1)).AfterFirst(wxT('.')); // Note the Mid(1) to avoid hidden files being called ext.s! array[n].sortstring = ext; // If we define an 'ext' as 'after the first dot', that's it if (EXTENSION_START > 0) // but for others: { size_t pos = ext.rfind(wxT('.')); if (pos != wxString::npos) { array[n].sortstring = ext.Mid(pos+1); // We've found a last dot. Store the remaining string if (EXTENSION_START == 1) // and then, if so configured, look for a penultimate one { pos = ext.rfind(wxT('.'), pos-1); if (pos != wxString::npos) array[n].sortstring = ext.Mid(pos+1); } } } } if (reverse) array.Sort((*ReverseCompareFunc)); else array.Sort((*CompareFunc)); break; case filesize: for (size_t n = 0; n < array.GetCount(); ++n) // For each array entry, array[n].sortULL = array[n].Size(); // We're sorting on the size, so put it in sortULL (wxULongLong) if (reverse) array.Sort(SortULLReverseCompareFunction); else array.Sort(SortULLCompareFunction); break; case modtime: for (size_t n = 0; n < array.GetCount(); ++n) // For each array entry, array[n].sortint = array[n].ModificationTime(); // We're sorting on an 'int' variable, so put it in sortint if (reverse) array.Sort(SortintReverseCompareFunction); else array.Sort(SortintCompareFunction); break; case permissions: for (size_t n = 0; n < array.GetCount(); ++n) array[n].sortstring = array[n].PermissionsToText(); if (reverse) array.Sort((*ReverseCompareFunc)); else array.Sort((*CompareFunction)); break; case owner: for (size_t n = 0; n < array.GetCount(); ++n) { array[n].sortstring = array[n].GetOwner(); if (array[n].sortstring.IsEmpty()) array[n].sortstring = wxT("zzz"); } if (reverse) array.Sort((*ReverseCompareFunc)); else array.Sort((*CompareFunction)); break; case group: for (size_t n = 0; n < array.GetCount(); ++n) { array[n].sortstring = array[n].GetGroup(); if (array[n].sortstring.IsEmpty()) array[n].sortstring = wxT("zzz"); } if (reverse) array.Sort((*ReverseCompareFunc)); else array.Sort((*CompareFunction)); break; case linkage: for (size_t n = 0; n < array.GetCount(); ++n) if (array[n].IsSymlink()) array[n].sortstring = array[n].GetSymlinkDestination(); else array[n].sortstring = wxT("zzz"); if (reverse) array.Sort((*ReverseCompareFunc)); else array.Sort((*CompareFunc)); } } void FileGenericDirCtrl::SelectFirstItem() { wxTreeItemId rootId = GetTreeCtrl()->GetRootItem(); if (rootId.IsOk()) { wxTreeItemIdValue cookie; wxTreeItemId firstId = GetTreeCtrl()->GetFirstChild(GetTreeCtrl()->GetRootItem(), cookie); if (firstId.IsOk()) GetTreeCtrl()->SelectItem(firstId); } } bool FileGenericDirCtrl::UpdateTreeFileModify(const wxString& filepath) // Called when a wxFSW_EVENT_MODIFY arrives { wxCHECK_MSG(!filepath.empty(), true, wxT("Called UpdateTreeFileModify() with empty fpath")); if (GetSelectedColumn() != filesize) return false; // We only need to recreate the tree to sort by size. Otherwise let the caller do a simpler update if (StripSep(filepath).BeforeLast(wxFILE_SEP_PATH) == StripSep(startdir)) // We know it's a fileview, so no need to look at other situations ReCreateTreeFromSelection(); return true; } bool FileGenericDirCtrl::UpdateTreeFileAttrib(const wxString& filepath) // Called when a wxFSW_EVENT_ATTRIB arrives { wxCHECK_MSG(!filepath.empty(), true, wxT("Called UpdateTreeFileAttrib() with empty fpath")); int sorttype = GetSelectedColumn(); if ((sorttype < modtime) || (sorttype > group)) return false; // We only need to recreate the tree to sort by datetime, permissions, owner & group. Otherwise let the caller do a simpler update if (StripSep(filepath).BeforeLast(wxFILE_SEP_PATH) == StripSep(startdir)) // We know it's a fileview, so no need to look at other situations ReCreateTreeFromSelection(); return true; } void MyGenericDirCtrl::OnFilter(wxCommandEvent& WXUNUSED(event)) { wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("FilterDlg")); wxCheckBox* FilesChk = (wxCheckBox*)dlg.FindWindow(wxT("FilesOnly")); if (fileview==ISLEFT) { wxSizer* sizer = FilesChk->GetContainingSizer(); // If we're a dirview, remove this checkbox, as we can't display files anyway FilesChk->Hide(); // For some reason we seem to have to hide it first if (sizer->Detach(FilesChk)) FilesChk->Destroy(); } else FilesChk->SetValue(DisplayFilesOnly); // If it's a fileview, Set the checkbox according to the pane's current status if (!FilterHistory.Count()) FilterHistory.Add(wxT("*")); // If there's no history, provide '*' wxComboBox* combo = (wxComboBox*)dlg.FindWindow(wxT("Combo")); for (size_t n=0; n < FilterHistory.Count(); ++n) combo->Append(FilterHistory[n]); // Add history to combobox if (FilterHistory.Count()) combo->SetValue(FilterHistory[0]); // Select the last-used value HelpContext = HCfilter; if (dlg.ShowModal() != wxID_OK) { HelpContext = HCunknown; return; } HelpContext = HCunknown; bool FilesOnly = false; if (fileview==ISRIGHT) FilesOnly = FilesChk->GetValue(); // If we're a fileview, see if we should be displaying files only wxString selection = combo->GetValue(); if (((wxCheckBox*)dlg.FindWindow(wxT("Reset")))->GetValue() == true) // If the Reset checkbox is ticked, kill any selection from the combobox selection.Empty(); int index = FilterHistory.Index(selection, false); // See if this command already exists in the history array if (index != wxNOT_FOUND) FilterHistory.RemoveAt(index); // If so, remove it. We'll add it back into position zero FilterHistory.Insert(selection, 0); // Either way, insert into position zero if (selection == wxT("*")) selection.Empty(); // Since emptystring is equivalent SetFilterArray(selection, FilesOnly); // Set this pane's filter wxArrayInt IDs; IDs.Add(GetId()); MyFrame::mainframe->OnUpdateTrees(startdir, IDs, wxT(""), true); // & refresh if (((wxCheckBox*)dlg.FindWindow(wxT("AllPanes")))->GetValue() == true) // If the AllPanes checkbox is ticked, { wxArrayInt IDs; IDs.Add(partner->GetId()); if (partner != NULL) // Do our twin { partner->SetFilterArray(selection, FilesOnly); wxArrayInt IDs; IDs.Add(partner->GetId()); MyFrame::mainframe->OnUpdateTrees(partner->startdir, IDs, wxT(""), true); } if (ParentTab->GetSplitStatus() != unsplit) // If the tab is split, do the other side too { MyGenericDirCtrl* oppositepane = GetOppositeDirview(); if (oppositepane == NULL) return; oppositepane->SetFilterArray(selection, FilesOnly); wxArrayInt IDs; IDs.Add(oppositepane->GetId()); MyFrame::mainframe->OnUpdateTrees(oppositepane->startdir, IDs, wxT(""), true); if (oppositepane->partner != NULL) { oppositepane->partner->SetFilterArray(selection, FilesOnly); wxArrayInt IDs; IDs.Add(oppositepane->partner->GetId()); MyFrame::mainframe->OnUpdateTrees(oppositepane->partner->startdir, IDs, wxT(""), true); } } } } void MyGenericDirCtrl::SetFilterArray(const wxString& filterstring, bool FilesOnly /*=false*/) // Parse the string into individual filters & store in array { GetFilterArray().Clear(); if (!filterstring.IsEmpty()) { wxStringTokenizer tkz(filterstring, wxT(",|"), wxTOKEN_STRTOK); // The filters may be separated by ',' or '|' (but not spaces. What if "ext_with_a_space.ex t") while (tkz.HasMoreTokens()) { wxString fil = tkz.GetNextToken(); fil.Trim(true); fil.Trim(false); GetFilterArray().Add(fil); } } else GetFilterArray().Add(wxEmptyString); DisplayFilesOnly = FilesOnly; } wxString MyGenericDirCtrl::GetFilterString() // Turns the filterarray back into "*.jpg | *.png" { wxString CombinedFilters; for (size_t n=0; n < GetFilterArray().GetCount(); ++n) // Go thru the list of filters, appending to the CombinedFilters string { wxString fil = GetFilterArray().Item(n); if (!fil.IsEmpty()) { if (!CombinedFilters.IsEmpty()) CombinedFilters += wxT(" | "); // If there's already data, add a separator CombinedFilters += fil; } } return CombinedFilters; } void MyGenericDirCtrl::OnProperties(wxCommandEvent& WXUNUSED(event)) { static const wxChar* MiscPermissionStrings[] = { wxT("OtherExec"), wxT("OtherWrite"), wxT("OtherRead"), wxT("GroupExec"), wxT("GroupWrite"), wxT("GroupRead"), wxT("UserExec"), wxT("UserWrite"), wxT("UserRead"), wxT("Sticky"), wxT("Sguid"), wxT("Suid"), wxT("PermStatic1"), wxT("PermStatic2"), wxT("PermStatic3"), wxT("PermStatic4"), wxT("PermStatic5"), wxT("PermStatic6"), wxT("PermStatic7") }; wxArrayString filepaths; GetMultiplePaths(filepaths); if (filepaths.IsEmpty()) return; // Though there might be multiple selections, focus on the 1st for convenience. Multiple makes sense only chmod & chown. FileData* stat = new FileData(filepaths[0]); if (!stat->IsValid()) { delete stat; return; } wxDialog dlg; if (!stat->IsSymlink()) wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("PropertiesDlg")); else { if (stat->IsSymlinktargetASymlink()) { wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("UltSymlinkPropertiesDlg")); // The multiple-symlink version has 2 extra sections wxTextCtrl* UltTarget = (wxTextCtrl*)dlg.FindWindow(wxT("UltLinkTargetText")); UltTarget->SetValue(stat->GetUltimateDestination()); dlg.Connect(XRCID("UltLinkTargetBtn"), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&MyGenericDirCtrl::OnLinkTargetButton); } else wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("SymlinkPropertiesDlg")); // The Symlink version has 1 extra section } LoadPreviousSize(&dlg, wxT("PropertiesDlg")); PropertyDlg = &dlg; // Store the address of dlg, in case OnLinkTargetButton needs it ((wxNotebook*)dlg.FindWindow(wxT("PropertiesNB")))->SetSelection(MyFrame::mainframe->PropertiesPage); // Set the notebk page to that last used wxTextCtrl* Name = (wxTextCtrl*)dlg.FindWindow(wxT("Name")); Name->SetValue(stat->GetFilename()); wxStaticText* Path = (wxStaticText*)dlg.FindWindow(wxT("Path")); wxString path = filepaths[0].BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; Path = dynamic_cast(InsertEllipsizingStaticText(path, Path)); // Most paths are too big for the Path static, so use an elipsizing statictext wxCHECK_RET(Path, "InsertEllipsizingStaticText() failed"); wxTextCtrl* UserText = (wxTextCtrl*)dlg.FindWindow(wxT("UserText")); wxComboBox* UserCombo = (wxComboBox*)dlg.FindWindow(wxT("UserCombo")); bool isroot = (getuid()==0); // Are we root? if (isroot) // Only root can change ownership { wxSizer* sizer = UserText->GetContainingSizer(); // There is both a wxTextCtrl & a wxComboBox in this sizer. If we're root, remove the textctrl UserText->Hide(); // For some reason we seem to have to hide it first, if (sizer->Detach(UserText)) UserText->Destroy(); // & then remove it! And no, Layout() didn't work wxArrayString usernames; GetAllUsers(usernames); // Use this global function to get list of usernames for (size_t n=0; n < usernames.Count(); ++n) UserCombo->Append(usernames[n]); // Add them to combobox wxString owner = stat->GetOwner(); if (owner.IsEmpty()) owner.Printf(wxT("%u"), stat->OwnerID()); UserCombo->SetValue(owner); // Select the current owner; his name if available, else his id } else { wxSizer* sizer = UserCombo->GetContainingSizer(); // Similarly if we're not root: remove the combobox UserCombo->Hide(); if (sizer->Detach(UserCombo)) UserCombo->Destroy(); wxString owner = stat->GetOwner(); if (owner.IsEmpty()) owner.Printf(wxT("%u"), stat->OwnerID()); UserText->SetValue(owner); } wxComboBox* Group = (wxComboBox*)dlg.FindWindow(wxT("Group")); wxArrayString groupnames; GetProcessesGroupNames(groupnames); // Use this global function to get list of alternative group-names for (size_t n=0; n < groupnames.Count(); ++n) Group->Append(groupnames[n]); // Add them to combobox Group->SetValue(stat->GetGroup()); // Set combobox to current group ((wxStaticText*)dlg.FindWindow(wxT("Type")))->SetLabel(stat->TypeString()); ((wxStaticText*)dlg.FindWindow(wxT("SizeStatic")))->SetLabel(stat->Size().ToString() + wxT(" B")); wxDateTime time(stat->ModificationTime()); ((wxStaticText*)dlg.FindWindow(wxT("ModStatic")))->SetLabel(time.Format(wxT("%x %X"))); time.Set(stat->AccessTime()); ((wxStaticText*)dlg.FindWindow(wxT("AccessStatic")))->SetLabel(time.Format(wxT("%x %X"))); time.Set(stat->ChangedTime()); ((wxStaticText*)dlg.FindWindow(wxT("ChangedStatic")))->SetLabel(time.Format(wxT("%x %X"))); size_t perms = stat->GetPermissions(); // Get current permissions in numerical form for (int n=0; n < 12; ++n) // & set each checkbox appropriately. Note the clever-clever use of << to select each bit ((wxCheckBox*)dlg.FindWindow(MiscPermissionStrings[n]))->SetValue(perms & (1 << n)); if (stat->IsSymlink()) { if (stat->TypeString() == wxT("Broken Symbolic Link")) // If a broken symlink, disable the GoToTarget button { wxWindow* win = dlg.FindWindow(wxT("LinkTargetBtn")); if (win) win->Disable(); } ((wxTextCtrl*)dlg.FindWindow(wxT("LinkTargetText")))->SetValue(stat->GetSymlinkDestination(true)); // 'true' says to display relative symlinks as relative dlg.Connect(XRCID("LinkTargetBtn"), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&MyGenericDirCtrl::OnLinkTargetButton); dlg.Connect(XRCID("Browse"), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&MyGenericDirCtrl::OnBrowseButton); } // Now do the Permissions/Ownership page bool writable = stat->CanTHISUserRename(); if (!writable) { Name->Enable(false); Path->Enable(false); } bool chmodable = stat->CanTHISUserChmod(); if (!chmodable) { for (int n=0; n < 19; ++n) ((wxCheckBox*)dlg.FindWindow(MiscPermissionStrings[n]))->Enable(false); Group->Enable(false); // The requirements for changing group are the same as for chmod } if (!isroot) UserText->Enable(false); // Only root can change ownership wxCheckBox* Recursebox = (wxCheckBox*)dlg.FindWindow(wxT("RecurseCheck")); bool queryrecurse=false; for (size_t sel=0; sel < filepaths.GetCount(); ++sel) { FileData selstat(filepaths[sel]); if (selstat.IsDir()) queryrecurse = true; } Recursebox->Show(queryrecurse); // Don't show the Apply to Descendants checkbox unless >0 selection's a dir! // Now do the Esoterica page ((wxStaticText*)dlg.FindWindow(wxT("DeviceID")))->SetLabel(wxString::Format(wxT("%d"), (int)stat->GetDeviceID())); ((wxStaticText*)dlg.FindWindow(wxT("Inode")))->SetLabel(wxString::Format(wxT("%u"), (uint)stat->GetInodeNo())); ((wxStaticText*)dlg.FindWindow(wxT("Hardlinks")))->SetLabel(wxString::Format(wxT("%u"), (uint)stat->GetHardLinkNo())); ((wxStaticText*)dlg.FindWindow(wxT("BlockNo")))->SetLabel(wxString::Format(wxT("%u"), (uint)stat->GetBlockNo())); ((wxStaticText*)dlg.FindWindow(wxT("Blocksize")))->SetLabel(wxString::Format(wxT("%lu"), stat->GetBlocksize())); ((wxStaticText*)dlg.FindWindow(wxT("OwnerID")))->SetLabel(wxString::Format(wxT("%u"), stat->OwnerID())); ((wxStaticText*)dlg.FindWindow(wxT("GroupID")))->SetLabel(wxString::Format(wxT("%u"), stat->GroupID())); bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); // Start a new UnRedoManager cluster. Doing it here catches both rename & changesymlinktarget do { HelpContext = HCproperties; int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("PropertiesDlg")); if (ans != wxID_OK) { MyFrame::mainframe->PropertiesPage = ((wxNotebook*)dlg.FindWindow(wxT("PropertiesNB")))->GetSelection(); // Save the notebook pageno HelpContext = HCunknown; delete stat; if (ClusterWasNeeded) UnRedoManager::EndCluster(); return; // If user cancelled, abort } HelpContext = HCunknown; if (writable) // If user was allowed to change the filename { if (Name->GetValue() != stat->GetFilename()) // & has, { bool ItsADir = stat->IsDir(); wxString path = Path->GetLabel() + wxFILE_SEP_PATH, oldname = stat->GetFilename(), newname = Name->GetValue(); int ans = Rename(path, oldname, newname, ItsADir); if (ans == wxID_YES) continue; // If there's a filename problem, redo the dialog if (ans) { wxString newstartdir = path + newname; bool renamingstartdir = false; wxArrayInt IDs; IDs.Add(GetId()); // Update the panes if (path.BeforeLast(wxFILE_SEP_PATH) == startdir) // If we've just renamed startdir, need to do things differently { MyFrame::mainframe->OnUpdateTrees(path, IDs, newstartdir); // Newstartdir will be substituted for the old one renamingstartdir = true; } else MyFrame::mainframe->OnUpdateTrees(path, IDs); UnRedoRen* UnRedoptr; if (ItsADir) { path += oldname; if (renamingstartdir) UnRedoptr = new UnRedoRen(path, newstartdir, wxT(""), newstartdir, ItsADir, IDs); // If renamingstartdir, use 4th string as notification else UnRedoptr = new UnRedoRen(path, newstartdir, wxT(""), wxT(""), ItsADir, IDs); // Otherwise make an UnRedoRen the standard way } else UnRedoptr = new UnRedoRen(path, path, oldname, newname, ItsADir, IDs); UnRedoManager::AddEntry(UnRedoptr); // Since we've just changed the name, we need to recreate stat to match. If not, there'd be failures below delete stat; stat = new FileData(newstartdir); if (!stat->IsValid()) { delete stat; if (ClusterWasNeeded) UnRedoManager::EndCluster(); return; } } } } if (stat->IsSymlink()) { wxString dest = ((wxTextCtrl*)dlg.FindWindow(wxT("LinkTargetText")))->GetValue(); if (!dest.IsEmpty() && dest != stat->GetSymlinkDestination(true)) { wxString absolute(dest); if (!dest.StartsWith( wxString(wxFILE_SEP_PATH) )) absolute = StrWithSep(GetActiveDirPath()) + dest; // FileDatas can't cope with relative names so temporarily make absolute FileData deststat(absolute); if (!deststat.IsValid()) // If the desired new target doesn't exist { wxMessageDialog dialog(this, _("The new target for the link doesn't seem to exist.\nTry again?"), wxT(""),wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() == wxID_YES) continue; // Try again } else { wxString currentfilepath = stat->GetFilepath(), oldtarget = stat->GetSymlinkDestination(true); bool result = CheckDupRen::ChangeLinkTarget(currentfilepath, dest); if (!result) wxMessageBox(_("For some reason, changing the symlink's target seems to have failed. Sorry!")); else { wxArrayInt IDs; IDs.Add(GetId()); MyFrame::mainframe->OnUpdateTrees(currentfilepath, IDs, "", true); // 'true' forces a refresh in case the symlink icon needs to change to/from broken UnRedoChangeLinkTarget *UnRedoptr = new UnRedoChangeLinkTarget(currentfilepath, IDs, dest, oldtarget); UnRedoManager::AddEntry(UnRedoptr); // Since we've just deleted/recreated the link, we need to recreate stat to match. If not, there'd be failures below delete stat; stat = new FileData(currentfilepath); if (!stat->IsValid()) { delete stat; if (ClusterWasNeeded) UnRedoManager::EndCluster(); return; } } } } } break; } while(true); bool Recurse = Recursebox->GetValue(); // (If >0 selection is a dir) are we supposed to implement changes recursively? size_t totalpsuccesses=0, totalpfailures=0, totalosuccesses=0, totalofailures=0, totalgsuccesses=0, totalgfailures=0; wxArrayInt IDs; IDs.Add(GetId()); for (size_t sel=0; sel < filepaths.GetCount(); ++sel) { size_t psuccesses=0, pfailures=0, osuccesses=0, ofailures=0, gsuccesses=0, gfailures=0; FileData* stat = new FileData(filepaths[sel]); if (!stat->IsValid()) { delete stat; continue; } if (isroot) // Only root can change owner { long uid; wxString newuser = UserCombo->GetValue(); // This will usually be a name, but... if (newuser.ToLong(&uid)) // check if a number was entered e.g. 999 in a *buntu livecd RecursivelyChangeAttributes(stat->GetFilepath(), IDs, uid, osuccesses, ofailures, ChangeOwner, Recurse); // If so, use it else { struct passwd p, *result; // Otherwise find the pw-struct for the selected user-name static const size_t bufsize = 4096; char buf[bufsize]; getpwnam_r(newuser.mb_str(wxConvUTF8), &p, buf, bufsize, &result); if (result != NULL) // Try to change to this user. Nothing will happen if no change was made RecursivelyChangeAttributes(stat->GetFilepath(), IDs, result->pw_uid, osuccesses, ofailures, ChangeOwner, Recurse); } } if (chmodable) // Now group & permissions, which have the same Access requirement { long gid; wxString newgroup = Group->GetValue(); if (newgroup.ToLong(&gid)) RecursivelyChangeAttributes(stat->GetFilepath(), IDs, gid, gsuccesses, gfailures, ChangeGroup, Recurse); else { struct group g, *result; static const size_t bufsize = 4096; char buf[bufsize]; getgrnam_r(newgroup.mb_str(wxConvUTF8), &g, buf, bufsize, &result); if (result != NULL) RecursivelyChangeAttributes(stat->GetFilepath(), IDs, result->gr_gid, gsuccesses, gfailures, ChangeGroup, Recurse); } size_t newperms = 0; for (int n=0; n < 12; ++n) // Create a new permissions int by <GetValue() << n); RecursivelyChangeAttributes(stat->GetFilepath(), IDs, newperms, psuccesses, pfailures, ChangePermissions, Recurse); // Try to change permissions, recursively if requested. Nothing will happen if no change was made } delete stat; totalpsuccesses += psuccesses; totalosuccesses += osuccesses; totalgsuccesses += gsuccesses; totalpfailures += pfailures; totalofailures += ofailures; totalpfailures += gfailures; } // Sum all possible successes/failures, in case eg both owner & group were changed size_t successes = totalpsuccesses+totalosuccesses+totalgsuccesses; size_t failures = totalpfailures+totalofailures+totalgfailures; if (successes + failures) // Only display if something was actually changed (or attempts failed) { wxString msg; msg.Printf(wxT("%u%s%u%s"), (uint)successes, _(" alterations successfully made, "), (uint)failures, _(" failures")); BriefLogStatus bls(msg); if (successes) MyFrame::mainframe->OnUpdateTrees(stat->GetFilepath(), IDs); // Update the panes if appropriate } if (ClusterWasNeeded) UnRedoManager::EndCluster(); int page = ((wxNotebook*)dlg.FindWindow(wxT("PropertiesNB")))->GetSelection(); MyFrame::mainframe->PropertiesPage = page<0 ? 0 : page; // Save the notebook pageno delete stat; } void MyGenericDirCtrl::OnLinkTargetButton(wxCommandEvent& event) // // If symlink-target button clicked in Properties dialog { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); // This method behaves as though it were static: we can't use 'this' as the active pane if (active) active->LinkTargetButton(event); // So jump to where we can! } void MyGenericDirCtrl::LinkTargetButton(wxCommandEvent& event) // // Recreate tree to goto selected link's target (or ultimate target) { if (PropertyDlg) PropertyDlg->EndModal(wxID_OK); // First shutdown the originating dialog GoToSymlinkTarget(event.GetId() == XRCID("UltLinkTargetBtn")); // Use another method to do the GoTo, as it's also used by a context menu entry } void MyGenericDirCtrl::GoToSymlinkTarget(bool ultimate) // // Goto selected link's target (or ultimate target) { FileData stat(GetPath()); if (!(stat.IsValid() && stat.GetSymlinkData()->IsValid())) return; // Locate the selected link's target (or ultimate target) wxString SymlinkTarget, storedSymlinkTarget; if (ultimate) SymlinkTarget = stat.GetUltimateDestination(); else SymlinkTarget = stat.MakeAbsolute(stat.GetSymlinkDestination(), stat.GetPath()); storedSymlinkTarget = SymlinkTarget; // OnOutsideSelect() alters the string OnOutsideSelect(SymlinkTarget); SetPath(storedSymlinkTarget); // OnOutsideSelect() only does the dir, not the file selection } void MyGenericDirCtrl::OnBrowseButton(wxCommandEvent& WXUNUSED(event)) // // If symlink-target Browse button clicked in Properties dialog { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); // This method behaves as though it were static: we can't use 'this' as the active pane if (active != NULL) active->BrowseButton(); // So jump to where we can! } void MyGenericDirCtrl::BrowseButton() // // The Browse button was clicked in Properties dialog { if (PropertyDlg == NULL) return; wxString currenttargetpath, currenttargetname; FileData stat(GetPath()); // We need to decide with which filepath to load the dialog if (stat.GetSymlinkData()->IsValid()) // Providing it's valid, use the symlink's current target { if (stat.GetSymlinkData()->IsDir()) { currenttargetpath = stat.GetSymlinkDestination(); currenttargetname = wxEmptyString; } else { currenttargetpath = stat.GetSymlinkDestination().BeforeLast(wxFILE_SEP_PATH); currenttargetname = stat.GetSymlinkDestination().AfterLast(wxFILE_SEP_PATH); } } else // Otherwise use the symlink itself { if (stat.IsDir()) { currenttargetpath = stat.GetFilepath(); currenttargetname = wxEmptyString; } else { currenttargetpath = stat.GetFilepath().BeforeLast(wxFILE_SEP_PATH); currenttargetname = stat.GetFilepath().AfterLast(wxFILE_SEP_PATH); } } FileDirDlg fdlg(PropertyDlg, FD_SHOWHIDDEN, currenttargetpath, _("Choose a different file or dir to be the new target")); if (fdlg.ShowModal() != wxID_OK) return; wxString newtarget = fdlg.GetFilepath(); ((wxTextCtrl*)PropertyDlg->FindWindow(wxT("LinkTargetText")))->SetValue(newtarget); // Paste into the textctrl } BEGIN_EVENT_TABLE(FileGenericDirCtrl,MyGenericDirCtrl) EVT_SIZE(FileGenericDirCtrl::OnSize) EVT_MENU(SHCUT_NEW, FileGenericDirCtrl::NewFile) EVT_MENU(SHCUT_SELECTALL, FileGenericDirCtrl::OnSelectAll) EVT_MENU(SHCUT_ARCHIVE_APPEND, FileGenericDirCtrl::OnArchiveAppend) EVT_MENU(SHCUT_ARCHIVE_TEST, FileGenericDirCtrl::OnArchiveTest) EVT_MENU(SHCUT_TOGGLEHIDDEN, FileGenericDirCtrl::OnToggleHidden) EVT_MENU(SHCUT_DECIMALAWARE_SORT, FileGenericDirCtrl::OnToggleDecimalAwareSort) EVT_MENU(SHCUT_OPENWITH, FileGenericDirCtrl::OnOpenWith) EVT_MENU(SHCUT_OPEN, FileGenericDirCtrl::OnOpen) EVT_MENU(SHCUT_OPENWITH_KDESU, FileGenericDirCtrl::OpenWithKdesu) EVT_MENU_RANGE(SHCUT_RANGESTART,SHCUT_RANGEFINISH, FileGenericDirCtrl::OpenWithSubmenu) EVT_MENU_RANGE(SHCUT_SHOW_COL_EXT, SHCUT_SHOW_COL_CLEAR, FileGenericDirCtrl::OnColumnSelectMenu) EVT_LIST_COL_CLICK(-1, FileGenericDirCtrl::HeaderWindowClicked) EVT_CONTEXT_MENU(FileGenericDirCtrl::ShowContextMenu) END_EVENT_TABLE() ./4pane-6.0/4Pane.appdata.xml0000644000175000017500000000174113205575137014600 0ustar daviddavid 4Pane.desktop CC0-1.0 GPL-3.0 4Pane File manager

4Pane is a highly configurable Linux filemanager. It has dual twin-panes, each of which has a directory tree-view pane and a detailed-list pane for files.

In addition to standard file manager things, it offers multiple undo and redo of most operations (including deletions), archive management including 'virtual browsing' inside archives, multiple renaming/duplication of files, a terminal emulator and user-defined tools.

http://www.4Pane.co.uk/4Pane624x351.png http://www.4pane.co.uk
./4pane-6.0/changelog0000644000175000017500000002376113560570754013362 0ustar daviddavid6.0 4Pane no longer builds with wxWidgets 2.8; it now requires 3.0 or higher. There's a faster way to reach the File OpenWith menu. Ctrl-Alt-doubleclick will now directly show the menu. When moving or pasting files, optionally retain their previous modification date. Support extracting/verifying 'rar' archives, if 'unrar' is installed, but not 'rar' creation. 'unrar' is freely available (though with a licence restriction) but the 'rar' licence is too restricted. Previewing images now supports svg files too. Add support for the LXQt DE by recognising its default editor, terminal and image viewer. 5.0 There is a simpler 'Find' dialog for everyday use. Just as the QuickGrep dialog is good enough for most greps, a simple one-page QuickFind that sets just the path, pattern and search-type will be sufficient for most searches. When large files are being moved or pasted, their progress is now displayed in the statusbar. It is now possible to make a particular fileview order its files in a decimal-aware way. This is helpful in the case of files with names like foo1.txt, foo2.txt, foo11.txt, foo12.txt, which normally sort as 1, 11, 12, 2. A fileview's contextmenu now has an entry that makes it sort such files more intelligently. Note that this only affects files with names that _end_ in digits, not those with digits elsewhere in the name. Building 4Pane now uses Automake. 4.0 Moving or pasting files now uses threads This allows 4Pane to be responsive even during pastes of very large files, and also makes it possible to cancel such pastes. A better method of detecting a file's system mime-type is now used 4Pane can now be built with clang as well as with g++ 3.0 It's now possible to use gtk3 instead of gtk2, providing the gtk3 version is sufficiently recent 4Pane now builds and runs on GNU Hurd, though some features are missing: in particular FilesystemWatcher and samba support There is now an optional Preview feature: hovering over an image or a text file will, after a delay, show the contents in a 'tooltip' Double-clicking on a file now uses the system's mime-type method to decide which application to use to open the file Previous versions used just 4Pane's built-in method. Now by default both are tried in turn, the system method first, but this can be changed in Options > Configuring 4Pane > Miscellaneous > Other 2.0 It's now possible to mount a remote partition over ssh, using sshfs. 4Pane now uses 'inotify' to keep it informed of changes to the filesystem. This means that the display updates to show altered dirs and files, whether they were changed by 4Pane itself or from elsewhere. This is enabled by default. Any /etc/fstab entries for network mounts (nfs, sshfs and samba) are now added to their 'mount' dialogs There's now a separate icon for broken symlinks. 1.0 For the musophobic, added the ability to use the keyboard to: navigate to/from the panes, terminal emulator, command-line and toolbar textctrl; return to the last-used control; navigate between dir-view and file-view, and to the opposite twinpane; cycle through multiple open tabs; User-defined command parameters can now have modifiers, better to specify which panes to select from. When the user does Copy on a treeitem, its filepath is now added to the (real) clipboard too. If 4Pane is built against >=wxGTK-2.9 it's also added to the primary selection. It's now possible to set a background colour to panes, optionally different for dirviews and fileviews. Added the ability to paste only the dirs in the clipboard, ignoring files. This makes it easy to replicate a directory tree. A greater range of compressed files and archives can now be handled. Assuming the relevant system libs are installed: Files compressed with xz, lzma, lzop and compress can now be decompressed and (all but the last) compressed. Standard 7z archives can be extracted, and tar.7z ones created and extracted. Cpio and ar archives can be extracted, as can rpm and deb packages. It's also possible to peek inside tar archives compressed with xz (lzma1 or 2), in addition to gzip and bzip2. There are now different tree icons to discriminate between archives, compressed archives and compressed files. It's now possible to change which part of a filename is displayed in the 'ext' column of a fileview. By default an extension is still considered to start at the first '.', but it's now possible to change this to the last or the penultimate one. 4Pane now will (by default) use stock icons for such things as Copy and Undo. Improved some non-stock icons. 4Pane now acquires more information about newly-found usb devices, and may not have to bother the user about them. There is now a built-in su/sudo front-end for executing commands with admin privileges. This is the default, but it's still possible to configure to use kdesu/gksu/etc/ instead 0.8.0 i18n-related improvements. There are now Italian and Danish translations available. Prevent a spurious second item being select after a pane is refreshed. Flag which is the currently-focused pane by subtly highlighting its header, or the top of its toolbar Provide mnemonics for (most) menuitems There's now a menu item 'Permanently Delete', which really deletes rather than just moving to a can A user-defined tool can now be set to refresh one or both of the visible panes when it's finished running 0.7.0 Make the Options dialog (and several others) smaller, so they'll fit on the screen of e.g. a netbook In the 'Terminals' tab of the options dialog, offer only installed terminals Work around recent konsole versions that don't notice the pwd Display dates according to the user's locale By default, make both dirviews and fileviews LC_COLLATE-aware when sorting their contents Adding a new nfs server address should now immediately display any available exports Added a 'prefix linenumbers' checkbox to the QuickGrep dialog Various bug-fixes and UI improvements when browsing inside archives; also it's now possible to overwrite files inside archives (instead of only being able to store duplicates) Fixed bug 2808315 (crash on opening the font dialog) Fixed a longstanding bug that caused i386 builds to fail to display correctly a filesize >4GB 0.6.0 Added a Quick-Grep dialog, for simpler everyday grepping. Added a "Working Directory" option for "Open With" and Editors. This allows the running of (not-properly-installed) apps that need to be cd.ed to first Added the User-defined Tools submenu to the Context menu Made the regex help-page work! 0.5.1 When mounting a removable device partition that's not in /etc/fstab, 4Pane now attempts to mount -o uid=1000,gid=100 (or whatever). Whether this works depends on the partition's filesystem. Changes to help distro packagers. Made optional the wizard's creation of a desktop shortcut. You can now choose, when Moving/Pasting a relative symlink, for its original target _not_ to be retained Turned on i18n support. Main bug-fixes: Made the 'About' dialog work! In some distros/situations D'n'D Move was Copying instead. Corrected quoting/globbing problems with the terminal emulator and Grep dialog 0.5.0 First release. Help and Configure. 0.4.3 Implemented "virtual" archives. Implemented Multiple Rename and Duplicate. 0.4.2 Renaming of tabs, optionally hiding single tab-heads etc. The Properties dialog can now do chown/chmod for multiple selections, and recursively. Can now mount/umount dvdram discs. Major changes to do with recognising fixed & usb devices when these are auto/supermounted. Also changes to Mount to cope with lvm Configurable shortcuts. Start of context-sensitive help. User-defined Tools. 0.4.1 Mounting NFS, Sambe and loop devices. Implemented Linking via menu/keyboard: before it was just D'n'D. It is now possible to select multiple files by Rt-dragging. 0.4.0 D'n'D is now done properly, with individualised images. User-defined dirview toolbar buttons. Mount/Unmount of partitions. Filtering of a pane's display 0.3.5 Properties dialog. Duplicate file/dir. First attempt at usb-device detection. 0.3.4 Fileview columns added 0.3.3 Horizontal tab splitting and unsplitting, save tab setup and tab templates. Tab duplication, swap panes. 0.3.2 Added Locate, Find and Grep dialogs, and the Terminal Emulator to display their output. Beginnings of Archive management. 0.3.1 Cut now works. UnRedo system improved to cope with it. Executable file can be launched by double-clicking, and "Open With" is available. 0.3.0 Bookmarks fully working. Add, delete and edit bookmarks and their folders. 0.2.5 The mini-toolbar in the dir-view now has working Directory Up, Forward and Back buttons. The latter 2 have sidebar-buttons which call drop-down menus for multiple forward/back movement. The selected dir or file is now displayed in an editable text-control on the toolbar. 0.2.0 Undo/Redo now fully implemented, including multiple levels. Originally each undo-able action had to be redone separately. Now they are collected in clusters of associated actions, which is much more user-friendly. Though still missing many features, Fileman is now my main file-manager, so it deserves to be called version 0.2 0.1.5 Tabs are working. Create new tabs, delete them, Copy/Paste between them. 0.1.3 Removable storage devices are now autodetected, and icons for each loaded onto the toolbar. Clicking these allows mounting etc whereupon their contents can be accessed just as in standard directories. 0.1.2 Editors of the user's choice have icons on the main toolbar. Clicking these launches the editor. Dragging a file onto an icon launches the editor with the file loaded. 0.1.0 Drag and Drop is functionally implemented. It's not yet beautiful, but I'm going to defer cosmetic improvements until everything else works! Fileman is now become just about useful, at least for simple things, so let's call it 0.1 0.0.5 Copy/Paste and Linking now work. 0.0.2 Dir-views now can display either the whole tree, or just a selected branch. 0.0.1 For the first time, this project is recognisably a file-manager. There are two views, each split into a directory view and a file view. ./4pane-6.0/Devices.h0000644000175000017500000005503113564230714013227 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Devices.h // Purpose: Mounting etc of Devices // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef DEVICESH #define DEVICESH #include "wx/wx.h" #include "wx/config.h" #include #include #include "Externs.h" class MyButtonDialog : public wxDialog { protected: void OnButtonPressed(wxCommandEvent& event){ EndModal(event.GetId()); } DECLARE_EVENT_TABLE() }; class MyBitmapButton : public wxBitmapButton { public: MyBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxT("MyBitmapButton")) : wxBitmapButton(parent, id, bitmap){ Ok = false; } MyBitmapButton(){ Ok = false; } static void SetUnknownButtonNo(); // Tries to locate the iconno of unknown.xpm bool IsOk() const { return Ok; } long ButtonNumber; // This distinguishes between the various buttons static long UnknownButtonNo; // In case a bitmap isn't found, use unknown.xpm protected: void SetIsOk(bool value) { Ok = value; } bool Ok; }; class DeviceBitmapButton : public MyBitmapButton { public: DeviceBitmapButton(enum devicecategory which); DeviceBitmapButton(); void OnEndDrag(); // Used when DragnDrop deposits on one of our toolbar buttons static void SaveDefaults(wxConfigBase* config=NULL); protected: void OnButtonClick(wxCommandEvent& event); void OnRightButtonClick(wxContextMenuEvent& event); #ifdef __WXX11__ void OnRightUp(wxMouseEvent& event){ OnRightButtonClick((wxContextMenuEvent&)event); } // EVT_CONTEXT_MENU doesn't seem to work in X11 #endif void OnMount(wxCommandEvent& event); void OnUnMount(wxCommandEvent& event); void OnMountDvdRam(wxCommandEvent& event); void OnDisplayDvdRam(wxCommandEvent& event); void OnUnMountDvdRam(wxCommandEvent& event); void OnEject(wxCommandEvent& event); DECLARE_EVENT_TABLE() }; class EditorBitmapButton : public MyBitmapButton { public: EditorBitmapButton(wxWindow *parent, size_t which); void OnEndDrag(); // Used when DragnDrop deposits on one of our toolbar buttons bool Ignore; protected: void OnButtonClick(wxCommandEvent& event); wxString Label, Launch, WorkingDir, Icon; long Icontype; bool Multiple; wxWindow* parent; private: DECLARE_EVENT_TABLE() }; struct DevicesStruct // Holds data for a device { wxString devicenode; // Holds eg /dev/fd0 or /dev/sda, even in the case of multipartition devices eg /dev/sda1, sda2 etc ie major number only int idVendor; int idProduct; // For usb etc devices, hold the (hopefully unique) ids of a device wxString Vendorstr, Productstr; // Again for usb devices, the vendor/model user-visible strings (which may have been altered by the user) wxString name1; wxString name2; wxString name3; // For dvds etc, name1 holds the 'typename' eg "cdrom". For Usb etc devices, hold the id strings that scsi uses for this device eg Hi SPACE, flash disk wxArrayString partitions; // Hold eg /dev/sda, or /dev/sda1, /dev/sda2 etc if this device has multiple partitions wxArrayString mountpts; // Hold eg /mount/floppy, or a series of mountpts for a device, 1 for each entry in wxArrayString 'partitions' int defaultpartition; // If this device contains several partitions, this indexes the one to use by default if not otherwise specified bool readonly; int ignore; // We know it exists, but we don't care! 0=false, 1=always ignore, 2=ignore today only int devicetype; // Indexes an item in the DeviceInfo::devinfo array, holding type info int buttonnumber; // Matches the ButtonNumber of the toolbar button bool OriginallyMounted; // When this prog started, was the device already mounted? If so, don't automatically umount on exit bool IsMounted; // Set/Unset by us when we mount/unmount bool HasButton; // Flags whether or not the device has already got a button on the toolbar DeviceBitmapButton* button; // The & of the corresponding button is stored here, so that we can find it within the device sizer for removal // The following are used for usb devices in a HAL/sys/udev setup wxString fname; // Holds a filename such as 8:0:0:0 which is a symlink to Hal data bool haschild; // Normally false but (for when several identical devices are attached at once) this flags that there's another device in 'next' struct DevicesStruct* next; // If dup > 0, this links to a struct holding data for another of these identical devices, linkedlist-wise DevicesStruct(){ idVendor=idProduct=0; devicetype = unknowncat; haschild=false; next=NULL; ignore = DS_false; readonly = false; } DevicesStruct(const DevicesStruct& ds) { devicenode=ds.devicenode; idVendor=ds.idVendor; idProduct=ds.idProduct; name1=ds.name1; name2=ds.name2; name3=ds.name3; Vendorstr=ds.Vendorstr; Productstr=ds.Productstr; readonly=ds.readonly; ignore=ds.ignore; defaultpartition = ds.defaultpartition; devicetype=ds.devicetype; haschild=false; next=NULL; for (size_t n=0; n < ds.mountpts.GetCount(); ++n) mountpts.Add(ds.mountpts.Item(n)); } ~DevicesStruct(){ if (next) delete next; } bool operator !=(const DevicesStruct& ds) const { if (idVendor && idProduct) return ((idVendor!=ds.idVendor) || (idProduct!=ds.idProduct)); // For usb devices these should be available and unique return (devicetype!=ds.devicetype) || (mountpts!=ds.mountpts) || (devicenode!=ds.devicenode) // Otherwise do it the hard way || (name1!=ds.name1) || (ignore!=ds.ignore) || (readonly!=ds.readonly); } }; struct PartitionStruct // Holds possible partitions, mountpts, mount status { wxString device; // Holds eg /dev/sda2 wxString type; // e.g. ext4 or swap. Used (iiuc) to avoid displaying swap partitions when not using lsblk wxString uuid; // Holds the uuid for the device, for use when /etc/fstab is uuid-based wxString label; // Similarly for mounting by label wxString mountpt; // Holds fstab's mountpt for this device bool IsMounted; }; struct NetworkStruct // Holds NFS or samba info { wxString ip; // Holds eg "192.168.0.1" wxString hostname; // The host or samba name for this machine wxArrayString shares; // Holds this machine's export or share-list wxString mountpt; // Holds fstab's mountpt for the highlit share, if exists bool readonly; // Available if loaded from /etc/fstab wxString user; // Ditto wxString passwd; // Ditto wxString texture; // Ditto (nfs only: may be hard or soft) NetworkStruct() : readonly(false) {} }; WX_DEFINE_ARRAY(DevicesStruct*, ArrayofDeviceStructs); // Define the arrays we'll be using WX_DEFINE_ARRAY(PartitionStruct*, ArrayofPartitionStructs); WX_DEFINE_ARRAY(NetworkStruct*, ArrayofNetworkStructs); struct DevInfo // Used by DeviceInfo to store info about a device { wxString name; // eg floppy, floppy A, dvdrom enum devicecategory cat; // eg floppycat, cdromcat enum treerooticon icon; // eg floppytype, cdtype bool CanDoDvdRam; }; WX_DEFINE_ARRAY(DevInfo*, ArrayofDevInfoStructs); class DeviceInfo // Holds & provides data about a device --- displayname, type, icon { public: DeviceInfo(); ~DeviceInfo(){ for (int n = (int)devinfo->GetCount(); n > 0; --n ) { DevInfo* item = devinfo->Item(n-1); delete item; } delete devinfo; } void Save(); wxString GetName(size_t index){ if (index >= devinfo->GetCount()) return wxEmptyString; return devinfo->Item(index)->name; } devicecategory GetCat(size_t index){ if (index >= devinfo->GetCount()) return unknowncat; return devinfo->Item(index)->cat; } treerooticon GetIcon(size_t index){ if (index >= devinfo->GetCount()) return twaddle; return devinfo->Item(index)->icon; } bool GetDvdRam(size_t index){ if (index >= devinfo->GetCount()) return false; return devinfo->Item(index)->CanDoDvdRam; } bool HasRemovableMedia(size_t index){ return ! HasPartitions(index); } // This is currently true: HasPartitions() is everything but cdroms & floppies. However BEWARE CHANGES bool HasPartitions(size_t index){ if (index >= devinfo->GetCount()) return false; return GetCat(index) < floppycat || GetCat(index) >= usbpencat; } bool ThisDevicetypeAutomounts(size_t index); bool CanDoDvdRam(size_t index){ if (index >= devinfo->GetCount()) return false; return devinfo->Item(index)->CanDoDvdRam; } enum discoverytable GetDiscoveryTableForThisDevicetype(enum treerooticon index); // Does this type of device get its data hotplugged into fstab, as opposed to mtab (or nowhere). And what about supermount? size_t GetCount(){ return devinfo->GetCount(); } void Add(wxString name, devicecategory cat, treerooticon icon, bool CanDoDvdRam=false); protected: bool Load(); void LoadDefaults(); ArrayofDevInfoStructs* devinfo; }; class DeviceAndMountManager; class DeviceManager // Class to manipulate device data & things like its mount & button status { public: DeviceManager(DeviceAndMountManager* dad) : parent(dad) { DeviceStructArray = new ArrayofDeviceStructs; DevInfo = new class DeviceInfo; } ~DeviceManager(); DevicesStruct* FindStructForDevice(size_t index); // Returns DeviceStructArray-entry after errorcheck DevicesStruct* FindStructForButtonNumber(int buttonnumber); // Returns DeviceStructArray-entry for the given buttonnumber bool Add(DevicesStruct* item1, DevicesStruct* item2); // See if the names of items 1 & 2 match DevicesStruct* GetNextDevice(size_t& count, size_t& child); // Iterates thru DeviceStructArray returning the next struct, but sidetracking down any children void LoadDevices(); // Loads cdrom etc config data and thence their toolbar icons void SaveFixedDevices(); // Saves cdrom etc data void SaveUsbDevices(); void Add(DevicesStruct* newitem); bool DevicesMatch(DevicesStruct* item1, DevicesStruct* item2); // See if the names of items 1 & 2 match void SetupConfigureFixedorUsbDevices(ArrayofDeviceStructs& tempDeviceStructArray); // Provides info about fixed or usb devices for Configure void ReturnFromConfigureFixedorUsbDevices(const ArrayofDeviceStructs& tempDeviceStructArray, const ConfigDeviceType whichtype); // Stores results of SetupConfigureFixedorUsbDevices() static void GetFloppyInfo(ArrayofDeviceStructs* DeviceStructArray, size_t FirstOtherDevice, DeviceAndMountManager* parent, bool FromWizard = false); // Try to determine what floppy drives are attached static bool GetCdromInfo(ArrayofDeviceStructs* DeviceStructArray, size_t FirstOtherDevice, DeviceAndMountManager* parent, bool FromWizard = false); // Try to determine what cd/dvdrom/r/ram devices are attached void ConfigureEditors(); // Similarly editors. Yes, I know that editors aren't devices, but it fits best here static void SaveMiscData(wxConfigBase* config = NULL);// Saves misc device config data ArrayofDeviceStructs* GetDevicearray() const { return DeviceStructArray; } size_t FirstOtherDevice; // Indexes the 1st item within DeviceStructArray that is an Other device, not a standard cdrom etc DeviceInfo* DevInfo; protected: void DisplayFixedDevicesInToolbar(); void LoadPossibleUsbDevices(); // These are flash-pens etc, devices which may be plugged in at any time void LoadMiscData(); // Loads misc device config data ArrayofDeviceStructs* DeviceStructArray; // To hold array of DevicesStructs DeviceAndMountManager* parent; }; #include "wx/textfile.h" class MyUsbDevicesTimer; #if wxVERSION_NUMBER < 3000 class MtabPollTimer; #endif class DeviceAndMountManager { public: DeviceAndMountManager(); ~DeviceAndMountManager(); wxString Mount(size_t whichdevice, bool OnOff=true); // Called when eg floppy-button is clicked, to (u)mount & display a floppy etc. wxString DoMount(DevicesStruct* tempstruct, bool OnOff, int partition = -1, bool DvdRam =false); // Mounts or Unmounts the device in tempstruct. Used mostly by Mount() void CheckForOtherDevices(); // Check for any other mountables eg USB devices. Called by timer DevicesStruct* QueryAMountpoint(const wxString& path, bool contains=false); // Called by MyGenericDirCtrl, to see if a particular path is a valid mountpt eg /mount/floppy void SearchTable(wxArrayString& partitions, wxArrayString& mountpts, wxString dev, enum treerooticon type=usbtype); // Relays to either SearchMtab() or SearchFstab() appropriate for this type of device void GetDevicePartitions(wxArrayString& partitions, wxArrayString& mountpts, wxString dev); // Parse /proc/partitions for dev's partitions. Return them in array, with any corresponding mountpts DevicesStruct* FindStructForDevice(size_t whichdevice){ return deviceman->FindStructForDevice(whichdevice); } void FillGnuHurdMountsList(ArrayofPartitionStructs& array); // Find mounts (active translators) in gnu-hurd void OnMountPartition(); // From menubar Tools>Mount Partition void OnUnMountPartition(); void OnMountIso(); void OnMountNfs(); void OnMountSshfs(); void OnMountSamba(); void OnUnMountNetwork(); static struct mntent* ReadMtab(const wxString& partition, bool DvdRamFS=false); // Goes thru mtab, to find if 'partition' currently mounted. If DvdRamFS, ignores eg subfs mounts (used for DVD-RAM) static struct fstab* ReadFstab(const wxString& dev, const wxString& uuid = "", const wxString& label = ""); // Search fstab for a line for this device static struct fstab* ReadFstab(const PartitionStruct* ps) { return ReadFstab(ps->device, ps->uuid, ps->label); } static bool FindUnmountedFstabEntry(wxString& dev, wxArrayString& answerarray); // Ditto but only returning Unmounted entries. Used for DVD-RAM size_t ReadFstab(ArrayofPartitionStructs& PartitionArray, const wxString& type) const; // Uses findmnt to look for entries of a particular type or types e.g. cifs static void LoadFstabEntries(wxArrayString& devicenodes, wxArrayString& mountpts); // Loads all valid fstab entries into arrays void ConfigureNewFixedDevice(DevicesStruct* tempstruct, bool FromEdit=false); void CheckSupermountTab(wxArrayString& partitions, wxArrayString& mountpts, wxString dev, bool SearchMtab); // In Supermount systems, finds data for this device void ConfigureNewDevice(DevicesStruct* tempstruct, bool FromEdit=false); bool Checkmtab(wxString& mountpt, wxString device = wxEmptyString); // Searches mtab to see if a device is already mounted. Optionally specifies the device we're interested in void SearchMtabForStandardMounts( wxString& device, wxArrayString& mountpts); // Finds ext2 etc mountpts for the device ie not subfs. Used for DVD-RAM #ifdef __GNU_HURD__ static int GnuCheckmtab(wxString& mountpoint, wxString device = wxEmptyString, TranslatorType type = TT_either); // Is mountpoint a mountpoint, optionally of 'device'? #endif DeviceManager* deviceman; // Class that does the dirty work with devices ArrayofPartitionStructs* PartitionArray; // To hold partitions, mountpt, status wxString DefaultUsbDevicename; // If there's ever an unattached device to configure, use this as its /dev location MyUsbDevicesTimer* usbtimer; protected: void CheckForNovelDevices(); // Look thru proc/scsi/usb-storage*, checking for unknown devices wxString WhereIsDeviceMounted(wxString device, size_t type); // If device is mounted, returns its mountpt bool ReadScsiUsbStorage(DevicesStruct* tempstruct); // Look thru proc/scsi/usb-storage*, to see if this usb device is attached bool ParseProcScsiScsi(DevicesStruct* tempstruct, long devno, wxArrayString& names); // Look thru proc/scsi/scsi to deduce the current major no for this device, or to find the device's name(s) void SearchMtab(wxArrayString& devices, wxArrayString& mountpts, wxString dev = wxEmptyString); // Loads arrays with data for a device void SearchFstab(wxArrayString& devices, wxArrayString& mountpts, wxString dev); // Ditto using fstab void GetPartitionList(wxArrayString& array, bool ignoredevices = false); // Parse the system file that holds details of all known partitions void FillGnuHurdPartitionList(wxArrayString& array); // Find possible partitions in gnu-hurd void AddLVMDevice(wxArrayString& array, wxString& dev); // Called by GetPartitionList() to process lvm "partitions" void FillPartitionArray(bool justpartitions = true); // Load all known partitions into PartitionArray, find their mountpts etc. Optionally mounted iso-images too bool FillPartitionArrayUsingLsblk(bool fixed_only = false); // Ditto, using lsblk bool FillPartitionArrayUsingBlkid(); // Ditto, using blkid void FindMountedImages(); // Add mounted iso-images from mtab to array bool MkDir(wxString& mountpt); // Make a dir onto which to mount bool WeCanUseSmbmnt(wxString& mountpt, bool TestUmount = false); // Do we have enough kudos to (u)mount with smb // These are used in automounting distros void CheckForAutomountedDevices(); // Check for any other auto-mountables eg USB devices, in automounting distros void CheckForHALAutomountedDevices(); // Ditto in Hal-automounting distros int MatchHALInfoToDevicestruct(DevicesStruct* tempstruct, int idVendor, int idProduct, wxString& vendor, wxString& model, wxString& devnode); // See if this devicestruct matches the host/model data from HAL bool ExtractHalData(wxString& symlinktarget, int& idVendor, int& idProduct, wxString& vendor, wxString& model, wxString& vendoridstr, wxString& productidstr, wxString& devnode); // Searches in the innards of Hal/sys to extract a usb device's data void CheckForAutomountedNovelDevices(wxArrayString& partitions, wxArrayString& mountpts); // Any novelties? For mtab-style auto-mounting distros bool IsRemovable(const wxString& dev); // Is this e.g. a sata fixed drive, or a removable usb pen? static wxArrayString RealFilesystemsArray; wxString LSBLK; // The filepath of lsblk (or empty) wxString BLKID; // Similarly wxString FINDMNT; // Ditto wxString FUSERMOUNT; // Ditto #if wxVERSION_NUMBER < 3000 MtabPollTimer* m_MtabpollTimer; // When active, polls mtab to look for a delayed sshfs mount. Only needed pre-wx3 #endif }; class MyUsbDevicesTimer : public wxTimer // Used by DeviceManager. Notify() looks for attached Usb drives when the timer 'fires' { public: void Init(DeviceAndMountManager* dman){ devman = dman; } void Notify(){ devman->CheckForOtherDevices(); } protected: DeviceAndMountManager* devman; }; #if wxVERSION_NUMBER < 3000 class MtabPollTimer : public wxTimer // Used by DeviceAndMountManager::OnMountSshfs. Notify() looks for a newly-mounted sshfs mount { public: MtabPollTimer(DeviceAndMountManager* dman) : m_devman(dman) {} void Begin(const wxString& mountpt, int freq = 1000, int tries = 10) { remaining = tries; Start(freq, wxTIMER_CONTINUOUS); m_Mountpt1 = mountpt; if (mountpt.Right(1) == wxT("/")) m_Mountpt2 = mountpt.BeforeLast(wxT('/')); else m_Mountpt2 = mountpt + wxT('/'); } void Notify(); protected: int remaining; wxString m_Mountpt1, m_Mountpt2; DeviceAndMountManager* m_devman; }; #endif class TBOrEditorBaseDlg : public wxDialog // Virtual base class to facilitate code-sharing of IconSelectDlg { public: virtual int SetBitmap(wxBitmapButton* btn, wxWindow* pa, long iconno)=0; virtual void AddIcon(wxString& newfilepath, size_t type)=0; }; class EditorsDialog : public TBOrEditorBaseDlg { public: void Init(DeviceManager* dad); virtual int SetBitmap(wxBitmapButton* btn, wxWindow* pa, long iconno); // Returns buttons event id if it works, else false virtual void AddIcon(wxString& newfilepath, size_t type); void Save(wxConfigBase* config = NULL){ SaveEditors(config); SaveIcons(config); } wxArrayLong& GetIconNos() { return IconNos; } void SaveAndReloadIcons() { SaveIcons(); LoadIcons(); } // Used when one has disappeared protected: void OnAddButton(wxCommandEvent& event); void OnEditButton(wxCommandEvent& event); void OnDeleteButton(wxCommandEvent& event); void DoUpdateUI(wxUpdateUIEvent& event); void FillListbox(); void SaveEditors(wxConfigBase* config = NULL); void LoadIcons(); void SaveIcons(wxConfigBase* config = NULL); size_t NoOfEditors; wxArrayString LaunchStrings, WorkingDirs, Labels, Icons; wxArrayInt UseTabs, Ignores, Icontypes; wxArrayLong IconNos; wxListBox* list; DeviceManager* parent; private: DECLARE_EVENT_TABLE() }; class NewEditorDlg : public wxDialog { public: void Init(EditorsDialog* dad, wxString label, wxString launch, wxString wd, int multiple, int ignore, long icon); EditorsDialog* parent; wxTextCtrl *Label, *Launch, *WorkingDir; wxCheckBox *Multiple, *Ignore; long iconno; protected: void OnIconClicked(wxCommandEvent& event); int CreateButton(); wxBitmapButton* btn; }; class IconSelectBaseDlg : public wxDialog { public: void Init(TBOrEditorBaseDlg* granddad, long icon); long iconno; protected: void DisplaySelectedButton(); void OnNewSelection(wxCommandEvent& event); void OnBrowse(wxCommandEvent& event); virtual void DisplayButtonChoices()=0; wxPanel* panel; wxGridSizer* gridsizer; wxSizer* bsizer; wxBitmapButton* SelectedBtn; int width, height; int StartId, EndId; TBOrEditorBaseDlg* grandparent; int SelectedEventId; }; class EditorsIconSelectDlg : public IconSelectBaseDlg { protected: virtual void DisplayButtonChoices(); }; class IconFileDialog : public wxFileDialog { public: IconFileDialog(wxWindow* parent) : wxFileDialog(parent, _("Browse for new Icons"), BITMAPSDIR, wxT(""), wxT("*"), wxFD_OPEN) {} int type; protected: void EndModal(int retCode); bool GetIcontype(); }; #endif // DEVICESH ./4pane-6.0/Accelerators.h0000644000175000017500000002044513205575137014260 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Accelerators.h // Purpose: Accelerators and shortcuts // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef ACCELERATORSH #define ACCELERATORSH #include #include #if wxVERSION_NUMBER < 2900 DECLARE_EVENT_TYPE(MyListCtrlEvent, wxID_ANY) // Used to size listctrl columns DECLARE_EVENT_TYPE(MyReloadAcceleratorsEvent, wxID_ANY) // Sent by AcceleratorList to tell everyone to reload their menu/acceltables #else wxDECLARE_EVENT(MyListCtrlEvent, wxNotifyEvent); wxDECLARE_EVENT(MyReloadAcceleratorsEvent, wxNotifyEvent); #endif #define EVT_RELOADSHORTCUTS(fn) \ DECLARE_EVENT_TABLE_ENTRY(\ MyReloadAcceleratorsEvent, wxID_ANY, wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction)(wxNotifyEventFunction)&fn, \ (wxObject*) NULL), enum { UD_NONE, UD_KEYCODEORFLAGS, UD_LABEL, UD_HELP = 4 }; // Which bits if any of a shortcut are user-defined enum { SH_UNCHANGED = -2 }; class AccelEntry // Encapsulates the data of wxAcceleratorEntry and wxMenuItem { public: enum AE_type { AE_normal, AE_udtool, AE_unknown = wxNOT_FOUND }; // Used to distinguish between normal shortcuts and those of user-defined tools AccelEntry(AE_type t) : flags(0), defaultflags(0), keyCode(0), defaultkeyCode(0), cmd(0), type(t), UserDefined(0) {} AccelEntry(AccelEntry& oldentry){ *this = oldentry; } bool Load(wxConfigBase* config, wxString& key); // Given info about where it's stored, load data for this entry bool Save(wxConfigBase* config, wxString& key); // Given info about where it's stored, save data for this entry AccelEntry& operator=(const AccelEntry& Entry) { flags=Entry.flags; defaultflags=Entry.defaultflags; keyCode=Entry.keyCode; defaultkeyCode=Entry.defaultkeyCode; cmd=Entry.cmd; type=Entry.type; label=Entry.label; help=Entry.help; UserDefined=Entry.UserDefined; return *this; } int GetFlags(bool usedefault=false) const { return usedefault ? defaultflags : flags; } // Returns standard answer, or the saved-but-unused default int GetKeyCode(bool usedefault=false) const { return usedefault ? defaultkeyCode : keyCode; } // Ditto int GetShortcut() const { return cmd; } wxString GetLabel() const { return label; } wxString GetHelpstring() const { return help; } bool IsKeyFlagsUserDefined() const { return UserDefined & UD_KEYCODEORFLAGS; } int GetUserDefined() const { return UserDefined; } AE_type GetType() const { return type; } void SetFlags(int fl){ flags = fl; } void SetKeyCode(int kc){ keyCode = kc; } void SetDefaultFlags(int fl){ defaultflags = fl; } // Sets defaultflags, where there is new user-defined data too void SetDefaultKeyCode(int kc){ defaultkeyCode = kc; } // Similarly void SetShortcut(int sh){ cmd = sh; } void SetLabel(wxString str){ label = str; } void SetHelpstring(wxString str){ help = str; } void SetKeyFlagsUserDefined(bool flag = true){ if (flag) UserDefined |= UD_KEYCODEORFLAGS; else UserDefined &= ~UD_KEYCODEORFLAGS; } void SetUserDefined(int flags){ UserDefined = flags; } void SetType(AE_type t){ type = t; } protected: void AdjustShortcutIfNeeded(); // Transitional function, to adjust if needed for 0.8.0 change int flags; int defaultflags; int keyCode; int defaultkeyCode; int cmd; enum AE_type type; wxString label; wxString help; int UserDefined; // Flags whether this entry is user-defined/altered, & so needs to be saved on exit }; WX_DEFINE_ARRAY(AccelEntry*, ArrayOfAccels); // Define the array we'll be using class AcceleratorList { public: AcceleratorList(wxWindow* dad) : parent(dad){} ~AcceleratorList(); void Init(); void ImplementDefaultShortcuts(); // Hack in the defaults void LoadUserDefinedShortcuts(); // Add any user-defined tools, & override default shortcuts with user prefs void SaveUserDefinedShortcuts(ArrayOfAccels& array); AccelEntry* GetEntry(int shortcutId); // Returns the entry that contains this shortcut ID void CreateAcceleratorTable(wxWindow* win, int AccelEntries[], size_t shortcutNo); // Creates that window's accel table for it void FillMenuBar(wxMenuBar* MenuBar, bool refilling=false);// Creates/refills the menubar menus, attaches them to menubar void AddToMenu(wxMenu& menu, int shortcutId, wxString overridelabel=wxEmptyString, wxItemKind kind=wxITEM_NORMAL, wxString helpString=wxEmptyString); // Fills menu with the data corresponding to this shortcut void FillEntry(wxAcceleratorEntry& entry, int shortcutId); // Fills entry with the data corresponding to this shortcut void UpdateMenuItem(wxMenu* menu, int shortcutId); void ConfigureShortcuts(); const ArrayOfAccels& GetAccelarray() { return Accelarray; } static wxString ConstructLabel(AccelEntry* arrayentry, const wxString& overridelabel); // Make a label/accelerator combination bool dirty; protected: void LoadUDToolData(wxString name, int& index); // Recursively add to array a (sub)menu 'name' of user-defined commands int FindEntry(int shortcutId); // Returns the index of the shortcut within Accelarray, or -1 for not found wxWindow* parent; ArrayOfAccels Accelarray; }; class MyShortcutPanel : public wxPanel // Loaded by either a standalone dialog, or the appropriate page of ConfigureNotebook { public: MyShortcutPanel(){ list = NULL; } ~MyShortcutPanel(); void Init(AcceleratorList* parent, bool fromNB); int CheckForDuplication(int key, int flags, wxString& label, wxString& help); // Returns the entry corresponding to this accel if there already is one, else wxNOT_FOUND ArrayOfAccels Temparray; size_t DuplicateAccel; // Store here any entry that's just had its accel stolen from it #if defined(__WXGTK20__) wxCheckBox* F10check; // If we're in a notebook, this will point to a notebook checkbox #endif wxCheckBox* HideMnemonicsChk; // Display (or otherwise) 'Cut' instead of 'C&ut' protected: void OnEdit(wxListEvent& event); void LoadListCtrl(); void DisplayItem(size_t no, bool refresh=false); void OnHideMnemonicsChk(wxCommandEvent& event); void SizeCols(wxNotifyEvent& event); void OnSize(wxSizeEvent& event); void OnColDrag(wxListEvent& event); // If the user adjusts a col header position void DoSizeCols(); long GetListnoFromArrayNo(int arrayno); // Translates from array index to list index void OnFinished(wxCommandEvent& event); // On Apply or Cancel. Saves data if appropriate, does dtor things wxListCtrl* list; AcceleratorList* AL; int ArrayIndex; bool FromNotebook; // Flags whether the panel was called by a standalone dialog, or by ConfigureNotebook enum helpcontext CallersHelpcontext; // Stores the original value of the help context, to be replaced on finishing private: DECLARE_DYNAMIC_CLASS(MyShortcutPanel) DECLARE_EVENT_TABLE() }; class NewAccelText; class ChangeShortcutDlg : public wxDialog // The dialog that accepts the new keypress combination { public: ChangeShortcutDlg(){} void Init(wxString& action, wxString& current, wxString& dfault, AccelEntry* ntry); NewAccelText* text; wxStaticText* defaultstatic; // Holds the default keypresses, if any wxString label; // Store altered values here wxString help; MyShortcutPanel* parent; protected: void OnButton(wxCommandEvent& event); void EndModal(int retCode); AccelEntry* entry; private: DECLARE_DYNAMIC_CLASS(ChangeShortcutDlg) DECLARE_EVENT_TABLE() }; class NewAccelText : public wxTextCtrl // Subclassed to collect key-presses { public: NewAccelText(){} void Init(wxString& current){ keycode = flags = 0; SetValue(current); } // Set the text to the current accelerator int keycode; int flags; protected: void OnKey(wxKeyEvent& event); private: DECLARE_DYNAMIC_CLASS(NewAccelText) DECLARE_EVENT_TABLE() }; class DupAccelDlg : public wxDialog { protected: void OnButtonPressed(wxCommandEvent& event){ EndModal(event.GetId()); } DECLARE_EVENT_TABLE() }; #endif // ACCELERATORSH ./4pane-6.0/MyGenericDirCtrl.h0000644000175000017500000006023013534217004015002 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // (Original) Name: dirctrlg.h // Purpose: wxGenericDirCtrl class // Builds on wxDirCtrl class written by Robert Roebling for the // wxFile application, modified by Harm van der Heijden. // Further modified for Windows. Further modified for 4Pane // Author: Robert Roebling, Harm van der Heijden, Julian Smart et al // Modified by: David Hart 2016 // Created: 21/3/2000 // Copyright: (c) Robert Roebling, Harm van der Heijden, Julian Smart. Alterations (c) David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /* #ifndef _WX_DIRCTRL_H_ #define _WX_DIRCTRL_H_ #if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "dirctrlg.h" #endif #if wxUSE_DIRDLG */ #ifndef MYGENERICDIRCTRL #define MYGENERICDIRCTRL #include "wx/treectrl.h" #include "wx/dialog.h" #include "wx/dirctrl.h" #include "wx/choice.h" #include "wx/hashmap.h" // // #include "wx/hashset.h" // // #include "Externs.h" // // #include "ArchiveStream.h" // // #include "wx/version.h" // We need to use the cutdown sdk version of wxFileSystemWatcher pre 3.0.0 as it didn't exist earlier // and we need to use it for 3.1.0 and <3.0.3 because of occasional crashes; see http://trac.wxwidgets.org/ticket/17122 #if wxVERSION_NUMBER < 3003 || wxVERSION_NUMBER == 3100 #define USE_MYFSWATCHER true #else #define USE_MYFSWATCHER false #endif #if defined(__LINUX__) #if USE_MYFSWATCHER #include "sdk/fswatcher/MyFSWatcher.h" // // #else #include "wx/fswatcher.h" // // #endif #if wxVERSION_NUMBER < 2900 DECLARE_EVENT_TYPE(FSWatcherProcessEvents, wxID_ANY) DECLARE_EVENT_TYPE(FSWatcherRefreshWatchEvent, wxID_ANY) #else wxDECLARE_EVENT(FSWatcherProcessEvents, wxNotifyEvent); wxDECLARE_EVENT(FSWatcherRefreshWatchEvent, wxNotifyEvent); #endif #endif // defined(__LINUX__) //----------------------------------------------------------------------------- // classes //----------------------------------------------------------------------------- class wxTextCtrl; class DirGenericDirCtrl; class MyGenericDirCtrl; class ThreadSuperBlock; class MyFSEventManager { #if defined(__LINUX__) && defined(__WXGTK__) WX_DECLARE_STRING_HASH_MAP(wxFileSystemWatcherEvent*, FilepathEventMap); public: MyFSEventManager() : m_owner(NULL), m_EventSent(false) {} ~MyFSEventManager(){ ClearStoredEvents(); } void SetOwner(MyGenericDirCtrl* owner) { m_owner = owner; } void AddEvent(wxFileSystemWatcherEvent& event); void ProcessStoredEvents(); void ClearStoredEvents(); // Clear the data e.g. if we're entering an archive, otherwise we'll block on exit protected: void DoProcessStoredEvent(const wxString& filepath, const wxFileSystemWatcherEvent* event); FilepathEventMap m_Eventmap; #endif // defined(__LINUX__) && defined(__WXGTK__) MyGenericDirCtrl* m_owner; bool m_EventSent; }; //----------------------------------------------------------------------------- // Extra styles for wxGenericDirCtrl //----------------------------------------------------------------------------- /*enum { // Only allow directory viewing/selection, no files wxDIRCTRL_DIR_ONLY = 0x0010, // When setting the default path, select the first file in the directory wxDIRCTRL_SELECT_FIRST = 0x0020, // Show the filter list wxDIRCTRL_SHOW_FILTERS = 0x0040, // Use 3D borders on internal controls wxDIRCTRL_3D_INTERNAL = 0x0080, // Editable labels wxDIRCTRL_EDIT_LABELS = 0x0100 }; */ //----------------------------------------------------------------------------- // wxDirItemData //----------------------------------------------------------------------------- /* class WXDLLEXPORT wxDirItemData : public wxTreeItemData { public: wxDirItemData(const wxString& path, const wxString& name, bool isDir); ~wxDirItemData(); void SetNewDirName(const wxString& path); bool HasSubDirs() const; bool HasFiles(const wxString& spec = wxEmptyString) const; wxString m_path, m_name; bool m_isHidden; bool m_isExpanded; bool m_isDir; }; */ //----------------------------------------------------------------------------- // wxDirCtrl //----------------------------------------------------------------------------- class wxDirFilterListCtrl; class DirSplitterWindow; // // class MyTab; // // class MyTreeCtrl; // // class MyFSWatcher; // // class MyFSEventManager; // // class MyGenericDirCtrl : public wxGenericDirCtrl { friend class MyFSWatcher; friend class MyFSEventManager; public: MyGenericDirCtrl(); MyGenericDirCtrl(wxWindow *parent, MyGenericDirCtrl* parentcontrol, const wxWindowID id = -1, const wxString &dir = wxDirDialogDefaultFolderStr, const wxPoint& posit = wxDefaultPosition, const wxSize& sze = wxDefaultSize, long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER, const wxString& filter = wxEmptyString, int defaultFilter = 0, const wxString& name = wxT("MyGenericDirCtrl"), bool file_view = ISLEFT, bool full_tree=false) : arcman(NULL), pos(posit), size(sze) { ParentControl = parentcontrol; // // Init(); startdir = dir; // // fileview = file_view; // // fulltree = full_tree; // // Create(parent, id, dir, style, filter, defaultFilter, name); } bool Create(wxWindow *parent, const wxWindowID id = -1, const wxString &dir = wxDirDialogDefaultFolderStr, long style = wxDIRCTRL_3D_INTERNAL|wxSUNKEN_BORDER, const wxString& filter = wxEmptyString, int defaultFilter = 0, const wxString& name = wxTreeCtrlNameStr ); void FinishCreation(); // // Separated from Create() so that MyFileDirCtrl can be initialised first void CreateTree(); // // I extracted this from Create, 2b reused in ReCreate virtual void Init(); virtual ~MyGenericDirCtrl(); ArchiveStreamMan* arcman; // // Manages any archive stream wxString startdir; // // Holds either the (real) root or the selected dir, depending on fulltree MyGenericDirCtrl* partner; // // Pointer to the twin pane, for coordination of dir selection bool isright; // // Are we part of the left/top twinpane, or the right/bottom? void TakeYourPartners(MyGenericDirCtrl *otherside) // // Set the pointer to this ctrl's partner { partner = otherside; } void OnExpandItem(wxTreeEvent &event); void OnCollapseItem(wxTreeEvent &event); void OnBeginEditItem(wxTreeEvent &event); void OnEndEditItem(wxTreeEvent &event); void OnSize(wxSizeEvent &event); void OnTreeSelected(wxTreeEvent &event); // // void OnTreeItemDClicked(wxTreeEvent &event); // // void OnOutsideSelect(wxString& path, bool CheckDevices=true); // // Used to redo Ctrl from outside, eg the floppy-button clicked (& if called from Mount, don't remount again!) void RefreshTree(const wxString& path, bool CheckDevices=true, bool RetainSelection=true); // // Refreshes the display to show any outside changes (or following a change of rootitem via OnOutsideSelect) void OnRefreshTree(wxCommandEvent& event); // // From Context menu or F5. Needed to provide the parameter for RefreshTree void DisplaySelectionInTBTextCtrl(const wxString& selection); // // void CopyToClipboard(const wxArrayString& filepaths, bool primary = false) const; // // Add the selection to the (real) clipboard virtual void NewFile(wxCommandEvent& event){}; // // Create a new File or Dir wxString GetActiveDirectory(); // // Returns the root dir if in branch-mode, or the selected dir in Fulltree-mode wxString GetActiveDirPath(); // // Returns selected dir in either mode NB GetPath returns either dir OR file // Try to expand as much of the given path as possible. virtual bool ExpandPath(const wxString& path); // Accessors virtual inline wxString GetDefaultPath() const { return m_defaultPath; } virtual void SetDefaultPath(const wxString& path) { m_defaultPath = path; } // Get dir or filename virtual wxString GetPath() const; virtual size_t GetMultiplePaths(wxArrayString& paths) const; // // Get an array of selected paths, used as multiple selection is enabled static bool Clustering; // // Flags that we're in the middle of a cluster of activity, so don't update trees yet static wxArrayString filearray; // // These form the "clipboard" for copy etc. Static as we want only one for whole application, static size_t filecount; static wxWindowID FromID; static MyGenericDirCtrl* Originpane; static wxArrayString DnDfilearray; // // Similarly for DragnDrop static wxString DnDDestfilepath; // // Where we're pasting to static wxWindowID DnDFromID; // // ID of the originating pane static wxWindowID DnDToID; // // ID of the destination pane static size_t DnDfilecount; // Get selected filename path only (else empty string). // I.e. don't count a directory as a selection virtual wxString GetFilePath() const; virtual void SetPath(const wxString& path); virtual void ShowHidden(bool show); virtual bool GetShowHidden() { return m_showHidden; } void SetShowHidden(bool show){ m_showHidden = show; } // // virtual wxString GetFilter() const { return m_filter; } // // virtual void SetFilter(const wxString& filter); void SetFilterArray(const wxArrayString& array, bool FilesOnly = false){ FilterArray = array; DisplayFilesOnly = FilesOnly; } // // void SetFilterArray(const wxString& filterstring, bool FilesOnly = false); // // Parse the string into individual filters & store in array wxString GetFilterString(); // // wxArrayString& GetFilterArray(){ return FilterArray; } // // bool DisplayFilesOnly; // // Flags a fileview to filter out dirs if required bool NoVisibleItems; // // Flags whether the user has filtered out all the items. Used for menuitem updateui // // virtual int GetFilterIndex() const { return m_currentFilter; } // // virtual void SetFilterIndex(int n); virtual wxTreeCtrl* GetTreeCtrl() const { return (wxTreeCtrl*)m_treeCtrl; } // // Altered as m_treeCtrl is now a MyTreeCtrl // // virtual wxDirFilterListCtrl* GetFilterListCtrl() const { return m_filterListCtrl; } // Helper virtual void SetupSections(); // Parse the filter into an array of filters and an array of descriptions // // virtual int ParseFilter(const wxString& filterStr, wxArrayString& filters, wxArrayString& descriptions); // Find the child that matches the first part of 'path'. // E.g. if a child path is "/usr" and 'path' is "/usr/include" // then the child for /usr is returned. // If the path string has been used (we're at the leaf), done is set to true virtual wxTreeItemId FindChild(wxTreeItemId parentId, const wxString& path, bool& done); // Resize the components of the control virtual void DoResize(); // Collapse & expand the tree, thus re-creating it from scratch: virtual void ReCreateTree(); virtual void ReCreateTreeBranch(const wxTreeItemId* ItemToRefresh = NULL); // // Implements wxGDC::ReCreateTree, but with parameter bool fulltree; // // Flags whether we're allowed to show truncated trees, or if always full bool SelFlag; // // Flags if an apparent selection event should be disabled as its coming from an internal process bool fileview; // // Is this a left-side, directory, view or a right-side, file view? void ReCreateTreeFromSelection(); // // On selection/DClick event, this redoes the tree & reselects MyTab* ParentTab; // // Pointer to the control's real parent, a tab panel. Managed by derived class protected: void ExpandDir(wxTreeItemId parentId); void CollapseDir(wxTreeItemId parentId); const wxTreeItemId AddSection(const wxString& path, const wxString& name, int imageId = 0); // Extract description and actual filter from overall filter string bool ExtractWildcard(const wxString& filterStr, int n, wxString& filter, wxString& description); void SetTreePrefs(); // // Adjusts the Tree width parameters according to prefs void DoDisplaySelectionInTBTextCtrl(wxNotifyEvent& event); // // Does so on receiving a MyUpdateToolbartextEvent from DisplaySelectionInTBTextCtrl MyGenericDirCtrl* ParentControl; // // Pointer to the derived CONTROL, eg DirGenericDirCtrl, not the splitter window or tab panel wxString GetPathIfRelevant(); // // Helper function used to get selection to pass to NavigationManager #if defined(__LINUX__) && defined(__WXGTK__) void OnFileWatcherEvent(wxFileSystemWatcherEvent& event); void OnProcessStoredFSWatcherEvents(wxNotifyEvent& event); MyFSWatcher* m_watcher; // // MyFSEventManager m_eventmanager; // // #endif public: void UpdateTree(InotifyEventType type, const wxString& alteredfilepath, const wxString& newfilepath = wxT("")); // // Update the data and labels of (part of) the tree, without altering its visible structure protected: void DoUpdateTree(wxTreeItemId id, InotifyEventType type, const wxString& oldfilepath, const wxString& newfilepath); // // void DoUpdateTreeRename(wxTreeItemId id, const wxString& oldfilepath, const wxString& newfilepath); // // void SetRootItemDataPath(const wxString& fpath); // ----------------------------------------------The following were originally in MyDirs/Files -------------------------------------------------------------------------------- void OnShortcutUndo(wxCommandEvent&); // // Ctrl-Z void OnShortcutRedo(wxCommandEvent&); // // Ctrl-R bool Delete(bool trash, bool fromCut=false); // // Used by both OnShortcutTrash and OnShortcutDel, & by Cut public: wxTreeItemId FindIdForPath(const wxString& path) const; void OnSplitpaneVertical(wxCommandEvent& event); // // Vertically splits the panes of the current tab void OnSplitpaneHorizontal(wxCommandEvent& event); // // Horizontally splits the panes of the current tab void OnSplitpaneUnsplit(wxCommandEvent& event); // // Unsplits the panes of the current tab void OnFilter(wxCommandEvent& event); // // Calls Filter dialog void OnProperties(wxCommandEvent& event); // // Calls Properties dialog void OnBrowseButton(wxCommandEvent& event); // // If symlink-target Browse button clicked in Properties dialog void OnLinkTargetButton(wxCommandEvent& event); // // If symlink-target button clicked in Properties dialog void LinkTargetButton(wxCommandEvent& event); // // Recreate tree to goto selected link's target void BrowseButton(); // // If symlink-target Browse button clicked in Properties dialog wxDialog* PropertyDlg; // // To store the above dlg void OnShortcutGoToSymlinkTarget(wxCommandEvent& event){ GoToSymlinkTarget(event.GetId() == SHCUT_GOTO_ULTIMATE_SYMLINK_TARGET); } void GoToSymlinkTarget(bool ultimate); // // Goto selected link's target (or ultimate target). Called both by the above context-menu entry & by LinkTargetButton() bool OnExitingArchive(); // // We were displaying the innards of an archive, and now we're not void OnShortcutTrash(wxCommandEvent& event); // // Del void OnShortcutDel(wxCommandEvent& event); // // Sh-Del void OnShortcutReallyDelete(); // // void OnShortcutCopy(wxCommandEvent& event); // // Ctrl-C void OnShortcutCut(wxCommandEvent& event); // // Ctrl-X void OnShortcutHardLink(wxCommandEvent& event); // // Ctr-Sh-L void OnShortcutSoftLink(wxCommandEvent& event); // // Alt-Sh-L void OnShortcutPaste(wxCommandEvent& event); // // Ctrl-V. Calls the following: void OnPaste(bool FromDnD, const wxString& destinationpath = wxT(""), bool dir_skeleton = false); // // Ctrl-V or DnD void OnReplicate(wxCommandEvent& event); // // Duplicates this pane's filepath in its opposite pane void OnSwapPanes(wxCommandEvent& event); // // Swap this pane's filepath with that of its opposite pane void OnLink(bool FromDnD, int linktype); // // Create hard or soft link void OnDnDMove(); // // MyGenericDirCtrl* GetOppositeDirview(bool OnlyIfUnsplit = true); // // Return a pointer to the dirview of the twin-pane opposite this one MyGenericDirCtrl* GetOppositeEquivalentPane(); // // Return a pointer to the equivalent view of the twin-pane opposite this one void SetFocusViaKeyboard(wxCommandEvent& event); // // Key-navigate to opposite or adjacent pane void RefreshVisiblePanes(wxFont* font=(wxFont*)NULL); // // Called e.g. after a change of font void ReloadDirviewToolbars(); // // Called after a change of user-defined tools static enum MovePasteResult Paste(wxFileName* From, wxFileName* To, const wxString& ToName, bool ItsADir, bool dir_skeleton=false, bool recursing=false, ThreadSuperBlock* tsb = NULL, const wxString& overwrittenfile = wxT("")); // // Copies files, dirs+contents static enum MovePasteResult Move(wxFileName* From, wxFileName* To, wxString ToName, ThreadSuperBlock* tsb, const wxString& OverwrittenFile = wxT("")); // // Moves files, dirs+contents. Static as used by UnRedo too static bool ReallyDelete(wxFileName* PathName); // // Not just trashing, the real thing. eg for undoing pastes int OnNewItem(wxString& newname, wxString& path, bool ItsADir = true); // // Used to create both new dirs & files void OnDup(wxCommandEvent& event); // // Duplicate. Actually calls DoRename void OnRename(wxCommandEvent& event); // // F2 for rename. Calls DoRename void DoRename(bool RenameOrDuplicate, const wxString& pathtodup = wxT("")); // // Does either rename or duplicate, depending on the bool void DoMultipleRename(wxArrayString& paths, bool duplicate); // // Renames (or duplicates) multiple files/dirs int Rename(wxString& path, wxString& origname, wxString& newname, bool ItsADir, bool dup=false); // // Renames both dirs & files (or dups if the bool is set) void OnIdle(wxIdleEvent& event); // // Checks whether we need to update the statusbar with e.g. size of selection? virtual void UpdateStatusbarInfo(const wxString& selected){} // In derived classes, calls the following overload virtual void UpdateStatusbarInfo(const wxArrayString& selections){} // In derived classes, writes the selection's name & some relevant data in the statusbar bool m_StatusbarInfoValid; // // If true, the statusbar size info etc is up-to-date // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- private: bool m_showHidden; wxTreeItemId m_rootId; wxImageList* m_imageList; wxString m_defaultPath; // Starting path long m_styleEx; // Extended style wxString m_filter; // Wildcards in same format as per wxFileDialog // // No longer used int m_currentFilter; // The current filter index // // No longer used wxString m_currentFilterStr; // Current filter string // // No longer used, except as a convenient wxString wxArrayString FilterArray; // // Flter strings now they can be multiple MyTreeCtrl* m_treeCtrl; wxDirFilterListCtrl* m_filterListCtrl; // // No longer used long treeStyle; // // I moved these 4 vars to here from locals in Create, so their data is still available in ReCreate long filterStyle; const wxPoint& pos; const wxSize& size; // wxTreeItemId LocateItem(wxDirItemData* data); // // MINE. Helper function for OnTreeSelected() // int CompareItems(wxTreeItemId candidateId, wxDirItemData* data); // Subfunction for LocateItem() private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(MyGenericDirCtrl) }; //----------------------------------------------------------------------------- // wxDirFilterListCtrl //----------------------------------------------------------------------------- /* class WXDLLEXPORT wxDirFilterListCtrl: public wxChoice { public: wxDirFilterListCtrl() { Init(); } wxDirFilterListCtrl(wxGenericDirCtrl* parent, const wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0) { Init(); Create(parent, id, pos, size, style); } bool Create(wxGenericDirCtrl* parent, const wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0); void Init(); ~wxDirFilterListCtrl() {}; //// Operations void FillFilterList(const wxString& filter, int defaultFilter); //// Events void OnSelFilter(wxCommandEvent& event); protected: wxGenericDirCtrl* m_dirCtrl; DECLARE_EVENT_TABLE() DECLARE_CLASS(wxDirFilterListCtrl) }; */ #if !defined(__WXMSW__) && !defined(__WXMAC__) && !defined(__WXPM__) #define wxDirCtrl wxGenericDirCtrl #endif // Symbols for accessing individual controls #define wxID_TREECTRL 7000 #define wxID_FILTERLISTCTRL 7001 //#endif // wxUSE_DIRDLG #if defined(__LINUX__) && defined(__WXGTK__) class DirviewWatchTimer; class WatchOverflowTimer; class MyFSWatcher { public: MyFSWatcher(wxWindow* owner = NULL); ~MyFSWatcher(); void SetFileviewWatch(const wxString& path); void SetDirviewWatch(const wxString& path); void RefreshWatchDirCreate(const wxString& filepath); // Updates after an fsw create (dir) event void RefreshWatch(const wxString& filepath1 = wxT(""), const wxString& filepath2 = wxT("")); // Updates after an fsw event void DoDelayedSetDirviewWatch(const wxString& path); void OnDelayedDirwatchTimer(); void PrintWatches(const wxString& msg = wxT("")) const; void AddWatchLineage(const wxString& filepath); // Add a watch for filepath and all visible descendant dirs void RemoveWatchLineage(const wxString& filepath); // Remove all watches starting with this filepath WatchOverflowTimer* GetOverflowTimer() const { return m_OverflowTimer; } wxString GetWatchedBasepath() const { return m_WatchedBasepath; } #if USE_MYFSWATCHER MyFileSystemWatcher* GetWatcher() const { return m_fswatcher; } #else wxFileSystemWatcher* GetWatcher() const { return m_fswatcher; } #endif wxWindow* GetOwner() const { return m_owner; } protected: bool CreateWatcherIfNecessary(); bool IsWatched(const wxString& filepath) const; // Is filepath currently watched? DirviewWatchTimer* m_DelayedDirwatchTimer; WatchOverflowTimer* m_OverflowTimer; wxString m_DelayedDirwatchPath; #if USE_MYFSWATCHER MyFileSystemWatcher* m_fswatcher; #else wxFileSystemWatcher* m_fswatcher; #endif wxWindow* m_owner; wxString m_WatchedBasepath; // For fileviews, helps prevent reapplying the current watches from SetPath() }; class DirviewWatchTimer : public wxTimer // Used by MyFSWatcher { public: DirviewWatchTimer(MyFSWatcher* watch) : wxTimer(), m_watch(watch) {} protected: void Notify(){ m_watch->OnDelayedDirwatchTimer(); } MyFSWatcher* m_watch; }; class WatchOverflowTimer : public wxTimer // Used when wxFSW_WARNING_OVERFLOW is received { public: WatchOverflowTimer(MyFSWatcher* watch) : wxTimer(), m_watch(watch), m_isdirview(true) {} void SetFilepath(const wxString& filepath) { m_filepath = filepath; } void SetType(bool isdirview) { m_isdirview = isdirview; } protected: void Notify(); MyFSWatcher* m_watch; bool m_isdirview; wxString m_filepath; }; #endif // defined(__LINUX__) && defined(__WXGTK__) #endif // MYGENERICDIRCTRL (Originally _WX_DIRCTRLG_H_) ./4pane-6.0/bitmaps/0000755000175000017500000000000013434576252013135 5ustar daviddavid./4pane-6.0/bitmaps/photocopier_20.png0000644000175000017500000000272612120710621016463 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7HEEQNN[XXWyWBllfffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÇÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõ`'³õHtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆH°IDATxÚµ– s£6†Ú¤g&!wj÷„ãžOnŠ„¤9' -6üÿÔ• qìL»3¬ÖÂ~´¬ØW†ê58îkޱwâÿš^&RH)”…¡ Ãu(kÃ;a¢‚÷âgÜ$Ms´´ò´P^»ÖÒ÷föÓŸi>bEo¸¾¬ÌËÛ¤ rVñ¶hè÷Ãò¿…/Ë)}Hå®-‰ôüT|YþÆEŸ4@ëÜCçRÇ|<_Våü[´Ù¯ò`àîÎ ã1<„`AÏj]w%¤s‡ç&¾ª¯ã>ΉÍÅnbã]û£eß«ÀÊw¦0Qô¾-vxï3Ч ò¯®º7›{cõÞ@®îW³üg¡:‹w Î[<'æW©z/ „¨Éùdæ†Åœ;•ñ!/&€ý °m dBÀ®ñœ$¢éqùw¬2fþ­F®Ð¥¯|ԣܭ zÄèD«±-¡s×Ú!ƒ¹1]=„Gh:(:¡#~±À&@<_\þ(pcSó(Tæk-]÷sßB" G¼ñƒ­ˆQ¬œŽ" Ú7ǽ1éfþ®×àzW»¹Ës•<¾ nTÿN… P{Õ¯•òÖJÜë{Z•¥*Œ9 GâéFëØ´Nf—l¢Sqœ¥Y–î]µËm™©¼ïT7=šÝÊD2À×OãŒvGñá“=žç› µp»-ôUl7ͨýf“—e®_m | w2Ø“›‹¦kitS!]–›²ÜàU6 Õ#~,U\–qQúÛgÆzc¸åv+ ›¶µQ›-e”XWtÉègêyÔ¢Ì÷(FžÇhÀÐ{O蘯“Çj&ôÖ°wøjNHÒ–+#¥‚+Ö’^éðЍÏÔ£;cz‚Q @¿OB¬ÃWCbÛ¼. w±ÝÀàÌ£KO§«iKjY¿âeýB¿]Q‚àvAàM·¿6GĽ™²|¥›oâw&Û×ß‚Æþ ¼ÛVžœñºÖS;:Ú¹/6œ_\p™’^÷îí@f–ÏB±Ll ÝQXÇ´ªøê vgnÆo¨˜õ1õŠº¦QÄWÕÓ§?ÔàÃ#¤èFbI¹Ú’峕×xÁ_¡µF¶Ç.öâ,}‰5~í¾vdÌ»Q[û´Î;ÛŽfA5ÀµÈ¼©ŽÇƒxQŸF‰”\DukkiÝi¦X=~Z€ÿÔêá«uÕ7Ö`U§à]pQ«\þ¶­\lC8ôWi´N2Zˆÿí_ø»4#+ÈIEND®B`‚./4pane-6.0/bitmaps/photocopier_43.png0000644000175000017500000000254112120710621016463 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNZXXWyWBllfffsnnxvv2d–ee—rtŸpp f–f^‰‰e˜˜ƒ}}‘‚~‚˜˜f‰††‡„“‘ŒŒ˜˜˜ ¨——±šš¬¦§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÇÕËËÒÒËÛÓÓÌÌúÌÿÿäÜÜîååðééùñìWn–CtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿAbïbKGDˆH@IDATxÚµ–wš0Ç6ÛÊk±M׺Eëêb;–(®j!À¦Œïÿ¡vI@Á§¾íÿ4^üÝqI û¯‚c/|óà‰ÿùpŸD2’¡D…!šQbƒJð+y.¾õš¬×”nµ•·;%çFß¹üQc¥ûV àŸ…·oDRF¥›&!ݯ‡ þžÎ×mÌ­–*úéø¯\î§d?v9œAg~2~èE­ÔÝŸ¬yxÀ‚:@¶0ËN¦|`/qk¶ân‡ÄåqyZ<ä‹Z¢§œ–|LüA7T¿¢Ñ/¾]‘ Ä–ÞN›2QhâOîÕÉ^\xNìoêü%%Ä .û^xˆ^Ê»]ЧöO!ìp ‰ó["Í©Ž¢_0³úÂW™8´ †>ñ9À>10ŽÈcèj¢/·†~ئe¹ïèˆð žn>J]˜`ë9먩4Cú²»I pÄ[ÜÈh; &U “¢(æ–²“¨Ô]¼àÅ\¯j…~¡‚϶ ªsÜíj +¯þ‰BÝFº+C†ù¿$þÏÞ§Ç«']À¥I5ô<ú£ÅmtõfW3àöÓx oµ:ÎçûvÊëF½÷2 ïÈëîy}ºÎO-°Jè(žßy¬?;%Ñž:öÛ†}àEaäÒže”8=:fB… e3AÑ3F&+lØ ¬P¯›eW÷š»ÅgCBªxW¬1íi³GTŸ ºÓŒ:úþ¤\,÷…yI#®ËË©·8t,t¸š6¦ŽÓ§N×ùD¿÷(Apáxž¾Eßj(îù ;¼;k-ÊH aìw ÄÍUšt¸Ôë>BÓ££{váâúZãéãzÓ"ãfü.eÇ1“éÌ6¶“Àgϸ2®Z¡o*uÞƒ À×*ðí@ãC϶²ƒø,[ݽªÏJ".•Éø³Y’ñ»“ã¥h¡7=k­†âž–=¬×i¾ “œ¥×öÈn÷¢usò×µG jaˆ/„öSv<ÞT3uHãʉ-zq¼;¾Ò»|[ÍNÀßIS ëJJ^â¼\Ê™µ„nv Þƒ ?N{‡^•ÏÂI¢Ù‰ø¨¿,ÿ44lIEND®B`‚./4pane-6.0/bitmaps/photocopier_18.png0000644000175000017500000000272612120710621016472 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)((-,71--666?C3f99A56h3f3AD5MM*Rz4ffA?@bb7GEEFYYQNNZWWWyWBllfffsmmxww2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ…†‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÇÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõþŸ9ItRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ŸUbKGDˆH¯IDATxÚµ–w›6ÇVg1/%]Õ¥q'¿zrS"jÇKš møþŸh'6¶‰KòÚ#–9þé8éþÊ_jÐ矖!ô±Wâÿ¹ø •TÒšè*5¾´ÞkñôôZ¯Ò m…—íŒåYÖêW¯~0¸Ye‡–ﺷ¯À¥ûá›îbní)·ôÛ®8Ž/Š·ônÕ ;áfT€Bº}†—à‹"äòxbì-ˆ`E0XöÇe1þ¢óÃeÜÇðy î,Å1<‹[ð@ =oVuÎŽŽ+”~ðnL|.~t±ÐÙ `v\b?fóïØdƒþú«ˆpˆLÖ£Ñ8:Œö O™#f‹ÙÏTð¶ÁIƒçÄýÛ” Š)!P¿®ÅnŠógbŸÛ=“ Ai ðÔÞð+<çïHUÚhÿÆðÇh±ì‘¤Ï Þ« 5»@ºb ˆÅOˆïI]KˆRw/ÇKÑËà¶¢ƒ¡óm숟L°Ï'oßHµ+uáöHc&öᢻ¡kEp¿"ÞùÍ·ÐD5j×’^o¿_ÀÄŽ»ªíØÕ‰ w#Ô¿ÙB@IT]i[@OÙ¿êÕˆ&ô ÜŠ^ؤ–.®¬>€O7áèÚ>›Ld’¥iªñ³ZmûªM“bÔC«Iݹ»™‰qûY<€Ó<¯¬CßÖà:]£âõdZÓ™~m»õ:+ŠÌn홨px°*WguÕkåÝn®ŠÚêmV{Æy2Ÿ"ÉóÜþbà,±uÝoDaâÓ\a±± ¡Œ’Ós:eô#":¤lQô¢ˆÑ˜a=`üÝ4Ž ;sø|9&Ñu†8.µÖ”ž[÷œ˜{Ñ1;À¨‡ªgó*ïE×qhGˆïó*z"œÑidõ´é'Ï£Ôó¼?é×sJÜL¼NìýÈí÷zÈ3ŸÙâ.ZeŸhMNcÿÅÑ·S/Óƒ ¯ÅåÑ£ü³'gg\e¹¢—í£;Ïmú(eœHÉdž9¼*°ÀõÊ#øò3®ŒoVgâ&ûâ»'›ÞcÇR&Û¬¡ë”GñeùðþÚt_½OÜ&ùT-ÉôÑ«ñ’?Cï:kt›ïÍ–¶’gñßÃçŽìŽñPUocõ;â:„¾™Æ(LîUÙov²ÞjnjNת)uSä臃»{ å ðïe#@{‚¼™¬iP@ÎwðÊ—àC˜ñ~6 yØýêz_ö>«¬Ñò…øŸhÿ“ZÉèœ IEND®B`‚./4pane-6.0/bitmaps/photocopier_21.png0000644000175000017500000000274212120710621016462 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNN[XXWyWBllfffsnnxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÈÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõXke³HtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆH¼IDATxÚµ– {š0Ç6ûÂÓÑ-Ýê­›‹«4´º9[H›‚Â÷ÿF»°0ÑÖ>ÛÿQòòÀ/Ç]îäÿUðÌûfž£â|¸RàOkÊPÊ0ÄK)!LóR|÷ä:^,Ô"Y&¥ô8­ /µ¾s|³Hv*-ט¾Ÿå7·qjb«v]ѧ[ö?‰Ï2‡Îâä)ÍAúø,ó¸Øí—MDïzöì |–¯>£U+³á)~×ëZ³p€ xÖ5ZZBÓÆ)ÒïxÛ¸SwãÞö‰ËEï˜D»ü‘ÖmMzǧšÞÔ`ƒ÷?½"ŸpðK¯ûÝþä/w¤{E@ަ£®£S x]pTá9±¿Êo(!f²Üõ¤N·Í6ôÌÒS2XWp <çoI‘׸įXž[ÝÉ÷¼-ž¥gF¬G6˜¢P£GŒAa耸øj±KÉ€Cçb|Íõ^´Å¥)˜šj‡òG:âLÄóÁ›×"–Š¢èÂzVÔÒ¶CØ´} ±$¸Yo½r TEh·q6 ×¨­¨TÕ‘M…ßôÜDµn»<ÒÆçÅkUf«Ò?8‰5V„ºcLB3*Ç8,ë¯,l{‹©û+SÀ¥Æ/q¬m4<ÂG”J©d¹\Æ‹¥‘n‹î•­³¥ñ M3»áwàö3xK6^\aˆn’d…u}ê»ÓÇ×+3Z­’lš­Ý _Å;Ý ÉÕY™µÀbMÞ—£+3­U–•Ô¢ƒSëL÷³La˜›­ïxmÙnU.-ƒjL66 ”QrrN‡ØÐ‰ßu(»ó)õQŒ ¯þ=^˜oŒGoZ64Öp7ø¼OH•RÚv)5\³†ôœ|Äî9ÑcêÓ˜™`ÔÁ0‡íˆH0•¤&£0z¶“ïÁç_02®ŽÎÀ–Ûìú(u‚ JP¿Â‡žmå{ñy~ÿîZ7c+n±¸&õ±ÉðÁ)ñ‚ï ·µÖ²Ý'áÕ¦>üÜÛud·Ì{rÏ7ÓVµïcA²¯òçãA”YV/™¸oãbn“ÝXS#1îÌ~ÍÀ¿r·ÔãÂÄ­5'?m±Vyüii'Í»½jyÒ.K™“'µÐý»E•þo;xàó6£çÇ;ؾÝ{ërþnsÅûñˆH5Ü(¸4'Õêñ¬Å‹ktMôþêì}éós×Û÷Ãõû=¬šL+HI²¿ßðãFCþ>zÁÐÄol2§†…—ÜùÉ%ºEXûúG¬VÁwê;ö,{ÒΛÔÇ+ÊËv]-/h.ÈK*½r¥§¡³kt¬¥uàÅógC_=Åi7OÏÙÎUf“¶ê³Sìkb,™¯>|?[˜“.³3ÎÎ×ÉeÛó?¾ó?ð-ËJC–caÛÛ//Їå&Í`3sæÏÚœä°þÑvhÄë~ýÁúÊéj ÕÍèîöy­ NͶҙûø|{ǧãxBSJ؆ Ö§Ý# `ˆ¤Ò¤ŒÑܲ׉ 7]×$"¸Sh‡¯kyz1+(0I€@ †\’åÜIDµÌÜ6Ö÷oY‘œ»tn?˜%¶‘ ZÁ" 6ÝcÈTP[ ØŽ–7é­%¡$‰¿Z…jB< I–˜KA‰ÄP!C,Á¿¡ ¢Ï¡%i ;ˆu0™Œ(Ò0êÕ¨s°6,%dЊb-Mí™ÆÍlœ€ÿi5žpjM“{ð"Ê&hÜNî«®{zÍnÓ} Á'M6<êÓôSø»Å¿*ó!‹S_–åIEND®B`‚./4pane-6.0/bitmaps/photocopier_3.png0000644000175000017500000000265312120710621016403 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)((-,71--666?C3f99A56h3f3AD5MM*Rz4ffA?@bb7GEEFYYQNNYVUWyWBllfffsmmxww2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ…†‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüü´þüHtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆH…IDATxÚµ– SÛ8Ç×nC‰‡3íéŽâž2M•k] [²ï‘øû£®$ǼLûŸ`­„ç·«Ç® ÕoóÒŒÃ1z%þÇ…' !…Q–I!e†Q!qÜX¯Å§_‹r¡UêŸ6—e¹P‹Fh–¯~0ø^6”®z]€ÛWàW•û×uÑGªM?–~»kãW+ÎÊÅ3RH¤//Á¯VS.v-E¿« o£ÝÙñøUõ4¤z¯tÌü&Ì*tî²Cx–¶ðU ÷of³7<äh»s<ž{ñïGÄçyÝ}Š/’b3ж]w–ÓÛðç0ÌôáïiÜàã€>¤2&b½êq0Š»aî[$ȦÉ4@ÃÓÙ¼+8Yã9q¿è”)%ªð]ejûnyÀ•Á3ƒÞ‡`2wi,— ¾ÅsþžØÔFý—‡ ¹kiÊþm;P ˜&XÐt»ôKM—Œ1ø1ñ=QÔ%DÊÙÇ`t—Õšãonš¬𝠏µtÐt^Ómðã1&âùø·B6p)/œ£ ¤–`Þ‰ÝÒ%ÁóŠxço ¹q€Ï¤ìzC£èôŠö™ý –ÎÍ®öè':x<`ßnXø¢.¹ºê6#ÙºgÛæ:«Ü-z!®L}ŸvÀÖ<=zmø×ÑEW3·¿2)?ƒpÖð¼öð½z*ç ·<_ÕY ¬Ðäæäp³”¹²¯|c_Î>wœ]Æ>í0ÙØ˜PF‰wN',$4Ž©GY’P´®FSÇ,~ÀKL𸎠=~ƒ¯F„´1qn§ô:žÐscžݧ1mÄÌ£€™÷ó]ס!>V2z„ûg1`Ð:p­ õ¼€zCïoú휯š…Ժ܎òÁç5\òa§–™›»_Çžaìÿ4¾>=UÅ€›í(²ËƒWùgNÎθ\(I/Ÿ¹þ&B¤",WªŽ> ]¯:€¯>ãÎø¦F»òZÏÃ{LÓ495>‹\§:ˆ¯ª?ÒÍ7§Øö”²[2yô0e5^ð=ô]w­Ó_¥6ë~Y®ï+eñóhß•½c<*z|û]ÖŸKëFøQè^UÇãa3SM>´å3ÏÛ¬Ñ`v´zþÏm|[òî~Ö&μê%ø¦GÖ³itíþt=€¯Ž®ÇF´z!þê'yƲë¤Â$#IEND®B`‚./4pane-6.0/bitmaps/gohome.xpm0000644000175000017500000000106712120710621015122 0ustar daviddavid/* XPM */ static const char * gohome_xpm[] = { "16 16 12 1", " s None c None", ". c #ff0000", "# c #000000", "a c #ffa858", "b c #dcdcdc", "c c #a0a0a0", "d c #c00000", "e c #ff8000", "f c #ffffff", "g c #800000", "h c #c05800", "i c #400000", " ## ", " # #.d# ", " # #.d.g# ", " # #.diidg# ", " ##.dicbidg# ", " #.dicbfbidg# ", " #.dicbfffbidg# ", "#.dicbfffffbidg#", "giicbfiiiffbc##g", " #cbiaaeifbc# ", " #cbiahhifbc# ", " #cbiahhifbc# ", " #cbiahhifbc# ", " #cbiehhifbc# ", " #cbiehhifbc# ", " ########## "}; ./4pane-6.0/bitmaps/bm1_button.xpm0000644000175000017500000000071212120710621015712 0ustar daviddavid/* XPM */ static const char * bm1_xpm[] = { "16 16 5 1", " s None c None", ". c #646464", "# c #c8c8c8", "a c #323232", "b c #969696", " ## ", " aa.# #aa# ", " a . #aba# ", " aaaa abba# ", " a a #b ba# ", " a a ba# ", " aaa# ba# ", " ba# ", " ba# ", " aa aa ba# ", " a#a#a ba# ", " a # a ba# ", " a a ba# ", " a a bbba#b#", " # # baaaaa#", " "}; ./4pane-6.0/bitmaps/4PaneIcon32.xpm0000644000175000017500000003107312120710621015571 0ustar daviddavid/* XPM */ static char * 4PaneIcon32_xpm[] = { "32 32 664 2", " c None", ". c #7690BD", "+ c #6C8BC3", "@ c #6186CA", "# c #6386CA", "$ c #6386CB", "% c #6387CC", "& c #6487CC", "* c #6589CD", "= c #658ACE", "- c #668ACE", "; c #6286CC", "> c #6488CD", ", c #668ACF", "' c #668BCF", ") c #7591C5", "! c #7894C5", "~ c #678BD0", "{ c #668BD0", "] c #6489CE", "^ c #678BCE", "/ c #678ACE", "( c #688BCA", "_ c #6D8CC1", ": c #8396BB", "< c #7C93BF", "[ c #7490C3", "} c #7792C4", "| c #7991C0", "1 c #758EBF", "2 c #708CBF", "3 c #7590C3", "4 c #7994C7", "5 c #7C97CA", "6 c #7B96CA", "7 c #7C97CB", "8 c #7D98CC", "9 c #7E99CD", "0 c #899EC5", "a c #8BA0C5", "b c #7D99CD", "c c #7D99CC", "d c #7D98CB", "e c #7C98CB", "f c #7893C6", "g c #738FC0", "h c #728EBF", "i c #718BC0", "j c #768DBA", "k c #AAAAB5", "l c #ABABB1", "m c #ACAEAF", "n c #AEB2B6", "o c #B3B3B1", "p c #B7AF9F", "q c #A8A198", "r c #969798", "s c #A3A3A3", "t c #B5B6B6", "u c #BDBCBC", "v c #C2C2C2", "w c #C1C2C2", "x c #C4C4C4", "y c #AEAFB0", "z c #9FA1A4", "A c #979D96", "B c #979D92", "C c #8D90A2", "D c #9494A4", "E c #A3A9A5", "F c #AEB1AD", "G c #BDBCB7", "H c #B9B8B6", "I c #AEADAA", "J c #A7A6A1", "K c #A9A6A4", "L c #A4A2A2", "M c #A6A4A3", "N c #AAA8A7", "O c #ABA9A8", "P c #ADABAB", "Q c #ACABAA", "R c #ACA9A9", "S c #AEACAC", "T c #ADABAA", "U c #AEADAC", "V c #A7ADA6", "W c #ACADAC", "X c #B1B1B0", "Y c #A8A5A4", "Z c #A6A7A5", "` c #ACABAB", " . c #AEACAB", ".. c #ADAAAA", "+. c #A7A5A4", "@. c #A4A3A3", "#. c #A4A3A1", "$. c #A3A3A0", "%. c #A19FA3", "&. c #A3A2A5", "*. c #B8BBB0", "=. c #A3A4AF", "-. c #908FB0", ";. c #AEA9B8", ">. c #C6BFBC", ",. c #BABAB7", "'. c #B7C0B7", "). c #BCC8C2", "!. c #C2D0C9", "~. c #C0CEC6", "{. c #C0CDC6", "]. c #BFCCC4", "^. c #B7C2BC", "/. c #B6C0BA", "(. c #B6C0BC", "_. c #B8C0BB", ":. c #B8B8AF", "<. c #B3B0A5", "[. c #B1AEA6", "}. c #C1B6AE", "|. c #C0B8B4", "1. c #B7BBB1", "2. c #B6C0B9", "3. c #BDCAC3", "4. c #C1CEC7", "5. c #C2D0C8", "6. c #C3D0C9", "7. c #C4D2C9", "8. c #BDC8C1", "9. c #D6D0C6", "0. c #ADA8BB", "a. c #8681B3", "b. c #BAAFC6", "c. c #EBDBD8", "d. c #DAD6D0", "e. c #C9DAC6", "f. c #D3EDE0", "g. c #E0FEED", "h. c #DEFCEC", "i. c #DFFCEC", "j. c #DFFCEA", "k. c #D0E6D7", "l. c #CBE1D5", "m. c #CCE1D5", "n. c #D0E0D6", "o. c #BABECE", "p. c #A4ACBE", "q. c #9DA7BB", "r. c #C0BFD4", "s. c #CEC9D9", "t. c #CAD5C3", "u. c #CEE4D4", "v. c #DBF8E9", "w. c #DEFCEB", "x. c #DCF9E9", "y. c #DDFAEA", "z. c #DEFBEB", "A. c #E0FEEE", "B. c #D3EBDE", "C. c #E1D8D1", "D. c #DFD5CD", "E. c #E8D9D4", "F. c #FAE6E7", "G. c #FEEAEB", "H. c #E7E1DB", "I. c #C9DDCB", "J. c #DAF7E7", "K. c #E0FFEE", "L. c #DFFEED", "M. c #DEFDEC", "N. c #D0E9DC", "O. c #CDE5D9", "P. c #CFE5D9", "Q. c #CDE2E0", "R. c #6E96EB", "S. c #5689F3", "T. c #5589F6", "U. c #5B8CF9", "V. c #86A4F5", "W. c #BACCCE", "X. c #D4EEDE", "Y. c #D6F1E2", "Z. c #D8F3E4", "`. c #DDFBEB", " + c #E1FFEF", ".+ c #D4EDE0", "++ c #E5DBD4", "@+ c #E2D7CE", "#+ c #EEDED7", "$+ c #FFECEC", "%+ c #E8E1DB", "&+ c #CADDC8", "*+ c #D9F6E7", "=+ c #DEFDED", "-+ c #C2E7F0", ";+ c #72A4F0", ">+ c #D0E7D9", ",+ c #D1E7D9", "'+ c #78A6F1", ")+ c #578AF4", "!+ c #749AEA", "~+ c #4A83FA", "{+ c #3979FE", "]+ c #417EFD", "^+ c #6494EA", "/+ c #C5E3E3", "(+ c #E1FFEB", "_+ c #DDFCEB", ":+ c #E1D6CE", "<+ c #EADAD5", "[+ c #FEE9EA", "}+ c #E7E1DA", "|+ c #C9DBC6", "1+ c #D7F3E4", "2+ c #E0FFEF", "3+ c #E0FFED", "4+ c #D4F5EE", "5+ c #70A5F7", "6+ c #407FFA", "7+ c #B5D4DF", "8+ c #B0CFE1", "9+ c #4381FB", "0+ c #618FF1", "a+ c #B3BCD4", "b+ c #A0B1E8", "c+ c #4882FB", "d+ c #2F74FE", "e+ c #3677FA", "f+ c #9DC4E9", "g+ c #D9F8EB", "h+ c #E1FFEE", "i+ c #DFFFEE", "j+ c #E4D9D3", "k+ c #E0D5CD", "l+ c #E6D8D2", "m+ c #F8E5E5", "n+ c #FDEAEB", "o+ c #E8E1DA", "p+ c #C8D9C5", "q+ c #CDF0EE", "r+ c #2D70FD", "s+ c #3678FD", "t+ c #92BAE7", "u+ c #7BA9ED", "v+ c #3275FD", "w+ c #7198EC", "x+ c #E0D4C4", "y+ c #F3DED5", "z+ c #7B9EF3", "A+ c #3B7AFC", "B+ c #2C71FF", "C+ c #71A2EE", "D+ c #CCEDEB", "E+ c #E2FFED", "F+ c #E4DAD4", "G+ c #E0D6CD", "H+ c #E2D5D0", "I+ c #F1E0E1", "J+ c #F9E7E8", "K+ c #C7D8C5", "L+ c #CFE7DB", "M+ c #E1FFED", "N+ c #D0F2EE", "O+ c #3578FD", "P+ c #3879FC", "Q+ c #7FACEB", "R+ c #4A86F8", "S+ c #3477FD", "T+ c #7097ED", "U+ c #DAD1C7", "V+ c #E9D8D3", "W+ c #B8BFE8", "X+ c #4580FB", "Y+ c #2F73FE", "Z+ c #5991F2", "`+ c #C2E3E9", " @ c #E2FFEB", ".@ c #E6DCD6", "+@ c #E1D4CF", "@@ c #F0DFE0", "#@ c #E8E2DB", "$@ c #C8DAC6", "%@ c #D1EBDE", "&@ c #DAF5E6", "*@ c #B9E0F1", "=@ c #3174FD", "-@ c #3779FC", ";@ c #75A6EE", ">@ c #3476FD", ",@ c #7197ED", "'@ c #D9D1C6", ")@ c #E8D7D3", "!@ c #C6C6E6", "~@ c #4781FA", "{@ c #5890F5", "]@ c #BFE0E7", "^@ c #E1FEEA", "/@ c #E0D5CE", "(@ c #E7D9D4", "_@ c #F8E6E6", ":@ c #FBE8E9", "<@ c #CADDC7", "[@ c #D6F2E4", "}@ c #D9FAED", "|@ c #7EB1F6", "1@ c #3577FD", "2@ c #81AEEB", "3@ c #7097EC", "4@ c #D9D1C7", "5@ c #F0DDD9", "6@ c #CDCCE9", "7@ c #5891F6", "8@ c #C2E5EB", "9@ c #E2FFEC", "0@ c #E2D8D2", "a@ c #EADBD6", "b@ c #FEEAEA", "c@ c #CADCC7", "d@ c #D8F4E6", "e@ c #C4E9EF", "f@ c #4383FB", "g@ c #4784F9", "h@ c #8EB7E7", "i@ c #6F96EC", "j@ c #DAD1C8", "k@ c #F2DFDB", "l@ c #D1CFEC", "m@ c #C6EAEF", "n@ c #DFD4CD", "o@ c #E5D6D2", "p@ c #F7E4E5", "q@ c #FEEBEB", "r@ c #C5D8C6", "s@ c #D2EBDE", "t@ c #D8F8EE", "u@ c #93C1F4", "v@ c #397AFC", "w@ c #7CABEE", "x@ c #8BB4E7", "y@ c #7096EC", "z@ c #DBD2C8", "A@ c #E8D6D2", "B@ c #CACAEB", "C@ c #5A91F3", "D@ c #C6EAEE", "E@ c #DFFBE8", "F@ c #D5EFE1", "G@ c #E8DCD7", "H@ c #E5D9D2", "I@ c #EEDEDA", "J@ c #FFEAEB", "K@ c #C4D7C6", "L@ c #DAF6E7", "M@ c #CDEFEF", "N@ c #4F8BFA", "O@ c #4080FB", "P@ c #B9D7E1", "Q@ c #7DABEB", "R@ c #7298ED", "S@ c #E0D4C9", "T@ c #FFE9DD", "U@ c #97AEF3", "V@ c #3F7DFC", "W@ c #2A70FF", "X@ c #72A1EB", "Y@ c #C6E4E3", "Z@ c #DBF6E5", "`@ c #D3EDDF", " # c #D5EFE0", ".# c #D5EDE0", "+# c #E8DDD7", "@# c #E4D8D1", "## c #ECDDD8", "$# c #FDEAEA", "%# c #C7DAC7", "&# c #D4EFE1", "*# c #DEFAE9", "=# c #DDFCEE", "-# c #A1CDF3", ";# c #3779FD", "># c #70A6F6", ",# c #6EA0EF", "'# c #6C94EF", ")# c #CFCCD0", "!# c #C4C7E7", "~# c #588BF9", "{# c #2D73FF", "]# c #3E7CF7", "^# c #A2C7E7", "/# c #D5F2E5", "(# c #DDFAE9", "_# c #DBF8E8", ":# c #DAF6E6", "<# c #D9F5E6", "[# c #E7DCD6", "}# c #E2D7CF", "|# c #FAE7E8", "1# c #DAF7E8", "2# c #E3FFEE", "3# c #CAEDEF", "4# c #659DF8", "5# c #4282FC", "6# c #B2D9F0", "7# c #6096F2", "8# c #5387F5", "9# c #91AAE2", "0# c #6491F2", "a# c #4881FC", "b# c #759FE2", "c# c #C9E6E1", "d# c #E9DDD8", "e# c #FDE9E9", "f# c #E8E2DA", "g# c #C8DAC5", "h# c #D3EEDF", "i# c #DCFCEF", "j# c #A4CFF2", "k# c #5D96F9", "l# c #CDE7DD", "m# c #538CF5", "n# c #3677FD", "o# c #3E7CFB", "p# c #6692F8", "q# c #AEBCEF", "r# c #C8D4C6", "s# c #CEE5D4", "t# c #DCFAEA", "u# c #D6EFE2", "v# c #E1D6CF", "w# c #E9DBD6", "x# c #FCE9E9", "y# c #E7E1D9", "z# c #C9DBC5", "A# c #CCEAE6", "B# c #9FCCF4", "C# c #4D89FB", "D# c #3E7EFC", "E# c #96C4F4", "F# c #D3F4ED", "G# c #BDDADE", "H# c #4382F9", "I# c #4280F9", "J# c #A5B5E1", "K# c #B6BED4", "L# c #C7C7E1", "M# c #E0D6EB", "N# c #ECDFE8", "O# c #D0D8C2", "P# c #D2EAD8", "Q# c #D9F1E4", "R# c #E1D5D0", "S# c #F4E2E3", "T# c #FFEBEC", "U# c #E7E0DA", "V# c #B3D6E7", "W# c #528FFB", "X# c #2B6FFE", "Y# c #2F72FE", "Z# c #669EF8", "`# c #74A9F7", " $ c #6C9EF0", ".$ c #3B7BFB", "+$ c #9CB0E4", "@$ c #E3D6C3", "#$ c #EFDBD1", "$$ c #FFEAE4", "%$ c #FCE8E5", "&$ c #CED6C4", "*$ c #CEE6D6", "=$ c #DBF9E9", "-$ c #DFFFED", ";$ c #DAF2E5", ">$ c #EADDD8", ",$ c #E7DAD4", "'$ c #E5D7D4", ")$ c #F2E0E1", "!$ c #A3C8E5", "~$ c #2F73FF", "{$ c #4181FC", "]$ c #4483FC", "^$ c #4382FC", "/$ c #3D7DFC", "($ c #3A7BFC", "_$ c #799DEF", ":$ c #E6D6D4", "<$ c #F9E5E5", "[$ c #F7E6E6", "}$ c #CCD4C6", "|$ c #CAE1D3", "1$ c #D5F0E1", "2$ c #D4EEE0", "3$ c #D9F6E6", "4$ c #F3E3E3", "5$ c #F9E6E6", "6$ c #FFEAEA", "7$ c #E6E0DA", "8$ c #C9DAC5", "9$ c #B7D9E4", "0$ c #639CFA", "a$ c #7DB0F7", "b$ c #8ABBF5", "c$ c #89BAF5", "d$ c #88B9F5", "e$ c #73A5EF", "f$ c #528BF5", "g$ c #B1BDE4", "h$ c #FAE6E8", "i$ c #FEE8E8", "j$ c #FFE8E8", "k$ c #CCD5C6", "l$ c #CDE4D6", "m$ c #D7F2E3", "n$ c #DAF2E4", "o$ c #F4E3E3", "p$ c #F9E7E7", "q$ c #FFEBEB", "r$ c #E7E0DB", "s$ c #C6D7C6", "t$ c #CDE8DF", "u$ c #CDF0EF", "v$ c #CFF2EE", "w$ c #D2F3ED", "x$ c #A1C6E6", "y$ c #3376FD", "z$ c #75A3EC", "A$ c #D9D3DC", "B$ c #FDE8E8", "C$ c #FFE9E9", "D$ c #CDD6C8", "E$ c #CBE2D4", "F$ c #E7E1DD", "G$ c #C4D7CA", "H$ c #E0FAE5", "I$ c #E6FFED", "J$ c #E4FFED", "K$ c #E5FFEC", "L$ c #E3FFED", "M$ c #8FB9EA", "N$ c #8BB2E8", "O$ c #E4DADA", "P$ c #FDE7E7", "Q$ c #F7E5E5", "R$ c #CDD7CD", "S$ c #CAE0D3", "T$ c #D1EADD", "U$ c #E7E1DF", "V$ c #C4D8CE", "W$ c #CCE3D7", "X$ c #D6F0E2", "Y$ c #D5F6EE", "Z$ c #81B3F6", "`$ c #5A92F6", " % c #3275FE", ".% c #97BAE5", "+% c #E2D9DA", "@% c #CDD8D1", "#% c #CAE0D4", "$% c #CDE3D7", "%% c #D8F4E5", "&% c #C5D9CF", "*% c #D1EBDD", "=% c #A3C1E1", "-% c #CBE3D6", ";% c #F5E4E4", ">% c #FAE7E7", ",% c #E8E2E0", "'% c #C7DCD1", ")% c #D5F1E2", "!% c #D2F4F0", "~% c #90C0F5", "{% c #8DB9ED", "]% c #8CB6EA", "^% c #BED5DB", "/% c #E4DBDB", "(% c #CFDBD3", "_% c #CEE8DA", ":% c #E1FFF0", "<% c #DBF4E6", "[% c #ECDDDB", "}% c #F1E0DE", "|% c #F6E4E1", "1% c #F6E3E1", "2% c #F5E3E1", "3% c #E1DBD6", "4% c #C5D5C9", "5% c #D0E5D6", "6% c #D6EDDD", "7% c #D8EFDF", "8% c #DBF4E2", "9% c #DBF3E2", "0% c #D7F1E3", "a% c #CBE6E3", "b% c #C2D9D8", "c% c #BFD5D5", "d% c #BFD4D4", "e% c #C9D6CE", "f% c #DCD2CF", "g% c #F4E0DE", "h% c #F5E1DF", "i% c #F6E2DF", "j% c #EFDEDB", "k% c #CCD4CB", "l% c #CBDDD0", "m% c #D7EDDD", "n% c #D5ECDC", "o% c #D5EBDC", "p% c #D4EDDE", "q% c #CEE1D7", "r% c #D5D0D6", "s% c #D7D2D9", "t% c #DAD5DE", "u% c #DAD5DD", "v% c #CFD0D8", "w% c #BFCDD2", "x% c #C4D4D7", "y% c #C4D4D8", "z% c #C8D8DC", "A% c #CCE0E1", "B% c #CCDFE1", "C% c #CDE0E1", "D% c #CFE2E1", "E% c #C9D8D9", "F% c #C7D6D7", "G% c #C7D6D6", "H% c #C3CFD5", "I% c #CACAD4", "J% c #DAD5DF", "K% c #DBD6E0", "L% c #D6D3DD", "M% c #C2CDD3", "N% c #C2D0D5", "O% c #C8D8DB", "P% c #C3D3D8", "Q% c #C5D4D8", "R% c #C6D2D0", "S% c #C2CBC6", "T% c #B3C1DC", "U% c #B2C2E2", "V% c #B1C4ED", "W% c #B2C6EE", "X% c #B2C5EC", "Y% c #B4C9F4", "Z% c #B5CCFA", "`% c #B5CCF9", " & c #B4CCFA", ".& c #B9CEF8", "+& c #C2C9D7", "@& c #C2C1BF", "#& c #B0B9CA", "$& c #B0BACE", "%& c #B0BCD3", "&& c #B1BDD5", "*& c #B2BED6", "=& c #B1BDD6", "-& c #B3BFD7", ";& c #AFBBD4", ">& c #AFBBD3", ",& c #B0BCD4", "'& c #B0BCD5", ")& c #B1BED6", "!& c #B2BED7", "~& c #B4BFD5", "{& c #B4B8C0", "]& c #B2B1B0", ". + @ # $ % & * = * - ; > , ' ) ! ~ { { , , - = ] > - ^ / - ( _ ", ": < [ ) } | 1 2 3 4 5 6 7 8 9 0 a 9 b b 8 c c d e d f 3 g h i j ", "k l m n o p q r s t u v w v v v v v v v v v v v v x y z A B C D ", "E F G H I J K L M N O P Q R S T S U V W X Y Z ` ...+.@.#.$.%.&.", "*.=.-.;.>.,.'.).!.~.{.{.{.].^./.(._.:.<.[.}.|.1.2.3.4.5.6.6.7.8.", "9.0.a.b.c.d.e.f.g.h.h.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.A.B.", "C.D.E.F.G.H.I.J.K.L.L.L.L.M.N.O.P.Q.R.S.T.U.V.W.X.M.v.Y.Z.`. +.+", "++@+#+$+G.%+&+*+K.L.L.L.=+-+;+>+,+'+)+!+~+{+]+^+/+(+M.`._+L. +.+", "++:+<+[+G.}+|+1+2+L.L.3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+K.i+L.2+.+", "j+k+l+m+n+o+p+f.M.L.L.3+q+r+s+t+u+v+w+x+y+z+A+B+C+D+E+L.L.L.2+.+", "F+G+H+I+J+%+K+L+Z.K.L.M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+`+ @L.L.L.2+.+", ".@:++@@@J+#@$@%@&@i+L.=+*@=@-@;@P+>@,@'@)@!@~@Y+{@]@^@L.L.L.2+.+", "F+/@(@_@:@#@<@[@`.L.M+}@|@=@1@2@>@>@3@4@5@6@c+Y+7@8@9@K.K.L.2+.+", "0@D.a@b@G.o+c@d@2+L.g.e@f@>@g@h@1@>@i@j@k@l@c+Y+7@m@9@`.`.M. +.+", "0@n@o@p@q@H.r@s@K.3+t@u@Y+v@w@x@1@>@y@z@A@B@c+Y+C@D@E@Y.F@x. +.+", "G@H@I@J@n+H.K@O.L@E+M@N@v+O@P@Q@1@>@R@S@T@U@V@W@X@Y@Z@Y.`@ #`..#", "+#@###$#G.}+%#&#*#=#-#=@;#>#L+,#1@S+'#)#!#~#{#]#^#/#(#_#:#<#M..+", "[#}#(@|#G.o+<@1#2#3#4#Y+5#6#L+7#1@>@8#9#0#A+a#b#c#(+K.K.K.K. +.#", "d#H@##e#n+f#g#h#i#j#v+s+k#(+l#m#1@1@n#1@o#p#q#r#s#t#K.L.L.L.K.u#", "F+v#w#x#G.y#z#A#B#C#=@D#E#F#G#H#1@I#J#K#L#M#N#O#P#`.K.K.K.i+K.Q#", "F+D.R#S#T#U#p+V#W#X#Y#1@Z#`# $v@1@.$+$@$#$$$%$&$*$t#_+_#:#=$-$;$", ">$,$'$)$T#U#K+!$~${$]$^$/$($P+>@1@P+_$v#:$<$[$}$|$v._#1$2$3$L.;$", "4$5$6$b@n+7$8$9$0$a$b$c$c$d$e$>@1@f$g$h$i$j$[$k$l$t#v.F@m$`.K.n$", "o$p$q$6$$#r$s$t$m@u$N+v$N+w$x$y$1@z$A$B$C$j$[$D$E$=$L.`.w.L.K.n$", "4$5$6$b@$#F$G$>+H$I$J$K$L$3#M$>@1@N$O$P$i$j$Q$R$S$T$_#i+K.L.K.n$", "4$5$6$b@$#U$V$W$X$K.L.g.Y$Z$`$ % %.%+%P$i$j$Q$@%#%$%%%L.L.L.K.n$", "4$5$6$b@$#U$&%*%x.-$L.L.m@Y#1@1@1@=%+%P$i$j$Q$@%-%%%M.L.L.L.K.n$", ";%>%$+q$q$,%'%)% +2+K.K.!%~%{%]%]%^%/%i$C$C$5$(%_%_+ + + + +:%<%", "[%}%|%1%2%3%4%5%6%7%8%9%0%a%b%c%d%e%f%g%h%i%j%k%l%m%7%n%o%n%p%q%", "r%s%t%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%K%L%M%N%O%z%y%P%Q%R%S%", "T%U%V%W%X%Y%Z%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`%`% &.&+&@&", "#&$&%&%&%&&&*&=&=&=&=&-&;&>&,&,&;&,&>&'&=&=&=&)&)&=&-&!&=&~&{&]&"}; ./4pane-6.0/bitmaps/DnDSelectedCursor.png0000644000175000017500000000026512120710621017137 0ustar daviddavid‰PNG  IHDRóÿabKGD²æÈn pHYs  d_‘tIMEÔ  °ž§~BIDATxœc` ü‡b ÀH¤0C0ô1â2™ÀÈÀÀÀÀD¦f¸‹ðy(—x ¢Ä D»¯+H‰F¼‚! ¨'  †ÜIEND®B`‚./4pane-6.0/bitmaps/photocopier_41.png0000644000175000017500000000253612120710621016465 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33%$$-,70--655?C3f99A56h3f3AD*Rz4ffA?@bb7IFFQNNXVVWyWBllfffsnnvuv2d–ee—rtŸpp f–f^‰‰e˜˜‚||‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ §˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÀ¹¹ËÆÆÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééùñìÿÿÿ…xV©DtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿqÒbKGDˆH\çY ,ªîˆÞZí9ºîýŽõ‚mÃZÝ¢(Œ\Zo6lD(£ÄéÒ1£÷TêPæû{Âg4`B0±Ä†ùÆx4β«þt·øtHH…¾ÑpÍÓ®év‰SA·ÂŒ‚QëÙ_¹ëᶤ×-íû,ΣÑÚp-cê8}¼¯ôG—ϸèÛ Å=W¹°›€_‰ƒeW?BûqsG …=h:: Ý£ ××OïÖ‡ŠKVôÇoRr%™Lb•áÐvÒ#øôwÆÕ»3´WT0ç-‚•\Q\¥ÁGá³m¥Gñiº¼}ÖÏRGáÉê[¶%ã7'N ^òô¦³ÖZ—<ÑÔ[¯“Ý)¥ñ¯Þ¡#»Aïe_cø¶Þ?“Ò¥[`²Òöx(ªs•r5ÊR{«Õ6#éuæ  é ø[YÍûb¸_!¤”¾õ Nz Þƒ o'{Ç>•sá$¡é‰ø(ž)•”©°IEND®B`‚./4pane-6.0/bitmaps/photocopier_19.png0000644000175000017500000000275612120710621016476 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GDDQNN[XXWyWBllfffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™ €«« §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÇÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõ$‚¿ãItRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ŸUbKGDˆHÇIDATxÚµ–w›6ÀÖd5/!­6×­Hüêâ­TtqR‡$`³†ïÿ‰v 1vì¼ö'¡g~w9Ý€ò— õ«{Ž‘WâŒÇBp¼xÄy‰Hˆ(B…’âq=}-ž¾õÒÕJJ©î}²z­÷g¿Ûr3¹;U“ àîø¢4/¿§ÏÉ=É6¨~7ÿðEqI—©<$ÊjéÊÈIø¢ðŒL_ rna%sy¾(ó¹—fY‘òU\Àºç žó‹*ARBpÑM<ÞE­³çaÂȨœÉF  wÓˆ”€]á{GªÊFù7טø÷­«] ]¾ö}¾`™4{ôéÂuhü”Ø×¾§ÚÀ?cË»‚K¨+¨&ú®ƒZƒ¢«ÿ_c[ß7O§XˆgÓË7¼W26ŽjJî èGF9O0]oüf+dœ(¥ÄÊ•8Ï%ÙY‰þMgzW{ôså ã¸ç öàóüløuMß1\šRƬŸçþDlûyë ˜„XO†æü@|^l\_¦]\Ë3ÍoX-õ¡ y°à­*x>=f·–S€éTT®11^ûñ¿¹Äa¡g|0‹{¾¢mœmú°½«Qƒç7p÷²’œ0ˆr~åòä]¥‰)ÙO_›`«Ö×xFÌ?C•+JnNnÇ¢å€]žÑ­a̤›— èäÝÔpJëÕÇMæÈÁ÷,@eÓÜ„MÞ²}EH‰G6»¯üÁÓ0[«èѯ—­êÒL²,Éó{2¡`àV|këdîO«¬¯ë¤K´-ϲ\ïUýè=çJµ˜‡Išé—Œglíƒwê¢0r(:¦ñ&›7"Ô£Ä>§½¡œS‹zSNqĹGW¶ükã1h :ßp|áÒ¶c áŠõ@ÏÉ5ωšSNyzÁ£6¾òÊ]»nD½BgRÁ}¤ƒñ—ÇïÐh:áCÅy¸¶mzk[öïôéœ×V…ëâÊÜQÜ«%Œ.ö¨¢tbM{ °žâyÿ¬ø/v±2#ƒË·y½öÝãÓS&“TÒËŸnï¤}Åb8=¼ ± …ðD–êŒBºkÚÅ|ñOÆQ§32徬Jïëjµ¡ <©ðoÅ^|Q¼\ŒU÷dDÉ^…×”OÔ¼Úi‰“ú®»ÖXï6;­Í[+¿ôû®ì뾌ûMOë œ¬ÁÅ¢dÞ‡ãAlW˦€FÝ%áŸÌ@‹à/ÊD‘=j•e, Sc Vñ¼c¬V>{_>ó{ÿ{íÇ^W¥hñAü¨Ñ-Îãÿ¿$$IEND®B`‚./4pane-6.0/bitmaps/photocopier_23.png0000644000175000017500000000275012120710621016463 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33'%&-,70--666?C3f99A56h3f3AD*Rz4ffA?@bb7HFFQNNXUUWyWBllfffsnnxvv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ §˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÇÇÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõú[w GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHÃIDATxÚµ–‹v›8†ºIjNJºts©L|êâ:¬0Í6Ð…Œ ïÿH;Û@|lŸvlKBŸ†ÑèPþQƒƒG>R8ÄNÄÿwýIÆxÌОcÎ8gq̯Œ1¡š§âoßÏ“t©­ª²´nhË«Nõþìb¾ëY^ßOÀ¥ù!H[w=Æz]7~¾(,ò˜î"·Zyíú0¤/ ×gCÁè\‡‰/Ê‹¼ƒÊûS,c?އ𢀵༡¼¥ûc3óM<ÀG×±)Ûþ{XAÒFÏfßÇŸTÞïØ¤ÅŸ¼D"p(mÔƒ›qØñs—|3+ðY8»UÛŠnœ7xúÙü*Ç©;ÝÑÍŒ ­dß÷æ î`€uc ¸vE¢ô£ÃôæN„ü§:ë Üvµ3ÉÆy˜…¨GZjv±ÆÉ<*G'Žm±Z<”ŠDJ0-÷1Žãç8ÖeUÔtºññ“ nÄÓɇ¿¶áº0HeŠ.Ô-Ût PÄïlÎ¥P_] %}x“hİc Ov®ãoj°ZÕ^ ý\9ÙÚ[Q9®î”U~1-³øCáÕ%~býÓÝš¬†à`ÚÒ ü¨ee/÷ZÀ&I'0<hL¦Y–¥X´µjèR"'«cCq–ænd"L?Ç 7lY?6ºÌ³å “er¨oQ­uÓZ­–E±Ô©=Åõäþ²ÞµàUAI¸ÐABº(ŠbUh«‚©jUèK™ç9x×™ñ¨·gv# ›h§ëeÅÍæMâgtE¦XÝ…±ˆ· Ð<yX/Xx¡v^噹›jv‹/]ÇiÃ/(H®àŠ5%Wºyå¨kÖ<ÝáK§€àêøí„¤9¶Më°Ïq]Àø× È4@ 5mzgY·Ä²¬ÈÃqÜLTj¯ÄÓ­9 îu— 6•‚>¨l§£0«æ¯—8BÍ€Àò&Z³[¿#¹·¦ÂÕÆbg|וTVQDéÏ”ó ¨Š“?¿®«ÃØîC8=?×xòq˵gF¾‘Š\PQ•ÓkÅ~PïÀ×÷¸2¡Z¾Ÿïp])xIS…'8KÐølä{õN|]/®U•xÅî[)ÿÔ,Éð%hñ‚o¡wݵ^Wlì,­?O¶]Ùvõ_LSv.€Iô}LHþ]½?ÌŲN‰*?ú c ÍóbušEқ΀Ô௅› 6>­¡…coA}>GÌU û»F OvýUê< ‰Ôâÿ¡~r‚V „ IEND®B`‚./4pane-6.0/bitmaps/photocopier_22.png0000644000175000017500000000272612120710621016465 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNZXXWyWBllfffsnnxvv2d–ee—rtŸpp f–f^‰‰e˜˜ƒ}}‘‚~‚˜˜fˆ…†‡„“‘ŒŒ˜˜˜ ¨——±šš¬¦§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÈÕÌÌÕÌÐÒÒËÛÓÓÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõZ)~ÐGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH±IDATxÚµ–vÚ8…Çî’ŸÔéºMÒÊ„†Š&D dógK²·`ûýiG’E0,äì^@’uð§«‘<2Ôÿ«`ß?Þ1ØGoÄÿuúYJ_‘â7ÕÍ+…’øxÍ·âÏ?\åóyQs÷mвXi1«ûÞû›ùkVûµfoÀWµÿ‘çŦìK¹¢ÏÖíÿ;¾ª>“;ô^–m§Þ@jú¡øª0Ql÷îÚ â[è݆¯êêûµZÝjÀncï>Ý… É<k¸rmw¸e±ŸJ¹ði…L´ùü”«nÇe»Ï⾦¿Öp…ç߀<%ŠG ¸‹:?ð­àÖ@ŽgãŸ, ¬-8rxöÍÿ‘åJÊ„D‘íŒûç“ôuº…‘™A¤Ê^œ@ÉBKbìS$Ròï(öyç|ZlÒËŒ§:iï-ºT”‚5:ŒB35)sS&øwÿt0M÷8:ûMGüpˆâÙðãn•éi€·W‚ÔÒôÓ´é9†â½w¡FæYkœ¦N…n<Ù);Ó‡Ÿ8SzUÛÞå‘6_ÛiIÍr¼,×û S¬Huv“„Í,Sa+çÄß +ñtaò„$wv”ÌqæŽÌ¨X,9þæsü5m{•U/ÕÂÆ†õpœ{¿%Ü~ൂ`&Àà³÷rQ¾”æïX/mÝt,—EUfkÇàáT&ý¹8nžZ :ÊØ×bÊ Ý-—X4†ªª©t~2ÌŸÆË{ïËŽ}º¤0 ‰ 9Ï>ltJ¢à„Œ°ú:å¤O(–„£(I(–ü ÊyŒ¦ç¿Þká _¢Èí¤cÜ5\³FäÄ4O"}MxLœ¨é $À= ïâ1Ý< ›”…!³ Ì®@ïùÊã7v mD‚€| úÁr}B"7`Ͷ}8ó;’{ÓBÈ2Å®qÑ3ÖŸv&‚Uˆ"J%œмgñyz]G‡ë» áèø˜©¢”äl¾íä(M=z"BЬ(ïiìõ|}‰+êÕørëÑd ž“$É„"¼´ø,½ò½z'¾®ŸÂ+]½|›y+1"L/Éè9hÜ Öë¦wµÞb¼ÐïKM·>5þq²íÈîèŸ({ûjkuóNbF…æ"ÿ¢Þow²Î@íä˜Û´¡ó’½0ùCLz÷@êðÚÅÞ¿ÊÊ.e´„/®bê=BP‚ŸÀ˜í§ñ„Mv½*u> ‰ÔâÿCý&O´?\ØAÆIEND®B`‚./4pane-6.0/bitmaps/photocopier_27.png0000644000175000017500000000274112120710621016467 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYWWWyWBllfffsnnutu2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ §——±šš«§§£¤ºµ­­¸°¯»··ššÉ—È—™ÌËÁ¹¹ËÇÇÕËËÕÌÐÒÒËÙÔÔÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìø÷ôcl%`GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH¼IDATxÚµ– {›6€o‰g–‘•gí2‘xõð‚ðGk'  ‹ÿÿ“v` ›dqžö°> ¯Ž;騿«ÀYw¯x‹¼ÿåã/)gøS’$<áX'\IÎyÊ’\uÞ‹'?yQT(¥®D”ª.Þ«ýÅø¾¡ŠŽg¶Ý`u>U²ìÈÐYà±€«³ñ2 wÄ[÷-²×]æHzô7á%„’Q6dî£1Po çá½b™/â…î@žU¿„ðã!³Ëð‘xbß­° Þ¨~ðó­ëPÖW= e´ÉE4€WôùòvÜ;_Ó=>úÈSœF.…è@ÃTnƒ¥=Z¨-xA2_Í' j\vxêŽþÊðÐñ˜¸n7‰V/Ë-K³‹Ss‹¡eV¨ï®H¹ NC¢ôW—á±ÖçûŸüÖ.!cé±¢)ÊïéóíÑyêûÐ(ú§ëØ,o"‡*1UÓV[¬· ^ê·MT{*jî#,{tÄO§C§ö§Õµàïd½)@*9¦çh ˆ·~p43kPo€Q„”Í¢Y»jvøÿH¼¿ñjêÎ/•òjWïuN;Ý5ñhzôWÓ—j“fBIÒý€IO³§;8Á!¹¡”®Ñ2YžeË˲,°*T[4mÓˤ”¥a:êÙǸý  … ·3ÏBtj¥‚·Ü ¼[¨Zè«Ò=,•”•ÞÚXø*ÁäÄwWí©Ÿç{“¢eB ©”;©E«Óvô\3Â$´_ÆÖkëÔ×N¦1Ý„‡ÍŸºÄ'îäšÌ°¹Y.È„ø‹ˆÅ'±uô„•¿ÔÊ£é­ôÖpöøúÖu[ŹÒsW¬¹ÖÝkWIä‘N|=á@»™±MÒË‚fHs'lüJ¤ƒõèGÞ,ÒêjÚìÆ¶ ±mû7òpM\·  Y³ë6¿‚{;å€C>W»”N–¯dŒªÚ¹®ïÿG‘m‹|L™þJØ~‚¡ÔÑÍ}vàòꊦ•àäÓñw@?w‹Ù3Ëb<>˜Ÿšàìú|ý=ã(ïLG|~x a?Çqœ1F¢Ÿ<Œ¬úU|]?}¸W̓•›iîÔDÙ Cåg£¼Â3z1LʵV9dqCŠBˆ.³hü6x)eÌi¡Ï,rްÝk´‰E5p‹_‚£»úíx½“{áù“tØ3b&»Ý©ÏÀ0ð‡Ur#&·9!Å\¶´6`×çà¸ÇXÐÿ—y¯}* ž…³„Ôgâ¿¡ü—B¼YðWoIEND®B`‚./4pane-6.0/bitmaps/photocopier_38.png0000644000175000017500000000255212120710621016471 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7JGGQNNXWWWyWBllfffsnnvtt2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ ¦˜˜±šš«§§£¤ºµ­­¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÆÆÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééùñìÿÿÿ™ŒÔDtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿqÒbKGDˆHHIDATxÚµ–W›0Ç6­òj6uKµÏ.TY"í´²Qÿÿÿ´K€ZúË·}ßkHýärÇ]€â¿ zú9„}ôNüÏ«OZI-­’DI¥¼iüIi»ïÅßœ<è,›£Lk:vЖ~¯õG½%._!æÍ9€ñáx4ÉõDÖ"v éãÿd”>ënxc4Õ¢ï…Gú<ä²Ã%k¶ó~îaxKuÞAΛŽÏs€'ÞwŠMxw¹=*³pM¹õ;ÒÝbàâ–ø\®™.n&º¸Õ`Üïµòk°À‹o@g±„ƒh›Nƒh¾CfOQpÊ›‚ãωû]i̽˜KÓ“kÊ«óÕ  gÆhÌ[-PŠ€_’8¿ eF£~ÅÀ*8ôƒI”绌7ôQÄWèŒAiè€\zRWt³Ö1 ¥<š&ÉtŠMKíñtzãñƒVäðÁçIU•°³²2™_¹{H£h•® G¼óÁ·Ü´¦ãM Ç«zKÊÆ¥î,g«a0Â?ð&]ãÍ«±(¨æRZPÒŸTD•]¹ì–·¤JµJOgw¶p‚Oõ®`Awöv‹w›žÑ*Æ×¯Œ8‹Öߨ°î<Ùv€ƒöN×¼;«²Xiþ24GiZF£r‰Uª—!¨vÜs&ØvìÕ¯‹ÂÀ§*]šŽbB%'çtÈú„F‚z”aK…£1‚‰6L€#­eŽÛö§¿À·„¨æ[õfà†5¤ç¶{N̘ º³ŒzvR¾$­S°YÒˆï7âþg‚…èã–6¤žGñç}¡ç” ¸^xå—·£¸WS>,à§¢Êô¬3ÿsBû áy¹>2x æm×ÑQÏÝûp|vfñô:ÛZ^òá«”q*%“ùÜáe^ô]¯Ø‚/î12¾‰ÎÀU;Ê—÷DZL%æø³ôÐuŠ­ø¢˜]>˜Ë££·ÓÓ¯eH†¯^…—|½ë¬u²Ö›¨¼*ö? 7Ùó¡Î¶¶† nñ[н+öǃlæeZF]çmšÖõö&/@‹ð—‹skYI»„_³JFμâ|ÍÚµEA(B€mŸJ¹phq þê/Þ‘y³Ý¨IEND®B`‚./4pane-6.0/bitmaps/4PaneIcon16.xpm0000644000175000017500000000757712120710621015607 0ustar daviddavid/* XPM */ static char *_PaneIcon__[] = { /* columns rows colors chars-per-pixel */ "16 16 149 2", " c #3B9C7B76FC1A", ". c #3D717C36FB91", "X c #41FA7FAEFA7A", "o c #72AB8C93BE37", "O c #7D639406BEBA", "+ c #74B390BEC4BD", "@ c #75CD91C2C638", "# c #7A1F95C3CAE0", "$ c #7C349859CD78", "% c #7C18989ECE58", "& c #433082A2FCF1", "* c #48278455F938", "= c #460E8128FBCD", "- c #4C55846DFB4D", "; c #48788636FA71", ": c #4C4688A0F945", "> c #4E768BACFB58", ", c #533B8A3BF669", "< c #5B5A900CF34F", "1 c #5D8E8CD0F470", "2 c #52E98E26F923", "3 c #5D1395A8F6A1", "4 c #57A192FEFA6B", "5 c #72539A31EB94", "6 c #7B599DD8EB55", "7 c #64B39A46F38D", "8 c #610D99D5F8DA", "9 c #62419B81FA00", "0 c #74529A8AF2B1", "q c #7022A127F079", "w c #71FEA384EFF3", "e c #7F1BA623EB57", "r c #7B29AA31EDEA", "t c #6E0FA35CF5C3", "y c #7B37AF4EF754", "u c #99B09DDDA8F7", "i c #9C36A241A4D9", "p c #A126A2B9A511", "a c #A4BFA909AE18", "s c #A5BFAA22B0AE", "d c #AAC2AB99AC76", "f c #AA6AAE11B595", "g c #AAB2AE44BE99", "h c #B1E6AAF6BDBF", "j c #B03BB393B87E", "k c #AA9FB268BD26", "l c #B66FB44BB89F", "z c #B13DB4EEB77F", "x c #B17EB4FBBA17", "c c #83919C29C9D1", "v c #A309B308DD00", "b c #A4C0B405DEBE", "n c #B245BC6BDDE8", "m c #9080A935E337", "M c #8EDCA85BEAC3", "N c #993BAE9EEE2D", "B c #8590B35AEE1B", "V c #90AFB40FE6ED", "C c #90F5BAE2EA9C", "Z c #942ABFE7EE98", "A c #8B5DBAD5F31B", "S c #BECFC1D3C1D8", "D c #B5D7C311DFA9", "F c #B4A4CF7FDAB5", "G c #BF04D553DF3F", "H c #922EC110F4F2", "J c #99A8C5D8F1DC", "K c #9BECC8CBF490", "L c #9F27CADAF2C9", "P c #A63ECE88EE02", "I c #B73FC6CFE35C", "U c #B5F4C749E722", "Y c #B7EBC708E761", "T c #B198CF1FE267", "R c #BDF6DF28E6EF", "E c #B9A0DF7AF0B2", "W c #A33ACE0CF216", "Q c #A796D22DF357", "! c #CDD3C878C530", "~ c #C126CD1CC6CA", "^ c #C44DD37EC8BE", "/ c #C54DD2F4C7CB", "( c #C760D7C1CBAB", ") c #DF39D4F9CF83", "_ c #C833C767DE63", "` c #C282CD79DC93", "' c #C19FD910D851", "] c #CB88DDD2D32F", "[ c #CCC8DD59D6F8", "{ c #CCCCE056D4FA", "} c #C24FD280DA0E", "| c #CA33DD79DD5C", " . c #D402D6A4DC2E", ".. c #DA41D641DE2A", "X. c #E096D833DDC0", "o. c #E311D867D15F", "O. c #E40BD8E4D16C", "+. c #E4B7D919D2DF", "@. c #E524D9DAD363", "#. c #E70ADAD6D55A", "$. c #E4F4E0CCD799", "%. c #E347E02EDB56", "&. c #EC2CDCB3DA5E", "*. c #EC3FDB6EDCC1", "=. c #F04EDFB6DE32", "-. c #F107E05EDE04", ";. c #CD9EE1B7D638", ":. c #D0A1E4B2D5F3", ">. c #CE28E44FD8B8", ",. c #CEE4E63CD93B", "<. c #D148E4A4D55B", "1. c #D4BCE947D7FF", "2. c #D131E5D9D97A", "3. c #D603EBD3DB63", "4. c #D356ECAADDFA", "5. c #D494EE22DDFB", "6. c #D6C7F0D6DF90", "7. c #EFBBE514E07F", "8. c #F2ABE163DE83", "9. c #F62AE23BDD6C", "0. c #C31AC5EFE443", "q. c #D1AECDA6E0FE", "w. c #D427D195E5B4", "e. c #E520DBF2E335", "r. c #E606DC45E4CA", "t. c #EA01DEABE29F", "y. c #CE42E394E2AB", "u. c #CA5AE2B5E6D2", "i. c #CF11ED3FE65A", "p. c #CBF5EF3BEFC5", "a. c #CED9F122EEEC", "s. c #D927F4DEE58D", "d. c #DB04F6D3E7E0", "f. c #D1BFF24FEDCE", "g. c #DB8BF7EDE913", "h. c #DC6FF851E9C8", "j. c #DCC1FA96EA69", "k. c #DE08FA00E8FD", "l. c #DE74FC7EEB68", "z. c #DE9FFCD3EC79", "x. c #DF81FD57EC20", "c. c #E058FF9EEE86", "v. c #EF85E52DE123", "b. c #EFFEE567E0F1", "n. c #EF50E517E297", "m. c #F6B1E536E4A9", "M. c #FFFFE963E93E", "N. c #FF90EAEBEB12", "B. c #E35EFFFFEE0D", /* pixels */ "O + + o @ # # c c % $ % # @ o o ", "s f d p a j j x x z z z z s i u ", "l h ! / ;.;.;.^ ~ k g S ( ;.:.] ", ") *.v.3.c.c.a.G T 5 1 e i.z.z.d.", "O.8.7.<.c.B.H w q m M X P c.c.d.", "o.*.7.<.j.c.y , * v _ = A z.c.d.", "o.8.7.2.c.p.4 4 X v q.- A l.c.d.", "O.8.7.:.l.J ; r X v 0.= Z d.d.d.", "#.8.v.1.f.8 t C 6 0 < R l.j.d.", "O.v.v.:.Z & J B . 5 N ` 6.B.c.j.", "#.=.m.F > & 9 - X n 9.$.6.d.d.l.", "m.M.7.' K Q W 3 , q.M.%.5.d.j.h.", "m.N.v.:.h.B.E 2 7 t.M.%.:.j.c.z.", "m.M.v.,.z.z.L 7 V t.M.%.4.j.c.h.", "X.e.w.[ >.i.u.G G ..r. .| y.| [ ", "D D Y Y Y Y Y Y I I Y Y Y Y Y S " }; ./4pane-6.0/bitmaps/UsbMem.xpm0000644000175000017500000000154512120710621015035 0ustar daviddavid/* XPM */ static const char * unknown[] = { "24 24 9 1", " s None c None", ". c #000000", "# c #646464", "a c #c8c8c8", "b c #a5b4a5", "c c #a5c0a5", "d c #969696", "e c #a5d7a5", "f c #000080", "a#ffffffffffffffffffff# ", "#eeeeeeeeeeeeeeeeeeeecb#", "feee.acea.cecece....eebf", "feec.aeca.ececec.aea.ebf", "feee.acea.eeceee.aca.ebf", "feec.aeca.eb..be....eebf", "feee.acea.e.aa.e.aea.ebf", "feec.aeca.e.acee.aca.ebf", "feced.aa.de.aece.aea.ebf", "feeced..dceb..ee....cebf", "fecececececeba.ecececebf", "feececececedea.cecececbf", "fececececee.aa.ecececebf", "feececececeb..beecececbf", "fececeaeceaebbceaeceaebf", "feecec.ebe.ceeec.cbc.ebf", "fecece..d..e...e..d..ebf", "feecec.e.e.c.eec.e.e.ebf", "#bbece.eee.e..de.eee.ebf", " fbbec.ece.c.eec.ece.ebf", " fbbececece...ecececebf", " fbbecececeeececececbf", " fbbbbbbbbbbbbbbbbbb#", " #ffffffffffffffff# "}; ./4pane-6.0/bitmaps/mousepad.png0000644000175000017500000000157412120710621015444 0ustar daviddavid‰PNG  IHDRàw=øsRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEØ 6 v”ܧüIDATHǽ•Ïk\UÇ?Lbójè¢6-d $ Ú$•nÚtR!Š A‚)1MSº©àPÿWn Ú¢]N˜¦?¤Z â"-Òâ""$Ä•‹,Ò$Níø¦yoæ|]¼7oÞ$oÚ¤`\î}?îùžï9ç~/ü϶+þ0ùÑØ;×oþôîó:›[HµwÝÎçó^âmmmŸ›™ÌLµZMµZMÕj5¾|ß—çùò™×2ÌÝú3#›Í¶,pK‰qþügœ'ë<ƽ‹7¿DÙãÇ[9•¨EjÖ…Löww3}öS~Yø‹G…Ø3¸›Kß}Žû÷[²HÔ"ÉP‚~ÇêŸkÏ­~ᕽˉ)JµwÝ^Ü|ím×–––öz»¼å‡«+¼(û²V›ÛÀŒ¹IEND®B`‚./4pane-6.0/bitmaps/evince.xpm0000644000175000017500000000715612120710621015122 0ustar daviddavid/* XPM */ static char *evince[] = { /* columns rows colors chars-per-pixel */ "48 48 73 1", " c #000000", ". c #0C0C0C", "X c #131212", "o c #181817", "O c #1D1C1C", "+ c #212121", "@ c gray17", "# c #312F2D", "$ c #333333", "% c #383736", "& c #393939", "* c #41403C", "= c #444443", "- c #484643", "; c #4A4845", ": c #4B4B48", "> c #514F4B", ", c #53514D", "< c #545351", "1 c #595652", "2 c #5C5A55", "3 c #5B5B5A", "4 c #61605C", "5 c #636363", "6 c #686661", "7 c #6D6B66", "8 c #6B6B6A", "9 c #706D67", "0 c #716F6A", "q c #72716D", "w c #727272", "e c #7A7771", "r c #7A7976", "t c #7B7B7B", "y c #807E77", "u c #80807F", "i c #848483", "p c #8A8882", "a c #8B8B8A", "s c #918F87", "d c #93918D", "f c #939392", "g c #989694", "h c #999895", "j c #9C9C9B", "k c #A19F9A", "l c #A1A09C", "z c #A3A3A3", "x c #A8A8A7", "c c #ABABAA", "v c #B0ABA2", "b c #B2AFA8", "n c #B5B2AC", "m c #B4B4B4", "M c #BEBCB5", "N c #BBBBBA", "B c #C3C1BD", "V c #C3C3C2", "C c #CBCBCB", "Z c #D4D3D2", "A c #D9D8D6", "S c #DCDCDB", "D c #E0E0DE", "F c #E4E4E2", "G c #E8E8E6", "H c #ECECEB", "J c #F0EEEC", "K c #F0F0EE", "L c #F3F3F3", "P c #F8F7F6", "I c #F8F8F7", "U c #FDFDFD", "Y c None", /* pixels */ "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY", "YYY +O YYYYYYYYY", "YYY SUUUUUUUUUUUUUUUUUUUUUUUUUUICw YYYYYYYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUUUULHV YYYYYYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUUUIZUKN YYYYYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUUUIZUUHc. YYYYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUUUINUUUSz. YYYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUUULmUIUUCz YYY", "YY UUUUUUUUUUUUUUUUUUUUUUUUIUULcHVCmVCc YYY", "YY UUUUUUUUUUUUUUUUUUUUUIUUUUULc<==;=3x YY", "YY UUUUUUUUUUUUUUUUUUUUUUUUUIIKLVxzat8= YY", "YY UUUUUUUUUUUUUUUUIUUUIIUIIUIIUIIGVCmt YY", "YY UUUUUUUUUUUx cUIIIIILLLHc YY", "YY UUUUUUUUUUU VUUUIUUUUUIc ILLLLLLLLLm YY", "YY UUUUUUUUUUU UFFFFFDSDSSm LILLLLLKKKm YY", "YY UUUUUUUUUUU U85iG3lAFDFm LLLLLLKLKKm YY", "YY UUUUUUUUUUU UHHHHKHHHHGN LLLLLLKKKKm YY", "YY UUUUUUUUUUU Ua8jLfzHzaHV FKKKKKKKKKm YY", "YY UUUUUUUUUUI UUUUUUIm8=@@&3fAGHHKKKHm YY", "YY UUUUUUUUIUI UccGNN=<88a33t$+zSHHKHHm YY", "YY UUUUUUUIUIU IDDSc@azCHUIKSf+XiCGHHHm YY", "YY UUUUUUIUIx Ui8a+wmIUUIUUUI3uXiCFHHm YY", "YY UUUUIUIUx U Cxz:icUUUUUUUUUIVw@xZGGm YY", "YY UUUUUIUx UGp, .=5IIUIIUUUUIGFa@8NFGm YY", "YY UUUIUII UULUUU@umPPLLILHKHHCD57&zZFm YY", "YY UUIUIII VaDIIL+=cZCCVVNNmmZAFAoXfVFm YY", "YY UIUUIII z8LNAmXgGIUUUUUUUUUUUUA aNFm YY", "YY UIIIIII h8FHPKXaFLUUUUIIILKKVGv amSm YY", "YY UIUIIIL j723>-OumFZFAFCFCDCFthp imDm YY", "YY UIIIILI fhu991&tbHPIIIIIPLLK1i7opmSm YY", "YY UIIIILI rdgsye=X#*-::;-;*-*:,1121,12234:OalCFm YY", "YY UIILLLLK pnmMMb0.:57qq7146q74 2imAFm YY", "YY ULLILLLKj X X =cZDm YY", "YY ULLLLKLKKFVNNNNci3oOqdlkk8OO3. XwCc YY", "YY ULLLLLKKKHHKHHHHSVd*X X=5q3++ 8j YY", "YY ULLLKLKKKKKHKHHHGFCNat088qrgjd.5$ 3 YY", "YY ULKLKKKKKKHHHHHHGGGSCNcxxcmVCCa r& YY", "YY ULLKKKKKHHHHHHHGHGGFFSAAAAAASAcw 8+ YY", "YY UKKKKKKHKHHHHGGHGGGGGGFFFFFFFFAz8 8$ YY", "YY UKKKKKHHHHHHGHHGGGGGGGFFFFFFDFSZl5 r& Y", "YY UKKKHKHHHHHHGGGGGFGFFFFFFFDDDDDSZz3 5O ", "YY SHKHKHHHHHHGHGGGGGGGFFFDFFFDDDDDSZh= ", "YY Vmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmma5 Y", "YY Y", "YYY YY", "YYY YYY", "YYYY YYYY" }; ./4pane-6.0/bitmaps/dir_up.xpm0000644000175000017500000000146412120710621015127 0ustar daviddavid/* XPM */ static const char *dir_up_xpm[] = { /* columns rows colors chars-per-pixel */ "20 20 16 1", " c Gray0", ". c #800000", "X c #008000", "o c #808000", "O c #000080", "+ c #800080", "@ c #008080", "# c None", "$ c #808080", "% c Red", "& c Green", "* c Yellow", "= c Blue", "- c Magenta", "; c Cyan", ": c Gray100", /* pixels */ "####################", "####################", "####################", "#### ###########", "### *:*:* ##########", "## ####", "## :*:*:*:*:*:*: ###", "## *:*: :*:*:*:* ###", "## :*: :*:*:*: ###", "## *: :*:*:* ###", "## :*:* *:*:*:*: ###", "## *:*: :*:*:*:* ###", "## :*:* :*: ###", "## *:*:*:*:*:*:* ###", "## :*:*:*:*:*:*: ###", "## ###", "####################", "####################", "####################", "####################", }; ./4pane-6.0/bitmaps/featherpad.png0000644000175000017500000000212513364612214015735 0ustar daviddavid‰PNG  IHDRàw=øbKGDÿÿÿ ½§“ pHYs × ×B(›xtIMEâ   ÍŒ·^âIDATHǽ•]L[eǧ=çpN[ N+Ê`ƒ²£]È\Ä茉A“]1!1›fF3ð#\èÍ n‰qÙ5Æ›™y±˜5»0›Ä%lѱlKÙ`e+ƒU Ðv”sŽŒ*ã##¢Or’“÷yòÿ=ïÿ}Ïsà?a¹Å¶¶ƒ­ztòÏé.G–½µû·Ë-5µÕŸÜKƆUPTyßO?þ²o×î†Ïfb“Ž,WÈb±8w>ò –pàµWßWTű°˜ít6§fguL¢@]I<Ï«©©}¬ûò¥G¶U×Ä“ñüúÁÆ‹»v82í.I–­mo,^ÐH&’ÓG?:ö¶ÐñÁ¡ÁWö(ZH~qê$²$ãñxP•D"N$r¯·EU¹—L2::Êlj€ç›_Hw~üÄÑ[o¶½ã³XEɰÛí,ÄþëƒÜ ß$ÜI°>D8&t? †ðùpknþ©a%#mуñlÓséw¿ßÏÕ1jw5ñÕ…~RºNVv _vþAqõ²µ|öø+V<ä%€h4ŠiÜǧ%<:É#.;#Ñ™%ŸŸ± È"ÛËÝ45”QZè^`:‚Å•(=·¦N¤Å5§±‰xº~sq.µeUâúÐ$ªj#?×±<À4MfS)¢3&GNwód]éß…V@E=áqr2ª6zðû\<³³|Õï``nnÑje,–Ä4M"ã1JòT—yøö|sºhµPµÑÍu¥Äã3ÄbóuÙÙNEY sºÁ•ëÃôÝŽ²m“‡ ùN¾þ¹Ó«E uo€†ê$IÂáÈœÅÕw`š&~¿CÏà8•%¾hyºzMâKv ZERºAó㕜:w ]7ɲe°w÷fLÊ ]kž¦‹±Ø[}.¢S Æ'xœ*/6–R잿ב¡®œTÕÆðð†i.Ôò4dY^ ª6Nzƒ×ß;Æ»/5PYìÂjYê‰$Ió WegÏŪÇi¬ÒD‘‘‘ùŽe9ƒBoáü4¼^222ÖfQçÛñ¸=Ëvèõ®ù ß"Q¤½½}]™"€æÖÔÁÈ/ïo!e$Œ ükaÍ­©i€Í¦ˆS±ÉuíÜfSÄ4 ë|×µ¾Þ~u=wÇï$ø?â/hCHsò¿àhIEND®B`‚./4pane-6.0/bitmaps/include/0000755000175000017500000000000013205575137014555 5ustar daviddavid./4pane-6.0/bitmaps/include/cut.xpm0000644000175000017500000000130112120710621016051 0ustar daviddavid/* XPM */ static const char * cut[] = { "22 22 5 1", " s None c None", ". c #808080", "# c #0098b1", "a c #000080", "b c #0000cc", " ", " ba ", " ba ba ", " ba ba ", " ba. ba ", " #a. b# ", " aa bb# ", " .aa a# ", " .ba a. ", " baaaa ", " .ba.. ", " .ba.. ", " aaaa ", " ba #aaa ", " bba aa a ", " aaaa a .a ", " b .a a a ", " b a a. a ", " b. a aaa ", " aaaa aaa ", " aaa ", " "}; ./4pane-6.0/bitmaps/include/GhostClosedFolder.xpm0000644000175000017500000000074612120710621020644 0ustar daviddavid/* XPM */ static const char * ghostclosedfolder_xpm[] = { "16 16 6 1", " s None c None", ". c #000000", "# c #ffff00", "a c #808080", "b c #ffffff", "c c #c0c0c0", " ", " ", " a a ", " a#c#c#a ", " a#c#c#c# a a a ", " bb b b b b b .", " a #c#c#c#c#c#a ", " bc#c#c#c#c#c .", " a #c#c#c#c#c#a ", " bc#c#c#c#c#c .", " a #c#c#c#c#c#a ", " bc#c#c#c#c#c .", " a #c#c#c#c#c#a ", " a a a a a a a .", " . . . . . . . ", " "}; ./4pane-6.0/bitmaps/include/4PaneIcon32.xpm0000644000175000017500000002500712120710621017214 0ustar daviddavid/* XPM */ static const char * FourPaneIcon32_xpm[] = { "41 32 496 2", " c #7592C5", ". c #5B87DB", "+ c #5B87DC", "@ c #5C88DD", "# c #5C89DD", "$ c #5C89DE", "% c #5C88DE", "& c #5D89DF", "* c #5C89DF", "= c #5D8AE0", "- c #5E8BE1", "; c #5D8AE1", "> c #5E8BE2", ", c #5D8BE1", "' c #7B99CD", ") c #7497D3", "! c #5C89E0", "~ c #5B88DE", "{ c #5B88DD", "] c #5B88DC", "^ c #5A87DB", "/ c #5A86DB", "( c #6087CE", "_ c #678AC5", ": c #A7A8AB", "< c #A2A2A5", "[ c #A1A2A1", "} c #A7A8A9", "| c #A5A6A6", "1 c #A3A4A4", "2 c #A6A6A0", "3 c #A09F9E", "4 c #919191", "5 c #939494", "6 c #979898", "7 c #9D9E9D", "8 c #9C9D9D", "9 c #9B9B9B", "0 c #9C9C9C", "a c #9E9F9F", "b c #9D9C99", "c c #989897", "d c #989998", "e c #9A9F9A", "f c #9697A0", "g c #999999", "h c #ADAEB7", "i c #A2A2AB", "j c #B7B7B5", "k c #B7BBC0", "l c #B8BBC1", "m c #ACACA8", "n c #B7AA91", "o c #A99D8F", "p c #969797", "q c #AFB0AF", "r c #B4B4B4", "s c #BEBFBF", "t c #C8C9C8", "u c #B0B1B1", "v c #9599A4", "w c #9E9E9D", "x c #929E8F", "y c #959C91", "z c #787AA9", "A c #A0A0A0", "B c #9B9D9B", "C c #A2ACA2", "D c #ABADAC", "E c #B5B6B5", "F c #B3B4B3", "G c #B2ABAB", "H c #ACACAC", "I c #A6A6A6", "J c #AFB0B0", "K c #AFAFAF", "L c #ADAEAD", "M c #AEAEAE", "N c #A2ADA2", "O c #AEB0AF", "P c #A8A8A8", "Q c #A9A3A3", "R c #AEAFAF", "S c #C6C3BE", "T c #7E7EA1", "U c #6565A5", "V c #8582AE", "W c #D2C5C3", "X c #D1C7C7", "Y c #C7C5C4", "Z c #CDDDC7", "` c #CADED3", " . c #D8F2E4", ".. c #C8DBD1", "+. c #D4EBDE", "@. c #C7DAD0", "#. c #D1E7DB", "$. c #BDBEBD", "%. c #C3C0B9", "&. c #A7A7A4", "*. c #A4A4A4", "=. c #B8B4B4", "-. c #D0C2C0", ";. c #CCC4C4", ">. c #C8D2BF", ",. c #CBE0D5", "'. c #D3EBDE", "). c #BFCBC4", "!. c #E2D7D7", "~. c #D5CCC6", "{. c #CDC1CE", "]. c #E5D5DE", "^. c #FEEAEA", "/. c #DDD8D7", "(. c #C7D8C0", "_. c #CCE3D6", ":. c #DFFEED", "<. c #CCE1D6", "[. c #DBF8E8", "}. c #C4D8CD", "|. c #C6D9CF", "1. c #D4EDE0", "2. c #C8CAC9", "3. c #B7BFE3", "4. c #A0B1DA", "5. c #9EAEE0", "6. c #ADBAEC", "7. c #BCC3EF", "8. c #E2D9E5", "9. c #C5CFBA", "0. c #C6DCD0", "a. c #DCFAEA", "b. c #D9F5E5", "c. c #D1EBDD", "d. c #D4EEE0", "e. c #D9F5E6", "f. c #C5D4CB", "g. c #E0D6D6", "h. c #DDD4BE", "i. c #E0D2D2", "j. c #D1E3C9", "k. c #D7F2E4", "l. c #C5DFDC", "m. c #CEEDE9", "n. c #CAE0D4", "o. c #CEE5D8", "p. c #D8F4E6", "q. c #759BE6", "r. c #3677FD", "s. c #3577FD", "t. c #3A7AFC", "u. c #88ABDD", "v. c #D0E8DB", "w. c #E9DDDD", "x. c #E4DAC8", "y. c #E9DADA", "z. c #DDD8D6", "A. c #CBDABE", "B. c #D1EADD", "C. c #C8ECEF", "D. c #4D88F7", "E. c #77AAF4", "F. c #C8DDD2", "G. c #CADFD4", "H. c #8DB9EF", "I. c #749BF4", "J. c #9CB0DC", "K. c #769BF1", "L. c #3778FD", "M. c #86B0E5", "N. c #DFFDED", "O. c #E6DADA", "P. c #DDD4C1", "Q. c #E0D3D3", "R. c #FCE9E9", "S. c #CFE0C4", "T. c #CCE3D7", "U. c #D7F8EE", "V. c #4483FC", "W. c #3A7BFC", "X. c #BED5D4", "Y. c #B5D1DA", "Z. c #397AFC", "`. c #96AEED", " + c #DAD0BD", ".+ c #E3D4D4", "++ c #B2BDF0", "@+ c #C7E7E9", "#+ c #E1D6D6", "$+ c #E2D8C4", "%+ c #DBCECE", "&+ c #FBE8E8", "*+ c #CBDBC1", "=+ c #CBE2D6", "-+ c #DFFDEC", ";+ c #407FFC", ">+ c #9EC1E1", ",+ c #72A3EF", "'+ c #93ABEA", ")+ c #DED4BF", "!+ c #DFD0D0", "~+ c #FCE7E7", "{+ c #7199F7", "]+ c #91BEEF", "^+ c #E0D6C6", "/+ c #E2D4D4", "(+ c #EBDCDC", "_+ c #EFDFDF", ":+ c #CDDDBE", "<+ c #D4EDDF", "[+ c #DAFAED", "}+ c #3A7BFD", "|+ c #8FB4DF", "1+ c #3F7EFA", "2+ c #98AFEE", "3+ c #DDD2C2", "4+ c #E4D5D5", "5+ c #ECDBDB", "6+ c #A1B3EC", "7+ c #78A5E8", "8+ c #E5DADA", "9+ c #DED5BD", "0+ c #DFD1D1", "a+ c #ECDDDD", "b+ c #F6E4E4", "c+ c #CEE0C8", "d+ c #D7F3E4", "e+ c #DDFBEB", "f+ c #A6D1F2", "g+ c #89B4E9", "h+ c #95ADEC", "i+ c #DBD1B9", "j+ c #E0D1D1", "k+ c #EFDDDD", "l+ c #AAB8ED", "m+ c #81B3F4", "n+ c #E4D9CC", "o+ c #F0E0E0", "p+ c #DDD7D6", "q+ c #CCDBBB", "r+ c #4D8AFB", "s+ c #4785FA", "t+ c #88AEDF", "u+ c #95AEED", "v+ c #E3D7C9", "w+ c #F3E0E0", "x+ c #FEE8E8", "y+ c #AFBCF0", "z+ c #82B4F6", "A+ c #DFD5D5", "B+ c #D9D1B9", "C+ c #F7E5E5", "D+ c #D1E4CE", "E+ c #CFE7DA", "F+ c #DEFCEB", "G+ c #91C0F4", "H+ c #94C1F2", "I+ c #84B0EB", "J+ c #92ABEA", "K+ c #D6CDB5", "L+ c #DCCECE", "M+ c #FAE5E5", "N+ c #7FB0F2", "O+ c #E0FEED", "P+ c #E9DED0", "Q+ c #E8D8D8", "R+ c #C5D5BC", "S+ c #C3D7CC", "T+ c #D0F2EE", "U+ c #3F7FFC", "V+ c #4B87F7", "W+ c #D7F5E8", "X+ c #6D9CEA", "Y+ c #E8DBCD", "Z+ c #9DB1F2", "`+ c #8DBAEF", " @ c #D3EDDE", ".@ c #D3EEDF", "+@ c #E9DCDC", "@@ c #DCD3BD", "#@ c #EEDDDD", "$@ c #DDD9D7", "%@ c #CEE1CF", "&@ c #D1E9DC", "*@ c #D8F4E4", "=@ c #7AAEF6", "-@ c #A0C5E6", ";@ c #DCF9E9", ">@ c #5D94F3", ",@ c #D7CDB7", "'@ c #F4E1E1", ")@ c #F1E0E9", "!@ c #4B83FB", "~@ c #BAD8E2", "{@ c #D6F1E2", "]@ c #D2EBDD", "^@ c #D9F6E6", "/@ c #E6DCCB", "(@ c #E4D6D6", "_@ c #F4E3E3", ":@ c #CAD9BC", "<@ c #DAF7E7", "[@ c #C1E6F0", "}@ c #3879FD", "|@ c #6099F9", "1@ c #CCE2D6", "2@ c #D9F4E5", "3@ c #4A86F6", "4@ c #E5D9C8", "5@ c #D5CDD9", "6@ c #6290F7", "7@ c #83B1EC", "8@ c #DFD5C2", "9@ c #E1D3D3", "0@ c #D1E3C7", "a@ c #DEFDED", "b@ c #629AF9", "c@ c #3678FD", "d@ c #BEE4F0", "e@ c #CFE6DA", "f@ c #DBF9E9", "g@ c #3A7BFB", "h@ c #407DFB", "i@ c #4781F6", "j@ c #427FFB", "k@ c #91B2D8", "l@ c #D5EFE1", "m@ c #C4D3CB", "n@ c #DFD6C2", "o@ c #FCE8E8", "p@ c #CDDEC3", "q@ c #CDE5D8", "r@ c #86B7F5", "s@ c #76AAF7", "t@ c #CCEDEB", "u@ c #3F7CF9", "v@ c #4E85F9", "w@ c #4B83F5", "x@ c #598AF7", "y@ c #799DF5", "z@ c #E9DDE4", "A@ c #CAD4BC", "B@ c #CAE1D5", "C@ c #DBF7E8", "D@ c #D1E0D8", "E@ c #E4D9D9", "F@ c #DFD6C5", "G@ c #E8D9D9", "H@ c #CCDABD", "I@ c #D3EDDF", "J@ c #CCEFEF", "K@ c #72A8F7", "L@ c #3E7EFC", "M@ c #D2F4EE", "N@ c #BDD4D4", "O@ c #AED5ED", "P@ c #7D9FE3", "Q@ c #E1D8DF", "R@ c #DCD2C1", "S@ c #EAD9D9", "T@ c #FDE8E8", "U@ c #F3E3E3", "V@ c #CAD2B8", "W@ c #CEE5D9", "X@ c #DDD5BD", "Y@ c #CDDEC6", "Z@ c #508DFA", "`@ c #8EA9ED", " # c #DAD1BA", ".# c #DDCECE", "+# c #E5D4D4", "@# c #CAD4C0", "## c #CEE6D9", "$# c #F1E1E1", "%# c #F6E5E3", "&# c #C6D3BB", "*# c #7AAAEE", "=# c #A8B8EF", "-# c #F6E2E1", ";# c #FBE6E6", "># c #C5CEB8", ",# c #C5D8CD", "'# c #C5DACE", ")# c #D2EADD", "!# c #D2ECDE", "~# c #D7F4E4", "{# c #CBDECE", "]# c #DAF6E7", "^# c #B5DCF1", "/# c #74A9F7", "(# c #B0D8F1", "_# c #B6D7E6", ":# c #73A7F6", "<# c #9FB2D7", "[# c #EBDDE6", "}# c #C6D2C5", "|# c #D5EEE1", "1# c #D1EADC", "2# c #DBD6D5", "3# c #C3D2BF", "4# c #C8DDD1", "5# c #D5F1E2", "6# c #6FA3F5", "7# c #3779FD", "8# c #C5C7C9", "9# c #F8E4E4", "0# c #C2CCBC", "a# c #CFE8DA", "b# c #DCD7D6", "c# c #CEE3D8", "d# c #CFE6DC", "e# c #538FFA", "f# c #4886FA", "g# c #C7D5CE", "h# c #D0E7DA", "i# c #DDFAEA", "j# c #C7D9CF", "k# c #C6DBD0", "l# c #C6DBCF", "m# c #DBFBED", "n# c #3C7CFB", "o# c #5B93F6", "p# c #C4D1CA", "q# c #C5D9CE", "r# c #C7DCD0", "s# c #CFE8DB", "t# c #DDFBEA", "u# c #DBD7D6", "v# c #CBDFD4", "w# c #6EA1F3", "x# c #C6D3CC", "y# c #CCE0D5", "z# c #CCE4D7", "A# c #B2DBF1", "B# c #A7CAE4", "C# c #B0D8EE", "D# c #A3C4DE", "E# c #A3C5E1", "F# c #BEDCE5", "G# c #C9E0D3", "H# c #D2E0D8", "I# c #E5D8D8", "J# c #D1CDCC", "K# c #C6D6CE", "L# c #C8DAD0", "M# c #CBDED4", "N# c #D2E7DC", "O# c #D7F0E3", "P# c #C9DCD1", "Q# c #D5ECDF", "R# c #C6D7CD", "S# c #C6D8CE", "T# c #CFE3D8", "U# c #B7B9B9", "V# c #EBDBDB", "W# c #F0DFDF", "X# c #E7DBDB", "Y# c #BFCBC5", "Z# c #C7D8CF", "`# c #D2E8DC", " $ c #D1E6DB", ".$ c #CADDD3", "+$ c #CDDFD5", "@$ c #CEE3D7", "#$ c #C1CBC5", "$$ c #B7BDC8", "%$ c #B4BDCE", "&$ c #B8C2D6", "*$ c #B7C0D4", "=$ c #B7C0D1", "-$ c #B7C1D4", ";$ c #BAC7E0", ">$ c #BCC9E4", ",$ c #C1C2C5", "'$ c #BABBBA", ")$ c #B7B8B8", "!$ c #B6C7E8", "~$ c #B4CDFF", "{$ c #CED0D4", "]$ c #BFBFBF", "^$ c #C1C1C1", "/$ c #AFB2B6", "($ c #B0B4BA", "_$ c #B5B9C0", ":$ c #AEB2B8", "<$ c #AEB2B9", "[$ c #ABAFB6", "}$ c #ADB1B8", "|$ c #ABAFB5", "1$ c #ADB1B7", "2$ c #ACAFB6", "3$ c #ACB0B6", "4$ c #AFB3BA", "5$ c #B7BBC1", "6$ c #ADAEAE", "7$ c #ABACAC", " . + + @ # $ % & * = = = - ; > ; , , ' ) - , , ; ; = ! * * * ~ ~ { { ] + ^ / ( _ ", ": < [ } | 1 2 3 4 5 6 7 8 9 0 9 a a a a a a a a a a a a a a a a a 9 b c d e f 9 g ", "h i j k l m n o p p q r s t t t t t t t t t t t t t t t t t t t t u v w x y z A B ", "C D E F G H I J J J J K q J J J J L L J J J M N O J P Q | M R J L L J J J J J J K ", "S T U V W X Y Z ` . . . . . . . ...+.@.@.#.$.%.&.*.=.-.;.>.,.'. . . . . . . . .).", "!.~.{.].^.^./.(._.:.:.:.:.:.:.:.:.<.[.}.|.1.2.3.4.5.6.7.8.9.0.a.:.b.c.d.e.:.:.:.f.", "g.h.i.^.^.^./.j.k.:.:.:.:.:.:.:.:.l.m.n.o.p.q.r.s.s.s.s.t.u.v.:.:.:.:.:.:.:.:.:.f.", "w.x.y.^.^.^.z.A.B.:.:.:.:.:.:.:.C.D.E.F.G.H.s.I.J.K.L.s.s.s.M.N.:.:.:.:.:.:.:.:.f.", "O.P.Q.R.^.^./.S.T.:.:.:.:.:.:.U.V.s.W.X.Y.Z.s.`. +.+++s.s.s.t.@+:.:.:.:.:.:.:.:.f.", "#+$+%+&+^.^./.*+=+-+:.:.:.:.:.:.;+s.s.>+,+s.s.'+)+!+~+{+s.s.s.]+:.:.:.:.:.:.:.:.f.", "w.^+/+(+_+^.z.:+}.,.<+:.:.:.:.[+}+s.s.|+1+s.s.2+3+4+5+6+s.s.s.7+'.:.:.:.:.:.:.:.f.", "8+9+0+a+b+^./.c+d+e+-+:.:.:.:.f+s.s.s.g+s.s.s.h+i+j+k+l+s.s.s.m+e+:.:.:.:.:.:.:.f.", "8+n+o+^.^.^.p+q+v.:.:.:.:.:.[+r+s.s.s+t+s.s.s.u+v+w+x+y+s.s.s.z+:.:.:.:.:.:.:.:.f.", "A+B+%+C+^.^.z.D+E+F+:.:.:.:.G+s.s.s.H+I+s.s.s.J+K+L+M+y+s.s.s.N+:.:.O+:.N.:.:.:.f.", "O.P+Q+&+^.^./.R+S+:.:.:.:.T+U+s.s.V+W+X+s.s.s.`.Y+Q+~+Z+s.s.s.`+:.e.c. @.@:.:.:.f.", "+@@@#@^.^.^.$@%@&@<+*@:.:.=@s.s.s.-@;@>@s.s.s.2+,@'@)@!@s.s.L.~@'.{@]@'.v.<+^@:.f.", "O./@(@_@^.^.p+:@<@:.:.:.[@}@s.s.|@1@2@3@s.s.s.`.4@5@6@s.s.s.7@:.:.:.:.:.:.:.:.:.f.", "+@8@9@&+^.^./.0@T.[.:.a@b@s.s.c@d@e@f@g@s.s.s.h@i@t.s.s.j@k@_.l@:.:.:.:.:.:.:.:.m@", "O.n@(+o@^.^./.p@q@:.:.r@s.s.s.s@:.v.t@s.s.s.u@v@w@x@y@y+z@A@B@C@:.:.:.:.:.:.:.:.D@", "E@F@G@o@^.^.z.H@I@J@K@s.s.s.L@[@M@N@O@s.s.s.P@Q@R@S@T@x+U@V@W@;@:.:.:.:.:.:.:.:.D@", "E@X@%+/+^.^./.Y@d.Z@s.s.s.s.s.s.s.s.s.s.s.s.s.`@ #.#+#x+U@@###e+:.:.:.:.:.:.:.:.D@", "$#%#&+R.^.^./.&#S+*#s.s.s.s.s.s.s.s.s.s.s.s.s.=#-#;#T@x+U@>#,#'#:.b.]@)#!#~#:.:.D@", "$#^.^.^.^.^.$@{#]#^#/#(#d@d@d@d@d@_#:#s.s.s.<#[#x+x+x+x+U@}#|#O+:.e.]@1#[.:.:.:.D@", "$#^.^.^.^.^.2#3#4#5#:.:.:.:.:.:.:.F.6#s.s.7#8#9#x+x+x+x+U@0#S+a#:.:.:.:.:.:.:.:.D@", "$#^.^.^.^.^.b#c#E+&@;@:.:.:.:.:.:.d#e#s.s.f#t 9#x+x+x+x+U@g#h#)#&@i#:.:.:.:.:.:.D@", "$#^.^.^.^.^.2#j#k#l#-+:.:.:.:.m#V.n#s.s.s.o#t 9#x+x+x+x+U@p#q#r#s#t#:.:.:.:.:.:.D@", "$#^.^.^.^.^.u#v#E+:.:.:.:.:.:.J@s.s.s.s.s.w#t 9#x+x+x+x+U@x#=+;@:.:.:.:.:.:.:.:.D@", "$#^.^.^.^.^.u#y#z#:.:.:.:.:.:.U.A#B#C#D#E#F#t 9#x+x+x+x+U@x#G#;@:.:.:.:.:.:.:.:.H#", "I#o+o+o+o+o+J#K#L#M#` N#O#O#O#O#O#P#Q#R#S#T#U#V#W#W#W#W#X#Y#Z#v#`# $.$P#+$` v#@$#$", "$$%$&$*$=$-$;$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$,$'$)$", "!$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~${$]$^$", "/$($($($($($($($($($($($($_$:$<$[$}$|$}$}$1$2$3$4$($($($($($($($($($5$:$($($6$7$7$"}; ./4pane-6.0/bitmaps/include/columnheaderdown.xpm0000644000175000017500000000050112120710621020615 0ustar daviddavid/* XPM */ static const char * columnheaderdown_xpm[] = { "16 10 3 1", " s None c None", ". c #c8c8c8", "# c #aaaaaa", " ", " ", " ", " ### ### ", " .##. .##. ", " .##..##. ", " .####. ", " .##. ", " ", " "}; ./4pane-6.0/bitmaps/include/compressedtar.xpm0000644000175000017500000000310112120710621020131 0ustar daviddavid/* XPM */ static const char * compressedtar_xpm[] = { "16 16 81 1", " c None", ". c #8CBCE7", "+ c #0000FF", "@ c #000080", "# c #4A7BCC", "$ c #969696", "% c #8F8981", "& c #A49F98", "* c #928D86", "= c #98938C", "- c #8C8478", "; c #6B6355", "> c #6C6458", ", c #61594B", "' c #655F55", ") c #6F6A61", "! c #757169", "~ c #87837B", "{ c #96928C", "] c #9A9690", "^ c #C6C1BA", "/ c #C3BFB7", "( c #BDB9B1", "_ c #BDB8B1", ": c #BBB6AF", "< c #B9B4AD", "[ c #B6B2AC", "} c #B3AFA9", "| c #B5B0A9", "1 c #A29D96", "2 c #98948E", "3 c #C9C5BE", "4 c #D6D2CA", "5 c #D5D0C9", "6 c #D5D1C9", "7 c #D3CFC7", "8 c #D1CCC5", "9 c #CDC8C1", "0 c #C9C5BD", "a c #C5C0B9", "b c #C1BCB5", "c c #A5A099", "d c #C8C8C8", "e c #D2CDC6", "f c #D0CCC4", "g c #CECAC2", "h c #CCC8C0", "i c #C6C2BA", "j c #C3BEB7", "k c #C0BBB4", "l c #B7B2AB", "m c #9D9993", "n c #BFBBB3", "o c #BFBAB3", "p c #BAB5AE", "q c #B8B3AA", "r c #B5AFA7", "s c #BCB7B0", "t c #A7A29B", "u c #A19D97", "v c #C1BDB5", "w c #BDB7AF", "x c #B9B3AB", "y c #B7B2A9", "z c #B4AFA6", "A c #A8A39C", "B c #A29E98", "C c #B3AEA7", "D c #B1ACA5", "E c #B0ABA4", "F c #AFAAA3", "G c #ADA8A1", "H c #ACA7A0", "I c #AAA59E", "J c #A09B94", "K c #A39F99", "L c #948F88", "M c #8B867F", "N c #918C85", "O c #8E8880", "P c #88837C", " ", " .+@#@+. ", " +@@ ", " .+@@@@@@@@@@+ ", ".++. +@@ ", "+@. $@@@@@@@%&* ", "+@=-;;>,')!~{]= ", "+@^/((_:<[}}|12 ", "+@34567890ab_c] ", "+@defgh0ijk_l&m ", "+@dnbko_:pqrstu ", "+@dvko_wpxyzrAB ", "+@dCDEEFGHIIHJK ", "+@dL*MNN%O%NPP ", "#@#.@@@@@@@@@@.d", ".#@@@@@@@@@@@@+ "}; ./4pane-6.0/bitmaps/include/tarball.xpm0000644000175000017500000000535512120710621016714 0ustar daviddavid/* XPM */ static const char * tarball_xpm[] = { "16 16 135 2", " c None", ". c #D9D9D9", "+ c #9E9C9A", "@ c #B7B6B5", "# c #ADADAB", "$ c #B5B3AE", "% c #C1BDB6", "& c #B6B6B3", "* c #C8C9CA", "= c #E7E7E6", "- c #C5C2BC", "; c #C3BFB9", "> c #BFBBB5", ", c #C5C1BA", "' c #A09D97", ") c #9A9895", "! c #BDBBB7", "~ c #C9C7C3", "{ c #C7C5C1", "] c #CACACB", "^ c #CAC6BF", "/ c #9F9B94", "( c #76726D", "_ c #746F66", ": c #8E8983", "< c #ADA9A4", "[ c #C1BDB7", "} c #C5C1BB", "| c #C3C0BA", "1 c #D4D4D3", "2 c #989590", "3 c #A5A098", "4 c #938C81", "5 c #7B7367", "6 c #6A6255", "7 c #534B3F", "8 c #5E574C", "9 c #736D64", "0 c #85817A", "a c #9B9791", "b c #AEAAA5", "c c #ACA9A3", "d c #9F9D99", "e c #99968F", "f c #B8B4AC", "g c #B5B0A7", "h c #ADA89F", "i c #AEA9A0", "j c #ABA79D", "k c #A9A49D", "l c #A8A39D", "m c #A8A49D", "n c #ABA7A1", "o c #B3AFA7", "p c #908C86", "q c #AAA69F", "r c #CDC8C0", "s c #D7D2C9", "t c #D5D0C7", "u c #D4D0C7", "v c #D2CDC4", "w c #CDC9C1", "x c #C8C4BC", "y c #C3BFB7", "z c #BFBBB2", "A c #BEB8AF", "B c #ADA9A1", "C c #9A958E", "D c #A7A49F", "E c #CBC6BE", "F c #D3CEC4", "G c #CFCAC2", "H c #CCC8C0", "I c #C9C5BD", "J c #C5C1B9", "K c #C2BEB6", "L c #BFBBB3", "M c #BCB7AF", "N c #BAB5AC", "O c #ACA79F", "P c #9B968F", "Q c #A6A39E", "R c #C8C4BB", "S c #CBC7BF", "T c #C0BCB4", "U c #BCB8B0", "V c #B9B5AC", "W c #B9B3AA", "X c #ABA79F", "Y c #C2BEB7", "Z c #C6C2BA", "` c #C4C0B8", " . c #BDB9B1", ".. c #BBB6AE", "+. c #B8B3AA", "@. c #B7B1A8", "#. c #ABA79E", "$. c #A09C96", "%. c #C1BDB5", "&. c #BEBAB2", "*. c #B9B3AB", "=. c #B6B0A8", "-. c #B4AFA6", ";. c #ABA69E", ">. c #A29E98", ",. c #C1BCB4", "'. c #C0BBB3", "). c #BEB9B0", "!. c #BBB6AC", "~. c #B6B1A7", "{. c #B6B0A7", "]. c #ADA8A0", "^. c #A39F99", "/. c #9F9C96", "(. c #B2AEA8", "_. c #B7B3AB", ":. c #B5B1A9", "<. c #B4B0A8", "[. c #B2AEA6", "}. c #AFABA3", "|. c #AEAAA2", "1. c #B0ACA3", "2. c #A7A39B", "3. c #9E9A93", "4. c #86827A", "5. c #938E87", "6. c #949089", "7. c #928E88", "8. c #938D85", "9. c #928C84", "0. c #938E86", "a. c #95918A", "b. c #938E88", "c. c #8E887F", "d. c #8A8781", " ", " . + @ ", " # $ % & * = ", " - ; > , ' ) ! ~ { ", " ] ! ^ ; / ( _ : < [ } | 1 ", " 2 3 4 5 6 7 8 9 0 a b c d ", " e f g h i j k l m n o m p ", " q r s t u v w x y z A B C ", " D E F G H I J K L M N O P ", " Q R G S I J y T U V W X a ", " Q Y I Z ` K T ...+.@.#.$. ", " D L ` K %.&.U ..*.=.-.;.>. ", " D &.K ,.'.).M !.+.~.{.].^. ", " /.(._.:.<.o [.}.|.|.1.2.3. ", " 4.5.6.5.7.8.8.9.0.a.b.c.d. ", " "}; ./4pane-6.0/bitmaps/include/SymlinkToFolder.xpm0000644000175000017500000000106012120710621020345 0ustar daviddavid/* XPM */ static const char * SymlinkToFolder_xpm[] = { "16 16 11 1", " s None c None", ". c #808080", "# c #000000", "a c #ffff00", "b c #646464", "c c #c8c8c8", "d c #ffffff", "e c #c0c0c0", "f c #323232", "g c #d8d8d8", "h c #969696", " ", " cffh ", "hfbfff ", "hbccbff ", "hb hff ", " bff fh ", " ghfb fb ", " hfehffhfb ", " hbfaffbfbhh ", " hbfhfffbaa#", " .abffffbae#", " .acbfffbea#", " .dacbffbae#", " .aeaebbbea#", " .aaeaeaeaa#", " ..........#"}; ./4pane-6.0/bitmaps/include/copy.xpm0000644000175000017500000000130212120710621016231 0ustar daviddavid/* XPM */ static const char * copy[] = { "22 22 5 1", " s None c None", ". c #000000", "# c #808080", "a c #ffffff", "b c #000080", " ", " ", " bbbbbbbb ", " #baaaaabbb ", " #baaaaabbb ", " #baa..abba. ", " #baaaaabbbbbbbbb ", " #baa...##baaaaab. ", " #baaaaa..baaaaaba.. ", " #baa.....ba...aba.. ", " #baaaaa##baaaaabbbbb ", " #baa.....ba......aab ", " #baaaaa##baaaaaaaaab ", " #bbbbbbbbba......aab ", " #bbbbbbbbbaaaaaaaaab ", " #########ba......aab ", " ##baaaaaaaaab ", " ##bbbbbbbbbbb ", " ########## ", " ########## ", " ", " "}; ./4pane-6.0/bitmaps/include/UnknownFolder.xpm0000644000175000017500000000246313205575137020103 0ustar daviddavid/* XPM */ static const char * UnknownFolder_xpm[] = { "16 16 63 1", " c None", ". c #808080", "+ c #E9E915", "@ c #B9B9AF", "# c #EBEB19", "$ c #86867A", "% c #CACA9E", "& c #F4F420", "* c #CACA9F", "= c #AFAF17", "- c #484839", "; c #2A2A04", "> c #181816", ", c #626262", "' c #F9F9D7", ") c #F6F6F5", "! c #FEFEDD", "~ c #F2F2F1", "{ c #0D0D0B", "] c #505050", "^ c #EFEFD0", "/ c #030303", "( c #282828", "_ c #EDEDED", ": c #858585", "< c #070707", "[ c #F9F9F9", "} c #FFFF2D", "| c #CBCBC0", "1 c #F9F92A", "2 c #161615", "3 c #2B2B07", "4 c #C0C0B5", "5 c #070701", "6 c #0E0E0D", "7 c #FCFC2A", "8 c #85857B", "9 c #060606", "0 c #CBCBA9", "a c #E5E51E", "b c #C0C097", "c c #909013", "d c #0A0A07", "e c #A4A415", "f c #838381", "g c #F6F624", "h c #EDED1F", "i c #25251D", "j c #D2D21B", "k c #BFBF96", "l c #ABAB16", "m c #62620D", "n c #24241C", "o c #5B5B48", "p c #383807", "q c #909090", "r c #919170", "s c #898987", "t c #90906F", "u c #80807F", "v c #121212", "w c #111111", "x c #000000", " ", " ..... ", " .+@#@#$ ", " .+%&*=-;>,.... ", " .')!~{]^/(___:<", " .[}|1234567|789", " .[0&*abcde*&*f9", " .[g*&*hij*&*&89", " .[0&*&kl*&*&*f9", " .[g*&*mn&*&*&89", " .[0&*&op*&*&*f9", " .[g*&*&*&*&*&89", " .qrstststststu9", " vwwwwwwwwwwwwx", " ", " "}; ./4pane-6.0/bitmaps/include/usb.xpm0000644000175000017500000000453612120710621016064 0ustar daviddavid/* XPM */ static const char *usb_xpm[] = { /* columns rows colors chars-per-pixel */ "16 16 107 2", " c black", ". c #0C1E95", "X c #10269D", "o c #1026A0", "O c #1028A0", "+ c #1531A7", "@ c #1632A7", "# c #1D3EB0", "$ c #1D3FB0", "% c #2348B6", "& c #234BB6", "* c #284FB9", "= c #2650B9", "- c #2850B9", "; c #2D59BC", ": c #2C58BE", "> c #2C59BE", ", c #315FBF", "< c #325FC1", "1 c #3A5FC3", "2 c #3A68C4", "3 c #3A6BC6", "4 c #3F70C8", "5 c #4166C5", "6 c #4166C6", "7 c #496FC8", "8 c #467CCB", "9 c #4970C8", "0 c #547ACB", "q c #5479CC", "w c #547ACC", "e c #4F83CE", "r c #5083CE", "t c #588AD3", "y c #5D93D5", "u c #5F92D5", "i c #5F93D5", "p c #6084CF", "a c #6086CF", "s c #6499D8", "d c #6499D9", "f c #6699D8", "g c #6D90D3", "h c #799AD7", "j c #799CD7", "k c #6BA0DA", "l c #6DA0DA", "z c #6DA1DC", "x c #70A5DC", "c c #70A5DD", "v c #75A9DE", "b c #84A5DA", "n c #8CABDD", "m c #8DABDD", "M c #8CACDD", "N c #90AFDE", "B c #92AFDE", "V c #92AFDF", "C c #92B0DE", "Z c #92B0DF", "A c #96B3DF", "S c #96B4DF", "D c #96B3E0", "F c #96B4E0", "G c #98B4E0", "H c #9CB7E1", "J c #9CB9E1", "K c #A0BCE3", "L c #A1BCE3", "P c #A0BCE4", "I c #A5C0E4", "U c #A5C0E5", "Y c #A5C1E4", "T c #A5C1E5", "R c #A6C0E4", "E c #A6C0E5", "W c #A6C1E4", "Q c #A6C1E5", "! c #AAC4E6", "~ c #AAC4E7", "^ c #ABC4E6", "/ c #ABC4E7", "( c #ABC5E6", ") c #AFC7E7", "_ c #AFC7E8", "` c #AFC8E8", "' c #B0C8E8", "] c #B2CBE9", "[ c #B3CBE9", "{ c #B6CEEB", "} c #B7CEEB", "| c #BAD1EC", " . c #BBD1EC", ".. c #BDD3ED", "X. c #BDD3EE", "o. c #BED3ED", "O. c #C0D5EE", "+. c #C0D6EE", "@. c #C2D7EF", "#. c #C3D7EF", "$. c #C3D9EF", "%. c #C4D9EF", "&. c #C5DAEF", "*. c #C4D9F0", "=. c #C4DAF0", "-. c #C5DAF0", ";. c None", /* pixels */ ";.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.", ";.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.", ";.;.;.;.;.;.;.k f ;.;.;.;.;.;.;.", ";.;.;.;.;.z l f y ;.;.;.;.;.;.;.", ";.;.;.;.c z ;.;.;.;.;.;.;.;.;.;.", ";.;.;.;.l ;.;.;.;.;.;.;.;.;.;.;.", ";.v c ;.f ;.;.;.;.;.;.;.;.= ;.;.", "v +.o.f { t e 8 3 3 , > * M $ ;.", "z o.} s t r 8 K 3 < : = % b h X ", ";.f u ;.;.;.;.2 ;.;.;.;.;.@ X ;.", ";.;.;.;.;.;.;.2 ;.;.;.;.;.X ;.;.", ";.;.;.;.;.;.;.> = ;.;.;.;.;.;.;.", ";.;.;.;.;.;.;.;.& $ + O ;.;.;.;.", ";.;.;.;.;.;.;.;.;.;.O . ;.;.;.;.", ";.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.", ";.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;." }; ./4pane-6.0/bitmaps/include/GhostOpenFolder.xpm0000644000175000017500000000074412120710621020332 0ustar daviddavid/* XPM */ static const char * ghostopenfolder_xpm[] = { "16 16 6 1", " s None c None", ". c #000000", "# c #ffff00", "a c #808080", "b c #c0c0c0", "c c #ffffff", " ", " a a a ", " c#c#ca ", " ac#b#b#c#a#a#a ", " #cb#b#bcc#c#ca ", " ac#b#b#b#b#b# .", "a#a a a a a a#a ", "##c#ccccccc#ab .", "ac#b#b#b#b## a ", " c#b#b#b#b#b. .", " a#b#b#b#b#b# a ", " cb#b#b#b##a .", " a a a a a a a ", " . . . . . . .", " ", " "}; ./4pane-6.0/bitmaps/include/undo.xpm0000644000175000017500000000134012120710621016226 0ustar daviddavid/* XPM */ static const char * undo[] = { "22 22 7 1", " s None c None", ". c #008080", "# c #323232", "a c #00ffff", "b c #000080", "c c #0098b1", "d c #0000cc", " ", " ", " ad ", " adc ", " adcc ", " adcc ", " adcc ", " adccccccccccc. ", " adddddddddddddc. ", " dbdddbbbbbbbbdc. ", " ..bcc bdc ", " ..bcc .dc ", " ..bcc .dc ", " ..bc .dc ", " ..b .dc ", " .. .dc ", " cdc ", " ccccccccccccdd. ", " dddddddddddddd ", " ############. ", " ", " "}; ./4pane-6.0/bitmaps/include/pipe.xpm0000644000175000017500000000100612120710621016215 0ustar daviddavid/* XPM */ static const char * pipe_xpm[] = { "16 16 9 1", " s None c None", ". c #000000", "# c #808080", "a c #c8c8c8", "b c #e2e2e2", "c c #004000", "d c #ffffff", "e c #969696", "f c #585858", "# ", ".. ", " ....f ", " .fd.f ", " cb#..f ", " #cbed.f ", " #cbdd.f ", " #cb#..f ", " #cbed.f ", " #cbdd.f ", " #cb#..f ", " #cbed.f ", " #cbdb.#", " #.ab.#", " #..f ", " ## "}; ./4pane-6.0/bitmaps/include/separator.xpm0000644000175000017500000000066212120710621017267 0ustar daviddavid/* XPM */ static const char * separator_xpm[] = { "16 16 3 1", " s None c None", ". c #c8c8c8", "# c #969696", " ", " ", " ", "######## ", "....#... ", " .# ", " .# ", " .# ", " .# ", " .# ", " .# ", " .# ", "....#... ", "######## ", " ", " "}; ./4pane-6.0/bitmaps/include/symlink.xpm0000644000175000017500000000071512120710621016754 0ustar daviddavid/* XPM */ static const char * symlink_xpm[] = { "16 16 5 1", " s None c None", ". c #646464", "# c #c8c8c8", "a c #323232", "b c #969696", " ", " ", " ..a. ", " .a.aaa ", " a.# .aa ", " .. ba. ", " ## .a. a# ", " #aa# a. ", " #a #aa a. ", " #.a aa.a. ", " #.a#aaa. ", " #.aaaa. ", " #.aaa. ", " #.aa. ", " #... ", " ## "}; ./4pane-6.0/bitmaps/include/GhostCompressedFile.xpm0000644000175000017500000000104512120710621021174 0ustar daviddavid/* XPM */ static const char * ghostcompressedfile_xpm[] = { "16 16 10 1", " s None c None", ". c #646464", "# c #000000", "a c #85b5ff", "b c #4a7bcc", "c c #c8c8c8", "d c #ffffff", "e c #323232", "f c #555555", "g c #969696", " ", " bbbabbb ", " bbb ", " bbbbbbbbbbbb ", " ba bbb ", "ab bbbbbbb eg ", "bbc#dddddddd#ge ", "bbc.df ff fd #ge", "bbc dddddddddd .", "bbc#d ff ff fd#.", "bbc dddddddddd e", "bbc.df ff ff d#e", "bbc#dddddddddd e", "bbc.# #. .# # #e", "abbbbbbbbbbbbbac", " abbbbbbbbbbbbb "}; ./4pane-6.0/bitmaps/include/UnknownFile.xpm0000644000175000017500000000133113205575137017540 0ustar daviddavid/* XPM */ static const char * UnknownFile_xpm[] = { "16 16 23 1", " c None", ". c #000000", "+ c #FFFFFF", "@ c #FEFEFE", "# c #4F4F4F", "$ c #989898", "% c #919191", "& c #020202", "* c #C2C2C2", "= c #454545", "- c #CDCDCD", "; c #B5B5B5", "> c #C4C4C4", ", c #B2B2B2", "' c #F7F7F7", ") c #0D0D0D", "! c #969696", "~ c #757575", "{ c #F3F3F3", "] c #656565", "^ c #BCBCBC", "/ c #4E4E4E", "( c #A6A6A6", " ", " ", " ........ ", " .++++++.. ", " .@.#.$+.+. ", " .%&*=&-.... ", " .;.>..,+++. ", " .++')=++++. ", " .+.!.@.+.+. ", " .++~{+++++. ", " .+.].+.+.+. ", " .+^./+++++. ", " .+.(.+.+.+. ", " .+++++++++. ", " ........... ", " "}; ./4pane-6.0/bitmaps/include/symlinkbroken.xpm0000644000175000017500000000073313205575137020175 0ustar daviddavid/* XPM */ static const char * symlinkbroken_xpm[] = { "16 16 6 1", " c None", ". c #808080", "+ c #646464", "@ c #323232", "# c #C8C8C8", "$ c #969696", " ", " .. ", " +@@+ ", "+@+@@@ ", "@+# +@ @ ", "++ $ .+ ", "+. .@+ @# ", " #@@# @+ ", " #@ #@@ @+ ", " #+@ @@+@+ ", " #+@#@@@+ ", " #+@@@@+ ", " #+@@@+ ", " #+@@+ ", " #+++ ", " ## "}; ./4pane-6.0/bitmaps/include/GhostTarball.xpm0000644000175000017500000000440212120710621017651 0ustar daviddavid/* XPM */ static const char * ghosttarball_xpm[] = { "16 16 104 2", " c None", ". c #D9D9D9", "+ c #B7B6B5", "@ c #ADADAB", "# c #C1BDB6", "$ c #C8C9CA", "% c #E7E7E6", "& c #C5C2BC", "* c #C3BFB9", "= c #BFBBB5", "- c #C5C1BA", "; c #A09D97", "> c #9A9895", ", c #BDBBB7", "' c #C9C7C3", ") c #C7C5C1", "! c #76726D", "~ c #8E8983", "{ c #C1BDB7", "] c #C3C0BA", "^ c #989590", "/ c #A5A098", "( c #938C81", "_ c #7B7367", ": c #6A6255", "< c #534B3F", "[ c #5E574C", "} c #736D64", "| c #85817A", "1 c #9B9791", "2 c #AEAAA5", "3 c #ACA9A3", "4 c #9F9D99", "5 c #99968F", "6 c #B5B0A7", "7 c #AEA9A0", "8 c #A9A49D", "9 c #A8A49D", "0 c #B3AFA7", "a c #908C86", "b c #AAA69F", "c c #CDC8C0", "d c #D7D2C9", "e c #D5D0C7", "f c #D4D0C7", "g c #D2CDC4", "h c #CDC9C1", "i c #C8C4BC", "j c #C3BFB7", "k c #BFBBB2", "l c #BEB8AF", "m c #ADA9A1", "n c #9A958E", "o c #CBC6BE", "p c #CFCAC2", "q c #C9C5BD", "r c #C2BEB6", "s c #BCB7AF", "t c #ACA79F", "u c #A6A39E", "v c #C8C4BB", "w c #CBC7BF", "x c #C5C1B9", "y c #C0BCB4", "z c #BCB8B0", "A c #B9B5AC", "B c #B9B3AA", "C c #ABA79F", "D c #C4C0B8", "E c #BBB6AE", "F c #B7B1A8", "G c #A09C96", "H c #A7A49F", "I c #BFBBB3", "J c #C1BDB5", "K c #BEBAB2", "L c #B9B3AB", "M c #B6B0A8", "N c #B4AFA6", "O c #ABA69E", "P c #A29E98", "Q c #C1BCB4", "R c #BEB9B0", "S c #BBB6AC", "T c #B6B1A7", "U c #ADA8A0", "V c #9F9C96", "W c #B2AEA8", "X c #B7B3AB", "Y c #B5B1A9", "Z c #B4B0A8", "` c #B2AEA6", " . c #AFABA3", ".. c #AEAAA2", "+. c #B0ACA3", "@. c #A7A39B", "#. c #9E9A93", "$. c #86827A", "%. c #949089", "&. c #928E88", "*. c #938D85", "=. c #938E86", "-. c #938E88", ";. c #8A8781", " ", " . + ", " @ # $ % ", " & * = - ; > , ' ) ", " , * ! ~ { ] ", " ^ / ( _ : < [ } | 1 2 3 4 ", " 5 6 7 8 9 0 a ", " b c d e f g h i j k l m n ", " o p q r s t ", " u v p w q x j y z A B C 1 ", " u q D y E F G ", " H I D r J K z E L M N O P ", " K Q R S T U ", " V W X Y Z 0 ` .....+.@.#. ", " $. %. &. *. =. -. ;. ", " "}; ./4pane-6.0/bitmaps/include/GhostFile.xpm0000644000175000017500000000111012120710621017140 0ustar daviddavid/* XPM */ static const char * ghostfile_xpm[] = { "16 16 13 1", " s None c None", ". c #000000", "# c #646464", "a c #f8f8f8", "b c #b4b4b4", "c c #a3a3a3", "d c #f3f3f3", "e c #ffffff", "f c #3b3b3b", "g c #969696", "h c #bebebe", "i c #b0b0b0", "j c #d8d8d8", " ", " . . . . ", " heheie.g ", " .e.e.djgeg ", " hjjjje#g. ", " .e.e.ajjje. ", " bjjjjjjjg ", " .e.e.d.e.e. ", " bjjjjjjjg ", " .e.e.afe.e. ", " bjjjjjjjg ", " .e.e.afe.e. ", " becececec ", " . . . . . . ", " ", " "}; ./4pane-6.0/bitmaps/include/chardevice.xpm0000644000175000017500000000101412120710621017354 0ustar daviddavid/* XPM */ static const char *chardevice_xpm[] = { /* columns rows colors chars-per-pixel */ "16 16 6 1", " c black", ". c #C00000", "X c red", "o c #808080", "O c #C3C3C3", "+ c gray100", /* pixels */ "++ +++", "+ OOOOOOOOOOO ++", "+ OoooooooooO ++", "+ Oo +O ++", "+ Oo +o +O ++", "+ Oo o +O ++", "+ Oo +O ++", "+ Oo +O ++", "+ OOOOOOOOOOO ++", "+ ooooooooooo ++", "++ +++", "++ o++++++++++++", "++o ++++++++++++", "++ o+. +++++++++", "+++ .X++++++++++", "+++++. +++++++++" }; ./4pane-6.0/bitmaps/include/bookmark.xpm0000644000175000017500000000077412120710621017100 0ustar daviddavid/* XPM */ static const char * bookmark_xpm[] = { "16 16 8 1", " s None c None", ". c #e8b585", "# c #646464", "a c #b48550", "b c #808080", "c c #ffcc99", "d c #ddaa7b", "e c #cb986c", "ba ## ab ", "#a aa a# ", "#a#aa#a# ", "#aaaaaa# ", "#aaaaaa# ", "#d...dd# ", "#d..ccd# ", "#d....d# ", "#dceccd# ", "#d....d# ", "#dc.ecd# ", "#de...d# ", "#d...cd# ", "#aaaaaa# ", "bb##b##b ", " "}; ./4pane-6.0/bitmaps/include/wizardbitmap.xpm0000644000175000017500000005567112120710621017776 0ustar daviddavid/* XPM */ static const char *wizardbitmap[] = { /* columns rows colors chars-per-pixel */ "110 86 256 2", " c #2A2A9F", ". c #25259D", "X c #39399A", "o c #2D2DA0", "O c #3D77E4", "+ c #3D77E8", "@ c #3E78E6", "# c #3E79EC", "$ c #3577FD", "% c #3678FC", "& c #3F7AF0", "* c #3B7BFC", "= c #4E4EAD", "- c #474DA2", "; c #5252AE", ": c #5F5FAB", "> c #5F64BD", ", c #547AB9", "< c #5A7FB9", "1 c #7979A8", "2 c #4076DA", "3 c #587FC1", "4 c #517CC5", "5 c #4079E7", "6 c #417BE9", "7 c #407CF0", "8 c #407EFB", "9 c #7979E2", "0 c #7A955A", "q c #779F6E", "w c #78A778", "e c #5D81BA", "r c #6687BB", "t c #5685DC", "y c #4481FB", "u c #4984FC", "i c #4D85F8", "p c #5486E1", "a c #5589F3", "s c #528AFA", "d c #5A8DF2", "f c #5086F4", "g c #5D91FB", "h c #5F91F6", "j c #668DD2", "k c #6C91CF", "l c #7C96C0", "z c #7396D2", "x c #7698D3", "c c #6A93E6", "v c #6D98EB", "b c #6994E7", "n c #6194FB", "m c #6C9BFB", "M c #6798FD", "N c #7699E1", "B c #769DEC", "V c #709FFE", "C c #7EA1E8", "Z c #78A4FB", "A c #78A3FB", "S c #A97C76", "D c #AA807A", "F c #B4B474", "G c #BABA7B", "H c #B8B875", "J c #83C67C", "K c #C29E73", "L c #C8A274", "P c #C3C37B", "I c #8C8C8C", "U c #8B8B9E", "Y c #8F908F", "T c #8F9090", "R c #8F919A", "E c #948C85", "W c #959696", "Q c #979897", "! c #979898", "~ c #9B9B97", "^ c #9B9C9C", "/ c #8989A4", "( c #8C8CA8", ") c #8591B2", "_ c #9697AF", "` c #9599A5", "' c #9E9EB1", "] c #81AA81", "[ c #9CA09D", "{ c #91A394", "} c #9FA0A0", "| c #9FA3AB", " . c #A89C9C", ".. c #A99985", "X. c #A2A38B", "o. c #AFAF8D", "O. c #A0A184", "+. c #A5A69D", "@. c #BFAD83", "#. c #BCBC82", "$. c #BEBE8C", "%. c #B1B18F", "&. c #BFBF91", "*. c #B4B492", "=. c #A1A2A2", "-. c #A4A7AB", ";. c #A6AAAE", ":. c #ACACAC", ">. c #ACA9A0", ",. c #A6ABB0", "<. c #A8ACB1", "1. c #A8A8B6", "2. c #AEB2AF", "3. c #AABBAA", "4. c #AFB0B0", "5. c #A9B0B9", "6. c #B3A3A3", "7. c #B1B0AC", "8. c #BBBCAA", "9. c #B4B2A7", "0. c #B2B3B3", "q. c #B7B8B7", "w. c #B5B8BA", "e. c #BABBBB", "r. c #B4B7BF", "t. c #85A5DB", "y. c #9FA3C4", "u. c #95A7D3", "i. c #9FB4DF", "p. c #89A9E9", "a. c #8DAAE4", "s. c #88ABF3", "d. c #8EB0F7", "f. c #8FB3FE", "g. c #95AEE3", "h. c #93B1ED", "j. c #9BB4E6", "k. c #93B4F6", "l. c #96B9FE", "z. c #9DBDFE", "x. c #A1B0CE", "c. c #AFBBD0", "v. c #B4BAC5", "b. c #B4BBC9", "n. c #BBBDC1", "m. c #B9BEC9", "M. c #B1BED7", "N. c #A8BFEF", "B. c #BEC0AD", "V. c #BEC0B2", "C. c #BDC0BD", "Z. c #A9C8A9", "A. c #BEC1C1", "S. c #BCC0CA", "D. c #BEC5D2", "F. c #B8C4D6", "G. c #ADC0E7", "H. c #ACC4F4", "J. c #AAC5FD", "K. c #B3C2E3", "L. c #B9C7E3", "P. c #B2CAFE", "I. c #B8CFFE", "U. c #B9CCF3", "Y. c #BBD0FA", "T. c #CBBE9B", "R. c #C4AB88", "E. c #E5B389", "W. c #C5C582", "Q. c #C0C08A", "!. c #CBCB84", "~. c #CBCB8A", "^. c #C2C293", "/. c #C6C69B", "(. c #CCCC92", "). c #CBCB9C", "_. c #D7D78B", "`. c #D7D78B", "'. c #D2D293", "]. c #D4D49B", "[. c #DEDE9C", "{. c #DCDC94", "}. c #C1C3AD", "|. c #C9C9A3", " X c #CDCDAB", ".X c #C2C4B3", "XX c #C3C4BA", "oX c #C6C8B6", "OX c #C6C8BA", "+X c #CFCFB3", "@X c #C8CABC", "#X c #D3D3A3", "$X c #D8D8A4", "%X c #DADAAC", "&X c #D6D2A9", "*X c #D3D3B2", "=X c #D3D3BB", "-X c #DCDCB5", ";X c #DCDCBB", ":X c #E1D28C", ">X c #E1E1A7", ",X c #E2E2BB", " .q.+.^ W ", "1._ -.U ` 6.1.-.w.5.-.;.1.:.` 9.L ..R.K W W W ! W W ^ n.5X5X5X3XeX5XyXyXyXyXrXyXyXyXyXyXyXyXyXeXyXrXyXyXyXyXyXyXyXyXyXyXyXrXyXyXyXeXyXyXyXyXyXyXyXyXrXyXyXyXyXyXyXyXyXyXyXyXyXyXyXeXW ^ _ ) ^ +.^ Q q 0 +.W / 1 - ` 0.+.^ W ", "e.0.0.7.0.3X5X2X3XC.3X3X3X3X=.^ =.` =.^ ^ W ! W W W W W ! ! ^ ! ! ! ! ! W ! ! W ^ W W W W ^ ^ W Q ! Q Q Q ! W Q ! W Q Q Q ! ! ! ^ W W Q Q Q ! ! W Q Q Q W W W W Q Q ! ! W ! W W ! Q W W W W W ^ Q W [ =.W W W ^ ^ ~ ^ ^ ^ W ", "-.I I I ` >.^ ^ :.:. .W -.:.W Q ^ Q W W W Q W ! Q W W W W W W ^ ! ! W ! W W W Q W W ! W W W W W ! W ! W W W W W W W ^ W W W W W ^ W ! ^ ^ W ^ W ! ! W W W Q Q Q W W W W Q W Q W W ! W ! W W W Q Q W W W W W ! ! Q Q ! W ! W ", "2X4.2.:.e.5X3X5X5Xe.3X3X5X5Xe.C.4.7.:.:.:.:.:.:.:.:.:.0.:.:.:.:.:.:.:.:.:.0.:.:.:.:.:.:.:.:.:.:.:.:.;.6.:.:.:.:.:.:.:.:.:.e.C.e.1Xe.e.e.n.e.e.=.e.C.e.A.e.0.:.:.:.:.:.:.:.:.:.:.>.;.:.:.:.0.:.:.:.:.:.0.:.:.:.7.:.:.:.:.:.:.", "Z.w 2.[ 4Xq.e.1Xe.:.:.S .^ :.=.` 7.0.e.e.e.e.A.e.A.e.e.e.e.e.e.e.e.e.n.e.e.e.e.A.e.e.A.e.0.e.e.e.n.4.A.n.A.e.n.e.e.e.e.q.4Xw 3.{ e.e.e.e.XXq.W 6.D =. .^ 0.0.e.e.e.e.e.e.e.q.q.0.e.e.e.e.e.e.e.e.A.e.e.n.e.e.e.e.e.XXe.e.q.", "q.=.=.^ :.=.=.:.=.=.2.E ^ T ^ =. .e.@XcXLXLXKXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXVXAXUXKXVXyXVXmXZXZXVXUXe.e.e.=.=.^ =.:.=.=.:.=.=.-.E W T ^ q.4XxXLXLXZXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "eXAXxX( . X UXUXUXUXUXUXUXeXXX|.KXAXVXyXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXyXZXUXLXAXVXVXVXZXZXZXUX3Xe.e.ZXNX=X=.=.=.=.^ =.yXUXUXUXUXUXyXXX|.LXZXyXVXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX=.", "yXAXcX' = ; ; ; = : UXUXUXUXUXUXUXyXoX].ZXyX3XZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX5X1XUXUXKX5X5XeX5XyXyXeXUXyX1X1XVXZX=X0.0.0.0.0.0.VXUXUXUXUXUXyXXX'.LXeX5XVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX=.", "yXeXyX_.nX5X3XeXyXUXUXUXUXUXUXUXUXyX1XtXIXLXLXKXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXLXUXUXLXUXLXLXIXLXLXLXUXrX1X1XVXeXXNX5XeXUXUXUXUXUXUXUXUXUXUXtXXX+XZXCXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXCXAXUXUXLXZXZXAXZXLXZXLXUXyX1X1XZXLXbX;XyX5XKXUXUXUXUXUXUXUXUXyX1X XLXVXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXLXUXqXZXZXHXUXUXUXUXUXUXUXUXUXUXyX.X_.AXeX5XZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX5XeXUXZX5Xe.5X1XyXeXeXUXyXA.1XLXUXCXwXHXLXLXUXUXUXUXUXUXUXUXyX.X~.ZX0X5XZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXHX^ ", "yXyXyX!.wX1X5XyXUXUXUXUXUXUXUXUXUXyX1XeXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXIXLXUXUXUXUXUXUXUXUXLXUXUXyX1Xe.LX5X-X).yX5X1XUXUXUXUXUXUXUXUXyX1X0XLXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXLXUXnXLXLXUXIXIXUXUXUXUXUXUXUXUXeX8.G yX5X5X1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX1Xe.UXUXZX5Xe.3X3XyXeX3XUXL.a 8 8 8 8 8 8 y M J.IXUXUXUXUXUXUXyXV.F VX3X5X1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "mXZXLX~.nXe.5X5XLXUXUXUXUXUXUXUXUXyX4XMXUXLXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXZXZXUXHXZXVXZXZXLXLXZXsX* $ $ $ $ $ $ % $ $ $ i aXUXUXUXUXUXyX4XMXLXLXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXLXvXZXVXZXVXUXUXUXUXUXUXUXUXUXeX.X^.VXeXeXyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXyXVXFXa N.VXyXyXKXAXF.* $ $ $ $ $ % $ $ $ $ $ $ % Y.UXUXUXUXyXXX^.ZX5XyXyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX .", "yXAXAX*XNXeXVXyXUXUXUXUXUXUXUXUXUXyXOX-XZXyXyXyXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXmXyXL.8 % a 8XeXeXZXfX8 $ $ c x.iXh.a $ $ $ $ $ $ $ * kXUXUXUXyXXX$XLXyXyXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXVXVX{.mX5XeX5XAXUXUXUXUXUXUXUXUXyX@X=XZXZXZXZXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXH.8 $ $ $ U.KXKXLXV $ $ $ N 1XLXeXvXt.$ $ $ $ $ $ % s UXUXUXyX1X=XZXZXZXZXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX=.", "yXZXUX0XZXZXUXLXLXUXUXUXUXUXUXUXUXyX}.~.VX5X3X3XKX1XeXe.LXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXm.% $ $ $ $ c 1X2XN.$ $ $ $ N 1XLXLXVXnXs.$ $ $ $ $ % % P.UXUXyX.XW.ZX2X5X3XZX5X5XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXLXP 0Xe.5X1XtXeX5X1XyXUXUXUXUXeX@XtXLXUXUXUXLXLXIXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXi $ $ $ $ 8 LXLXM $ $ $ $ N A.KXLX-X$.eXf $ $ $ $ % $ M UXUXyX@XwXLXUXUXUXLXLXUXUXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXLXUXBXLXLXKXIXLXIXLXZXUXUXUXUXUXyXV.#.yX3X5Xe.2XyXyXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX5Xa $ $ $ $ $ 7XM.$ $ $ $ $ N 1XLXUXJXJXLXJ.$ $ $ $ % % * UXUXyXC.G VX1X3XXX5XtXyXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXLX(.nXA.5X5X5XVXVXeXUXUXUXUXUXeX4XcXHXAXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAXs $ $ $ $ $ gXp.$ $ $ $ $ N 1XLXLXqX|.eXD.$ $ $ $ $ $ % PXUXyX@XcXLXAXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLX^ ", "yXZXZXXCXeXtXeXZXUXUXUXUXUXUXUXUXtXeX*.ZXVXVXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXIXg $ $ $ $ $ % sXZXCXu $ $ $ $ $ $ x 1XKXyXbX,XZXG.$ $ $ $ $ $ s UXUXyXeX%.ZXAXVXVXUXUXUXUXUXLXZXVXVXVXVXZXVXVXVXUXUXUXUXUXUXUXUXUXZX=.", "yXLXLX9XZXZXZXZXIXUXUXUXUXUXUXUXUXyXoX'.ZXeX1XeXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXP.$ $ $ $ $ $ Z ZX5X6X* $ $ $ $ $ $ N n.LXHXNXwXLXg $ $ $ $ $ $ l.UXUXyX.X_.ZX5X5X5XLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXLX_.wX2XUXUXUXUXUXUXUXUXUXUXUXyXC.tXIXUXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXIXu $ $ $ $ $ * FXUXUXDX$ $ $ $ $ $ $ N n.LXLX,X#Xp.$ $ $ $ $ % 8 GXUXIXyXC.eXUXLXUXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXLXUXnXLXLXUXUXUXUXUXUXUXUXUXUXUXrX4XO.VX1X5Xq.eX5X3X2XUXUXUXUXUXUXUXUXUXUXUXUXUXl.$ $ $ $ $ $ l.UXVX5Xx.$ $ $ $ $ $ $ N 1XLXUXCXj.$ $ $ $ % % % I.UXUXUXyX5XO.ZX1X5Xe.5XeX3XeX2XZXyX5X5X1X5XeX1X5Xq.eX5X5X3XUXUXUXUXUXZX^ ", "yXZXLX~.wX5X5XUXUXUXUXUXUXUXUXUXUXyX3XqXIXHXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXFX* $ $ $ $ % u DXUXLXLXN.$ $ $ $ $ $ $ c x.iXiXb $ $ $ $ $ $ % J.UXUXUXUXyX9XcXIXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLX^ ", "yXLXLXvXKXZXZXVXZXLXUXUXUXUXUXUXUXtX.XT.VXCXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZ $ $ $ $ $ % g.VXUXZX5Xp.$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ i aXUXUXUXUXUXyXV.R.ZXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXVX&XmXyXyXyXyXLXUXUXUXUXUXUXUXyXoX-XKXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXP.% % $ $ $ $ s yXmXUXLXyXB $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ s g.AXUXUXUXUXUXUXyXoX-XKXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXZXLX[.mXyXeXLXUXUXUXUXUXUXUXUXUXyX@X=XLXZXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXpX% $ $ $ $ $ $ U.LXZXUXLXZXM $ $ $ $ $ $ 8 8 * 8 8 d b h.F.VXUXUXUXUXUXUXUXUXyX2X+XLXZXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX^ ", "yXLXUX0XZXLXZXIXUXUXUXUXUXUXUXUXUXyX}.~.AXtXe.4X3XUXUXUXUXUXUXUXUXUXUXUXUXP.% $ $ $ $ $ $ Z AXe.LXUXZX5Xf $ $ $ $ $ g rX1Xe.LXUXmXnXUXZXIXUXUXUXUXUXUXUXUXyX.X!.ZXeX2X2X1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX .", "yXZXLXP 0X2X5X5XZXUXUXUXUXUXUXUXUXeX3XwXUXLXIXUXUXUXUXUXUXUXUXUXUXUXUXaXm % % $ $ $ $ $ * pXkXzXFXFXkXkX8 $ $ $ $ $ m uXv.1XLXLX%XT.yX1X3XeXUXUXUXUXUXUXUXyX2XeXUXIXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXHX=.", "yXLXUXNXLXUXUXUXUXUXUXUXUXUXUXUXUXeX8.G VX5X5XUXUXUXUXUXUXUXUXUXUXUXI.% $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ c 1XLXUXJXZXLXUXUXUXUXUXUXUXUXUXUXyXe.H ZX5X3XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVX:.", "yXZXLX(.@X5XLXUXUXUXUXUXUXUXUXUXUXyX4XMXUXZXZXZXUXUXUXUXUXUXUXUXUXUXGX% $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ C C.LXLXqX).eXAXUXUXUXUXUXUXUXUXUXyX@XbXUXZXZXKXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXe.", "yXZXKX,XyXVXVXVXZXUXUXUXUXUXUXUXUXyXXX/.ZXrXeXVXUXUXUXUXUXUXUXUXUXUXUXg $ $ $ $ $ $ $ $ $ $ % $ $ $ $ $ $ $ $ $ $ $ $ % a.1XHXAXMXbXmXAXtXVXUXUXUXUXUXUXUXyXXX^.ZXeXeXVXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXZXZX-XnXVXAXAXZXUXUXUXUXUXUXUXUXyX.X$XVXmXUXUXUXUXUXUXUXUXUXUXUXUXUXz.$ $ $ % * 8 8 8 8 8 * * 8 8 8 % $ $ $ $ $ $ * 8 x.1XKXAXmX=XZXAXVXyXUXUXUXUXUXUXUXyXoX$XVXyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXVXyX{.0X3X5XZXUXUXUXUXUXUXUXUXUXeX2X9XLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXkX* f.kXUXUXUXUXUXUXUXLXLXUXUXLXk.% $ $ $ $ $ GX5XeX1XZXyX,X%X5XeXeXUXUXUXUXUXUXUXUXyX1X9XLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXLXIX0XZXUXUXUXUXUXUXUXUXUXUXUXUXyX}.W.eX5X1Xe.LXUXUXUXUXUXUXUXUXUXUXUXGXUXUXUXUXUXUXUXUXUX1Xe.eXUXVXN $ $ $ $ $ $ UX3X8XA.LXLXVXyXUXUXIXUXUXUXUXUXUXUXUXyX}.P eX5Xe.3XLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXCX1X", "yXVXyXP @X1X5X1X5XeXUXUXUXUXUXUXUXyX4XmXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXLXHXUXIXm $ $ $ $ $ i UX3XeX1XLX5X-X&.5X5X5X2X6XLXUXUXUXUXUXyX3XtXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXLXUXMXLXLXZXUXZXZXUXUXUXUXUXUXUXeX.X#.eX3X5XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVX5XyXUXZXa $ $ $ $ $ d UX3XeXe.LXUXJXBXLXLXLXLXKXLXUXUXUXUXUXyX.XG yX3X5XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXLXLX).@XeXeXVXyXeXUXUXUXUXUXUXUXeXe.VXZXZXZXZXVXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXeXUXUXsX$ $ $ $ $ $ A UX3X5XA.LXLXqX XeXeXyXVX5XZXUXUXUXUXUXyX2XyXAXZXZXAXAXZXUXUXUXUXZXZXZXVXZXyXZXZXAXmXLXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXeX*.AXVXVXyXVXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXh s i * $ $ $ $ $ $ k.UX5XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXeXo.ZXVXCXyXAXCXUXUXUXLXZXVXVXyXVXVXVXVXyXVXLXUXUXUXUXUXUXUXVX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXoX].yXeX0XyX5XZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX3X% $ $ $ $ $ $ $ $ $ g.UX3XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX.X].yX5XyX5X5XZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrXXXwXLXIXLXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXFX$ $ $ $ $ $ $ $ $ $ iXUX3XeXe.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1X0XUXLXUXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XX.eXe.ZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXF.$ $ % $ $ $ $ $ $ $ uXUX3X5X1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX3XX.yXe.VXUXUXUXUXUXUXLXyX5X5X1X5X3Xe.ZXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXtX5XcXUXLXLXIXLXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXDXhXGXGXFXhXfXhXSXDXSXZXUX3XeXe.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX4XqXUXLXLXUXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX.XQ.eX3XeXVXeXtXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXeX8XUXUXKXyXyXrXeXZXyXVXUX3XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXoXR.yX3XeXVX5XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXCX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXe.eXZXyXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXVXVXUXLXVXeXyXyXVXVXyXUX3XeXe.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXC.eXZXyXyXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXe.mXZXLXZXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXZXZXUXLXZXZXZXZXZXZXZXUX3X0XA.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXLXLXVXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX0.6XAX5X2XeXeX5X2XVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXeXe.UXUXZXe.e.3X1XVX5XeXUX3XeXA.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXe.e.AX5X5X3XeX5X3X5XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXUXLXUXUXUXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXIXUXUXUXUXLXUXUXUXIXUXUX2X5XA.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXUXLXUXUXUXLXLXUXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXq.1XVX1X1X5XeX3X5XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXtX1XUXUXVX1X1X3X2XVX5XyXUX5XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXq.e.ZX1X5X3XeX3XeX5XeXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXCX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrX1XmXLXLXLXLXZXZXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXVXUXUXLXZXVXZXZXZXLXAXUX3XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXLXLXZXLXLXZXIXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXe.", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXtXe.rXAXyXdXmXyXtXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVXyXIXUXLXmXyXyXyXZXyXVXUX3XeXe.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXA.eXZXeXyXVXyXeXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrXq.5XZXmXyXAXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLX3XUXUXLXdX5XyXyXmXyXyXUX3X5Xe.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXe.5XZXyXyXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XmXZXZXHXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXLXLXUXLXLXZXZXZXHXLXZXUX5XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXLXZXLXLXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX0.1XAX1X5XVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX5XLXUXZX5XA.1X4XyXeX5XUX3X5X1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX0.n.ZX2X3XVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXLXLXUXUXIXLXZXLXLXIXLXLXUX3XeXA.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXeXq.5XAX5X5XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX1XIXUXZXeXeXeX5XVXeXeXUX6XeX1XUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXq.2XAX5X3XyXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXAX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX2XZXKXAXAXVXZXZXLXZXZXLXZXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXZXyXUXUXLXCXyXVXVXZXAXVXUX5X5XA.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyX6XZXLXAXZXVXZXZXZXUXUXUXLXVXZXZXVXLXVXAXAXVXZXZXZXLXZXZXUXZXCX1X", "yXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXeX3X1XKXAXZXVXyXVXVXyXVXVXVXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXVXVXUXUXIXVXmXVXVXZXVXVXUXe.1X:.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXtX1X1XZXAXCXZXyXAXVXUXUXZXAXmXVXyXeXZXdXCXAXVXVXVXVXVXyXyXZXVXZX=.", "e.yXyXeXyXeXyXeXeXyXrXeXeXeXyXeXeXA.0.e.5X4X5X5XyXeXyXeXtXrXeXeXeXyXeXyXyXeXeXyXyXeXyXeXtXeX1X1XtXeX5X5X1X2X5X5X5X4XtX0.0.0.eXeXeXyXyXtXyXeXyXeXeXyXyXeXrX1X7.e.5X5X3X5XeXyXeXeXyXeXyXeXeXeXeXeXyXeXyXeXeXyXeXeXyXeXyXeX5X-.", "e.e.e.e.q.q.e.w.e.w.q.e.e.e.e.q.e.e.q.e.q.e.e.e.q.q.q.q.e.q.q.w.q.q.q.e.q.w.q.q.q.e.q.e.q.e.e.e.e.e.e.q.e.q.q.e.e.e.e.q.q.q.e.e.e.q.e.q.w.q.q.q.e.q.e.q.q.q.e.e.e.q.q.q.q.q.q.e.q.e.e.q.q.e.e.e.q.q.q.q.e.q.1Xq.q.q.q.q.e.=.", "q.v.b.v.v.b.b.hXAXb.v.D.m.m.D.dX7XIXIXIXIXIXIXIXIXIXIXUXIXIXIXIXIXIXUXIXIXIXUXIXIXIXIXIXIXIXIXIXIXIXIXIXIXUXIXIXIXIXIXIXIXIXIXIXIXIXIXIXIXIXUXIXIXIXIXIXIXIXIXIXIXIXIXUXIXUXIXIXIXIXIXUXIXIXIXIXUXIXIXIXUXIXdXq.e.e.e.e.e.e.", "n.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrX1XC.e.1X1Xe.1X", "n.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXyXeXrX3X1X3XeXXX", "n.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXrXrXeX3Xe.e.eXe.", "n.GXGXGXGXGXGXLXGXGXGXGXGXGXLXLXGXGXGXHXGXGXGXLXGXGXGXGXGXGXGXGXGXGXGXLXGXGXGXGXGXGXGXGXGXGXGXLXGXGXGXGXGXGXGXGXGXGXGXGXGXGXGXHXGXGXGXGXGXGXGXLXGXGXGXGXGXGXGXGXGXGXGXGXGXGXGXLXGXGXGXGXGXGXGXGXGXGXGXGXGXGXrX2.:.:.:.7.:.:.", ":.7.7.:.7.7.:.:.:.:.:.:.:.:.:.7.:.:.:.:.:.:.:.:.:.:.7.7.:.:.:.:.:.2.:.:.e.0.:.:.0.:.7.-.:.:.:.:.:.:.:.0.>.;.:.:.:.:.:.:.7.0.:.0.0.7.:.:.7.7.:.:.:.:.:.:.:.2.:.:.:.:.:.:.:.:.:.:.7.7.:.e.0.:.:.0.:.2.:.:.:.;.-.:.:.:.:.:.:.=.", "=.` +.` ` ^ =.^ ` +.^ +.+.+.^ ` =.^ =.^ ^ =.+.` ` =.^ ` ^ =.^ =.^ =.=.^ 4.=.W ^ Y W ^ W ^ T T ^ W W I Q ^ W I ^ ^ ^ W W Y Y W I T ^ +.` ` ^ =.^ ` +.^ +.^ =.=.^ =.^ =.^ ^ =.+.` ^ ` ^ 2.=.=.Q ^ ` [ ^ +. .+.^ =. .^ +.` +.` " }; ./4pane-6.0/bitmaps/include/blockdevice.xpm0000644000175000017500000000124112120710621017533 0ustar daviddavid/* XPM */ static const char *blockdevice_xpm[] = { /* columns rows colors chars-per-pixel */ "16 16 16 1", " c black", ". c gray19", "X c #004000", "o c #004040", "O c #008000", "+ c #00C000", "@ c green", "# c #00C0C0", "$ c cyan", "% c #808000", "& c #C0C000", "* c yellow", "= c #C0FFC0", "- c #C0FFFF", "; c #FFFFC0", ": c gray100", /* pixels */ ":::::: ::::::::", "::::: == :::::::", ":::: ===@ ::::::", "::: @@=@O :::", ":: @@@@OO --- ::", ":: ++@OOO$---$ :", ":: +++OO$$$-$o :", ":: O;;;X$$$$oo :", ":: ;;;**##$ooo :", ": **;**%###oo ::", ".*****%% ##o :::", ".&&**%%% ::::", ".&&&%%% ::::::::", " &&%% :::::::::", ":: % ::::::::::", ":::: :::::::::::" }; ./4pane-6.0/bitmaps/include/redo.xpm0000644000175000017500000000135712120710621016222 0ustar daviddavid/* XPM */ static const char * redo[] = { "22 22 8 1", " s None c None", ". c #008080", "# c #0000ff", "a c #323232", "b c #00ffff", "c c #000080", "d c #0098b1", "e c #0000cc", " ", " ", " b## ", " b#ee ", " bddee ", " ddee ", " ddee ", " eeeeeeeeedddee ", " edeeeeeeeeeeeeee ", " edecccccccceeece ", " edc ddc.. ", " ed. ddc.. ", " ed. ddc.. ", " ed. dc.. ", " ed. c.. ", " ed. .. ", " eed ", " .eedddddddddddd ", " eeeeeeeeeeeeee ", " .aaaaaaaaaaaa ", " ", " "}; ./4pane-6.0/bitmaps/include/LockedFolder.xpm0000644000175000017500000000101612120710621017616 0ustar daviddavid/* XPM */ static const char * LockedFolder_xpm[] = { "16 16 9 1", " s None c None", ". c #000000", "# c #646464", "a c #ffff00", "b c #808080", "c c #ffffff", "d c #323232", "e c #c0c0c0", "f c #969696", " ", " bbbbb ", " baeaeab fdd# ", " baeaeaeafdffdf ", " bcccccccdfacad ", " bcaeaeaedeaead ", " bceaeaedddddddd", " bcaeaead######d", " bceaeaedffffffd", " bcaeaeadffddffd", " bceaeaedff#dffd", " bcaeaeadff#dffd", " bbbbbbbdff#dffd", " ......dffffffd", " dddddddd", " "}; ./4pane-6.0/bitmaps/include/compressedfile.xpm0000644000175000017500000000111512120710621020265 0ustar daviddavid/* XPM */ static const char * compressedfile_xpm[] = { "16 16 13 1", " s None c None", ". c #000000", "# c #4a7bcc", "a c #646464", "b c #c8c8c8", "c c #8cbce7", "d c #0000ff", "e c #545454", "f c #323232", "g c #ffffff", "h c #969696", "i c #000080", "j c #555555", " ", " cdi#idc ", " dii ", " cdiiiiiiiiiid ", "cddc dii ", "dic hiiiiiiihfh ", "di .gggggggg.hf ", "dib.gjjjjjjge.hf", "dib.gggggggggg.a", "dib.gjjjjjjjjg.a", "dib.gggggggggg.f", "dib.gjjjjjjjjg.f", "dib.gggggggggg.f", "dib............f", "#i#ciiiiiiiiiicb", "c#iiiiiiiiiiiid "}; ./4pane-6.0/bitmaps/include/paste.xpm0000644000175000017500000000124312120710621016377 0ustar daviddavid/* XPM */ static const char * paste[] = { "20 20 9 1", " s None c None", ". c #808080", "# c #808000", "a c #ffff00", "b c #000000", "c c #919100", "d c #ffffff", "e c #c0c0c0", "f c #000080", " ", " bbbbb ", " bbbbbbbaabbbbbb ", " bbbbbbbaabbbbbb ", " b##c#baabbabbe#ebb ", ".bcc.bddddddddb.#bb ", ".b##.bbbbbbbbbb.ebb ", ".bcc#c#cccfffffffbb ", ".bcc#c#cccfffffffbb ", ".b##c#c##.fdddddfff ", ".bcc#c#cc.fdddddfddf", ".b##c#c##.fdbbbdffff", ".bcc#c#cc.fddddddddf", ".bcc#c#cc.fddddddddf", ".b##c#c##.fdbbbbbddf", " .bbbbbbbbfddddddddf", " ........ffffffffff", " ........ ", " ........ ", " "}; ./4pane-6.0/bitmaps/include/columnheaderup.xpm0000644000175000017500000000047712120710621020306 0ustar daviddavid/* XPM */ static const char * columnheaderup_xpm[] = { "16 10 3 1", " s None c None", ". c #c8c8c8", "# c #aaaaaa", " ", " ", " ", " .##. ", " .####. ", " .##..##. ", " .##. .##. ", " ### ### ", " ", " "}; ./4pane-6.0/bitmaps/include/fulltree.xpm0000644000175000017500000000103312120710621017102 0ustar daviddavid/* XPM */ static const char * fulltree_xpm[] = { "16 16 10 1", " s None c None", ". c #646464", "# c #96b896", "a c #a0a0a0", "b c #c8c8c8", "c c #323232", "d c #00db00", "e c #99d599", "f c #969696", "g c #00bf00", " e#ggggg.ge#e ", " eg..g.g.gge.ge ", "eggeg..e.g..egge", "g.ge#.ge.e.#eg.g", "gd.#g.eg...g#.gg", " gb.e.geee.e.bg ", "###.ee.ee.ee.###", "g ..ee.ee.ee.. g", " .g#...ee...#g. ", "eg eee..c.eee ge", " f b..b f ", " .c ", " .c ", " ba.cab ", " bbbaa.caabbb ", " "}; ./4pane-6.0/bitmaps/include/GhostCompressedTar.xpm0000644000175000017500000000247012120710621021046 0ustar daviddavid/* XPM */ static const char * ghostcompressedtar_xpm[] = { "16 16 63 1", " c None", ". c #4A7BCC", "+ c #85B5FF", "@ c #8F8981", "# c #A49F98", "$ c #928D86", "% c #98938C", "& c #8C8478", "* c #6B6355", "= c #61594B", "- c #655F55", "; c #6F6A61", "> c #87837B", ", c #9A9690", "' c #C3BFB7", ") c #BDB9B1", "! c #BBB6AF", "~ c #B6B2AC", "{ c #B3AFA9", "] c #B5B0A9", "^ c #98948E", "/ c #D6D2CA", "( c #D5D0C9", "_ c #D5D1C9", ": c #D3CFC7", "< c #D1CCC5", "[ c #CDC8C1", "} c #C9C5BD", "| c #C1BCB5", "1 c #BDB8B1", "2 c #A5A099", "3 c #D0CCC4", "4 c #CECAC2", "5 c #CCC8C0", "6 c #C6C2BA", "7 c #C3BEB7", "8 c #C0BBB4", "9 c #B7B2AB", "0 c #9D9993", "a c #BFBBB3", "b c #BFBAB3", "c c #BAB5AE", "d c #B8B3AA", "e c #BCB7B0", "f c #A7A29B", "g c #BDB7AF", "h c #B9B3AB", "i c #B7B2A9", "j c #B4AFA6", "k c #B5AFA7", "l c #A8A39C", "m c #A29E98", "n c #B3AEA7", "o c #B0ABA4", "p c #AFAAA3", "q c #ADA8A1", "r c #AAA59E", "s c #ACA7A0", "t c #A39F99", "u c #948F88", "v c #918C85", "w c #88837C", "x c #C8C8C8", " ", " ...+... ", " ... ", " ............ ", " .+ ... ", "+. .......@#$ ", "..%& * =-; > ,% ", ".. ')) ! ~{{] ^ ", ".. /(_:<[} |12 ", ".. 345}67819 0 ", ".. a| b1 cd ef ", ".. 8b1gchijklm ", ".. n oopq r s t ", ".. u$ v @ @vww ", "+.............+x", " +............. "}; ./4pane-6.0/bitmaps/include/archive.xpm0000644000175000017500000000110612120710621016702 0ustar daviddavid/* XPM */ static const char * archive_xpm[] = { "16 16 13 1", " s None c None", ". c #000000", "# c #4a7bcc", "a c #646464", "b c #c8c8c8", "c c #8cbce7", "d c #0000ff", "e c #545454", "f c #323232", "g c #ffffff", "h c #969696", "i c #000080", "j c #555555", " ", " cdi#idc ", " dii ", " cdiiiiiiiiiid ", "cddc dii ", "dic hiiiiiiihfh ", "di .gggggggg.hf ", "dib.gjjjjjjge.hf", "dib.gggggggggg.a", "dib.gjjjjjjjjg.a", "dib.gggggggggg.f", "dib.gjjjjjjjjg.f", "dib.gggggggggg.f", "dib............f", "#i#ciiiiiiiiiicb", "c#iiiiiiiiiiiid "}; ./4pane-6.0/bitmaps/include/ClosedFolder.xpm0000644000175000017500000000114012120710621017624 0ustar daviddavid/* XPM */ /* Closed folder. Taken from wxGenericDirCtrl */ static const char * ClosedFolder_xpm[] = { /* width height ncolors chars_per_pixel */ "16 16 6 1", /* colors */ " s None c None", ". c #000000", "+ c #c0c0c0", "@ c #808080", "# c #ffff00", "$ c #ffffff", /* pixels */ " ", " @@@@@ ", " @#+#+#@ ", " @#+#+#+#@@@@@@ ", " @$$$$$$$$$$$$@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @@@@@@@@@@@@@@.", " ..............", " ", " "}; ./4pane-6.0/bitmaps/include/up.xpm0000644000175000017500000000070112120710621015705 0ustar daviddavid/* XPM */ static const char * up_xpm[] = { "16 16 5 1", " c None", ". c #000000", "+ c #C0E4CB", "@ c #808080", "# c #77C490", " ", " . ", " .+.@ ", " .+++.@ ", " .++##+.@ ", " .++####+.@ ", " ....+##....@ ", " .+##.@@@@@ ", " .+##.@ ", " .+##.@ ", " .+##.@ ", " .+##.@ ", " .+##.@ ", " .....@ ", " ", " "}; ./4pane-6.0/bitmaps/DnDStdCursor.png0000644000175000017500000000031312120710621016133 0ustar daviddavid‰PNG  IHDROc#"bKGDÿÿÿÿÿÿ X÷Ü€IDATxÚ½•KÀ Dg¸ÿíªÑjDäS–&oD´†OPcΟãT?dÚ³b›òœéz]GþqÌ­ÑK€üVmväQUOl‚Ù ½þ²ù ÎG˜üqÑ…ªAÈà ò‚Yo€,DvpÑ _'u»"¸õʼ`öuþÀŸ,Ú®vøIEND®B`‚./4pane-6.0/bitmaps/photocopier_28.png0000644000175000017500000000274512120710621016474 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7HFFQNNYWWWyWBllfffsnnvuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ §˜˜±ššª¦¦£¤ºµ­­¸°¯ºµ´ššÉ—È—™ÌËÁ¹¹ÌÉÉÕËËÕÌÐÒÒËÙÓÓÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìøøõëùÛGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHÀIDATxÚµ–w›6Ƕ$5Ë#+kÓN4~uq)vÛ8 ذdñý?ÒNl°©Ÿ×ýc$q1?O§Pý¯‚ó¾þc§è•øïïÿ‚ ‘¦œó4­‡©…°â©í^‹ÿðfV”r-•ø×•ª­¯õþâjVîÚÚÝ,ÏÆÇ1×c…¡(Ù—Útï~.^³\oHø½”RÏe ¢K? ¯!ÓšS~çÞXYßÃGpÏÂkƵ^?äJ Âw6…tú:ÕOðQr@‡8Ö:g܆¡‡®×´³Æ4t«a<ÀŸŸò¾ëF­Šb nB­ö}7ôé2u·×x‹gyN2P`;zŽqÑdÊä zS(H§Ëé-µŠM —-žî—7_‘ hrŒºœó~’Ï‚‘YlZ(ðk¥\™ÝÓÿ$ÕqAߥd U‡Ý†^©Á¬Aú×íÑEAíè8ð=^³­jÌÆuB¾­ŒÒsÊþç=,»ô dã1äб÷;ß±Mˆ² ×…i½qN*F‹>]ˆ³ñÎo¾È™oÝÏLÑ…‹úPO(º*Ä€–_a~iœÇl„îƒæYœ­ÒàcΖ]^×Zžraî­Á(Ýuèj72ùó­›à“¾;™ýnžsü¬Q¥¹Êº—庹ä×ÝØÐ¾ï ¦ŸÅ8Û¨×?¼ ×Ù ÕFá×±5Ûk¤ÖÒ&x:OGkqwÝìZˆ¶-ŒóHÇZ«ñ}mÚ^ ²O]8ßð¹ ðÛ¢0öIwÍp³Eã€D$Ý vdÁˆG"l CE$‰°eÏØD pp0Ïzsø[|õ)v±§&§nXr|ÄáM`î I«È"âØ ÃÓ§´{öJZàûqaW•ÎAlÀyˆ™0ë®EN>z!ÞÈ{Þßàï!Q3!šã.ÁÏÓw ¸7&|Šð)ºt´Ç¤‚ ŠþMóÞÈâŠrÔ,½…¡££µ}öáòúšf6ä¶Ü/(ý:3yá<á9r<@hú¡ëUGðÕg\ß¬ÎØÇ\—rí½$I‚/:ëtOï]§:Нªç·3ÓÝ;Å1¸T|BbfäÅSÊâ9½¦µN)e9nû²lÏ'ã=&Äjö³#{À>ÏÊæE¬™¤}-[ËÃZ!Ö$÷®:˜ e1EÑÙ{YS^ùìêÇê üÛNñoªÈö¦ª X@Î ¼êü¦ô4MçñàØ«Òà^8K¤:ÿ õ±–¾þœ IEND®B`‚./4pane-6.0/bitmaps/MyDocuments.xpm0000755000175000017500000000076612120710621016123 0ustar daviddavid/* XPM */ static const char * unknown[] = { "16 16 8 1", " s None c None", ". c #000000", "# c #808080", "a c #bababa", "b c #373737", "c c #ffffff", "d c #545454", "e c #969696", " bbbbbbb ", " bb#b#b#bab ", " .......babadb ", " .cccccc.adbaab ", " .c####cd.aabcb ", " .cccccccc.cbcb ", " .c######c.cbcb ", " .cccccccc.cbcb ", " .c######c.cbcb ", " .cccccccc.cbcb ", " .c######c.cbcb ", " .cccccccc.cbcb ", " .c######c.cbbb ", " .cccccccc.bbee ", " ..........ee ", " ######### "}; ./4pane-6.0/bitmaps/unknown.xpm0000644000175000017500000000225212120710621015340 0ustar daviddavid/* XPM */ static const char * unknown[] = { "23 23 34 1", " s None c None", ". c #000000", "# c #808080", "a c #404000", "b c #78a6ff", "c c #646464", "d c #8c8c8c", "e c #a0a0a0", "f c #ffc0c0", "g c #0000c0", "h c #c8c8c8", "i c #dcdcdc", "j c #ffa858", "k c #0000ff", "l c #a5b4a5", "m c #434343", "n c #c0c0c0", "o c #ffdca8", "p c #c3c3c3", "q c #323232", "r c #dadada", "s c #a5c0a5", "t c #ffffff", "u c #a7a7a7", "v c #c0ffc0", "w c #969696", "x c #c1c1c1", "y c #d2d2d2", "z c #000080", "A c #333333", "B c #303030", "C c #a5d7a5", "D c #585858", "E c #003fa3", "###############AAAAAAw ", "#####BaD#qqqq#nnnzEkgA ", "####Dip..qqqqq#wtzEkgA ", "###D#i.qqqccmqqqtzEkgA ", "##a#i.qqqcwcqqq.hzEkgA ", "#Apti.qqcwitq.q.hzEkgA ", "#Diit.qqciitq.q.hzEkgA ", "#aiffp..cien..q.hzEkgA ", "#Dipfptitpac.qqqtzEkgA ", "Bpioofiipew.qq.wnkEkgA ", "BpviijieDw.qq.wCsCsClz ", "ucccccccbcqq.wCsCsCslz ", "cuuuuuuuu.qq.ChCsChClz ", "currrrrrr.qq.smslsmClz ", "currrrrrr.qq.CmmwmmClz ", "curqqqqqqc..csmCmCmClz ", "currrrrrrrrCCCmCCCmClz ", "curyyddddyyCCsmCsCmClz ", "curcccccc....CsCsCsClz ", "currrrrrr.qq.sCsCsCslz ", "cuxxxxxxx....llllllllc ", "ucccccccccczzzzzzzzzc ", " "}; ./4pane-6.0/bitmaps/photocopier_12.png0000644000175000017500000000275312120710621016464 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33('(-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7FEEQNNZZZWyWBll`\\fffqmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ~~‘‚~‚˜˜fˆ……‡„“‘ŒŒš”˜˜˜š™ Œ­­¤š™³¤ª¦¦£¤º³¬¬¸°¯»¸µššÉ—È—™ÌË­ÁÁÁ¹¹ÀÁ½ËÇÇÕËËÒÒÌÛÕÓÌÿÿäÜÛââÜîååðééðïð÷ñìùùõ¤´‘ô]Í7xÿÈ}ÈýßÅôlìów]Ðv$‚×xl8ä ó:rá¨Å{çúßj%þcœ9t€úÈöŸ)E¿7q®d€u+|´À¬ñž÷ÁŠÌ‚ Ïw±y_WpJ7®ÑAe‡.ݶÁRø¹e*},/.œ€>¯;J!Hï"9iš)„{[:âçs\ˆ÷æïßÖ¹‰Ÿê%H)žDek;;¶¯A ÀC¼öÆTèXŽŽ÷Kà[ѤIUÑï×ÛÒ=Õ ¼DΑ4¾€ CS‚ÖÉ–a-§–¨.‘z¦ËV.£šç »’îv=Ãî/U~“ˆ­•ãÍÐ9‹Yœ%iš<*õ5FvŠßM4­Xê;~ç¡eÕx­µ¨G Bä%Y‘Ùz¯ëRäͯª.Š -¿vqnOAÃ9“'±¹v9FŒ|N²~5{Êⱱ؎óL«‡M§ºQíÁW_12¦ ÊLçf«GÜŒ‡0 cƈ+VZ/è•®U{ñUuo:²r´xÿ>!® ÉâÁ@¼´žy£~zß^«%}êqGò9í8OYç 8zÚ<[díÙ¬ùƘQé—Õáx`¢“†Ú¥xÒ¢æ»ón¹R½ÿãƒÝì'Zh+0ª—à¸j¶â¦ êÊq}ØþcÔÁ;–©^ˆÿõÀyã„ûŽW—IEND®B`‚./4pane-6.0/bitmaps/back.xpm0000644000175000017500000000070312120710621014540 0ustar daviddavid/* XPM */ static const char * back_xpm[] = { "16 16 5 1", " c None", ". c #000000", "+ c #C0E4CB", "@ c #77C490", "# c #808080", " ", " ", " . ", " .. ", " .+. ", " .++........ ", " .++@+++++++. ", " .++@@@@@@@@@. ", " .+@@@@@@@@@. ", " #.+@........ ", " #.+.####### ", " #..# ", " #.# ", " ## ", " # ", " "}; ./4pane-6.0/bitmaps/down.xpm0000644000175000017500000000070312120710621014607 0ustar daviddavid/* XPM */ static const char * down_xpm[] = { "16 16 5 1", " c None", ". c #000000", "+ c #808080", "@ c #C0E4CB", "# c #77C490", " ", " .....+ ", " .@##.+ ", " .@##.+ ", " .@##.+ ", " .@##.+ ", " .@##.+ ", " .@##.+++++ ", " ....@##....+ ", " .@@####@.+ ", " .@@##@.+ ", " .@@@.+ ", " .@.+ ", " . ", " ", " "}; ./4pane-6.0/bitmaps/photocopier_32.png0000644000175000017500000000273612120710621016467 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7KHHQNNXWWWyWBllfffsnnvtt2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ ¦˜˜±šš«§§£¤ºµ­­¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ÌÉÉÕËËÕÌÐÒÒËÙÒÒÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìúúøîRpÉGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH¹IDATxÚµ– w›6†/¬KNJz8KÛ Ç«'¯¡H!^ë$Akƒáÿÿ¤] ɟijs¶ëè9~ôJ÷ê èþWƒó2Kà{%þïÛwR )„(TQYHYX9ºR¯Å|›T‹zQ×K,u­» ¶®ú]½V½ùuQïÚš\›‰êe]<ž…OÓÔl¨ðª>Ä7¾î"ý|ËEkŒÄ³}í½d[Ì4ßA:úIøÊžž¤¢Þ(Ý›amàÅø'ã[® ¼IÕ¬E6Ãl½3±× àh~@‡4íµˆ#šÝÒYìw‡x€÷£(dbWzÙK¯ùǬ–»30}Œ¯Üѯñüw O¹â¾¡ »ë ùÂ-¢ÙîÏrú8½eÖàÂáYäÿ)+üä$ŠÜ` ½tq'b¹§´X îL+c daObì}$ú3­ä¨«²×²lhCö–ÑÔ0ÍôxŠRè…þ…°pm9ÓÃVzK›ÍçÅË67EÁàÑÑ?cb@¿{c¥ãæà¥’úÅÌÿ¤©m‹^áÖC¼÷K(·­ÒKÀÿmZÛ_–¥vP)‡lúl´Ë -£œìÊhGB¥éµÆcÁ`˜v¦\Stv±ÅnãàèVñtgr&„Äbõ®¬µ—èVí×¥±Å‹mûºlWíro]V9†ŸÁx.dÜš¤ˆÍª±¿Øt°×`ŽÄe™ÐŽÁCñìêÀw×öÔµ>­tÜTÀV©Bqö³juÑ×èRaæ5R.½*óݺ¤0‰ì•+œDïG„’èí ™`C8'¡'Øãœ’œbÍŸ°¢x‹[àÃÎáߢh6Æ;®Yrcº7‘~&œ¬šJÌsæ‚ŰwàN>ÔU†¬÷ª¡ƒ÷•r2AÑä¡GN>!AüFîop=„º Ieìžnßu!è RCgWÙ‘ €›E”þÌ9‚¦ºdÂx­¸…¡«Ã}áâúÚ„FüaQ³fò,DŽ/"T`ša}ÌÇ~ÐÁwŸÑ3¡vÊÈ—Ik+¥5Ásžk<ÁÝã‹{ßëŽâ»î)Ltsï©® kå'’j—Lž‹ì×aúÐ]ë-þåRZ.7O?O^º²ÆµÐ¯BõòålÞœ`THáßu§ãM$+[l:*m§r¿SXÄ—ËÙw Ýø»ÂÞ*[9z›¼™iæÍ!èÎÁ'0e§Ù4I€c¯Jƒgá,#Ý™øÿÐþ¬H¾É¾»&ÓIEND®B`‚./4pane-6.0/bitmaps/photocopier_33.png0000644000175000017500000000267612120710621016473 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7KHHQNN[ZZWyWBllfffsnnvtt2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f†…„‡„“‘ŒŒ‘˜˜˜ ¦˜˜±šš¦¤¤£¤ºµ­­¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÈÇÕËËÕÌÐÒÒËÙÒÒÌÌúÌÿÿäÝÜîååòëëùñí÷õô—ˆˆ5FtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿi–DÐbKGDˆHšIDATxÚµ–w£6 ÀÛ5W^½²µôLš^JÖø %Y¯-ØÄ[ø÷ý¿Òd’‘piÒ·éÙ8ð³,É2Ðü¯§¿òLáù þÏk'Ïy.8Ïð—‰Lˆ ›p­?Š÷?S¹^E¡ÕVʶգëZÿiô½Ý‘RO°8 ïû¾v¨íÄrXî΀ôSð5¡eY£`¹2¸×ù¢£…¯ÖµÂSÆ‹÷¬ ûh|Mªªªë‚RQvF–?§{ ¬f¦{tð}eyUðCØ ý‰v³ø2ö\Æû¦?PåôºˆýDîÃÊ}úlŒº­5Ùàã¯@^Ó<ö"ˆ·ôÇibèä>&—=b¶˜]³Và¬Ã³¯öƒBÈ”x^7¨cŠ’Ý4;"¨Ê3 ¨´€¸†ÄØ·›:ÿ+…PÃéý\ÓÇã$òD¹{ã„´t†` xWަçf‚”©áÖô‚øl™# ñ“ ä°Éo¿f†-»HŒ‹¯éõ}TTò/z.<ÌPÄ[¿¸Úè•1]êyðÙ¢¬4Äv]ø”ع1jö´tõΙ2³6O戢¥Þª%dªÈòÌTZ¥L7ãBcýS’u¦£íüõN×Lp‰Üॱá”Îïâå2Š3×^s¼LÆ‹$ÚõÍSG"ÅôÓxK/Qš…c*ˆ8ÊŠk½Ò-þÇs}‹Fã_xœD*µ°p€ïÅáî¢ÝµvN4A­*&†Óz›‰b½^kWެ%jk?ÌnW&[ÿäBû/œx$$žsI¦Ø8&ç·!jìÅqHRì‡ñ+ª0ÑÆã[– ½9Ü ¾{^Ç7ÁQpÅš’KݽôÔ=‰H+·$Ô!qt:¨S·;{õP)Ïu#¹¥ƒõ=ŒÉÔ˜«ySâ8/çw2¿ÄõÐL “^vþŒû£Æ7 .ÃiztžÚüEéyaøwÇŸBŽ×ô—k::º±o.œ]\h<¹9xXÅôMðÓ(\a™a&çÛià›oWEgb‹ÃôÂyKÓs”Ä-^fsÛjâ›æõêQ5skß÷Îê–D*$Ó7§ÅóèÓ0}謵ÞñMï ñ¹x¡?;²Æi¾î>¶Þ™G•ø+}×¾­Ì]»êzª‘yÞÕPþ8zþ¤9Åó^ îO$2pÁ—Ö 8Í)x X«({_f4b‡>•÷ÂIBšñÿ¡ü0>°&‹¿çIEND®B`‚./4pane-6.0/bitmaps/photocopier_14.png0000644000175000017500000000275212120710621016465 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE /5 33'''-,7-551--655?C3f99A56h3f3AD*Rz4ffA?@bb7GFEQNNYWWWyWDkk`\\fffrllwvw2d–ee—rtŸpp f–f^‰‰e˜˜„~}‚~‚˜˜fˆ…„‡„“‘‹‹“˜˜—š™ ¦™™±žžª¦¦£¤º¶«ª¸°¯»¶µššÉ—È—™ÌËÁ¹¹ËÇÇÕËËÒÒËÙÒÒÌÿÿäÜÛâãÜîååðééðïð÷ñìøøõ»d±ItRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ŸUbKGDˆHÃIDATxÚµ– _£8‡§p§«r.ÞÆ³º¦µ»=ªœ)KÝZ…¶…¾ÿ'ºI´Õ¾ú»û·àÉ$™€òìºaìÃ>ú þçÕe"¸œÇ"Žc¬rU¤©Ðâ\Åßž|Kgjš5•Z³,ý¨õGŸþy‡Cå«ÍONÜ>/KûêGší”s)R¶a6ã¥üLŸ¦Û¬ÖŠ­8桬ûã¥ôßmzñ`<4VtŽÆûáe)»¾(ÞZýÞ|>™‹koÃx‘w6Ùž¯ÐC6¦aOÐE7âþøF\–`u\…éfx3XƒQ·®ŸÅ*VÔkðÁW ?#̃ën°Ó•¹b0 Ͷ^ªƒ!ÓªrÇ5žûïDˆDDôëéõý>›šµ¬pôPH=l~:z -Y Rn…²?IÞBÐnna.æ÷£°Ý-ª>{™^(ºð< ß#®Ã«,2¾¾õŸ&˜VÔ±]öhhß7ϲñ½âYïóïµéâÊÚ+A*ÂËö<¯à“UÛ•ñ}ñÖo.^KqÙQ ¨d¨þªË(Ë2É2~p‚giè oÖ¬»Dú±2½êÇô„ʼ:ÕrˆëŸªÇª—u¾¥¡ÛLÙÎ [ÛÎ_ît~—¦ ¾'ÕÄ1±'I2ÎfËG6Sʰ–H)§xßI ÀÆQÇöêÊD„Txki´ ³lŽi>ÏñæLýçxäEnžŸÏ3´\;8 §âŸ½Û™»sµà™u7à ] qr.e!«ÙV…Tº!Z?d·žð¼ÆÜ:)ô\ºl?càõõ(9½ },hP‡zx¦Ê£‘‡çàO^-ž(§±lXÃmðe—Ÿ)ŸB¸bõé¹ÁêQmÐFžîð:Žñ Οãu¯DÝC\÷±Ú\æãíÐb^@û6WÓú7ŽCoÇù‹>\à|¨WÌ„Ìóµ½&¹›.\ô.6ÐÁw¼MySU B<ïWü8=ÍÓ#¦Ã=Ûk_çußwŽÏÏ™ÈrAÛÓl›òþ«àÆ…ÇçÓ«‚¬c;å|ùwÆE/†®-²íxç5Š"žpг¦m÷íV¹_–/_îUá[›¾Ì%7ôQmIÿÕ1xÎ6Ð×½k­]y~6]Œ‡1"ÄÄ?à3ÊSó¼)fÙJsEÐÅüaß•ûã/‚lmi]$"Õ¿Êßý£ñ3Ðòü—&ù/³Ó7y¹¢‹Àš€S‚÷aÀá;yؼ›ßjàýÍŸ¯ðåÞï+-Zˆÿõ/ºÏïÑÜwšIEND®B`‚./4pane-6.0/bitmaps/photocopier_6.png0000644000175000017500000000261712120710621016406 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYVUWyWDkk`\\fffddzjqqsmmxwx2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜——š™  §˜˜±šš¬§§£¤º³¬«¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÒÒËÚÓÓÌÿÿäÜÜîååðééðïðùñìüüüg}HtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆHiIDATxÚµ–W›0Ç6µeJgœí\&µÏ.úd‰Ò®V kùÿÿ£%áG¡¬¾íû’P?w¹ä.@ö_¯þbAa½ÿëìDˆ@^A ‚%—OÁ9Q$„¼DÀuã½øQÏâ8I’8Q÷$‰‹¿ºâ÷zpô³ÁJ“]˜½¿Î̳û(iSZ£ÏZÖ ¿^Ÿ8󨋫ÅAHzihoüz=¦Áë®§Àò:æbOü:[o£´Ãëb€R‡ë¶cÌy€ø|íˆ ˜ÖM#Ô¡yÛäB´ã>‘MCÕþÃΙH^Àç óf_Ñ›šTxv—O¾`ˆB´¦£1K[ˆim* nf7£¼w&sOÈHÕ‡%ž¢ƒ¡|/|Œ.޾¹€£ºaoïØ¨c¦o¨lZ˜¸ ¡`l‡–»÷¶«xç€!énÿ…ñ«ã"k4£Ku(‹É¢»íe90çrÑŒ—s³Ë¢0±±¨-®L6r0ÁÈà)qö¶0ñ<ŒcÁ>aŒ°'y# ¬`˜Ð°aWølŒÐÆ-ªö”„+Öts€TS\‰è‚-=¿@ûND=‚l[Å#Œu% JØå”1eBÓ¦ß, c˲¾à»Fœd¸ äãÐÜQÜ‹!” ´ïuVÉ!B~ûì¾×K¢#ªcñáÎÓ¼»¶áðø˜Š4x·£Õmú~†$”)•{ÏÓÊ:ðÙµ\[×hó•BŸZϾï‡A€Y‰ç®idø,{²]õ¸3¢Nx~Í—dúlø€¶ÐwµFÜí}Ç•©¿tÛŽìãò³lëØØî–>¯Æ²™WÙþx¨gj•¡Qžu²†›{°xœ½š'ŠhQ¸IAùQëK°²·à]pe­r‹Òåv”µWf t}GîÌ…7 goÄÿCý(‘´ÿùs‹IEND®B`‚./4pane-6.0/bitmaps/firefox.png0000644000175000017500000000431412120710621015264 0ustar daviddavid‰PNG  IHDRr ß”bKGDÿÿÿ ½§“ pHYs  šœtIME× 5:Ę­gYIDATHÇ–[Œ\uÇ?ÿsÎÜΜ¹ÏÎ^gº»m·Ki -­Ô–K)v›Š4hÀ(‚<Š/˜H5^&*Ê‹#!hC!R -Û*ín—Ýv»·îîìîÜgÎÜΜsfŽO€DPôûô{ú}~ÉïûŽãðq"î;s;ó3[éØ +ˆæÒß[`0Ru?ø3â?Å$Cp\ìwI</®ªÅÞÍ},N^}ÕB*¡Ódæ¸ã^äp˜–ËÅàØ:ʰ}~j]=˜\¬¦BB1ºIâgÙuf$€Å4£!pâ帋ºÙÂ[oà«·P„@ïѸtMœó¾ +Èv³l²2dnr݉°²q€åKwQXÛ‡— ÿ>£˜cC±(ÄÑÃ>Bg¯ð9åÅ—?µf­EoºEÂÕ¡ ëm¹h å[عãiê/­ÐæÐ& "6ê2k­Tfºî>¢2ÈŽŠQK +Úú"Ò়6;ãÃÔö_OáükâAé¦1*‹»Õ0²¤"¹fÑ¢Ðl²Ò´™^+1srŠtÁÜ­Q#YÅHèXuê˜XLª¥Õ\¶éøÚ8]š Uk•žÕ5vH2A…ÛÖ ö j8.IjÑ6uœLžÐeÐb…ÔÕ"“Š©’;4VÃ*9ÇC§;‹¢LQ*‡ð5ýHRÅÂvÌKôË©!”°„E7E{–”ס<3M·Dë^^·që6~ÇF‘L|e¡b…í-‹hÍ$è y1\»·áª6Øãqãv{hT²˜ãg‰ÜÂÄÿ©ëÅ[pdÀOÿ§‡™-ÁhO˜J(”ë¹l‘ÆJsu•N6c¶ñEb(ã(7ÞŒ³áæ–p/(ÙÃëÀü˯P{ó‹OþÚùéúð³'žÈp§$ÿÇ ò–Þ"¦ø©™Y" ¢…Ý4võRwí¤…®Ê´D‘’à“vÜlÙÂULªó³øÎœÃóØ1~ñ¡NcŒŠÃnðûQÝí&u]”ù¢—a-ˆŽRö1„ ©#£(¶ª… >ì>¶ôn¥îOR¢›Å‹ã¸NOÒÐxúŽo;/|¤Dž{žÇ~,":ѰŸª¢i~”P;¦åÑöhÅBÂ’lò-/nÏÁH’š;Jq.3·ÂZ®ÈÄWæ<ñ_­í´Øÿ+ä¾D;”Ä.5©v«4š~­mºÈn?¦ˆR/G±Ú ÌN5`mIÇ7›Ãòì½?q~óñ½T|ýÐÓœ|¸qsk€N¹A=\£êª‹¦ðª4”.*õ^:±« •:8¸™2ÛœÿæsÎoÿghqìç2÷F$¬y7â¡*ü”u/C!Úå§VY™TÝÌÜâý{ý_À÷2&Ʋàÿ«CdÎ…š‹RI ?2€NøžóêÇYóO ´èª†³¢`IEND®B`‚./4pane-6.0/bitmaps/iceweasel.png0000644000175000017500000000306512120710621015565 0ustar daviddavid‰PNG  IHDRàw=øsBIT|dˆ pHYs˜˜6ÓGßtEXtSoftwarewww.inkscape.org›î<²IDATH‰•–kŒ”gÇÏ{™wf/söì,Øî®”ÖMS¼6­éjZ  j!1¦¤‰¦¡I­šhøPT©&µDcª)¨¶¶R´·´ÒVĺVXÊ2{ßÎîÎììÎegÞËóøBwJô$çÃINþ¿çœçr¡”âÿµ/>ò§µßÚxÓ‘l¾2;5Sš]ÙZzòBzðí÷Ç>¶ÿë½ sÅÿ¸õ¡gÃÑÚΓÑîæXíÚÛ:?÷©Î¥qד˜††ãIL]ãÂÈŒ}à¯}O¾vbhOÏo·ePJUõû~ôbÇÁ×νüßã¹ñé¼ëzž’R^uדêŠÊŽRJ©ÑLI }8ç¤3ïñ?üó¥TuÀ޽¯|íâèLåA×S¶ã^•Rjï¯ö«\¡¢<)UojF¥se¥”ReÛSßèRJaTi‡öøŽÏì[ÙòüýÄ€<üj?š]#Z—‡D¶XÂ3õ“wˆ¥KÈΕÖ„)ÎNò—wzypûV¦óÎeû€Å€–†ú/}¡«¥é½sÃÞÞ'Nj·,_§}¾£‹PD£>¨£ëƒc1_qÙºù> ]ˆ†q“MHožì=rlàÞÝß\¿°fYøË8ü·ôÖš5z™ô‡6åŠE!o il“Þs#$“4G4%¢øü]¼{f,µ½»ý–íÝíhÿ 0äü&%™L–Â\CÇéë*»ÂüÅ„@×m4Ë ®ð‡nàSX–ÐÀu81<õ/¶}ûg:2Î+‡úð'ëzÞü®·Póš rÇvþ93m ¥‘Xº.(ðìÓ—(–$ù¼K±àRÈ;ÌL;Tf–1tÜÇGMD¡ŽÜÅÕÍÝ;¿úhUÀîÝB…U‘©±"#“yLËâ·2äóe‰®«p°m(—%å²$—3ÙõƒµÌÍJ4!)tn© 8UŸ\§ÔF{]ž{ù4§Žg°+ŠRQR*J¤‰DË2ðùuâ ?ÁÔ@‘}{ΣiŽ­p²ñ–ª{ï»÷aÇ.#]x~ŸK,Ö‚Ï´1 Æô¤ÍÝ›1|‚Á½'²¤Ç+¡cY&†®#5g.® žnJ)B£.ä§®½‚eCeHÇ´ ÂQ?mA¢qcÃelLŸe)ÛŌόUÝäC[”'#³‘h¿îcu¼öÖ(É(«–…¹³k9?ÿñ'i»Ý ë”G,‚AáM˜ePÛdÓ¹þF£*ÀwÛS¸ž®bq©ž:†ú$‘z?±Ÿº€‰¡kl¸½•G¾·†Oo¶hí Žú GüX5;~Øà•ú§j.8ÝÛ~ú†¸t÷K î ‰SÃ)¶~e«®æHuùɘš-ñÞ)úûó´´úˆÅýÅGŸéi<ûë-…l}Nèsϼ8‘ ·%’+Äâ~\U \3Èæ{ÖѸ$Œ'GRq$¶ëázбɼüÝ‘³þþ±»\·¸|Ì6gÏóImãÆ®®˜†|Ô‡ ²¹qÞrõ‘x˜*ÕV~Åþùñür IEND®B`‚./4pane-6.0/bitmaps/cdr.xpm0000644000175000017500000000202012120710621014402 0ustar daviddavid/* XPM */ static const char * unknown[] = { "23 23 24 1", ". c #808080", "# c #000000", "a c #ff0000", "b c #404000", "c c #808000", "d c #ffff00", "e c #e7e7e7", "f c #a0a0a0", "g c #ffc0c0", "h c #c8c8c8", "i c #dcdcdc", "j c #0000ff", "k c #ffffc0", "l c #ffc0ff", "m c #ffa858", "n c #008000", "o c #d7d7d7", "p c #ffdca8", "q c #c3c3c3", "r c #ffffff", "s c #c0ffc0", "t c #c0c0ff", "u c #303030", "v c #585858", ".........uuuuuu........", ".....ubvbqqqfqquu#.....", "....viqiiqiqqqglmqu....", "...v.iiiiiqqqmqggiqu...", "..b.irriiiiqtgqggpi.#..", ".#qrirrriiiqqggppiisi#.", ".viirrrriiiqqgmiisssqqu", ".biiiirrrifffqgisssssqu", ".viiiirirqb#ufmsssoooqu", "uqiiiiiiqfur##fqsoeeeq#", "uqiqiiifvvr.r##fqe#nnq#", "uqiqiiif#r...r#he#danq#", "uqiqiiifvvr.r##e#daa#q#", "uqiiiiiiqfur##e#daa#eq#", "uqiiiiiiqf###e#daa#eoq#", ".biiiirrrifhe#daa#sssqu", ".viirrrriiie#daa#sssqqu", ".#qrirrriii#kaa#piisi#.", "..virrieeeo#kkcgqisi#..", "...v.iijjjj###oggiqu...", "....vihjjjjjooglmqu....", ".....vqeeeeeqqggmu.....", "......uuuuuuuuuuu......"}; ./4pane-6.0/bitmaps/smalldropdown.xpm0000644000175000017500000000036712120710621016533 0ustar daviddavid/* XPM */ static const char * unknown[] = { "5 14 4 1", " s None c None", ". c #1a1a1a", "# c #4f9668", "a c #c0e4cb", " ", " ", " ", " ", " ", "a a", "#a a#", ".#a#.", "#.#.#", " .#. ", " #.# ", " . ", " ", " "}; ./4pane-6.0/bitmaps/photocopier_34.png0000644000175000017500000000270312120710621016463 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7JHHQNN[ZZWyWBllfffsnnwuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f†…„‡„“‘ŒŒ‘˜˜˜ ¦˜˜±šš¥¤££¤º´­¬¸°¯¼¶¶ššÉ—È—™ÌËÁ¹¹ËÈÇÕËËÕÌÐÒÒËØÒÒÌÌúÌÿÿäÝÜîååòëëùñí÷õôTÃFtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿi–DÐbKGDˆHŸIDATxÚµ–‹v›8†¶[N–4t9qêàÆ¬/ë:I°k¼ÿ+u$Nl|ËÙþ!Ëö§aFú1T¿Upò/ŽÑ;ñÿ|ûSH.%ç çËD$B$ 6¨L5\wß‹÷?=fù*Gé¦[«÷Fÿ±÷¸-6f§á}ßW µ–m±‹ÍY~¾$aQ”eÉû‹,?¤Ÿ ZúQø²D¼¤ü c·úS°Ç—d\(ú}(‹î\¿Í;ô­ª Ä[tðýLL1¾.:* 0¡}»êÀ|¹õ\Ê߆þ`Ãüi¶ÉÝ š>šõ{íÞ´xvä)–Ì£ÀÖô0œ–Jd4ÝŸq3ˆÑdtEÁYƒ§7ô¶‹‰ç5ƒXÓ“_‘7yŸÁ‹HékH”~ñÚýo †‡÷c9¿Î5¤ØA­ûŒ¦èG5=A&ÐÁÍ¥ƒ^‘IíBÆT «åˆyç>/—ÉÏ--“úƒÌZú ˆÁ9tðõƒ ÝH¦BfX_g}ieJ¯éRx˜*Ä[¸ššf²ægúËy¡ñ33–®=q‡à¼Š]œ©àq5b×p¥þ=àEÑH8š.Ú¯²Z݈D7õ¹¾´pŒ?ÝiÓ—4!Ii¢Sô0ß?06´&ê¤4ÂC÷¢(d3mäf²¦‹—ŸÆXÍm›` qTŠ/ž¦¯xŠT]ñ=†Žf"ÕK»O?oâî¼ÞµÔñëä«;¤âÐ*«ÕJg³gÍ14k»Înc —˜œc~Lþ‚Gâ9dˆÂ"â€M¯ C$°eOØS°¸N»eÛ9Ü_Ýz^S}“<'È’ ݽðÔ{‘Z×$ÐqôÃKŸ´OÀ×~¨Ïu#{]ë!cHdš7$ŽCðtþ"ã ¼˜ j*&Wv‡¹×C.¸´‰=ú¼ß¾ Ï ‚ÿbÆ>9yÖ£\/Œät=:š±ï.œŸk<¹Zu–³Õð™‹ÿ‰¼Èš¥ß·j¾úŽ•qUunít¿÷æÎsǸf Ëk|ÚVµ_UO—Úâ-±Ÿž]›’ ŸÏ£ô®g­µ:ýªùB¡ñR,Ã]ìŽñ0Ûàï›úèCö]u<Þ¬dÑ86S‘5;»ÞÒˆ{‹Ÿ@ªð— ~Ck7–ÆqñHf-Á©NÁ‡0¢kEt·FaDöýUêÜ '‰T'âÿGýD°¨|XˆIEND®B`‚./4pane-6.0/bitmaps/photocopier_17.png0000644000175000017500000000274412120710621016471 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)((-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNZYYWyWBll]fffffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÇÇÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõ‚K¾ÇHtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆH¾IDATxÚµ–W£8Çnu…§¸›;í®Aû¶KÏb°Õí¢À%-üÿÿÑM´¥…^õí~­ù1¯|2L2“Bù[G|çÙ‡côNü« !¸1Gűà\ÄØUJѬïÅÎü4˵ºÍr©ç2ß({¯÷''|›¦gÛ€§wà‹Ò¼²ìÎ —+Eê܃ø¢¸ ó¬Øz‘<ôê%Þ€/ Ÿ‰¼S­ v§ ¼pÍùÑø¢\Ýú©ì…Êj*%ÀtêÆŠnÌãCx/Zà €ï£åî{Ì|wª†&žÖ~<À§[â0^óƒ« í ö¶ `tÓ»îZc‘˃þg[?M4>ôû®ì»/²îï\¬Iæ]y<¶«óZiÓÕ÷B5ç“óŸ@Ë7à?ó¦µJòþ0ÅŸ´FVùü½1ÁZå³ÿרg~Ïo×~|yôe¥EË7â¡þu°½è&P2EIEND®B`‚./4pane-6.0/bitmaps/cdrom.xpm0000644000175000017500000000161112120710621014743 0ustar daviddavid/* XPM */ static const char * unknown[] = { "23 23 15 1", ". c #808080", "# c #000000", "a c #404000", "b c #a0a0a0", "c c #ffc0c0", "d c #dcdcdc", "e c #ffc0ff", "f c #ffa858", "g c #ffdca8", "h c #c3c3c3", "i c #ffffff", "j c #c0ffc0", "k c #c0c0ff", "l c #303030", "m c #585858", ".........llllll........", ".....lamahhhbhhll#.....", "....mdhddhdhhhcefhl....", "...m.dddddhhhfhccdhl...", "..a.diiddddhkchccgd.#..", ".#hidiiidddhhccggddjd#.", ".mddiiiidddhhcfddjjjhhl", ".addddiiidbbbhcdjjjjjhl", ".mddddidiha#lbfjjjhhhhl", "lhddddddhbli##bhjhhhhh#", "lhdhdddbmmi.i##bhhhhhh#", "lhdhdddb#i...i#bhhhhdh#", "lhdhdddbmmi.i##bhhhhhh#", "lhddddddhbli##bhjhhhhh#", "lhddddddhb###b.jjhjhhh#", ".addddiiidbbbhcdjjjjjhl", ".mddiiiidddhhcfddjjjhhl", ".#hidiiidddhhccggddjd#.", "..mdiiddddhhhchchdjd#..", "...m.dddddhhhfhccdhl...", "....mdhddhdhhhcefhl....", ".....mhkhhhhhhccfl.....", "......lllllllllll......"}; ./4pane-6.0/bitmaps/bm3_button.xpm0000644000175000017500000000073112120710621015715 0ustar daviddavid/* XPM */ static const char * bm3_xpm[] = { "16 16 6 1", " s None c None", ". c #646464", "# c #a0a0a0", "a c #c8c8c8", "b c #323232", "c c #969696", " ", " bb.a ..bba ", " b . cb#c#ba ", " bbbb .. a.c ", " b b #ca .# ", " b b abc ", " bbba aaba ", " abbbb ", " cccc.a ", " bb bb a.. ", " babab aba", " b a b #.a cba", " b b c.# aaba", " b b ab#a#.b ", " a a abbbb ", " "}; ./4pane-6.0/bitmaps/photocopier_10.png0000644000175000017500000000262712120710621016462 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33('(-,71--666?C3f99A56h3f3AD?HH*Rz4ffA?@bb7IFFQNNZWVWyWBll`\\fffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜——š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÇÕËËÒÒËÚÓÓÌÿÿäÜÜîååðééðïðùñìüüüzSL~GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHrIDATxÚµ– {›6Ƕf1KÈ6un Ç«§dcRMSÇ HhÔ|ÿ´“x¯8y¶ÿc#!›ŸNw§CPü¯‚É_ïB8FoÄ™Ÿ+%•L¤”I’`W™F+¥4^i»oÅ_ž†ú)3*¯¦­{žÞj½ûîoó|^bòl@8Àç7à÷…;ÿ¤³…ôÏqÁï÷çt{@?XA éÝÉŽÂï÷K._6=ƒ$Ø@ŽÀÝßÏËP}ñwÞŽðM°k~œín Àb„ïù-rÀ=ˆöOî³tðãïÄçòYÌ#=lvïà& æÍ=Ì ½¯UƒW@¿ÄJgâÃRäù ¶o»ºníý{i¶ï Nj<¿rÿP©RÛŸ/Ãd4S:Cè›3y9šÏÀn௵@i~‰çü'‚“§ŠQ”Þ á“’î]1ÄâWÄ÷ÌÒ¶‹Ex— jW*AŸ†Îᲃ_­p ž¯Î¿7p¥Þ»GH£`gmïÒÁ´E¼óoÐê[i[û#¨û[èѹ6QíÑOŒñ˜Ð<„x©lÍWÚ¦þÈfжªc<À= §êáÚÖðikßéѾáU;sÜDê;·ï™˜àÔH«Y6˜½“·›:7|L8¸¤pv`ÀõYµk¥•WS;·®LÛéÊŽ®]¨»ap;¼:‡ëó뢰òi7v¸ÙØŠPF‰wA×,¸¢BP²(¢Ø£1‚‰¼0aÇP8.ôæð|±$¤5‰›œB¸a­éY`÷‚˜{*h#fõ°ø™§¤¼O†ÞŠv„ø>/ùz™~ÇíqA'óÁ7z=öч“³3®òLÑOÙ”òõ£”qšJ&Ÿsà6öIàzžøˆ‘ñMP–®š®õ¹÷DZ”)Y…OB×)&ñEñà‡¦¹qô•þV†dýèUxÉGèCïZgÚ7Y¦Û?ävì±óÌÀx¨ÛCY·9Xi!À‚ä^ÇãËLînOS8;•Sëz?kyóÃöhñ ü/åFQu™î•âT·57“ŠœÌŠ×àCøkUÈ_ÖM(ÂÉìà1êè²lE‹WâÿCý Beª\ì·¦ôIEND®B`‚./4pane-6.0/bitmaps/UsbPen.xpm0000644000175000017500000000170012120710621015032 0ustar daviddavid/* XPM */ static const char * unknown[] = { "24 24 15 1", " s None c None", ". c #000000", "# c #d0d0d0", "a c #646464", "b c #c8c8c8", "c c #568a56", "d c #f0f0f0", "e c #8a8a8a", "f c #a5c0a5", "g c #ffffff", "h c #dddddd", "i c #e0e0e0", "j c #969696", "k c #000080", "l c #a5d7a5", " ekkkkkkkkkkkkkj", " elflflflflflflfk", " elllllllllllllfk", " ell.blb.lffffffk", " ell.blb.llllllfk", " all.blb.lffffffk", " all.blb.llllllfk", " aaaaaaaallb...blffffffk", "edgdgdgdellllbllllllllfk", "ehhhehhhelffflb..llffffk", "ehhhehhhelllll.clcllllfk", "ehhhhhhhelfffll.cllffffk", "ehhhhhhhelllllciccllllfk", "ehhhehhhelfffbc..blffffk", "ehhhehhhelllllllllllllfk", "e#######elffffffl.llfffk", " aaaaaaaellllllll.llllfk", " elffffffl...blfk", " ellllllll.ll.lfk", " elffffffl.ll.lfk", " ellllllll...blfk", " elfffffffffffffk", " effffffffffffffk", " ekkkkkkkkkkkkkj"}; ./4pane-6.0/bitmaps/palemoon.png0000644000175000017500000000314613205575137015456 0ustar daviddavid‰PNG  IHDRàw=øsBIT|dˆ pHYsÄÄ•+IDATH‰u–Ý‹WÆ{í½ß¯sΜ9ó=™t2i¤¦A-¡"¡`ÄT{UhÿAÄ›‚½Öà…WzYÈ…"QAƒ (ÌE Jˆ¶ÚR•&jÉ$™dšÌ×™™sÎ{Þ÷Ý^L,V“ öÞÏÃÚëYëYŠÇ¬#§~˜u¦÷Wt’}®Ó›9½´8uüØRwÖj…6¢¯¯Ï÷ÒË™Ñïÿö­ë·.¾ñJù(õ¨Ç§^úþÑ<Ͼ.&=Ójwž>üÄa;Õ먥é‚åÙŒ©NB‘ ‰•Ú*÷ÁÎ^}鯯ÿñ÷^¹ù¿Xú“׳râ¥/¿`9—íW“¬µ$6ÓósÓêèB›gžì²<—³4“1?™25‘èÅ™b¡7‘=wèÐì³O|ùÎ[¿zâ\‰ 8+ǾX~M©ø&Êž;­Ge­tÖf~vŠÙÉŒ…É”c‹íÌ&B–hŒyªõL7_™›ê¼øü™£;¿üéÌ{ÿ!ù˜`ù Ÿ!Fÿ¦(™ÕJEI•MsZ“¬ê±4±ÐËÈa¿t„Fòp[#ªÛNZ99ÿÌäÛøÍV?&8rêìJSïžNx´’²¢E§3Áâl‡™‰”éŽÅj…÷ñøa­ ¥Vë– ²ÜLž¼rã¿èkNÍÒÑÝoÜ«ÆZ­Mª:Ýi’4'Ë ŠV›©É‚…^Æl7A)¨š@bï#J‰BˆTM`}»bu£ZÊ':Ý箚ÅÁúŠ'œQ*&F"Ö:탯Q&#Ob"ƒ±Ã¡H Þ–µgTˆ‘ɶåÁnÅßo ’þnùâôÊâ5Ÿ usB´&Æ@–Z&'ZLÏM":EL¸öÜÛãCdz"áɃъͽš#«7CS)y¢ ¢è®VŸ1(õ%b´ÎD ÝNÑŠ"KÐ&¡ö‘²t8é¶ Eª1ZáB¤?l(kOÝD†•ãþNÅD¡92—sc<¶;»{§ Á9H\žÏx\x¥ñÆz)­Ìà|$1ÂÞÈ-ŠÝaÿև”•c«?TeY=m´ò³^ ÄÈhT²¹¹Í|Ò¦ªLbÐFè)©5„¨ˆœX-,Ïåh­p.R5žý†íý†{C¢óDgE r‹P×5ý½!u㩪”€ZE޵)Óì ƒ22n"F4©ŒD„a0¨‘à‘àÀˆèM‘æÓxPDB8稪ŠÌ9Ëþ°DŒecߨˆóÐm Ö€R–ýQÉÖ~(!‘Hn"Qk´QÅ\×" EÈËp°Oš&8 xçJèW°¾ ·7÷wý¡áîvàîfðR´Š­#u]㼿!!„ËJQg«jzkQƒC)ÐZ#Já lWp{×±¶¨£miˆA)…<þ¡0Êñ˜í]ööWw·úç×®½^j€½Õ«;½£Ïß ¾ùŠ÷®P¢™œžÇ¦Iš’g9Öj´@áœÇû@ŒçÎe9fk«Ï½õ[÷?ºûÚ{?ûÆŸ?áý[/®N.÷b '›ÚØœ4ï &ÅZ‹6¥DpÎÑ8GÝ8šÆ3*+vú»¬¯?ØÚÜÜüöŸ~tóâÿ\‰»w¾ú—Þrýn 7Š’j$uP‰ÁGçhG];†Ã’ýÁ[͵{Wï­­½öÎ…Õ‹ðÝðO¾ûwÞùpâSg~¯ð.JÒE™žˆQ¢ŠÐÓ4 e9f05;ýúýŸÜY»ý¿ýü›oÿ·Ãc¦ €Ã'ÏåÙ\8ÚʺÏ­ìt«Ý>Þn³Ež‰åht£ñü®×ïþã£o®]|ý‘cË¿â¹æ£N IEND®B`‚./4pane-6.0/bitmaps/new_dir.xpm0000644000175000017500000000146412120710621015274 0ustar daviddavid/* XPM */ static const char *new_dir_xpm[] = { /* columns rows colors chars-per-pixel */ "20 20 16 1", " c Gray0", ". c #800000", "X c #008000", "o c #808000", "O c #000080", "+ c #800080", "@ c #008080", "# c None", "$ c #808080", "% c Red", "& c Green", "* c Yellow", "= c Blue", "- c Magenta", "; c Cyan", ": c Gray100", /* pixels */ "####################", "####################", "############# ######", "####################", "############# ######", "########## ##### ###", "##### ## # # ####", "#### *:*: ## # #####", "### ## # ##", "### :*:*:*:*: #####", "### *:*:*:*:* # ####", "### :*:*:*:*: ## ###", "### *:*:*:*:* ######", "### :*:*:*:*: ######", "### *:*:*:*:* ######", "### ######", "####################", "####################", "####################", "####################" }; ./4pane-6.0/bitmaps/fileopen.xpm0000644000175000017500000000074712120710621015451 0ustar daviddavid/* XPM */ static const char *fileopen_xpm[] = { /* columns rows colors chars-per-pixel */ "16 15 5 1", " c None", ". c Black", "X c Yellow", "o c Gray100", "O c #bfbf00", /* pixels */ " ", " ... ", " . . .", " ..", " ... ...", " .XoX....... ", " .oXoXoXoXo. ", " .XoXoXoXoX. ", " .oXoX..........", " .XoX.OOOOOOOOO.", " .oo.OOOOOOOOO. ", " .X.OOOOOOOOO. ", " ..OOOOOOOOO. ", " ........... ", " " }; ./4pane-6.0/bitmaps/mozillacrystal.png0000644000175000017500000000315212120710621016672 0ustar daviddavid‰PNG  IHDRr ß”bKGDÿÿÿ ½§“ pHYs  ÒÝ~ütIMEÖBª–÷IDATHÇ­ÕmŒUGÇñï¹çî½{Ù{w—öB…eeW,PHYk›Vň†R ¨‘†ÊÖÔCÒZßÕhB"1iSšbÓXû¢IÕ–ú@©,ìRvÙç»÷áìy¸3sfæøâ–4šìV&ùg^L2Ÿüçœß Üæý…{£7¢òÓè™®§n7ØYÈŸ-Í:5[åÛ|ãƒëÎí‚¶¼»eÍÞ¶½?èmîýRÖ$-jâ:J^í~è…?L¿ðÝ‘ûF&nøÈµG¾¼¯cßsë²ë 6±èD£¬b<¦^Ìé¹3SÇ'ŽaèÞ¡÷ÿÅú¯öØ¿tÿ¯‹MÅ\”D6À7>¾ö18ø& ÅiÉ7Ù¦çwœÿÕ‡£38]OôÙÚqðè"·%íÛâkŸI1ÉÕ髸ÆGZ‰¯|räÚËQ¹ö¡ÀèUÜëNîÙ‰ÎÇä›:S¾õñÏœž£¦jP†íf;…¨ÀE{_úøÂ'¬‡«Ó Å*¿ð³·Vìøz.½œ’*¡…2 i$žôØmw“ÐF¹ Ç@y€-v VÚžƒ‰ÏS§Z‹ß ?@ J(£n•V ÁM\t¢1±!ö¤ö°ºy5íº=\8ñ{ë!?:¹êš´×èÌ*T½ -Èê,Â`¡R­à;>AZ šÂÂ:´œøÎÆõýK[ŠÏZQ"´!“r7rÉÙU¿FÊuËŒ¡g4G~”\ŽÁö¬ÚÃëîë΂s¸ýäöW:s_¬Å5:rØ”å\õ™R†¬É2;Wf}n}ºSµS ÚAbƒ¯î.üí™ì=¿ð>ùƲEË2›‹›‰’ ׇyçÆ;l¨ðf!ƒ5%rFb…%É'`øá¼cýîËE¯gïlß´bžö؜݌Œ%}Í}î:ÌÙ±³ükæ•9ð±R$"iÜg‘s…q÷à¼ÀÊs´&–×~Çʵŕ÷&!Ëåtç»Éd2œ®œf[n»ºw‘v \˜>O8`CìüÅW9aKó:ÒÊ1VÖ]çå§7îÙÚÜ^¤ª«lJoBg5Ya¦:ÆÔ¬8@Çø¡ÏÐäSµ)´ÑÏ<ùð“GüZ|æ¥ _Yݵí÷±Sñ+u‘ªªRË”ke‚ àħOKrH%B „`Ôõû/ôß?æ •mßæK‘LÍL163F%¬àErN°4t¸¼æ2=í=(¥R¢¤¢` … M¶ãÜ_ô'q}cMÔ¨Õkˆ´`íøv¸ÄÇÆbzÆKÚX$rA@†Ôëu"!„ ËéZwsŸyu_çîí§g?çE)‚؉éÍg™-ldGµ•¶Þ^–/»›ŒëEq£bE¬bb“È$3o0z‹Ìl‰g.•·uqi$ÂŽ-Ü“þïyLŒÅ%¬KŒ5èXÇqV ¥yÞKlN|Ž_­±É B’´‹ˆRK´Ñ 2H”ŠÀ‚µc Æ´~Ô1x{öíyFR6uîø£J(jÕÆ›€…);ÅPjˆž¦¬µh£±Ú6@#„àº}h&š¹2/P\eòdïXÄRíëFì­z±þ"‡Zá$Ö40Oy8±ƒ’‘päÇüæÖžÿû¦9/=¯8P¿ù?;€$ U5¼Ð£(‹DQDF Ï CÜÌ€9zÿpáñOµwu/¹püŒ'ÿ{‡O°–„Ÿ¼gyäf. i{·°¯ïA>ÚÑŠ”™¸v‰+gÿÁ›×Úñd–HE$ùó^ºí®³óô4;KeýY`×-ð .ÍÜGšG1ìC“Á4â÷g »—´ðôG–ÑÕæArä4+™bk¡Ê’üEöMyþ·Ö-Ê?vWÞélv˜3Ü52«ÌŸßða>ËNà!] †9,#&H˜À2FÂ8“7|mÞ=3øµ™÷vö´Ts£aKSU*×óCÝxWÒû¿wW~UÚuÖÛ9²#£vzU†‹w&³à?qJu)¢îIEND®B`‚./4pane-6.0/bitmaps/clear_right.xpm0000644000175000017500000000116112120710621016122 0ustar daviddavid/* XPM */ static const char *clear_right[] = { /* columns rows colors chars-per-pixel */ "16 16 13 1", " c black", ". c #181818", "X c #2D2D2D", "o c gray25", "O c #5A5A5A", "+ c DimGray", "@ c #888888", "# c #939393", "$ c #B7B7B7", "% c gray74", "& c gray81", "* c gray100", "= c None", /* pixels */ "================", " =====", " ====", " &%$$%$$%% ===", " @**@#@**@# ==", " O***O***O++ =", " oX*****Xoooo ", " .. *** ...... ", " ***** *", " *** *** *=", " ** ** *==", " *===", " *====", " **********=====", "================", "================" }; ./4pane-6.0/bitmaps/mate-text-editor.png0000644000175000017500000000201013205575137017025 0ustar daviddavid‰PNG  IHDRàw=øÏIDATxÚ½”kLSgÆë’eßf\Ü—eŸM@ÉÆœÛ>-‹ßÔ$„9cÜÅuT¨8wÄq+u ‚s›Åv"(£Ù&:‹lEZ*Q¦»Yz£÷Ë9œ–åÒ˳÷=V²"tÝ–øO~y’æ¼Ïïÿž¦<ñQ\”Ÿ½ÜÒ‘76èÓɆ¯dgÒ.W«ÕËÿˆùY/H"ÒFé¹G–žz¬ü§îR­®+Òªl!‡ÿÉ.Mg䆪ý»fÍ÷ŒŒèXV–w<3óõdÁÍ„ÃS(ýäî ÝÆÑc‡ÒJúüÄxÊ#ûqU$Œ––blï^²³NüØ¥âMÍ!*¢¢ª,­ljjÄ¥“Çðõ¥FÜTw⌴2>²[ n¡à‡Ž+¼Àår`dÄ«ÕüÏix€öÓb|~ºçÎÕ¡MÙ†ItoçÍW¯^Ÿ$ø®½p †ñ%A>{<ý^¿xfÉ+ˆö£[^„ŸV¡®¶× „%‚…Óª¼KÊÉ»’ 0Uf#BÊCm›a”壦VEéûµ‚Ŧ¹åBÒ h²¬?ƒ`ã“e˜e;`©^KÊwóåîó9¸W°­‡6îYúvA†éé0_Ô£Ó ÐL E(„î–w¤›a‘r­øa¹<¿=E™‚Tó¥ì,ff¦ù"Žã (…Z;a^P>\¸œ¾UÒòÔ‚úÏNavv““¸ÕÛƒÞ>Šnž»5¹dóWÿV¾zÑs»w‘HÇËKR jNJ177Ç¡Ð8&&Bþµ9¾ó¯eN3_N7§åôy²Ø,—L-¨ª.§›ð¯©¯¿ý s6xUEˆ¿EH™·"÷ VÀ¤n†Ýnƒßï'’0öø8µàxY ¢Ñhâa²9eìàyp}õ ÃiNá—]+1¤¬Çðð0, X–%KÍ@\\˜ZpøèÄb1^r{°Ÿ0€rƒu™/@Ó $·(†ëŠWëÄÐëõP©®C«Õðgè|$ú0µ`ßþ=ˆÇãøIEND®B`‚./4pane-6.0/bitmaps/seamonkey.png0000644000175000017500000000370412120710621015617 0ustar daviddavid‰PNG  IHDR©JL΋IDATHÇ–{lÝeÆ?ïïv.=çô´]×µctÝØ…!Æ`•,à ш$F‰ÆHbtFBHÀ{b"bPÿbL` ê"2Æã"—¹ulƒm]ÛõzÚžžžžëïü.ïûõÖ3>É“¼=O¾ù~ß<â#°bûOTéíûDì.л¯'—½±kCÏ®­—õlËf’í:Ö•sc³'Ï ŽbñÈKpüU|õ—³êÑ»{äÃšŠ‹!õO®ß±áûŸßµå3×l]ÜqÕ¥ôõäpl A¡R 8vj’gf‚ç_~çùÿrðAdÿ üØâÙëð‹oÞûDëèÉ)‰c#Q¤¥Rk™R¹!óå†Tª-i4Ciµb£µ‘ó“ùõ#‡£þëï~HÐqÛÅéÊe·Ý»ïW–ÅJKªµÐKM)–šR˜­ÉÔLE ³U)•})•›2¿Ð”b©!só Y(û¦Ñˆä/ž‘+núÙÓ@çû•í÷¿Ó[¾÷Ƚ߾ùŽ;︿Soja±B¥Z§T®Q®4ñ\×±‰bƒ6‚Ö£…0ÔªÞ ¸¤“þÞo å6U¦^} ˆìŽë~¯ZSûQkïÚó¥Ý×ï¹ëk;©7¦g‹ŒML1?¿@¹R§Þ¨5[8¶M>—A´ˆcsÁ¸Þ YÛ—GKjóëgmm*Ç^ê¿å²[Sû!¹ûò«¯»áO_ÿâö”&æôÐ…B¦ÑŠíÐ@‹Mëz™+.P,•I¥’ÔêMJå*®ãbŒdž ŒÉeÒœ=_Û>5ºp°rúçÓ6@ßÕwÜ¿e}ÿ§:;“Rœ/¨òB‰HR±G+RÔ!b„­zéîl#ÖÛ±™.Y¬ÔiÏeq]8Zš,Ö†f3’JÕxc•Vº9ûæ“ÐÕÛ³êvƒðö‰Qµ¾ÏÂXI¬H-Œz»s|zÇetw¶¡¡³#íí³tê­VDl–L´64ýPõv縤¯ÿsóï°Î¡û¶kûºV¼68JÐ,pë®m¤²IŒÔP@vݰ‘¾•9Za„cYhËZÚ“Öc„ZÝDZ]´ê×µX³*?˜ùÄM¶ê¹ù»—ö­Ú±yÝJ©UJj¶"x‰$A¨iú! ?¤Þ¸rs¹L ׳/|Z0ËSˆQÌÍ—iú!sÅ*ï M‘Ïå$ÖJ› •é-—¯ïc`už_3À\©ÌðØç ’©,‚ðò[ÃaÌ_¾R |{mB@!‘Öä²Yªµ€ÁSçŸáø¹’êéê Ÿk_ëdSn"ôh…‘jK{lÝx)ëÖtò‡G÷1Qª’Ît€^9ËËo áû·v÷|g7~+ÄQdPÊæÌH‘g LÏÈæWÓð5ZHXFÐÆ–R à·Br¹,?þá·è_Ã#ç)–›,V} Å&såˆý‡Þc®X,"m"ÑÂðx‰ßüñ^û(— på¦5ŒJÔ›¾q´‘™Xk@‰ˆ(1‚¥,N¾wŽáÉ2šõF€ˆ ˆÀ¹ñãS ô¯YE.™Š'Ÿ;ÊäÔ,×^sgÆ«>6)~ •eªUZ˜})"P(#‚mÛ({Ÿ8ÈØL€—HK&ÿ…‹j#& 5Z åªÏ¾çŽó¯ããXf‘v¯ÎWnÙÎv]¥ÖöuÐX?aÕÏî=41Sjˆ×q8uzˆþ+#Åmí݈‰?˜+ ü@³ïÙãaŒ106½ÈƒÃÔjuǦ^¯Ó»2Ï–õ}$]KñÈ‹øïž~ëÊMknT–ÈãÛ¯&,²ù>zY\a)…² °”⟯±ë†ÍÌÌ×ùÝÞ×(¦È¶¥Y=°fX£Rk25[c|bx;§Nüû¡­7ܘ˦U¨ÚÉ$ëˆËÂul\ׯq,lËÂZÞ“áþ‡Rm´ÂÛÍ˵c9)Š•ˆGÿþ&~+d~òèãÀìRL4ÏŒTøXÿšþM~$¢l'A2á’I{´¥´¥<ÒITÒ%™pIx6–RxžƒçÚ(Ë"ˆbŒ1¸®%³5U,¼{Â̬ü‰ÇæË ý®•èºÅK¤ÓùLBºòiÕÙž&ŸK‘Í$hK{dRéefÚd—™Jºc¤R•ß(…þÔ ?ŠkC| aý‰§ˆëç‡Ûαl~ÕÎdª½3òȤ=Ée’*—IÒž]b¶-A& tq] KY¡¦ÖÔª^ž(UÎ?{_P>ù[X¾¦E9õòèˆ_:kïînËä7ö¬èv:²YÚ’™ôÒÞÒÉžã ­¡éÇ,”dvüÈ+Ó§þ¼§U{ 0ë ´j¥éÑ7ž2Qýˆ‰lÇë´”›cYZ£â¢Pã7›ñ\qºtúäáWFNx`òôŸêÈü(Í‹÷:p¡®Évô^»reÿFÇMäED…aË/ÇGk‹3ƒÀY õ¿JÜ«p%kŸªn*IEND®B`‚./4pane-6.0/bitmaps/photocopier_13.png0000644000175000017500000000272212120710621016461 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)((-,7-551--666?C3f99A56h3f3AD*Rz4ffA?@bb7FEDQNNYYYWyWBll`\\fffrllyww2d–ee—rtŸpp f–f^‰‰e˜˜ƒ~~‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™ ¦››°Ÿž² Ÿ«§¦£¤º³©¨¸°¯¼µµššÉ—È—™ÌËÁ¹¹ÁÁ¾ËÇÇÕËËÒÒËÚÒÓÌÿÿäÜÜâãÜîååðééðïð÷ñìøøõÌ6˜ÿItRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ŸUbKGDˆH«IDATxÚµ–‹v›8†Zç4aS²¥ëº9ñÖ‹¯¥â¦Ž@‚Ú\Äû?ÑŽÄ%ÆÁÉiçÝÀŸ†éPüVƒgîßRèc¯Äÿ¾"Ä8Á…°Òc›ëÖkñ—ïæq¢l“$Uêfš<–›×z?üWsŒÄT¾/ sø-îA¿ä‰Çdá ^Ê÷ãÛ.zÚê"”y5U_¼”óßC¦í˜—@~µ¤²êŒÍU/¼,²Ù,ÎPš0Ïcy…«àÀõ5\Žø)íh,—,¬7qÅÆüñc/8òÙnRŸ¸ÞD€RVt8Sô¶M<ûÈ_0'ŽÙèÊ;ŒÖT èr•×øj‹Ý58©ñÔ1ÿÕ;ÐŸŽ¾†=“€é-‡è|ª†Ò3ÐÛ7¯ »Ø%žÒ?r 2ö¼c.?Ògß¿“Úws—.5ÝuÁÑø‰óÁ*é«Ñåü6xÞÖÁÖl8l¯èôÑ÷âÉ7âéäãÛõ)Â'†f/D;[­FuÜ‚vdÊÐE¼ñÆÖŽGZûJ%Ü·8Šê–¾‰ÀqÙЩΪ¬##s¢œÇÕ[ÿPrK½å\©¯c¼Âªa¨o‡Û„Ɇn–ô®|ç÷×ZÀ&»n¾«^•=âÑf»Ýn6í«,#doUˆ 3äbe¶#ã;N‰èÙQuQ I’m³4Éó4Oª?ÕušçY¦VŒ^Ú |Izö$7×çÕ®W´"ŽtÎe2ÃÔÕÑÔµÔªŠ’4ÓŒ[,§©·kQ˜Ø$n‡t îÄ!.qN/È+±ˆ‹%¶s‰m—Ýcá2í<.ÄÖvƒ/®×Fã;®)„+Ö”\èæ…£ú„‘Æ\=à *Â]Ðu&êǶié=# ê²ñ´tWӦIJ.ñ²þ"7ø>Ä­'„EµÛïFf‡¸WC6¨ 4óÄ’c–9ŽëþôÙ·ÓÓ4пþÔyž×c_l89?_ˆ$äÓÞù?j–Ÿéç~ĹËÓÊ×ƦUÁ_03¶ÖhSu>I­ß÷9KJ|Ü Œâ(¾(îí¹ªnŒg>¢Ïd¡R2}°pË*<§è]g­qÐíªÞâÇTÝÑøõüÐAÇø\lªàïå`»7‘š®BÁÍë¢?ø¾h†qÇ»ŠÙlr>¬î€/Àà;J\—q—N£¨zƬâ%ø9Ìh?SÏù~íÆ}¬ÒHñBü/´ÿ¨!Ïù¢± IEND®B`‚./4pane-6.0/bitmaps/photocopier_24.png0000644000175000017500000000270612120710621016465 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33%$$-,70--655?C3f99A56h3f3AD*Rz4ffA?@bb7IFFQNNXWWWyWBllfffrnnvuv2d–ee—rtŸpp f–f^‰‰e˜˜‚||‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ §˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÀ¹¹ËÇÇÕÌÌÕÌÐÒÒËÙÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõ}cîGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH¡IDATxÚµV s›8]¸&i˜”¤äš¶ÂñÔõQ©vê6´˜Ïÿÿ“º`ÀØÛs}XH^ì§Õj÷ ¨þ*àøŸ®ƒ3é¿ßß ˆ@Á÷åÐÇN"Æjx.ýû×ó8I×išà%¡†i–Ö­6&çzqñµfUÈÚ.Û|S7€åôe¥<éñ§ÈÚ!²ŸA_–×dÕó} -»b›ýú²œ¸ÁˆsЩøö78•¾¬rÛÙˆl4˜3›¢ Þ6yI‚:ÙhYg¸3û‹ØOp7±L žçÜx ÷D¦?!€³´ß‰­›nèùG Ï^È-¼‹ºý0áÛÔY—’#gé¼Çªb}ÀeKÏ,ý³¬¾Ø#–Õ‹×ÏÒ=è=ø¶ü3@ÑBaY31vgÕEøåU¾k÷|™@·«ÎõH*BÇ.BJ¡vtj™F+ñåC3h†ûä¨ÙYÇŽôÓ)f)ò°é›W×k„!î‹v”@JŒ|/ ÆÐCzíSQFÊsÕB•ao¾(jz\a`{ØwµZ2öy€xÝ;¥fÿOwß‘½ÃîÖocª)¬‡{œe½بCúcu<½ÊäV=7õ7ªÑÖ_ý0˜_­~©N »%þc´3 ˜.´Ÿ`T§Ð»à°ãà¸X†pèUig-œRHÿ?┿¶O×?ŠIEND®B`‚./4pane-6.0/bitmaps/photocopier_9.png0000644000175000017500000000265612120710621016414 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33('(-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYWVWyWBllXvt`\\fffrmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜˜š™ Œ­­ §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌË­ÁÁÁ¹¹ËÆÇÕËËÖÒÍÚÒÒÌÿÿäÜÜîååðééðïðùñìüüü~´[ØItRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ŸUbKGDˆH‡IDATxÚµ–w›6ÀÖ¤6/!™¶8m-¿zò2&ÖàÔqB%AóÿÿE;‰c\'o»ç§/ðïN§»Pü¯‡/C8FÞˆÿzuž*©¤” ÅJ(•)e)M¯ÞŠ¿ܦë<ϵiŒÔ}{º~«õ'ïÿ.y:? ‹7à7…{þO¶ÏÒ/Ô!}Ñ }øÍÆ î³üg²…ô–®ãð›ÍœË\ë­µÝÄМHà.ÁoŠ“[õÜBv¬µœ¢¡;÷â€%¾ T‡­z¯¸ão»+ Ò^<À儸\?¢«ö¡öÆ À|ŒšÙP˜Ø‘iƒ>}LTôMד¸‹¹·¤AÍóq3ÿM¦ˆçmÓωû‡MÆ/Þu(a·¶ßÅMÌh=“¿ùõs% R~‰çü’” N'Ñý¨û æ1h´»–ž‰O ]1Äâ§Ä÷,}9‡ q”À¢¤×[Ásxn?b žOÏßI•¢çÔ•{T4·è+[ÙžG[º"µˆw~ñ•AËLe`+¡­‡¶$ªz¸])Eü‰j'"ÇÐyÛvujŒÇh„Ö_+®vŠÎª‹ªòÚ©4uYhC7 À}AOåã­àÓÚ$tÏàhßð²:.*]º;~W !%À1èJƒm9Fï‰Û¦¹Û çö,ã=¾ÐsVe-°¶_SC·=îÆ\U徚 îNœ{l—Ûóë¢0mùÇØÎM e” .è ;GÔ£ [EQÌh¢ˆEذ·A㸰£ÃoðÅ„ÊöÌx&UnX3za‡ÄÌiDavQÀnCÊÑu)Úâû¼4Ÿ‡ø:8œEtYs-mF=o<öÞïô¯ ÜeµBàUP=ŒÜŽâ^-ù€ R„øŒç½‹»¾U4!Œ}O¢hàåÙ{n<šfbÔy¡×kŸ}8=;ã©ÖŠŽº¸­ÙìIÊ3„IC¹m¸^q_|Æ“ñÍ¡L\u¨Pâ²÷”$‰Lå§(¯ð"tâ ¾(ý[ÓÝ:iO¥¯ºôCy$³'¯ÂKÞCïºkuÞk¸•lë¦Þü*ìûàèXU]¯n¶³† – ÷¦8Û"±S,Ó*ñlÂÖ/„'Ë Å+ð¿JÕ/i{ˆÑ;+ðŠ×àC±V…üç2yxè¶û3êèªl…¯Äÿ‡ò/¸³½x}0UIEND®B`‚./4pane-6.0/bitmaps/gedit.xpm0000644000175000017500000000301112120710621014727 0ustar daviddavid/* XPM */ static const char * unknown[] = { "24 24 54 1", " s None c None", ". c #dbdbdb", "# c #000000", "a c #9f8154", "b c #949494", "c c #bcbcbc", "d c #757575", "e c #9f8254", "f c #bfbfbf", "g c #cfaa69", "h c #646464", "i c #4c4226", "j c #e7e7e7", "k c #cfad71", "l c #cba165", "m c #eeeac6", "n c #3b352a", "o c #a3a3a3", "p c #929292", "q c #c2ab8a", "r c #b7b7b7", "s c #cbcbcb", "t c #f4e2bc", "u c #f3f3f3", "v c #a48757", "w c #d1d1d1", "x c #cea668", "y c #545454", "z c #a18355", "A c #797979", "B c #cdab6f", "C c #b2b2b2", "D c #efebc7", "E c #ede6c5", "F c #ebebeb", "G c #d2ac6a", "H c #a4a4a4", "I c #6e6e6e", "J c #251b09", "K c #b8b8b8", "L c #6b5736", "M c #a7a7a7", "N c #cccccc", "O c #bbbbbb", "P c #c89f64", "Q c #aaaaaa", "R c #f4d597", "S c #777777", "T c #9c9c9c", "U c #705b39", "V c #e9e9e9", "W c #fdfdfd", "X c #9b7e51", "Y c #ececec", " ", " ############### ", " #W#W#W#W#W#W#W## ", " ##t#R#R#R#R#R#R## ", " #AnAJAJAJIJIJIJd#### ", " #.QcQOoOQfoOocMS#mk# ", " #uVVjVVVVVVVjjc#DGz# ", " #WYYYYYVYYYYYY#DGv# ", " #WYYNNNNNNNNO#DgX# ", " #WYYYYYYYYYY#mxe#h ", " #WYYNNNNNNr#mxz##h ", " #WYYYYYYYY#mBz#o#h ", " #WYYNNNNK#Elz#Nr#h ", " #WYYYYYF#EPa#YYT#h ", " #WYYNNsdUqz#OccT#h ", " #WYYYYV#iL#YYYYb#h ", " #WYYHHH##yHCfwsp#h ", " #WYYYYYVVVVVVVjQ#h ", " #WYYYYYYYYYYYYVC#h ", " #uCCCCCCCCCCCCCC#h ", " #################h ", " hhhhhhhhhhhhhhhhhh ", " ", " "}; ./4pane-6.0/bitmaps/photocopier_4.png0000644000175000017500000000263612120710621016405 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)((-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYWVWyWBll]fffffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüüÓë´êGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHyIDATxÚµ–W›0Ƕú,Ïá–MÙjߺtOL,ºZ…„lŠ–ÿÿOÚ%ü íªoû> —(Ÿ\.— PüWÁÿsÁ>z%þçÉ;¥$^F«Ô˜iš*¥•2·TZëµøà0Ò÷¨{{Y£|¶tÿZïG£‹,ßxÖ¸z~]¸EÏÕ¾~5¸;ñëµG—zØßVW éå0/À¯×!‡¸›¾§áÌCw¹7~]ÏÊÖ£8‰õp¬;=ó8<5!§&û;š6xñèm¢á 0ê<˜Ä[×´÷y<ŒõQšÍÅÛ‚ƒωûÝ“qÉ9ïŒÑj,LÎàBŒÁnÝ'£ 4¿Äsþž˜ÁíNÿ•ÀWq·°Ý÷yÌÁ¦¤Û£+Æ€Xü”øž´%ÄhQ¼JS¼Òî½QÝ„š†ÎKúÓ©ÅO§¸ ϧïÞ6®£Nܽ ¤ÑUIX=û^;O0aï¼ñK¯³ò¡¡žF3ciÝØºº§? ¢s»ªúq³ª÷³š…²,»¦UÎ+­.[ŒíÝæI·G×òöÌÖð©n{…:Ü;6Æ€‹/ÝndL?‹pj®¬rÙ»h’wÑJäE»Ç>BpðµhÜúì¨ÚµÀžã®lpœIV6äæB˜,\ñ±ØYÅ aìw".ôˆ—ë¶:<Ëë¾o>q•犞þåtÝI™H•±ìáÞáeÒ…®WìÀßpe|[£]õ—ÃÏ»K’$ËäW‡‰Å˹ë;ñEqëGæqîèÝôìsxqiäΫð’o¡µN/6y×6_UyU÷-~m;²ú«²­ÊÛßR0ÁäžûãAªMéf_èö¶ÕJž–7@‹à?ôñ­bµlü¤½tVà/ÁG0çûi‰hË·ëv|±wA¶¢Å ñÿPkm§wæ¦ ÝIEND®B`‚./4pane-6.0/bitmaps/photocopier_31.png0000644000175000017500000000276312120710621016466 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7KHHQNNXWWWyWBllfffsnnwuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ ¦˜˜±šš«§§£¤º´­¬¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ÌÉÉÕËËÕÌÐÒÒËÙÒÒÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìúúø."ÂGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHÎIDATxÚµ–w›6Ço‰S^F:Þ’vÂñêá& )N–% Øl|ÿ´; ØnjçmgB†Ÿþº“N@ó¿ýÆc‡Ø;ñ^^*%ñ)i–ª,MS…–ªP¶–½ÿé,ÊÖ›²Ôë’ kmU—zƒ§i]¿WýÉô7ËšÔ°®7÷Çáã8&‡N\Qì@u5ê¢,‘~¾yMÆ‚‡bG³Ö¦ÞóŸ@õôƒð5d†~ËòûN°‚Éáø:. =Š2R:òÃŽ÷Ñ3ü.pš}x€0Ù¡C:€lc7ôÌv'w<8iöà>Î|˱ôÜJŸVÅ~gŒzXÞÓ~mÍ{¼øØs’ Ÿƒx¥KëõšÍÄ.Pëa›Ñ®–wË+ÞœvxîO~ÇE§TÂ|¿k¬Á̘ê*ˆä7Ý1Ò~w•5P…ž%qþÑ—´œ©‡¿­_rKŸ­V#¥C½#¿/W £«0+tî{®´ðŒ.ILÍÐNv=<¥ß3|âî{:âçsÌ ÈáóŸ~´Ò;˲ãb'ÌÕä I6¤ÊÇ)Šxç¯Ã-])|XÛ â(óAÏ9=”烧;ƒ¯0ЮNI<ÎF°ÀöíÂT‰NxMxiÓ/tRÊ•f°i÷R[éádùóµIšà±¢•ÜŠÄ´ çÒÄucl½Æ³»®©”uUo¶|ëWí N?ƒpÚfíxs1νÁ\XioW-„ª€Ï«8Cqø££¢©i*•¹©Ì?9vožŸ:X:»qöº¤0÷˜ ln£ZUáÜg!óÏ.Ø/Læ²p%[ !B–„XŠg,BŽ4nw&0êÃëñÍÌ÷UÑ £øœ!uÁ.Lõ§{&Xo¡i™‹a¢÷hÛíwÀa>¤Â÷¼ØN5Ntpþ[p²Åg×eÌuÝ_Øíއ…]‡À¥•õˆ ¤Ùo<ŽúJtþa5X훣}? ÿI„pÏÊbÊ%… K/aßÖѵ}ñàôüÜ„/¸Zoe,=î`ñ"U’Kæ˜g8Áó4˜¸Íøæ FÆ£èÌ&j[p¿•ÚÒ}I’DJÉD‡Oo'Nó&¾iž¾¡Ë­“½½™æŸƒ˜B²xqKmð’Ÿì§ïÛku9Þû·÷ŽÍ¿eºOø§è[[öžvü 3탺„Xº¢ ÌR%'×Íáxí î­êÂÜcBÊr›B2º—7Ó‡¿€5Gà¯Óx° t™ùõO©äÊy·9Á’fË(ŽÞúTÚ»Ž2Ö‰ÿí_e¸¿ ¯ÉÁZIEND®B`‚./4pane-6.0/bitmaps/kwrite.xpm0000644000175000017500000001227612120710621015155 0ustar daviddavid/* XPM */ static const char *kwrite[] = { /* columns rows colors chars-per-pixel */ "24 24 247 2", " c #0F0B05", ". c #0D0F13", "X c #16100B", "o c #19140F", "O c #1C1B1C", "+ c #000C2D", "@ c #000932", "# c #000F3D", "$ c #01103E", "% c #1E1F20", "& c #101933", "* c #1F2021", "= c #222121", "- c #3D3220", "; c #00165E", ": c #1F2944", "> c #162970", ", c #384147", "< c #554A0B", "1 c #5A4F18", "2 c #494931", "3 c #545333", "4 c #5E5634", "5 c #65570F", "6 c #60571F", "7 c #695D15", "8 c #7F4912", "9 c #7E4A1A", "0 c #625D34", "q c #625C38", "w c #71610F", "e c #736411", "r c #706B32", "t c #706B39", "y c #7B763E", "u c #444349", "i c #434D6B", "p c #52647C", "a c #645F45", "s c #74705E", "d c #7F7B6B", "f c gray50", "g c #0A2690", "h c #123297", "j c #1B3A9E", "k c #0B33AC", "l c #0F38B0", "z c #1136A4", "x c #1438AA", "c c #1C3DA1", "v c #153DB1", "b c #183EB4", "n c #1F40A4", "m c #1E41B4", "M c #2F4A93", "N c #374F89", "B c #314B94", "V c #3F5694", "C c #2040A6", "Z c #2D4DAE", "A c #2244B6", "S c #2046B8", "D c #284CB8", "F c #3451A5", "G c #3654AE", "H c #3353BC", "J c #3E5BB5", "K c #2E54CD", "L c #3559CF", "P c #3C5DC0", "I c #3B5CCB", "U c #3E62DE", "Y c #405AA4", "T c #435FBA", "R c #4B639A", "E c #586B8D", "W c #4464BF", "Q c #5A6EA0", "! c #5F77B4", "~ c #717B97", "^ c #7E7F99", "/ c #6275BE", "( c #6B79BC", ") c #4364C1", "_ c #4967CA", "` c #4D6ACA", "' c #4065D3", "] c #4569D2", "[ c #4A6DD3", "{ c #4E71DB", "} c #546FC9", "| c #5370CF", " . c #5F76C6", ".. c #5872CC", "X. c #5C78C1", "o. c #5E78CD", "O. c #5273D3", "+. c #5374DB", "@. c #5E7AD3", "#. c #5C7ADD", "$. c #5A7CE3", "%. c #627BC1", "&. c #7A8474", "*. c #74838F", "=. c #7C8884", "-. c #7988A1", ";. c #7C8ABD", ":. c #5F81E5", ">. c #6E80C8", ",. c #6583D8", "<. c #6689DA", "1. c #7089CE", "2. c #7B8CC4", "3. c #7989CD", "4. c #728ADA", "5. c #7C96DA", "6. c #6382E3", "7. c #6A86E4", "8. c #6E88E3", "9. c #6B89E8", "0. c #728BE4", "q. c #7593EB", "w. c #7B93E2", "e. c #7896EB", "r. c #7D99F0", "t. c #804B13", "y. c #81501B", "u. c #9A6F55", "i. c #947B45", "p. c #9E7E4A", "a. c #937D55", "s. c #807C6C", "d. c #807E73", "f. c #86803D", "g. c #8A8232", "h. c #918937", "j. c #8C935A", "k. c #9B855A", "l. c #8B9277", "z. c #8C9478", "x. c #AF9679", "c. c #BE9D70", "v. c #D2A92B", "b. c #FB9D1C", "n. c #EC8928", "m. c #F18B26", "M. c #FDB505", "N. c #FBB609", "B. c #FEAE32", "V. c #CFA055", "C. c #CCAB5E", "Z. c #F4AD42", "A. c #FFC404", "S. c #FFDF15", "D. c #E2D725", "F. c #FFCA23", "G. c #F1CF3B", "H. c #FFE10E", "J. c #F3E718", "K. c #FFE014", "L. c #FFED1B", "P. c #FFF11B", "I. c #F4EA25", "U. c #FFED23", "Y. c #FFE539", "T. c #E5C46E", "R. c #F7E450", "E. c #88898A", "W. c #95948D", "Q. c #949495", "!. c #8687A0", "~. c #8797AB", "^. c #8D97B4", "/. c #8D9EB9", "(. c #909DAB", "). c #949EBC", "_. c #98A18E", "`. c #97A0BD", "'. c #A6AD9A", "]. c #ACABA5", "[. c #B9B8B4", "{. c #BEBEBD", "}. c #8296D3", "|. c #8799D6", " X c #849BDC", ".X c #8A9EDA", "XX c #869BE1", "oX c #839AE8", "OX c #8B9EE7", "+X c #8FA2D9", "@X c #99AADB", "#X c #85A8E7", "$X c #8FA3E2", "%X c #8FA3ED", "&X c #94A5E3", "*X c #93A5EA", "=X c #95A8EB", "-X c #9DADE4", ";X c #9CB1EB", ":X c #A0ADC5", ">X c #A7B3C2", ",X c #A1B1DC", "X|.OX=X=X i DXDXDXDXDX", ", l.^ Y @.9.0.w.oX=X&X2.( ^ c.x.:X7.n `.DXDXDXDX", "< f.M J 2.4.0.7.8.w.4./ %.} X.4XrXlX8.j ^.DXDXDX", "s 5 3 =.W.Q } 9.0.7.8.0.0.q.#.<.6XrXeX9.h : DXDX", "DX{.q h.N Z %.0.7.8.8.6.8.8.6.{ <.5XrX0XU ; f DX", "DXDXd w q E '.-...8.6.8.6.6.6.#.U #XlXe.m @ f DX", "DXDXDXW.a g.p F W <.8.8.6.6.6.$.[ ;Xe.m ; = DXDX", "DXDXDXDXW.e t V ~.(.%.$.7.6.$.{ ,.q.A # o DXDXDX", "DXDXDXDXDXd.4 r &.R G #.6.$.6.] $.m # = DXDXDXDX", "DXDXDXDXDXDXDX7 y B / /.@.6.$.K b # O DXDXDXDXDX", "DXDXDXDXDXDXDXd 1 3 z.*.F O.I x $ O DXDXDXDXDXDX", "DXDXDXDXDXDXDXDXDX6 f.B H I z @ = DXDXDXDXDXDXDX", "DXDXDXDXDXDXDXDXDXs.5 2 j c ; O DXDXDXDXDXDXDXDX", "DXDXDXDXDXDXDXDXDXDX[.].& + . DXDXDXDXDXDXDXDXDX" }; ./4pane-6.0/bitmaps/gjots.png0000644000175000017500000000366413205575137014777 0ustar daviddavid‰PNG  IHDRàw=øgAMA± üasRGB®Îé cHRMz&€„ú€èu0ê`:˜pœºQ<bKGDÿÿÿ ½§“ pHYs  ÒÝ~ü„IDATHÇ¥–{PÔ×€¿ß>ØuaÙÅâîâ"¥‚ ¢%Œoª4g Æ8BÚ8>&Z§hfÒ™ZÅjÓR‰I¦f|á8íøHµ#QPÑj|1Pê* ÊBQ}ÈcÙÓ?0™qÄ¿rþ»3÷|÷ž3s¿s^"€I ¥Vü§ÓtáUîi3©¼BS3x} *@¥@B¸Ù Ý¡Õ÷$ž• »`ižæ(ðÉl¾Þ•Eaílª;^â!uH/¹†}´ •oOßcõ Õ¥Š%¯FÙÉ“/‡ð Pôù¾È…ÎŒ NÕncW«EXw’)Ó·cŠ>.OqI26›Ý¸}ÇGË"£¢•ÍÙ¶vå§ù~¡N^Yõk:]ACÿò㥕gàÞ¹ì¯ØÆûMV^ý™‹M¯ï$ré.]Šz>ëÖ­Ãb±Æž:UrqäÈáGc~_g4Ý]ÒÕ>ÈöÙ¡KLáÁ'¼ïù¨‡MÕß–\ðff°§b[`K“µ=ÕD×úÉ;/ Ûûg(q)êù”——#"JxxøœÚÚš¿744†µ¶>šuÇysF½ÓxôNSWÝ¿û÷±£b“cbbHKK{-ä©·üÁÚëŽžÞø£ÓZìÓQš4¦xHÚêìäŽxÇŒÉzÍçó½UUU•¤Ñh|½½½iÝÝݦ˗/ëm6Û¢}ûöí,,üüŒßïowwºg™L¦½^ßáñxVO˜0¡X9Á¥÷ Xûõ}/Eé‘_Uߘ}¥ôÄ¥°°ÐL£Ñ˜×ÒÒbhllÔ›ÍæÎÈÈÈ@wäÈ‘Á>Ÿï—@Saa! !ùùù;ËÊÊÒãââZò ©è.[×·TôÒ3SCóØ@çÕ+m7¦L™è¨­­Í­¬¬Ü¼|ùŠ„¨¨¨5555zµZ»¿¸øìê¾¾ÀãÄÄÄ€·îN«¬þ.4$$ø«#Fè].× ‹ÅryíÚµ¨¨*}…c­ zx<5’£g-é fG/ݱcG’ÝnÎÉÉùÏܹé­cÇÆß·Ý3Ó̲}—¥/vt„Õ½uã¦-y[ŸíÖÜùë¿êïÖ,™7o^MDD„ODü: WîOâ®Ì 3ÕéÚÚZƒÍf³øý~õ ­EîÇM={¥<·ó¸Ë>¿|ï&Co¯ª«¯Ë²¿´Åá++s¬ìyDË$U 4"üæ½{÷;s³³³]DÃõzè‚@k‹B¯¿OCC½’••uåÐá÷ž<¶½øÎÃ6C}ù÷Æ·ƒ‚¾©ØAÑæh<è+}t•ùRK÷äáK¯žŒh\µjáÿœN'‹/FCKàǤ×fÃëõª‹ŠòJ׬ùÝ»jßÁ­Z1z½e;7ÜÔs°dµA´ÿÐÁÇ~CÕ#Ã@5!øjÊØßÞH{Ù«(FžW…ð´ƒÒ‡6È@\ܯÈX0²2š¡â,pƒ»SQV ·– û»T« ôÉf™ô-u[¼JÜñg¼¦!Ú t€Uß¡ELôx_ssŠòFp¾ëá~¥t­ݸ`JrR8û°ß/‡x1'Tê|Nœ*’“=.\ó€ó‹j"Ìîæ `ë¶¡Xö8èr¡iÿ\>oL垀˜Û¿A5y5ß~ûã[ŽðÀŸ@öè‘{笠%°w¡ˆ<µëðiˆ€8WfÈÆ8—˜û—’¦išš/#@äö@î?8œzÈ—4Hz@Ä¢Ém–ÆôÍâŸ5J$Õ.’>Tz>H—33?”•¡äM•È”§lõˆ,Ÿ+íi.EZÅdátݧTePÒŠ)ú>4­CúÐj¡µ+”o(I˜¯ÀŠ;pøÇ¸:^_8Z]ŠòÉ ÆcßDJlR¿l‹Œ¾-+ÃûdšN$I'2]/2/Dä={§ü×Q#þÿ”}1Ñ!’¢qŽÎ@äÐÀ<;Í"TpnžÇoÐòe0]~Ac€h–IåhçTsCËŠÞ¤Ô¯°Áè%'}mÍEÊsü¤žwÉK—ݣܢCÄ‚Èéñß‹üÍ&òÎO„ËVDŠ­R=ý„ÌЊ„!’eiY±Yâ_ÜxÁ¯âùx8— t:ÈÙq^bã÷`ÉØCÅ<%ý…™ÿt ÿ$Ü}lttEXtCommentCreated with GIMPW%tEXtdate:create2012-11-05T13:50:25+00:00Ýzùg%tEXtdate:modify2012-11-05T13:50:25+00:00¬'AÛIEND®B`‚./4pane-6.0/bitmaps/hardlink.png0000644000175000017500000000253712120710621015423 0ustar daviddavid‰PNG  IHDRP.ˆçn.aPLTEÿÿÿíÒÀÇQO894„µ½uª³p¦°Ž¼Ã‚´¼˜ÂÉ¡ÉÎs¨±‡·¿l£­ˆ¸¿t©²‹ºÁi¡«…¶¾²º°ÒÖ|°¸¯ÑÕz®¶œÆË»Â ÈÍež¨`š¤w«´x®°q§°j¢¬h ª{¯·n¥¯W“‘¾Å³»Š¹À‚´¹G…Œm¤®´ÔØ*./3 9?YcY”žžÇÌ%`j E+/CJ,is„µº˜ÂÆ\—žY”›“¿Æ™ÃʦÌÑ7uB€‹>|‡q€ÜߣkÆÀ9ZŽIˆKË\ÿ°JFÞÕí\:-¶Æ.£ƒ¥ó†nñã1âùøã;U“Ì•Tƒ´²t€…ÙöÝ9O8â½_BÇLMÕÿ´ÑPÊP³Õ³ê+ä7gƒgvW[ôs둽Ö䋿à‚>ú7åñxPzOÆuN¬äL›ºD JÝžý|Zž€ÿµßî •£Œºó”§àcø³>‹_Ñ41@ߣRg-œ$Zžˆÿõ/|K¤Ý}ÈIEND®B`‚./4pane-6.0/bitmaps/photocopier_5.png0000644000175000017500000000263412120710621016404 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)()-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYVUWyWFii`\\fffsmmxwx2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜˜š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüü”æó²GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHwIDATxÚµ–r›8†®IMI«^â¶"ñÕ•;多¸ Hè.ÐÂû?Ò­ØÛ”d®ÿx$!›oW»ÒÊPÿVÁ¯rÁ=ÿýüµRRI«$“R©,Ë”ÖÊÊ<£ž‹ŸDú¡0jZÓµ#£Ò¶ú¹Þ½ü»Û0Ë!àúøªvß ]<öuGH¿ÞŸ‚1|UùáZ&·S· ÞÚ™Ž¯ª%—=îù.ÃØ†îÍT|Uÿ¸ü¢~î¸[>v€¯ÂÌä#tÖÙ€¥¼ ä~ê 4+r;tÜ ñ¯þ"—öá‡8Õ¯“Šôe^Ø‘—™í?Ð|ƒ€~O• DU‰ÙR<–û,Z^/?Úá;s¾€÷Çž÷³=~)%Äóf‘,¦dV14&=°g÷'jfPš@Ðà9CŒñÜøçùˆûq)‹²’zôeْ̡î–~ÑÐc@,~N_6l¥nf³h%m“$v´+¸nè%.ßä–Þ9?Ÿã!@<Ÿ¿~®w5êÜT :ß’ï]ܱˆwþ,¶u^êdíuVÕ¶oF:[¡…²Ùù6«ú±qw#ô_ϵiê¯ùdv>3Ùï³öÉÀ11àîе¼»²õªû¾)u296ÏpÑÔ;ŒLJHƒp:pÞÚàÃÝ‹Z úUï›\KäíØ¾:mO-0½q_7tmS‘«­ò6ùf™ÍKGοsv—tEaÐ|KQxØØœPF‰F,$4Ô£,Ž)BÄŒ¦L&î°a±u7ãÂÀF°Á×—„lÝäfO!ܰôÌψy¦‚nÄì£Ùܸ·É¾ ÑÎ àm`"¤ƒÃ™  !Œ K[Pß§3ß÷ÿ¤_Ï(Apgx»òÛ™»§¸·S®¸'F MIcÿ¦âÛ‰_è#.›Cp±÷2ïæ>p|zÊUQ*zñ0Ž_ÜK™æR²¼,¡Yvº~=‚¯?af[£]UŒãýû4Me.©(,é‘ëÔ£øº¾ "Ó}uô8>ߤdqïcA0xÉÐ÷ݵÎXl°º÷‹O¢CWöžùHÇ~x]]b!r¯êéøf'ª¨î¥pÞÍÊèåúhýüÛ-¾¯G…Ùt˜ÞØIÀ«Ÿ‚`ɧi‰èП׃øzrE¶¢õñÿ£þáo§J±6IEND®B`‚./4pane-6.0/bitmaps/photocopier_29.png0000644000175000017500000000276112120710621016473 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7JHHQNNYWWWyWBllfffsnnwuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜fˆ…†‡„“‘ŒŒ˜˜˜ ¦˜˜±ššª¦¦£¤º´¬¬¸°¯ºµ´ššÉ—È—™ÌËÁ¹¹ËÉÉÕËËÕÌÐÒÒËØÒÒÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìùøöêÆW GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHÌIDATxÚµ– s›8€ß9i˜ihÓ¦ÂñÔÁçP¤Ø¾Ö zÀFÀÿÿI]ñpÀ¦9;s· z!>-»«Pþ¯'Î_ƒcäø¿n>()¤ä¯ ¦É¹4¢d‚ÃUó­øÏï‚$M3#¯!ÑYúVíÇç‹´Fd]x·‹ÏV§âÃ0ýÁÒ}sÝ[é'â &м dö@M«÷d‡~¾€¤(ŠÙ¿ XÞÆ§à ¦ªñæžÕ{~xxô¬ràGtC¤‡ »ð%júãb2.ñï'®CE_õب®6Ë䀕„&Àdå]tv×t‡g_€ófŒ™%<ÙÛ¾ÅÛþH®ð{ˆß.´‰åŸGɽrÀÁyt rz±lN½Ÿ«cÕu}ÿŸˆ±wv–œS³M¤â70tt´c_8»¼¤HϽOi/­ìe^­gÏBDB?ÆóÚÙÙ÷.íÒbÛ¤ïÒ–ÆRRHy„´ TD° BŒ›ˆ„5$ˆ"Fê/˜BDbÚ«üQQ %i‘¶ÔÒÖ­RÛÒçv·û˜ÇzîÝØªøÃ›œ;³w¾ïœï|÷‹ÅàÿÌY»aßÙL†aàü¡ýxÿX™ýóÂ[MY‚ÙRÇrªÃ/"Å’'1¥CSä"áà‘϶ùæ"|$AemC’'%ý Y²îdxžƒ1PðGQeeTMƒphæØøÐÀ+§öþ+AéóoxS³]M¦b‹$DZÀ¢,ŒKÑXÕbH¤Bp&‘H´s¨¿³ª½õðÈœ…ëöxÝiùß‹¢XdµH ¸AÀ²Œ¾<D*Õ PT1H¢Èò­©ÁžÊ® GGEÀ¿räÛÆÛ¾;¯I Gƒ¥WZ.Q"¹jZ\þh4 j4t¢íãÝ»ðVI$`¶¼óiavɲNŸoîÞE͹YÒågxaA’ƒÎDüU¢æ@«$‰(r<±±âºíºH.¿ûäOÇ]î¤ZAà›‹—óAàA¨}v)D5‘"Ñ~`éóD ªˆÀ€(0 ½jª“ã'«Ëó_#¹Öú¦_®9œÎÑÄÃíž;pãÆM,fØûRÜT€Á^Ÿ †¡²(%oGŒÝ“´ãøÕ«.'Ç"™ÀÄÇ« cíB¼×Ò›)F—(†ŽaaÿÆô?+ûPTáûc}ë+ò*ðÑèƒ&om¸pÌ›–¹Ùn“¨L$c‚çu˜ ÛÍÁw¿ÁÏ}tñÒ\7<]– ‹‰î ýx¾ijïííkÙ±~ÅN£ÉÔ¦OVo«X¾©î"! Ù×$dä$‹`G͉ƒü!ì Üæ‡à(MÝ4æÃ'Gß_óe󱫉6%uÎßtðüQoFNÍŠUðäe)Iü°‹/ŒDUp"øÊ|'}NEÀ±”‰é0twwŸ{sKå\:œ¸ÑÈÕ–^¼¼¨ª¶á´Õáʲâ&(qû ñ²¬Âjì‹CâãnÒ3Ÿ „axtÂ×x`×ÖŽ¶Ë·pi ñ¨0ªp§ä–¯ÝùáI‹Ý™e‘Ìñ  )3“ÍPˆŒ: 5có'!›ô5î«­í¹ÙÖI´ÿûag †'%wñÂe›ê_OÎ(xŽdnÂ3‰œK¤ˆZYDVpÇb d¾ž®/Î6üè÷޶ßðýqr°>ò{@âÄðæ,}¦¸¨jë‹öy©%¢Õ‘™‘l¯Ë *fðOößÿó^ûåÏO¹~©•dM¾S‰àsrĬ!¦å–9Üëm'@]g2÷c„ Y‡Àø|D½*^ßõt¯é`QH…9>úI¸8öŠCÅIEND®B`‚./4pane-6.0/bitmaps/bm2_button.xpm0000644000175000017500000000073112120710621015714 0ustar daviddavid/* XPM */ static const char * bm2_xpm[] = { "16 16 6 1", " s None c None", ". c #646464", "# c #a0a0a0", "a c #c8c8c8", "b c #323232", "c c #969696", " ", " bb.a a.bba ", " b . ab.c.ba ", " bbbb a.baaa.c ", " b b ... a.. ", " b b a.c a.. ", " bbba a.. ", " ..c ", " a.b. ", " bb bb bb.a ", " babab cb#a ", " b a b a.ba ", " b b #.ba a.a", " b b #.bcc..a", " a a #bbbbbba", " "}; ./4pane-6.0/bitmaps/toparent.xpm0000644000175000017500000000070712120710621015500 0ustar daviddavid/* XPM */ static const char * toparent_xpm[] = { "16 16 5 1", " c None", ". c #000000", "+ c #C0E4CB", "@ c #808080", "# c #77C490", " ", " ", " . ", " .+.@ ", " .+++.@ ", " .++##+.@ ", " .++####+.@ ", " ....+##....@ ", " .+##.@@@@@ ", " .+##...... ", " .+#######.@ ", " .+#######.@ ", " .+#######.@ ", " ..........@ ", " ", " "}; ./4pane-6.0/bitmaps/abiword.png0000644000175000017500000000252213205575137015270 0ustar daviddavid‰PNG  IHDRÄ´l;sBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<tEXtTitleFirewall®®tEXtAuthorLapo Calamandreiß‘*’IDAT8Õ{lSUðïém××úÚV¶±•v®0ëd©À ŠÑ„ Ž™YÔÝ?‰¼4üáƒDCÐcPd£ÁE!!«‚Qé"0@`2¶I·u·¯­ím{ÛÞ{î½þáF€@ÉùëœóÉ÷wÎIñù|(T^o·ªém'/`U²jWæôŽ? n *4éïî&Ô½û=ó—¯ßJ…œû°—Ïä·Ç¢’äET–”"y'ïÞf-Çêvj"¿j2ë”Lž"N’¼(l‘Ïí¹qû%ÔžH4uQ¦ØYè.³I·„ºÑ5M.{ù ›!€¢LÄRcö‘ì›×p\§D%±cdtR‘$ÀfуPicAXiÇŒ#rE|"E(÷q\§tû&ýÕ½=I.} O!’વÍá]ÝNּ训4-K‰ ôE ÆÙIš£¹ý·£Ó•§âÖ@ Of̪²AÈçoI}¦:æÌ¶c‚æxð|öHYàöN(ëX7ƒHtC./d‚cQ´0›4kÕ/XoýþnRÄ`½É\¬èŠT C¢ÒÞ›±¡ú§µ‘ò¶çÃmGkŠã×—dÔªªP2æ0¯¡JG€ ·À¬ûÜí¬.µE9P‘‚ O\ëûªý'•¶.dËžûÔž3³Oz]›Ö/zfîl;Ówi¬g"•Z˜Å7†‚¨°[ Qqí4¬Q’¼V‹YAB,–„,ÒósÛ>ÛT­iŸç®hX2ï8kJpa€Å]¿±“ÿfuüÈA0›_îëÿ›ÝœôÌr[ºf–,7VFŽgþ…EêÕêõÈR eV=xfµ6Î.oõÔW"Keœ¹ľ®Ó9Žãw‹ºª…#üt2Žë”$㪷Oýþ×÷:fhNöÆ—èV€LÅG5Z-iŠ™åV´4Õ"”ÈâЉ~üyy‰×%@ØrýðöàT—&ÌtÇ€ÿWqõ®³u•æù²,> [í÷ûÇÊÅ׆YOi™ WÇñɳ²)!Ëã#ýG#ç ¨P@0 €`àHþz°¼d>!Êòé3ÖGÎü®'3YÅht¥’ÈOd#ýg’ÿ\‘Å<P<…ŽL¨Ïç£ÓGá÷ûlôÒáÚ<óG“Å2î÷ûµ€€ À‚)$  25¢Ò>ŸO¹Ó›žÂš CÖh4ž"ÿõ™þßú,µËWöÈàIEND®B`‚./4pane-6.0/bitmaps/4PaneIcon48.png0000644000175000017500000002156512120710621015565 0ustar daviddavid‰PNG  IHDR>0Æ©^c pHYs  šœ IDATh#ïÜp޽Îè$þ û&äÖêõú ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ î÷ü,ð%Æûûüúúúýýýûûûþþþ ùúùÿûûüþýþ÷÷÷!Ýÿÿÿÿÿÿÿÿÿ ùø÷ÿøø ÿþÿÿùù÷ ùùîííþýöþøÿ ûÿþþø ÿÿþþþÿøýýýùùú ô÷ÿÿþþ öìûñõøùôôÿþýòòù úþýÿ÷øÛõûþô÷ ÿÿýýýéêêÎÏÑïø ÷öôñìå ÷ ÿ¾¾QNù õøù©ªªòòñ úúúéêêýýýþþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûúòðñ÷ïðïÿÿÿÿûûûûûûùþùîüî  þþþíìí ûûúþþþÿÿýüýÿÿÿÿÿÿø÷ÃÁãùúý &ÿÿÿ ôþÿèÞã òíïòæîýðôôçíïþþþûóð þç)ýýü  ÙÆÐþ¶îÿÿÿÿ$B9 ñùùÚìÓøøÿ ê "öòôüýüÿéÞâ!äêÙù þÿÿ1&&ë÷÷ßðóõóô rj÷ÿý÷ù ÿúÿÿÛê Òé,þüüý ÞÑ þ#úõø  ùöøöñôûúúûúúÿþÿþûÿýýý ÷ýùù ôðóþþûÅâ±Øþÿÿÿ :#ùTú   ÿýþÿ ÿÿýýýÜá®ýþÿÿýþýüý»Ó¯Ö$ýþüþÂÛ"Ž®ôöúüüÿÿÿýþýûüÊÕ”¹%ÑÛ¿Ï ÿÿÖà£ÃÿüŽPÉKßm:è)üàê—²ÿþÿÿÿýþþÿÿÿôööøôö³ÃŒ¥ ùû¸É þÿùûž·þÿõö> ì˜UìP-ø×â ¸ÆÿÿþÿþþþýýýÿÿÿýþþÔÝÿÿìñßê ÿ»ÏîóÿÿÿÿÿÿþÿÿÿþwCó5ú¶Ç ÿÿüÿþÿÿÿÿüýýù÷øþáë üý½Í ÿþþüýýp?õéîæìüýýðóóçììþÿÿþüþëãçëãçùûöù×â òöùúúìññíýßÝóÿþþÿÿþþþúûûðôôþþþù÷÷ Ùá þÓá ýþþîññüþþ þþõðóÿÿÿøúûýýýÿÿÿ Úâáç ùÇÙþÿþüûû   üýýÿÿüûûþþ¡µ þ÷ìóÿÿþþûüüÿÿÿÿÿþÿÿÿýúüÁÎÛâ<-ö÷ùþþÿÿÿüþþÿÿþùúúéííýþüüûíçê÷ù§º ÿI6òïôþþþÿÿÿùùùìððÿÿÿÿÿüþÿÿüýÿ ­¾ðóQ@ù þðõÿþÿÿøü ÿùöøöòôúùúûúú  óöù úùöûù÷ø þýýçì·Æ ùL<ùúõÿïôÿüÿ!ÿÿëôÝìÿüþÿ ÿÿÿüûüÿÿþýþÿÿóöö ú÷ù ûúûïé죶 ûüN6çÿ ïõÿðóó ÿ‘ üþ/!ôùñìôùúøö÷úøùú÷ùûúûÿÿÿõùùùúúãéé ùÑÛÌ×+"ü2%õøôÿÿîóþÿÿÿÿÿïóóô÷÷¹Ý»Ù ÿaRÿ  óüøÿÿñìð   ýý¢µ `L÷ýþüýïõÿíöþñø¹Û¸Ø þjLç ëîîüûüù÷ù ¸ÈãéA3ú ýæÝû õòùñöæñg©9'ë[Fô ùúù  þþþûüý  ÿÿÿýþý Ùᦸ ÿXF÷ÿÿþýýïóýþÿ9 úD)ñ Æ (þþþ ÿÿÿõùùÿÿòõõñõõýûü Ú∡ ûüSBø ÿÿÿþÿìñ,ò&ÿýÿñÿý þ*(üÿë÷øßïýýý ÿúùùÿ¶Å«½ûüýH9ù÷ôöëð>"ëJ+øüßúÿûþúøøæìì  ÿÿÿüûûÜé ©óõòõt‘üû*öù§Ï¹ÚÿˆMßùûûâèèÿÿüûýù÷ôüýü ÷÷÷ óõ ÿíõöñôñôï÷ ýÿÿþþÿúüüðóÿÿíèëùöø÷óõúùúúúú   úþþùýý ý#ûÛä þ*÷ýüüÿ  ÿïò  5+ýÛä ÿ)!ü þöòõ  ÄÐô÷ ü5î:" ìï  ÿÿøöøöñóúúû õþöôõûûû,ePA4úäØá(!ÆÒ ÷V0ä1ÿ òþýþôòóôóô   ÿõöýý  $"ú îëóóö ûóö úùùÿø÷÷õòóóïñ ú÷øÿÿ ûüôüõñóôòó   ùúýýõúÅÈ úÿÿÿüùûÿ•« ÈÔ ûÿþ øö÷ÿýþý ÿíò ûÿþýýÿîñÿ üüûüýýþpYöþþîçëù÷ø÷òôýÿþýýþúüôîñóîð  'üæýó$÷ôüðèõýÿøéûùôõþþþþûýðêîù÷øôîñýýýûüûÿö÷öÈÅÅüüüïóó  ÿþþþÿþþýý÷öö ýýüüûüúöøÿüýúüüñõô  üûü N_MIDATúúúÿÿÿíèëçðûùù÷ ùôéþþû  õýýùý êôøþ ôúôÔ ý "ýýñññûûû ýùûìéìÿÿÿñññãÛÉýýÅ ïððþþþÿÿþûûüÿÿÿþÿÿúúúýýýüýü ÷÷÷üüýÿÿÿöf@Ì#®QçIEND®B`‚./4pane-6.0/bitmaps/4Pane.png0000644000175000017500000000521513205575137014612 0ustar daviddavid‰PNG  IHDR0&‚sBIT|dˆ pHYsëë+l×ÂtEXtSoftwarewww.inkscape.org›î< IDATX…Å™KŒmÇU†¿UUûy^}î½};÷'ÆNœÄ‰Œ…Añ,EHIÈ0BŒ"Á0HHÌ` ‰(L1ˆ‚<Ê$H Ç Ø À­ñKŽo®¯û>úqú¼ö«vƒ}ºOï{Nßn"P–ttöÞU»ê_«V­õ¯Úòõ?ÿÿÆÇp’p$"rtÑü!,O^Êâ^NvàZo­î”·÷.3+S<~ÙèYÜ_¬´¯>ó‹îÍ³ŽºG¨ Ì“›#¼†sM¥ÞyD)ªªÂ9GFØÚ!ÖÖÇ}Œ1TU…ˆ "hc8)<ÞySÅŸ@»Úð@ÛIeAð ‚ÙHûØ`Š1eÑ18[r9“•ŠŸÜQ8 €ë[[A€ÖšN·{rAþÏåƒ?d:ÍÐZcË6)PUÄ{o]ç©Ïîcm±6'/f¤*ÆH€ˆà£®-£9Uíq.@³*Þc´&,ËÿGøàê[ûc·©+ÖdØÚQ;‡|ëÅoùhsix‰ ˜ŒÇ誢LJl 60¸€ó%mû;çPJáœC)uÜVûšI=!tݤÀîý]’ªÂ¦)AÇ1Þ{Dk-J©ÖëÄÜ0WÉ㌗^|çàÆõ”ÇoÄÞs¡? ìNуkˆظ|ñL«Mƈe^PåQ£Íôö>dÀáḋû#¼‡+››T“q£ã‚ðòJ+’^‡ ÏœkïÖÌÕ ÑÁ”ƒ»=„O?vÏ|b€Ã¢à¿ïþˆdØ'LR:ÃþCš(Ñ»°ÁþûTYA”&ˆVD™§š9ö«­zBg¸E¼iè§3ûlQ¦Óï@™ØÊལ3èµæËÇ3L` Ú$<û 5Fu¸zi£ÊƒˆBÁ™PZSæÅQÔCi… 4ûyÄö͘Þïãë!¼ ›Ýaç¿zÑ‘¦1ç 0J)´RTÎ’&ÑJ'c,ÎÕ¬w«r0þúÅ üþÆÇyÁ;Ï·_„í› ˆÇûÀÇyõfÎí#a®ÁÔÂ'"h%ˆ*k×kê<¶¨ ûpðß}5â•×{ÜÜѼñhÂç)©ðÂ÷†lßLèÅŽoüö«dó+ìe]þfûoÞ]ˆ÷ïÅ|矿õ\Å…Áù ¦¼÷‹$æ©êz½ÞG˜‡É«Û!7wtæND^*Þ¾ðÚuŽ×¯—lurž¹1çkÏι6hϹýNÈ;·ô¹ÀÃ"¸×Þá=§‚ôxœ?Û"'ðþ8`ðÒ=²âD(ôMTwÞñÜ£_y*oqg_sóÎjØ>U!4ðÔuÍh2a2Ÿ·<¾ÉÌ5÷oí0OOLŸ0Ü$3¼·“òï&­>"Þc­eïð/<¶C?^ÎVV­Ûþ+GéÁ{ŒÁa´Ò‡Di¼v ½CÅí{KK'aͽÑúX® * CÒ$! Ú««´¡*ªs)`¼÷”‹¬—Æ1ýnwÉF¼o&KcÂSÀ¼üï!y¹|oб¸5^çzñÏ=S±‘j¼?ó5Æ4 TuÝP‰SPJŽ Œ¬~ðVÀöÛíIžz¼âÊfÍü ©¨æ¹´ìÑ k6»–8ÈpmCñ‘¾ãÉ«s¢ðuÐ%ˆ´9 ƒ`™ÈjW¯”ˆGâ=xç(+áßîðÃw õ‰´0èzþà«3ÝlÔl:g4¶ÆøôÖ˜¯>=âÆð}L}…~§C'nãÜZnO#ëp®ÆÕ}F)y$­]6™Ïñ" »mÞìêšÝ±æOÿ²Ïd¶ªdQ øÍ¦Zs® FÓ¶ÿó΀?û^—o~å}¬sìÇDAиG'gÕÁ-¢  —&äºDK°’È*kEˆýŒÈx&krg^ÂÎîѤë'Ï*EÇ ÞB‚tx)¶VèH1ŸÌpÎÑ»¸A•ØÒâtÆã â,ín”±I‰»é): ¢iñäÏY¾¿Òëx.öÝZàl2šßÖ-7»Ô)ybË2ˆ7O™ˆÓ„(mb§÷MjꑚtQ+Ÿ”3‰·Ñ9®¶”yÎóOïóü³½^£Ö€`¼;¢iƒßù“õ r÷ÅÏîð¥ÏX`ýÁ€‹²,ÃKSNF‹ß‘¬ 1g*0Ël\N%\X¢´@Éé¯)£¹¿[Q”m ûñúrõH ›wRœsh£)fa#ë,ur¾³8[Y²É¿Ž#/¤²BQ›tVÚ’p}¹º”¦.·•%ŸfóïÏ.jÎW»I3¸wœþÊßÿKȽÝïî¬fóF3â{Ã5@„¸“ r¶}ÏY|zÂ8¢iøÐ^ßý~ÄÞázòÒÏZãì$¤ý.Jÿyà4¥8Oéñô–ù¼Â†2/pµÃ%Ž88[XkÛáYï<´U@TS¡¹ºf>ž¢´F)µ¶äûò¯åÌFÒ~ñî>UQ5G‹8ì¡¥~ȱ Òœ?Õ•%›ÎHû]Ê,Ç–Íæ—†‹ã}CmD„²(1Óé©çA󪢮jÊѧ<œ#‹“¼uõq `ç$e‰÷,Sˆ4áñÀËZŠ[K–å˜Ý1ÖVT‡nV5 , šækàñÍæ!Ï‘ïüí+^â+X[Æ=ªbŒR¢t £ÞÊ„?K‰tI}ðÆâN0Ýáu¤ó±]®ý `_ŒRtû²,kîç£[0ýtƒi÷PÙ AŽO.dñáϳà0®¡Ð|{;/YÓJH³wšcäXöf;° ÿÿ=‘Pp½—½IEND®B`‚./4pane-6.0/bitmaps/floppy.xpm0000644000175000017500000000161212120710621015151 0ustar daviddavid/* XPM */ static const char * unknown[] = { "23 24 13 1", " s None c None", ". c #000000", "# c #646464", "a c #a0a0a4", "b c #0000c0", "c c #0000ff", "d c #c0c0c0", "e c #ffffff", "f c #dddddd", "g c #969696", "h c #000080", "i c #003fa3", "j c #0000eb", "h.....................g", ".ccchdddddddddddddhicb.", ".c#cheeeeeeeeeeeeehicb.", ".cccheeeeeeeeeeeeehicb.", ".ccchddddddddddddehicb.", ".cccheeeeeeeeeeeeehicb.", ".cccheeeeeeeeeeeeehicb.", ".ccchddddddddddddehicb.", ".cccheeeeeeeeeeeeehicb.", ".cccheeeeeeeeeeeedcicb.", ".ccchhhhhhhhhhhhhccicb.", ".ccccccccccccccccccicb.", ".ccccccccccccccccccicb.", ".ccccccccccccccccccicb.", ".ccchhhhhhhhhhhhhhhicb.", ".ccchdadddddddhjcchicb.", ".ccchdaaadddadhjcchicb.", ".ccchdaccdadddhjcchicb.", ".ccchdaccdadadhjcchicb.", ".ccchdaccaaaddhjcchicb.", ".ccchdaccaaadahjcchicb.", "g.iihdffffffffhiiihic..", " g.bhhaaaaaaaacbbbhi...", " g...................g"}; ./4pane-6.0/bitmaps/photocopier_26.png0000644000175000017500000000272712120710621016472 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7KHHQNNYVVWyWBllfffsnnwuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜fˆ…†‡„“‘ŒŒ˜˜˜ ¦˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÀ¹¹ËÇÈÕËËÕÌÐÒÒËÙÒÒÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìøøôà¯bFtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿi–DÐbKGDˆH³IDATxÚµ– s›FÇÚZ5ãàäZGÉIVªž&Á‡$7‘ ÷ å!øþ_©{ÇC aäiÿˆ{ æÇ²»·Tÿ«à’›¿?À9z#þ¯»ß¤ø1þbKc—ÈZB˜V½?}÷Eg9*Å#¯VE~PúVë™<¤ù©Š¾Ø¾àza’ªè=é—ãK:{Lóð<†xH? ô€‹t@ìŒî;ÜÕÜ ñ†¨b€ÎÇf|=sªñ,q;J#G" °æGô>àýœø\›¾™n’Qn1èVÛÙõp-:|øèS¤BÂ!˜Nƒð6ò& WÛÕx_pÕâ9qÿ´ë/¢„@gúänˆ&=P6ž§cm_oAì[’üšÄù{b—´L”ü;Öøæ›Y4©R ÓEuµáÆ-¼©ƒÚÐñ=KO¤Âª!#Ö1”Û]ŒÇ.6g=Ó l߃\,°< ‡/Þý,ÚºTK)cÊG÷¬iÔ·½´tt pÄ;?ù©•1=Ñv‚÷9(eÿÐõÙ(Zbïþfà¼o»¼2Æ›Ôè¼"ëÚªKG¼0E6ÆÜfhÊp]z¥ÛÖÁ¨òÖòÃ*žîmåŸ6hÙñÑ3Z ­ušeYšÎ<Ëš+ºÜ—ÙÁ7ü»Û÷;FÓ¯Ž8-»v€’LŽdù¾°·¶Ï÷¶+ì\ÝÜp•’~ßöÚúR,Ÿ…ˆ´Lc±áuêÏ\¯z_}ÁÈø&:sWŸ”ö¢×¹÷E‘š†->\§z_UO¾š.p’cêp¢?™\€<{øáað‚¿@Ûkl|¿ë”¥‡'Zü.xi˹¨47_c]²^_oV‡˜c!rï«óñ6“U»Úõ|T'ó·R"˜<þZ]€ÿ è®"%ýµm—¡bãìÀ«.Á°âçià2„×>•F×ÂE¢Õ…øÿPÿï ¬qþ¦¿IEND®B`‚./4pane-6.0/bitmaps/photocopier_36.png0000644000175000017500000000253412120710621016467 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7KHHQNNXWWWyWBllfffsnnvtu2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ ¦˜˜±ššª¦¦£¤º´¬¬¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÆÆÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééùñìÿÿÿt½?ÐDtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿqÒbKGDˆH:IDATxÚµ– W›0†/ljå(jδg¡ö¬KW1‘:m…¶ÒŽÿÿŸv¾[Z‹g{Г77É ýWAÏçŸ}8FÄÿ¼u”’JEµˆL1ŠT®DIi Å~²Jså¿«uy_Õ­>êþäì± +µ6GZ^æ}ñ& ¶#’ô]!½'þ:£ÞKÒôÚ0_+Õ …×ô4qY“vÚ¨¼[^v|N÷}µî°»ÕÀÓgeÝxv…ݼ'›¨=-<ÍF'Y'àzD\wXà éðº;ªÓÀ;o¬®q…_.C%±mú¢{>¶ç&¨i0½åµà´ÄsbÇe—¨MëÑçË÷磉Ì6¥@)nNâüšÈbi«_!°ŽôÑ(ö™nÅ ÃtÆ 7:&7ŽDç¥B&0hRÿ9Z,¢ƒzyƒŽøñsrøøò³,“Rž‘ôi¢~g• µ‚6CñÖ'×@c×||ÈÀu×!o5)þÊϤ2R›šÏ M?ÕæõÔPmé‡rë󯾘O¼+spž’ó.ot¹¼7i\¯í£ [G¥oÒUˆÓ/?° 6ÉÃc<?¨§ºøc úì4wQ¬Z`ëÈl6\U£«­ oýÌzÆBG_Ý2)Œ]Z¦ˆÊ(q®è„y„ AÊ‚€bIŒ†L&–xa1/Zv;žn…ÏF„4¬£4\³&ôʯˆ¾§‚Vb¦‚QL0fNKù5öÀvJ#®Ët°™ 4­kM¨ã ©3p¾Ð‡+J\6¼ßëÐêHîE• n5ôü\N.„0ö;âr&'9>YÜB×ÖQÖ}sáôâÂཻ=ûu©É[,ÃXI§©•OƒÈ³ì>û†#ãêÑÙñ¡Ô‹rÞÂ0”±¤ØK0øÈ·­ì >Ë–73ýã[joXL;rB¹’É›Sà%ßCïÚk­Õöºh`µª{dð‹Ù¾-»£¾þÛr^S×U¸`„iǾώǃTÛJš«5Žë;韽¼ÍzàovñµâfRJÖœ¬Þ‡)?NSŸû‡>•:×B/Ѭ'þê/Ø’’Í߈ÞÉIEND®B`‚./4pane-6.0/bitmaps/photocopier_0.png0000644000175000017500000000264112120710621016375 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNN[XXWyWBllfffsnnxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÇÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüüQ*6LGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH|IDATxÚµ– s›8†zù0“’žÚÄSÙñÔ'wÊI‰KH@î ­ùÿ?éVÂÆÆ®iß!„óìË"­ õoù½ÇŽÑñÿÜ|TJâG¦RÆ)žUš¦Ê /µÞŠ^FËå²,K}l¶U¹Öò­îÏ.þ^–Ûª¶{‹7àWµÜ[äj'š¦/vüÿ¿Z½§OEËëáÅ ýDüj5㲃®:Ñz—£ù'áWõq”}爵|4ôžâCx–tà«€ÜpÙMÍ:Ž¡ ?ƹ¹ðaLBž¯G¾‹›¹*ÉyŸÍGMïjÒâÅg /I&Ñd] ÇóŸ€-]ͳa —ðMÁ¹Ãsâÿ¥ üBB 1ƒ£‹a”nóªž ˜™”0Ëö‡¨Œ@hñœ Ò­ð`uí ÅãŽÙ¶Ýô>›s‡®ktBB|4í Ÿ€ƒ-â´UœÆöÔ^·=Xpfüg¾¦#~2ÁE€x>yÿ‡…kå¦ýèU µ´wH»ÞµyÀï½ -7³üBû‡&XQ´qí=}í=¥Ò¯:7oµC?׿kûXV™ùCÿ™Ä’«Ö[rÓæp÷°A€¿CÏò—;S ¤…uœ¹ÄêèÄhãàcœ'¿›™§ŸÁxÎ}Þ<5w³÷Á5îØ½ü:Ÿ+섽»jV-°&5kºyÅY¾‘õLm$Ü `ÿÌ{ÄNÏD]Q˜„´5Ž9ÂÅÆ&„2J‚k:eô3‚(› Š=1g4aB0ñ‚ ›ó˜MχNŒ°Å×cBì”ÌŒ÷Li¸fMéµé^}MmÅÌ£@n7Ûç¸g/´%„!·’G rð8t*Œ]C›Ò â|¢ß®)A° h©õ|ë÷÷f( `àØÄÁ*VÂØ‰¸¿ ªâŒ›[¤·Ð·u¸±/!œ_]qUUŠÞ.˽Ò!¦¯¹Lr•3YUÆ}–§#?¨àë/øfBS£}µëêXðš$‰”’ŠÒâUù^}_×/a¤Oß¼ìàRÊ)åú•L_¬—/ùzß^ë-ãËb¹±…k|íÛ²{Æ£bß ·;/v`Œ¿ý»úx˜U.•œ{1 êSðÌøqšEœú©Ô»N­OÄÿBý9 ¦µ¾ZKIEND®B`‚./4pane-6.0/bitmaps/DelTab.png0000644000175000017500000000144712120710621014761 0ustar daviddavid‰PNG  IHDRÄ´l;sBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<¤IDAT8µ•ßKQÇ¿gîÝmÝו5ÝÝt'ל¤´2ŒJJ¬Ä2ˆ¢"|+襡) ª‡ $±ìÒC!dQQ"E`PRºY”«,îéafmv×Ô]ðÀåÞ3sÎg¾ç\CÌŒ•0%Û„ŽââššVbFDtÈëmJ dæe¯fM«z¼§ëCûUµÄª–:«"‘éÓ>ß±dlV`âb p#j|[ׇšÝîÀ9¿ÿÚ„að]¹»°0”8 ¿ öD ƒï‡BŸ¿WVò€®¿jµAs[pÙ ½ùa<‰ünõx¶¦Çd}yDDÀ•]ªZó:J©vx½]-šæÏùò½§ áó~oÔ0øVYÙóz·;˜“â¡ÕG»zW´RÈí°ã«W/†5#|öÅ%®ßœaimùù¿Ù7Yg¤\%˜Q)bP.E,½šãÚ•ïÐh4xøà6²}+j£S\¼ð GwÕ˜>yŽÚĹƒVs¹¹§üõð'OÀÃ?nÓélÇö=N³ÙåÔ»/)Ñjm’RÄŒ€(Ä9×:{îlõ؉Ó>s‘©ÉÝ -R (œæ9J)”QŒ%‘Žè›Ž>Ö…a@¡#ŒQÞ82ÚFÒ4í½\\‰•(p%þì)k-¶°XkA)°oSAp`qˆ(l‘#¢¥HJ%þJXÚ¡’ñô IEND®B`‚./4pane-6.0/bitmaps/dragicon.png0000644000175000017500000000047512120710621015414 0ustar daviddavid‰PNG  IHDR**•SbKGDÿÿÿÿÿÿ X÷ÜòIDATxÚíšAà “þÿÏ驇"¡°kc4sÉ¡²GÆ&)Ç[s]ÿÏxÎlîžayú´ýb‹ ÝÒq»8w=rö÷y>Yjæx[aTæCò§|Ñ ]„ŠA¨„ŠIš?<\ñ mªrŒiãì‹ JÈ-2ú]¾Ÿ¹BÝ[ztý¸8LšÕÇ·¦ ¦¼síUˆª§e}¾ëçe®P÷]•8ä¸ÏŸùë÷Ðü¡ñŽªçgYâ|¾Û„ŠA¨„Š)&T5lø×³á­ÿô/zžZ÷¢CQ¡?¸ŠcbËb›‘ÿ¦ôLNcöå…îIIEND®B`‚./4pane-6.0/bitmaps/photocopier_8.png0000644000175000017500000000261112120710621016402 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33('(-,7-551--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNYVUWyWBll`\\fffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕËËÒÒËÙÓÓÌÿÿäÜÜîååðééðïðùñìüüüÖcGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHdIDATxÚµ– wÒ0†o«›ŽžÙi”MIgœ5qe2¶&i„þÿŸd>è[ ÝŽ¾§$ížÜÞÜÜòÿ*8ðý,†.z!þW¿/¥ÂŠsÉ¥äsÝh)ýáÂÞ½?x{­K£…ëvµr_½Ôû£7?uÖê1ܦ/ÀorÿSËÇÐÇͦO[g¡¿Ùx¦–‡tRÓ‹Á:ã7›!mו )Å.†IåéªÁk÷|2 ÃG³Ät¬j‚ãO¿ø_íBLq0ˆy×Md¦P>õÀÐa}±v©„Oé{$ÜRÇQòsºl-0I@ñè?¡KBYü}}6Ä·¼“`Jª7Ѧ°®áG#½4žŽ>¾vUJʾש@%`î|_ŸWÎ#´ï½ -93‘W ÝUIÉÊf{Å¿éV«"ùí¬Ö}—ÇÆyP§€Ž/.×7ö2 ·} _‚ÿ„®Äý¥­âÂ'£·cCmÛÓÁ4«iæïÄ]¦9<€W8Ÿm{ª³÷ÆämÕlûZ·EàéŽ{O†¿<Ý®Z ªcCWÕX¤Tý§Ry·ºmHˆ°( £—SkèÈa‚ÑÉ“á„á&ºÅŒ±„à”0FؽnHb×áù°3FXâó!BU¢P“SnXc|†úö ™gÌp)b ö5…¸›7í‰Ö‚º÷¥±¦ƒG Ãcfݵ´1‚N‚OøûF\ hsÒèîÂk(î[Sf —´—´—a³Á"DÈï”ý<9Yª#*ìŒðóÆý¼°]…p|zJåj%ñyÓ© ¦ñC&ÒL’-žóžG~ïÁçWzfB[£}y TišŠL`¦×”Ág<ö½|/>ÏïÃØtß½;IöÙMÉø!Øâ9k¡7íµÞnlžVäú‘ÊâçqÛ‰ Á«âY¶w–0äRø—yw<ˆÝ…énUiËjEJÄofw€ógà?X¼¨P ”Õ ú7Ì›C/>†k]«bzX“˜Å{Î¯Íø¼sQ¶Âù3ñÿPªó_C«cIEND®B`‚./4pane-6.0/bitmaps/4Pane.svg0000644000175000017500000001456213205575137014632 0ustar daviddavid image/svg+xml ./4pane-6.0/bitmaps/harddisk-usb.xpm0000644000175000017500000000267012120710621016225 0ustar daviddavid/* XPM */ static const char * unknown[] = { "23 23 52 1", " s None c None", ". c #e7e7e6", "# c #dbdbdb", "a c #808080", "b c #9591a7", "c c #b9b9b9", "d c #cccdcd", "e c #a8a8a8", "f c #f8f7f8", "g c #bebfbf", "h c #646464", "i c #bdbbca", "j c #f8f8f8", "k c #e6e7e7", "l c #e7e7e7", "m c #b5b2c2", "n c #a39fb2", "o c #b4b4b4", "p c #afafae", "q c #a7a3b9", "r c #e2e0e7", "s c #dfdfdf", "t c #f3f3f3", "u c #ebeaeb", "v c #f4f4f3", "w c #323232", "x c #d7d7d7", "y c #c8c6d3", "z c #e9e8e8", "A c #f9faf9", "B c #c7c6c6", "C c #ffffff", "D c #e9e9e8", "E c #f4f3f4", "F c #dddddd", "G c #e3e2e3", "H c #efeeee", "I c #d8d8d7", "J c #625b81", "K c #c7c7c6", "L c #aaaaaa", "M c #8d88a2", "N c #86819d", "O c #e3e3e3", "P c #d2d2d2", "Q c #c1c1c1", "R c #8b8b8b", "S c #999a99", "T c #c2c1c1", "U c #fafafa", "V c #eeeeef", "W c #c7c7c7", " ", " CCC ", " CCJCC ", " CCJJJCCC ", " CCCCJCJJC ", " hhhCnqCJCJJChhhh ", " hhCCCiqCJCJCCCDgh ", " heCUUCyrJJCUUAAGhh ", " hhUfttECmJCEEEEvEoh ", " hRUVVVHCCJCUVVVVVxhh ", " hhjtzDD.CMJNCDDDDzDgh ", " hRjGGGGGCJJJCGOOOGGdhh", "hhju##FFFCbJbCFFFFFFFoh", "hhCCCCCCCCCCCCCCCCCCClw", "hhsPPPPPPPPPPPPPPPPPPQw", "hh#dddaDaDaDaDaDaDdddcw", "hhIKWWakakalalakalBBBow", "hhPggTgTTgTgTTgTTTWggpw", "hhoeLLLLLLLLLLLLLLeLLSw", "hhhhhhhhhhhhhhhhhhhhhhw", "hhhhhhhhhhhhhhhhhhhhhhw", " ", " "}; ./4pane-6.0/bitmaps/libreoffice.png0000644000175000017500000000120412120710621016066 0ustar daviddavid‰PNG  IHDRJ~õsbKGDÿ‡Ì¿ pHYs × ×B(›x vpAgxL¥¦ŒIDAT8Ë…’1OQ…¿ûf`²h¤6­°E  ³#6»¡¦†„Ä($$¡21’°üù –Ê/ØY#1À½—bv&3»ãì½Ý{÷¼sÎ=OöðY9ñžP­;ù*GÜòw(¸f›46xa;¯’×XiZ¸oýØM£p,ßÙ${l™iì0£ ˼'®<².»©„Ï’pà‰ŒÎc %0‡—ŒUTzÔéû–Ä(Šá%€-Þ¢rÙJ`ߤÄõxͳ†J¯; :e…»ƒM0äÂÚ¬£rÕH8Žúþ§díB› Lzߨ!·_Žã“m8m6Ø’gýd³;EG¦ë!,°ÆyܲEk6oLˆˆ±–ÄÓÿPˆˆ}Ä  €<)alKåØª»Êîe<8/ê$i&©îkÔ1ä’K ^\^%IÞð5ÆEULû†š-M—TxÐ))€£ù–2ÓÎßFÈ?¼”ôƒ½¼hnð¡?dúœß|üù¼Qa(çÖ‡'ïÂüÙRrªK%tEXtdate:create2011-05-29T19:35:25+01:00—l!È%tEXtdate:modify2011-05-29T19:35:25+01:00æ1™ttEXtSoftwarewww.inkscape.org›î<IEND®B`‚./4pane-6.0/bitmaps/smalldropdown.png0000644000175000017500000000033412120710621016505 0ustar daviddavid‰PNG  IHDRç¨Ö&sBIT|dˆ pHYs × ×B(›xtEXtSoftwarewww.inkscape.org›î<YIDAT•µÏ± ƒP À3Ñg$V`f£Ë é³3À¦ù  ®üÎÍsd¦ëT7y ësˆˆMà‡±x‹?ôXXÑ)å§‚ßÌ´ã3úËaØ÷xüû± &=…CaIEND®B`‚./4pane-6.0/bitmaps/photocopier_37.png0000644000175000017500000000256712120710621016476 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&$%-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7JGGQNNXWWWyWBllfffsnnvtu2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ˜˜˜ ¦˜˜±ššª¦¦£¤ºµ­­¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÆÆÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééùñìÿÿÿà#ê4DtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿqÒbKGDˆHUIDATxÚµ– s›8†zM&%­Ú4Wáxê““c$ãôòÝ!µüÿÿÔ•6`ì±3½7F2yvµ+­€æœöø?)£Wâ¿_*K‰«§Âv‹¢(;µ½×âoÞÝ«ºÖÚØFëÚ~lÏ{«}[¿Öû·ç÷uÑÛ΀m4Àúd¼ h‰zDÖS§a~*þ'@­iò½wn¡ìÓÂ#]›”Ë=tã/7¬ < oé:MË^ÐÍžYðU4{ð,Ÿ »ý?9q V< ›i<À‡‰¹Üu]ÜdJïÈŒÀ2K.úÛk¾Á‹¯@ŸóRbä:MÅîZÙµr¹^^óžà¬ÃsþU*üË)!°uÝ_’´KêA™5ÀNP*±'qþÈnkÿ›ká`’Y– –‡Ùcî2> —ŒwtNâH*åéø•spÑ¥üá ËJÿË]úOGü|ŽÅ9|þþÎuå*’klÔ¯ƒ£ ¤U6¢—W)âƒ7±#W-Ç÷¬ª²/5ì¯ï`D?³ÎÛ¥Ñ>¢œÿPK×ÐΪþ²’¾w%¸í£«}zõ|ëê&ÄTu¾`ë=@úñQñZ }ÏqùùüA°fû ð ­v{+~·„ýO/vìÝ^¶»XÕ2­yîRQm¬Êr¬Mèσl'æwEaS¿b6³csB%Ñ]°„ÐLЈ2l©"c4gB0ñŒ Îyt,‡ñŒ7øfFHÏu”…[Ö‚^¹î±÷TИ`4Ÿ})‹þ!8(i$Ž{yÿg"Y箣-hQ¼¢Ïôï+JÜÞÆðñ&˜(îíP [üB´½žÚÿÆÂعï"£ÞZ<®jܶSGG7ö-†³ËK‡§_j=-¢šÅK%󪔬£•ûõŸ„Qsß|ÃÌÄ6;³°ÜÏvE-zÉó\V’böø" ƒæ ¾iž?ÞÛ¯4Pú ª?)·)Y¼D¸¯-^ò=ô©³6ØÓeB©í{“Ã?¥ûŽì‰ñTyþÈŠÑÛ·œí›̰섷Íñxí©F7U¯ZÊôüáhsþ£î~Ù²«mÝVÝ/2 ž jNÁ§°äÇi™òàЫÒä^8I´9ÿõ ]’~[-º6IEND®B`‚./4pane-6.0/bitmaps/4PaneIcon48.xpm0000644000175000017500000002372012120710621015600 0ustar daviddavid/* XPM */ static char *4PaneIcon48[] = { /* columns rows colors chars-per-pixel */ "62 48 246 2", " c #3E76E1", ". c #3C77EA", "X c #3E79ED", "o c #3577FD", "O c #3678FC", "+ c #3B7BFB", "@ c #5155BB", "# c #77789C", "$ c #7C7C9F", "% c #6F6CB5", "& c #6E6ABB", "* c #4979CF", "= c #4579D8", "- c #507CCB", "; c #407BEF", ": c #417CF0", "> c #427FF9", ", c #708EBD", "< c #4C82E6", "1 c #4880EA", "2 c #4783F7", "3 c #4381FA", "4 c #4985F6", "5 c #4A86FA", "6 c #4D8AFA", "7 c #5C8EE8", "8 c #5086F8", "9 c #558DF5", "0 c #528EFA", "q c #588CF4", "w c #5D8DF9", "e c #5490FA", "r c #5E95F2", "t c #5A94F8", "y c #6E92CE", "u c #7698D1", "i c #739CDB", "p c #618FEF", "a c #6A9BEC", "s c #6192F0", "d c #6491F8", "f c #639BF8", "g c #6A95F7", "h c #689BF0", "j c #779BE7", "k c #739DEB", "l c #769BF6", "z c #7B9EF6", "x c #6BA2F8", "c c #71A1EC", "v c #7BA6E6", "b c #7AADF5", "n c #7CB0F6", "m c #87A47E", "M c #959696", "N c #949499", "B c #979897", "V c #979898", "C c #9B9A97", "Z c #9B9C9B", "A c #8E96A2", "S c #9097A3", "D c #9696A9", "F c #9199A5", "G c #959DAA", "H c #9D9DA9", "J c #93A08B", "K c #9FA09F", "L c #9FA99D", "P c #97A0AE", "I c #99A1AC", "U c #9BA3B1", "Y c #A8988D", "T c #A3A19C", "R c #A2A2A2", "E c #A5A5AD", "W c #ABACAB", "Q c #A6A7BC", "! c #ABABB0", "~ c #A3B6A3", "^ c #A4BBA4", "/ c #ADB2AF", "( c #AEB2B5", ") c #ACB2BA", "_ c #B3A5A5", "` c #B7ABA8", "' c #B0B0AC", "] c #BCB1AD", "[ c #BBBBAD", "{ c #B3B3B3", "} c #B1B3BA", "| c #B5BAB5", " . c #B6BDB9", ".. c #BAB4B3", "X. c #BBBBBB", "o. c #85A2DC", "O. c #90ABDA", "+. c #96B9DD", "@. c #9FB1DA", "#. c #9CBDD8", "$. c #85A3EB", "%. c #84ACE5", "&. c #8CA5E6", "*. c #85A4F5", "=. c #86B4EE", "-. c #8CB2E0", ";. c #82B4F6", ":. c #8FBEF5", ">. c #93AAEA", ",. c #94B5EB", "<. c #91BDEE", "1. c #98B4E0", "2. c #9DBFE1", "3. c #9DB1F2", "4. c #A89ECA", "5. c #AFB5C0", "6. c #A9B6D0", "7. c #ADBAD4", "8. c #AFBCD8", "9. c #B0BDD9", "0. c #A2B1E5", "q. c #A5B4EA", "w. c #B3BEF0", "e. c #BDC1A3", "r. c #B7C0B6", "t. c #B8C1B5", "y. c #BAC2BD", "u. c #96C2EF", "i. c #99C2EA", "p. c #92C1F4", "a. c #9AC7F3", "s. c #9ECAF3", "d. c #A4C4DC", "f. c #A8C3D6", "g. c #AAC0DB", "h. c #ADC9D7", "j. c #BDC4C0", "k. c #BCC9C2", "l. c #B4C2DD", "z. c #BEC2DE", "x. c #BDCBD6", "c. c #BFC8DA", "v. c #B6D0D5", "b. c #B7D4DC", "n. c #BAD3D5", "m. c #BDD8D9", "M. c #A2C6E4", "N. c #AACDE3", "B. c #ADD1E7", "V. c #AED2E9", "C. c #ABD4F2", "Z. c #B1C3E6", "A. c #B4C6EA", "S. c #BAC4E7", "D. c #B7CAF3", "F. c #B4CDFF", "G. c #B3D9ED", "H. c #BBDCE5", "J. c #B4DCF1", "K. c #B8DFF1", "L. c #B9E0F1", "P. c #C2AE86", "I. c #CDB388", "U. c #C1BDBD", "Y. c #C1BFC0", "T. c #C3C3AD", "R. c #C6CBA8", "E. c #C8CEAD", "W. c #C2C0BF", "Q. c #C5CBB5", "!. c #C2C9BC", "~. c #C8CEB4", "^. c #CBD1AC", "/. c #CCD1B5", "(. c #DBD3B7", "). c #DCD4BA", "_. c #E0D7BB", "`. c #E0D8BB", "'. c #C1C4C2", "]. c #C2C9C5", "[. c #C6CCC9", "{. c #C8C5C5", "}. c #CECEC4", "|. c #CCC9C9", " X c #C3C3DD", ".X c #C4D3C5", "XX c #C3D4CB", "oX c #C5DACE", "OX c #C9D0CC", "+X c #C9DCCC", "@X c #C6DBD0", "#X c #C7DFD8", "$X c #CCD4D1", "%X c #C8DED2", "&X c #D7CFCF", "*X c #DBCECE", "=X c #D3CCDB", "-X c #DDD3C3", ";X c gray83", ":X c #DED0D0", ">X c #C4CFE7", ",X c #CFCDED", ".>.&.>.3.3.D.=Xy.wX8XgXBXgXfX8X7X8X7XgXgXgXgXgXgX .", "zXjXhX:XNXSXSXSXSXNX/.5X9XgXgXgXgXBXgXgXgXgXgXgXgXBX7XaXsX@X7XaXfX;Xo.+ o o o o o o o O i #XwXgXBXgXgXgXgXgXgXgXgXgXgXgXgX .", "zXlX-X:XSXSXSXSXSXNX~.5X9XgXgXgXgXBXBXgXgXBXgXgXBXgX7.f aX@X%XwXqX,.O o o o o o o o o o O q 6XgXgXgXgXgXgXgXgXBXgXgXgXgXgX .", "zXmX-X:XSXSXSXSXSXNX~.5X8XfXgXgXgXgXgXBXgXgXgXgXgXC.+ o :.@X%XwXN.O o 8 {. X0.w o o o o O O r gXgXgXgXgXgXgXgXgXgXgXgXgXgX .", ":XmXhX:XmXSXSXSXSXNX~.5X7XwXgXgXgXgXBXgXgXgXgXgX:.+ o o 2 @X%X6X> O O 8 _.:X:XAX*.o o o o o o p.BXgXgXgXgXgXgXgXgXgXgXgXgX .", ":XjX).:XvXSXSXSXSXNXQ.5X7XfXgXgXgXgXgXgXgXgXgXgXf o o o o d.%X=.o o O 8 `.:X:XVXSXg o o o o o 5 gXgXgXgXgXgXgXgXgXgXgXgXgXy.", "zX:X-X:XzXSXSXSXSXNX~.5X7X9XgXgXgXBXgXgXgXgXgXgX;.O o o o %.#X3 O o O 8 `.:X:XbXSX4Xo o o o o o pXgXgXgXgXgXgXgXgXgXgXgXgX .", "zXmX-X;X:XvXzXSXSXNX~.5X7X9X7X7XgXgXgXgXgXgXgXgXb o o o o v 2.o O O O 8 `.:X:XvXxXxX8 o o o o o M.gXgXgXgXgXgXgXgXgXBXgXgX .", "zXmX-X&X:X;XvXSXSXNX/.5X7XoXwXaXgXgXgXgXgXgXgXgXe o o o o %.c o o o o 8 _.:X*X*XkXbXp O o o o o M.aXgXBXgXgXgXgXgXgXgXgXgX .", "zXlX).:XZXZXSXSXSXVX~.%XwXgXgXgXgXgXBXgXgXgXgXL.o o o o o 1.5 o o o o 8 _.*XbXZXZXZXd o o o o o C.gXgXgXgXgXgXgXgXgXgXgXgX .", "kXjX-XkXZXSXSXSXSXNX~.5X8XgXgXgXgXgXgXgXgXgXgXt o o o o + v.O O o o O 8 _.kXxXAXAXAXd o o o o o C.gXgXgXgXgXgXgXgXgXgXgXgX .", "zX:X-XzXZXSXSXSXSXNX~.%X7XgXgXgXgXgXgXgXgXgXs.o o o o o n h.o o o o O 8 _.kXxXAXAXAXd o o o o o C.gXgXgXgXgXgXgXgXgXgXgXgX .", "zXjX-X&XkXSXSXSXSXNX~.7XoX8XgXgXgXBXgXgXgXdX3 O o o o + 6X#.O o o o o 8 (.xX:XxXAXAXd o o o o o C.gXgXgXgXgXgXgXgXgXgXgXgX .", ":XjX-X:XzXSXSXSXSXNX!.7X%XsXgXgXgXgXgXgXBX;.o o o o o p.wX-.o o o o o 8 _.xX*XbXAXAXw o o o o o K.gXfX8X@X8X7X9XgXgXgXgXgX .", "zXmXjXVXSXSXSXSXSXNXQ.7X@X8XgXgXgXgXgXgXpX+ o o o o 2 gXsXv o o o o o 8 _.kXSXAXAXnX+ o o o o + dXgXgXgXgXgXgXdXgXgXgXgXgX .", "zXmXhXzXSXSXSXSXSXNXQ.5X7X%X8XwXgXgXgXBXx O o o o o +.fXsXa o o o o o 8 _.xXvXSXAXz o o o o o a 8X7XsX8X5X9X7X7X8X7XgXgXgXy.", "kXjXjX:X:XZXSXSXSXNX~.+XfXgXgXgXgXgXgXC.o o o o o t 5XwXwXq o o o o o 8 _.xX:XkX3.o o o O O + uXgXgXgXgXgXgXgXgXgXgXgXgXgX .", "zXmXhX:XSXSXSXSXSXNX~.5X7XsXgXgXgXgXgXe o o o o + L.7XsXsX2 o o o o o 5 }.=X Xz o o o o o + N.fXgXgXgXgXgXgXgXgXgXgXgXgXgXy.", "zXmX-X:XmXSXSXSXSXNX/.5X7X9XgXgXgXgXp.o o o o o n gX@XgXwXO o o o o o o o o o o o o o o 7 b.7XwXgXgXgXgXgXgXgXgXgXgXgXgXgX| ", "zXmX-XbXSXSXSXSXSXNX~.5XoXfXgXgXgXL.+ o o o o 3 dXgXn.BXrXo o o o o o o o o o o o + l S.E.7X%XfXgXgXgXgXgXgXgXgXgXgXgXgXgX|.", "zXjX-X:X:XSXSXSXSXNX~.+XwXfXgXgXL.3 o o o o o p.gXgXoXgXV.o o o o o p $.o.$.&.q.,XCXAXvXE.%XwXgXgXgXgXgXgXgXgXgXgXgXgXgXgXOX", "zXjX-XzXCXSXSXSXSXNX~.+X9XsXdX:.+ o o o o o e dXgXgXXXsXi.o o o o o @.vX`.:XxXSXAXAXSXmXE.%X9XfXgXgXgXgXgXgXgXgXgXgXgXgXgXOX", ":XmX-X:X:XNXSXSXSXNX~.+X7XG.3 o o o o o o o 3 6 6 6 2 6 3 o o o o o > w `.kXkX:XZXSXSXnXE.%X7XfXgXgXgXgXBXBXgXgXgXgXgXgXgXOX", "zXmX-X:XvXzXSXSXSXNXy.oX7Xm.o o o o o o o o O o o O o o o o o o o o o 8 `.:X:X:XVXSXCXmXr.8X7X7XfXgXfX9X7X%X8X7XaXgXgXgXBXOX", "vXSXSXSXSXSXSXSXSXBX~.+X%X%Xt o o o o o o o o o o o o o o o o o o O o g SXSXSXSXZXSXAXvX^.%X7X%XgXgXgXgXgXBXgXgXgXgXgXgXgXOX", "vXSXSXSXSXSXSXSXSXCXy.5XwXgX:.o 3 x n n n n n n n n c n 3 o o o o + j w.SXAXSXSXSXZXAXNXt.%XwXgXgXgXsX8X%X%X%XgXgXgXgXgXBXOX", "MXSXSXSXSXSXSXSXSXNX~.oX7X%XH.a.gXgXgXgXgXgXgXgXgXBXXXBX3 o o o o p [.SXAXSXAXAXZXZXSXvXR.%X%X7XfXgXgXgXgXgXgXgXgXgXgXgXgXOX", "NXSXSXSXSXSXSXSXSXCXk.8X%XsXgXgXBXgXBXBXgXgXgXgXgXBX7XyXO o o o o k |.SXSXAXSXSXSXSXZXcXy.wX%XgXgXgXgXgXgXgXgXgXgXgXgXgXBXOX", "vXSXSXSXSXSXSXSXSXNXy.wX%X8X7XwXgXBXgXgXgXgXgXgXgXBX@XpXo o o o o %.|.SXSXSXSXAXSXSXSXvXy.wXoXwX@X9XfXgXgXgXgXgXgXgXgXgXgX|.", "vXSXSXSXSXSXSXSXSXVXj.wXoX8X8XfXgXBXBXgXgXgXgXgXdXdXn.n o o o o o 1.|.SXSXSXAXAXSXSXSXvXy.wXoXwX%XwXfXgXgXgXgXgXgXgXgXgXgX$X", "vXSXSXSXSXSXSXSXSXNXk.qX7X8X7XgXgXgXgXgXgXgXgXgXx O O o o o o o o 8.|.SXSXAXAXAXSXAXAXMXy.wX8X%X9XgXgXBXgXgXgXgXgXgXgXgXgXOX", "vXSXSXSXSXSXSXSXSXNXy.wX%XfXgXgXBXgXgXgXgXgXgXgXt + o o o o o o o c.|.SXSXAXAXAXAXAXAXvXy.aX7XfXgXBXgXgXgXBXgXgXgXgXgXBXgX|.", "NXSXSXSXSXSXSXSXSXNXj.wX@XfXBXgXgXgXgXgXgXgXgXgX5 o o o o o o o + $X|.SXAXAXAXAXAXAXSXvXy.sXoXgXgXgXgXgXgXgXgXgXgXgXgXgXBXOX", "vXSXSXSXSXSXSXSXSXNXk.wX%XfXgXgXgXgXgXgXgXgXgXgXK.J.d.G.B.d.d.N.N.$X|.SXAXAXAXAXAXAXSXvXy.sX5XdXgXgXgXgXgXgXgXgXgXgXgXgXgXOX", "vXSXSXSXSXSXSXSXSXNXk.8XqX#X7X8XqXsXgXgXgXgXgXgXgXgXoXgXsX@X7XwXwX[.U.SXSXAXSXAXAXAXAXvXj.aX8X7XqXgXfX%X%X7X7X8X7X7X8X8XaX'.", "[.|.|.|.|.|.|.|.|.{.X.].].].[.[.[.[.[.[.[.[.[.[.[.[.k.[.].'.k.].].y.X.|.|.}.|.|.|.|.}.{. .'.k.[.[.[.[.[.|.OX[.[.[.[.'.k.].! ", "5.9.6.9.A.7.9.7.9.Z.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.>X .X.X.X.", "l.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.1X;X{.Y.|.", " X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X c #5E8BE2", ", c #5D8BE1", "' c #7B99CD", ") c #7497D3", "! c #5C89E0", "~ c #5B88DE", "{ c #5B88DD", "] c #5B88DC", "^ c #5A87DB", "/ c #5A86DB", "( c #6087CE", "_ c #678AC5", ": c #A7A8AB", "< c #A2A2A5", "[ c #A1A2A1", "} c #A7A8A9", "| c #A5A6A6", "1 c #A3A4A4", "2 c #A6A6A0", "3 c #A09F9E", "4 c #919191", "5 c #939494", "6 c #979898", "7 c #9D9E9D", "8 c #9C9D9D", "9 c #9B9B9B", "0 c #9C9C9C", "a c #9E9F9F", "b c #9D9C99", "c c #989897", "d c #989998", "e c #9A9F9A", "f c #9697A0", "g c #999999", "h c #ADAEB7", "i c #A2A2AB", "j c #B7B7B5", "k c #B7BBC0", "l c #B8BBC1", "m c #ACACA8", "n c #B7AA91", "o c #A99D8F", "p c #969797", "q c #AFB0AF", "r c #B4B4B4", "s c #BEBFBF", "t c #C8C9C8", "u c #B0B1B1", "v c #9599A4", "w c #9E9E9D", "x c #929E8F", "y c #959C91", "z c #787AA9", "A c #A0A0A0", "B c #9B9D9B", "C c #A2ACA2", "D c #ABADAC", "E c #B5B6B5", "F c #B3B4B3", "G c #B2ABAB", "H c #ACACAC", "I c #A6A6A6", "J c #AFB0B0", "K c #AFAFAF", "L c #ADAEAD", "M c #AEAEAE", "N c #A2ADA2", "O c #AEB0AF", "P c #A8A8A8", "Q c #A9A3A3", "R c #AEAFAF", "S c #C6C3BE", "T c #7E7EA1", "U c #6565A5", "V c #8582AE", "W c #D2C5C3", "X c #D1C7C7", "Y c #C7C5C4", "Z c #CDDDC7", "` c #CADED3", " . c #D8F2E4", ".. c #C8DBD1", "+. c #D4EBDE", "@. c #C7DAD0", "#. c #D1E7DB", "$. c #BDBEBD", "%. c #C3C0B9", "&. c #A7A7A4", "*. c #A4A4A4", "=. c #B8B4B4", "-. c #D0C2C0", ";. c #CCC4C4", ">. c #C8D2BF", ",. c #CBE0D5", "'. c #D3EBDE", "). c #BFCBC4", "!. c #E2D7D7", "~. c #D5CCC6", "{. c #CDC1CE", "]. c #E5D5DE", "^. c #FEEAEA", "/. c #DDD8D7", "(. c #C7D8C0", "_. c #CCE3D6", ":. c #DFFEED", "<. c #CCE1D6", "[. c #DBF8E8", "}. c #C4D8CD", "|. c #C6D9CF", "1. c #D4EDE0", "2. c #C8CAC9", "3. c #B7BFE3", "4. c #A0B1DA", "5. c #9EAEE0", "6. c #ADBAEC", "7. c #BCC3EF", "8. c #E2D9E5", "9. c #C5CFBA", "0. c #C6DCD0", "a. c #DCFAEA", "b. c #D9F5E5", "c. c #D1EBDD", "d. c #D4EEE0", "e. c #D9F5E6", "f. c #C5D4CB", "g. c #E0D6D6", "h. c #DDD4BE", "i. c #E0D2D2", "j. c #D1E3C9", "k. c #D7F2E4", "l. c #C5DFDC", "m. c #CEEDE9", "n. c #CAE0D4", "o. c #CEE5D8", "p. c #D8F4E6", "q. c #759BE6", "r. c #3677FD", "s. c #3577FD", "t. c #3A7AFC", "u. c #88ABDD", "v. c #D0E8DB", "w. c #E9DDDD", "x. c #E4DAC8", "y. c #E9DADA", "z. c #DDD8D6", "A. c #CBDABE", "B. c #D1EADD", "C. c #C8ECEF", "D. c #4D88F7", "E. c #77AAF4", "F. c #C8DDD2", "G. c #CADFD4", "H. c #8DB9EF", "I. c #749BF4", "J. c #9CB0DC", "K. c #769BF1", "L. c #3778FD", "M. c #86B0E5", "N. c #DFFDED", "O. c #E6DADA", "P. c #DDD4C1", "Q. c #E0D3D3", "R. c #FCE9E9", "S. c #CFE0C4", "T. c #CCE3D7", "U. c #D7F8EE", "V. c #4483FC", "W. c #3A7BFC", "X. c #BED5D4", "Y. c #B5D1DA", "Z. c #397AFC", "`. c #96AEED", " + c #DAD0BD", ".+ c #E3D4D4", "++ c #B2BDF0", "@+ c #C7E7E9", "#+ c #E1D6D6", "$+ c #E2D8C4", "%+ c #DBCECE", "&+ c #FBE8E8", "*+ c #CBDBC1", "=+ c #CBE2D6", "-+ c #DFFDEC", ";+ c #407FFC", ">+ c #9EC1E1", ",+ c #72A3EF", "'+ c #93ABEA", ")+ c #DED4BF", "!+ c #DFD0D0", "~+ c #FCE7E7", "{+ c #7199F7", "]+ c #91BEEF", "^+ c #E0D6C6", "/+ c #E2D4D4", "(+ c #EBDCDC", "_+ c #EFDFDF", ":+ c #CDDDBE", "<+ c #D4EDDF", "[+ c #DAFAED", "}+ c #3A7BFD", "|+ c #8FB4DF", "1+ c #3F7EFA", "2+ c #98AFEE", "3+ c #DDD2C2", "4+ c #E4D5D5", "5+ c #ECDBDB", "6+ c #A1B3EC", "7+ c #78A5E8", "8+ c #E5DADA", "9+ c #DED5BD", "0+ c #DFD1D1", "a+ c #ECDDDD", "b+ c #F6E4E4", "c+ c #CEE0C8", "d+ c #D7F3E4", "e+ c #DDFBEB", "f+ c #A6D1F2", "g+ c #89B4E9", "h+ c #95ADEC", "i+ c #DBD1B9", "j+ c #E0D1D1", "k+ c #EFDDDD", "l+ c #AAB8ED", "m+ c #81B3F4", "n+ c #E4D9CC", "o+ c #F0E0E0", "p+ c #DDD7D6", "q+ c #CCDBBB", "r+ c #4D8AFB", "s+ c #4785FA", "t+ c #88AEDF", "u+ c #95AEED", "v+ c #E3D7C9", "w+ c #F3E0E0", "x+ c #FEE8E8", "y+ c #AFBCF0", "z+ c #82B4F6", "A+ c #DFD5D5", "B+ c #D9D1B9", "C+ c #F7E5E5", "D+ c #D1E4CE", "E+ c #CFE7DA", "F+ c #DEFCEB", "G+ c #91C0F4", "H+ c #94C1F2", "I+ c #84B0EB", "J+ c #92ABEA", "K+ c #D6CDB5", "L+ c #DCCECE", "M+ c #FAE5E5", "N+ c #7FB0F2", "O+ c #E0FEED", "P+ c #E9DED0", "Q+ c #E8D8D8", "R+ c #C5D5BC", "S+ c #C3D7CC", "T+ c #D0F2EE", "U+ c #3F7FFC", "V+ c #4B87F7", "W+ c #D7F5E8", "X+ c #6D9CEA", "Y+ c #E8DBCD", "Z+ c #9DB1F2", "`+ c #8DBAEF", " @ c #D3EDDE", ".@ c #D3EEDF", "+@ c #E9DCDC", "@@ c #DCD3BD", "#@ c #EEDDDD", "$@ c #DDD9D7", "%@ c #CEE1CF", "&@ c #D1E9DC", "*@ c #D8F4E4", "=@ c #7AAEF6", "-@ c #A0C5E6", ";@ c #DCF9E9", ">@ c #5D94F3", ",@ c #D7CDB7", "'@ c #F4E1E1", ")@ c #F1E0E9", "!@ c #4B83FB", "~@ c #BAD8E2", "{@ c #D6F1E2", "]@ c #D2EBDD", "^@ c #D9F6E6", "/@ c #E6DCCB", "(@ c #E4D6D6", "_@ c #F4E3E3", ":@ c #CAD9BC", "<@ c #DAF7E7", "[@ c #C1E6F0", "}@ c #3879FD", "|@ c #6099F9", "1@ c #CCE2D6", "2@ c #D9F4E5", "3@ c #4A86F6", "4@ c #E5D9C8", "5@ c #D5CDD9", "6@ c #6290F7", "7@ c #83B1EC", "8@ c #DFD5C2", "9@ c #E1D3D3", "0@ c #D1E3C7", "a@ c #DEFDED", "b@ c #629AF9", "c@ c #3678FD", "d@ c #BEE4F0", "e@ c #CFE6DA", "f@ c #DBF9E9", "g@ c #3A7BFB", "h@ c #407DFB", "i@ c #4781F6", "j@ c #427FFB", "k@ c #91B2D8", "l@ c #D5EFE1", "m@ c #C4D3CB", "n@ c #DFD6C2", "o@ c #FCE8E8", "p@ c #CDDEC3", "q@ c #CDE5D8", "r@ c #86B7F5", "s@ c #76AAF7", "t@ c #CCEDEB", "u@ c #3F7CF9", "v@ c #4E85F9", "w@ c #4B83F5", "x@ c #598AF7", "y@ c #799DF5", "z@ c #E9DDE4", "A@ c #CAD4BC", "B@ c #CAE1D5", "C@ c #DBF7E8", "D@ c #D1E0D8", "E@ c #E4D9D9", "F@ c #DFD6C5", "G@ c #E8D9D9", "H@ c #CCDABD", "I@ c #D3EDDF", "J@ c #CCEFEF", "K@ c #72A8F7", "L@ c #3E7EFC", "M@ c #D2F4EE", "N@ c #BDD4D4", "O@ c #AED5ED", "P@ c #7D9FE3", "Q@ c #E1D8DF", "R@ c #DCD2C1", "S@ c #EAD9D9", "T@ c #FDE8E8", "U@ c #F3E3E3", "V@ c #CAD2B8", "W@ c #CEE5D9", "X@ c #DDD5BD", "Y@ c #CDDEC6", "Z@ c #508DFA", "`@ c #8EA9ED", " # c #DAD1BA", ".# c #DDCECE", "+# c #E5D4D4", "@# c #CAD4C0", "## c #CEE6D9", "$# c #F1E1E1", "%# c #F6E5E3", "&# c #C6D3BB", "*# c #7AAAEE", "=# c #A8B8EF", "-# c #F6E2E1", ";# c #FBE6E6", "># c #C5CEB8", ",# c #C5D8CD", "'# c #C5DACE", ")# c #D2EADD", "!# c #D2ECDE", "~# c #D7F4E4", "{# c #CBDECE", "]# c #DAF6E7", "^# c #B5DCF1", "/# c #74A9F7", "(# c #B0D8F1", "_# c #B6D7E6", ":# c #73A7F6", "<# c #9FB2D7", "[# c #EBDDE6", "}# c #C6D2C5", "|# c #D5EEE1", "1# c #D1EADC", "2# c #DBD6D5", "3# c #C3D2BF", "4# c #C8DDD1", "5# c #D5F1E2", "6# c #6FA3F5", "7# c #3779FD", "8# c #C5C7C9", "9# c #F8E4E4", "0# c #C2CCBC", "a# c #CFE8DA", "b# c #DCD7D6", "c# c #CEE3D8", "d# c #CFE6DC", "e# c #538FFA", "f# c #4886FA", "g# c #C7D5CE", "h# c #D0E7DA", "i# c #DDFAEA", "j# c #C7D9CF", "k# c #C6DBD0", "l# c #C6DBCF", "m# c #DBFBED", "n# c #3C7CFB", "o# c #5B93F6", "p# c #C4D1CA", "q# c #C5D9CE", "r# c #C7DCD0", "s# c #CFE8DB", "t# c #DDFBEA", "u# c #DBD7D6", "v# c #CBDFD4", "w# c #6EA1F3", "x# c #C6D3CC", "y# c #CCE0D5", "z# c #CCE4D7", "A# c #B2DBF1", "B# c #A7CAE4", "C# c #B0D8EE", "D# c #A3C4DE", "E# c #A3C5E1", "F# c #BEDCE5", "G# c #C9E0D3", "H# c #D2E0D8", "I# c #E5D8D8", "J# c #D1CDCC", "K# c #C6D6CE", "L# c #C8DAD0", "M# c #CBDED4", "N# c #D2E7DC", "O# c #D7F0E3", "P# c #C9DCD1", "Q# c #D5ECDF", "R# c #C6D7CD", "S# c #C6D8CE", "T# c #CFE3D8", "U# c #B7B9B9", "V# c #EBDBDB", "W# c #F0DFDF", "X# c #E7DBDB", "Y# c #BFCBC5", "Z# c #C7D8CF", "`# c #D2E8DC", " $ c #D1E6DB", ".$ c #CADDD3", "+$ c #CDDFD5", "@$ c #CEE3D7", "#$ c #C1CBC5", "$$ c #B7BDC8", "%$ c #B4BDCE", "&$ c #B8C2D6", "*$ c #B7C0D4", "=$ c #B7C0D1", "-$ c #B7C1D4", ";$ c #BAC7E0", ">$ c #BCC9E4", ",$ c #C1C2C5", "'$ c #BABBBA", ")$ c #B7B8B8", "!$ c #B6C7E8", "~$ c #B4CDFF", "{$ c #CED0D4", "]$ c #BFBFBF", "^$ c #C1C1C1", "/$ c #AFB2B6", "($ c #B0B4BA", "_$ c #B5B9C0", ":$ c #AEB2B8", "<$ c #AEB2B9", "[$ c #ABAFB6", "}$ c #ADB1B8", "|$ c #ABAFB5", "1$ c #ADB1B7", "2$ c #ACAFB6", "3$ c #ACB0B6", "4$ c #AFB3BA", "5$ c #B7BBC1", "6$ c #ADAEAE", "7$ c #ABACAC", " . + + @ # $ % & * = = = - ; > ; , , ' ) - , , ; ; = ! * * * ~ ~ { { ] + ^ / ( _ ", ": < [ } | 1 2 3 4 5 6 7 8 9 0 9 a a a a a a a a a a a a a a a a a 9 b c d e f 9 g ", "h i j k l m n o p p q r s t t t t t t t t t t t t t t t t t t t t u v w x y z A B ", "C D E F G H I J J J J K q J J J J L L J J J M N O J P Q | M R J L L J J J J J J K ", "S T U V W X Y Z ` . . . . . . . ...+.@.@.#.$.%.&.*.=.-.;.>.,.'. . . . . . . . .).", "!.~.{.].^.^./.(._.:.:.:.:.:.:.:.:.<.[.}.|.1.2.3.4.5.6.7.8.9.0.a.:.b.c.d.e.:.:.:.f.", "g.h.i.^.^.^./.j.k.:.:.:.:.:.:.:.:.l.m.n.o.p.q.r.s.s.s.s.t.u.v.:.:.:.:.:.:.:.:.:.f.", "w.x.y.^.^.^.z.A.B.:.:.:.:.:.:.:.C.D.E.F.G.H.s.I.J.K.L.s.s.s.M.N.:.:.:.:.:.:.:.:.f.", "O.P.Q.R.^.^./.S.T.:.:.:.:.:.:.U.V.s.W.X.Y.Z.s.`. +.+++s.s.s.t.@+:.:.:.:.:.:.:.:.f.", "#+$+%+&+^.^./.*+=+-+:.:.:.:.:.:.;+s.s.>+,+s.s.'+)+!+~+{+s.s.s.]+:.:.:.:.:.:.:.:.f.", "w.^+/+(+_+^.z.:+}.,.<+:.:.:.:.[+}+s.s.|+1+s.s.2+3+4+5+6+s.s.s.7+'.:.:.:.:.:.:.:.f.", "8+9+0+a+b+^./.c+d+e+-+:.:.:.:.f+s.s.s.g+s.s.s.h+i+j+k+l+s.s.s.m+e+:.:.:.:.:.:.:.f.", "8+n+o+^.^.^.p+q+v.:.:.:.:.:.[+r+s.s.s+t+s.s.s.u+v+w+x+y+s.s.s.z+:.:.:.:.:.:.:.:.f.", "A+B+%+C+^.^.z.D+E+F+:.:.:.:.G+s.s.s.H+I+s.s.s.J+K+L+M+y+s.s.s.N+:.:.O+:.N.:.:.:.f.", "O.P+Q+&+^.^./.R+S+:.:.:.:.T+U+s.s.V+W+X+s.s.s.`.Y+Q+~+Z+s.s.s.`+:.e.c. @.@:.:.:.f.", "+@@@#@^.^.^.$@%@&@<+*@:.:.=@s.s.s.-@;@>@s.s.s.2+,@'@)@!@s.s.L.~@'.{@]@'.v.<+^@:.f.", "O./@(@_@^.^.p+:@<@:.:.:.[@}@s.s.|@1@2@3@s.s.s.`.4@5@6@s.s.s.7@:.:.:.:.:.:.:.:.:.f.", "+@8@9@&+^.^./.0@T.[.:.a@b@s.s.c@d@e@f@g@s.s.s.h@i@t.s.s.j@k@_.l@:.:.:.:.:.:.:.:.m@", "O.n@(+o@^.^./.p@q@:.:.r@s.s.s.s@:.v.t@s.s.s.u@v@w@x@y@y+z@A@B@C@:.:.:.:.:.:.:.:.D@", "E@F@G@o@^.^.z.H@I@J@K@s.s.s.L@[@M@N@O@s.s.s.P@Q@R@S@T@x+U@V@W@;@:.:.:.:.:.:.:.:.D@", "E@X@%+/+^.^./.Y@d.Z@s.s.s.s.s.s.s.s.s.s.s.s.s.`@ #.#+#x+U@@###e+:.:.:.:.:.:.:.:.D@", "$#%#&+R.^.^./.&#S+*#s.s.s.s.s.s.s.s.s.s.s.s.s.=#-#;#T@x+U@>#,#'#:.b.]@)#!#~#:.:.D@", "$#^.^.^.^.^.$@{#]#^#/#(#d@d@d@d@d@_#:#s.s.s.<#[#x+x+x+x+U@}#|#O+:.e.]@1#[.:.:.:.D@", "$#^.^.^.^.^.2#3#4#5#:.:.:.:.:.:.:.F.6#s.s.7#8#9#x+x+x+x+U@0#S+a#:.:.:.:.:.:.:.:.D@", "$#^.^.^.^.^.b#c#E+&@;@:.:.:.:.:.:.d#e#s.s.f#t 9#x+x+x+x+U@g#h#)#&@i#:.:.:.:.:.:.D@", "$#^.^.^.^.^.2#j#k#l#-+:.:.:.:.m#V.n#s.s.s.o#t 9#x+x+x+x+U@p#q#r#s#t#:.:.:.:.:.:.D@", "$#^.^.^.^.^.u#v#E+:.:.:.:.:.:.J@s.s.s.s.s.w#t 9#x+x+x+x+U@x#=+;@:.:.:.:.:.:.:.:.D@", "$#^.^.^.^.^.u#y#z#:.:.:.:.:.:.U.A#B#C#D#E#F#t 9#x+x+x+x+U@x#G#;@:.:.:.:.:.:.:.:.H#", "I#o+o+o+o+o+J#K#L#M#` N#O#O#O#O#O#P#Q#R#S#T#U#V#W#W#W#W#X#Y#Z#v#`# $.$P#+$` v#@$#$", "$$%$&$*$=$-$;$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$>$,$'$)$", "!$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~$~${$]$^$", "/$($($($($($($($($($($($($_$:$<$[$}$|$}$}$1$2$3$4$($($($($($($($($($5$:$($($6$7$7$"}; ./4pane-6.0/bitmaps/softlink.png0000644000175000017500000000162113205575137015471 0ustar daviddavid‰PNG  IHDRP.ˆçn.}PLTE%`j!"+#,'.*.,0/3 4: 9?894CJERPXYcB€‹G…ŒW“Z“žY”›Y”ž\—ž^– _™ a™¤cœ¦d›¦hŸ®h ªi¡«j «j¢¬m£ªl£­n¤«m¤®n¥®n¥¯n¤°p¤¯p¦¯p¥±p¦°q§°s§³s§µs¨±t©±t©²uª³u©µw«´wª¶x¬µz®¶{¯·|°·|°¸~±¹²º™ÇQO™™ÿÿ³º³»‚´¹‚´¼„³¼„µ½…¶½…¶¾‡µ¾Š·¿ˆ¸¿Š¹ÀŠ¸ÂºÄŽ»ÅŽ¼Ã‘¾Å“¿Æ–¿Ç”¿É”ÀƘÂÉ™ÃÊœÆË¡ÉÎ¥ËЯÑÕ´ÔØíÒÀ˜}ÄVtRNS@æØfbKGDˆH pHYs  šœtIMEÝ 4Ÿ0IDATHÇí•iSÂ0†oTâ1ÞŠ¢¨x"FQ)ÒÒÔŠx±"£òÿ…I¡°)a†/ÌôNÛd›g7Íf@ @êCU9õdXϺ^ÕkêèŽÒõØ¢B*aËÀló\Ë# àÇ¥dq'\>{òPP3B`sõQ G3Ê>ž÷ÃÍÅpü7¢~›Hœ6®#šÏZÖæR\Ì[^,§>§&CãaÔœšè´­¬‰_{‰bíM©ÄÀ¦U¡AED<¬5¤ÐÁ‰‰¤n†²@èøgQz]+# \ÚP [oëÄ3FÖ‹ñÆ©ó@« zUìË»C¼ÀÆz„Ǽ¬W.¬û£Õ[™rðœ,½<á'â}`ÕŠ¤Í÷ëàU²T)mïòãÛpLø¬œÓ2À‘Ñ¡i#Ç­(ñàœ13068ŒäÊ]ÂO¡vká9Y#]!?U7ïZ» =l?mZ¡mvý›»ß!å:ª[ˆxçqFa§Ò7@`øUlt”>õÀ?<èø5w ÜIEND®B`‚./4pane-6.0/bitmaps/photocopier_25.png0000644000175000017500000000274612120710621016472 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&%&-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7IGGQNNXVVWyWBll`[[fffrnnvuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ—˜˜ ¦˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÀ¹¹ËÇÈÕÌÌÕÌÐÒÒËÙÓÓÌÌúÌÿÿäÜÜâãÜîååðéè÷ñìùùõ¦,j+GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHÁIDATxÚµ– wÚ6€¯½%Y|2§uÖd œ2QâJ@Ö’Ø’ìÛ±ÿÿOÚ•„_àäg» ²ùt}_2Tÿ«À÷~ÿ‡È‰ø¿o>I)”"–"Æ&U¼E)ì„н<÷û<Ýlò¼Ð~uÓS#EžgzÜœªýÙżò}Ñým`u¾×ã›–b‰5ýµ™#ý|Y^ŽžºôÞ&ò1Ä;ôƒðe9fb˜Ý›Ãýhî‘ø²|…i1Ìí¬l1Þáõ-4Ú…Wå-€ØE÷œZÛ}ÁFáÛx€ãÀgI_ð;®ìRì¬Ì£› ›4xþÈs¤xÀ€·ðtt;çÅ[àNü€üºšÝK`]óÏ÷/™bÖE$êÅòòb ØŠbàÚx_¬@§ìk- d¾%-؇À¤·Þ៨ v¸Y.mäÕ­·I—0[2Õ¥KE)XE'ï‰Tí%VŽˆéepH¸Œ×ëuŒ]¬?ú»/x¬4µtÄO&XÃ&Þ¯VõVRí÷ ©eÕê^ZzЦ†xçß•nÑJÐ[ƒ’î­ÀW¼½ÚÕ]žkå+}¡÷ßÄVUÈâ•WêfаÔsÓ ½>q,ͨ–^íA‰çS:Á'iO'…€$ID"6Y–é–ëQOŒèY‚¤ À±¶aò»Ûµ{*# ?ƒÇ{ZÅí& ¾Õµ°Ð·ö_í€5²,s ìùã |„ðrÏWÛ¬ŠÔ¤Qé,-QPAë§Ò>²Kc€2Á<0§Ô™ó„ÿrö½í×Eaâ“®u0Ùè$ ”Þ5™Rò™pN]§z_UÏçzxtÒü]S´—§/^nñ‚ Ó‡ÎZ'<ìZÙdÛe¼`ðëð­#{`=TóÊÕx «±í±Ýl c,FîCu8ÞDr›ÛŠ”ÖY&MyRJ„O?€TGà?vðJõöØŒž¥³¯:ÂŒ&³ÓÞ{UÌ…£„TGâÿCù¿?»RO-=IEND®B`‚./4pane-6.0/bitmaps/openoffice.png0000644000175000017500000000124612120710621015740 0ustar daviddavid‰PNG  IHDR ®ý\;PLTETY\0¾ÁÁÁ”””7Qñññ9˜à¾ãù ÿÿÿ„¼ÞY«å334"[…Òìû%7Ùãéþþþ.BN^‡Ÿu¦Ä’ÐõaºúNo‚Ÿ²½%St?¦õ!$GKM &åååC_p‚É÷ÄÛé$)+Q³ü4Rd;BFf‘¬ìììFg£££P{—L¨íGU]âæèæôýhhhš¸ÊA¬ý‹Æé,,,2†Å~´ÓÌÌ̘Óõ¨<žéBOW+:&-(/4¡ÁÔ%c‘lš¶ "&Ib]]]HgyJNQ)1ÃÍÓ;Tb\±îRyŽÊí#1Y– *4ŠËˆÌ÷AAA! ;W=¢ï1FSMV[LLL T|?¨øÁäø':éöýLPRµËãétRNS@æØfbKGDˆH pHYs  d_‘÷IDATxÚ}KKÃP…'¾î¯\mZjEI$m««±¥ˆ…¢7J]•€ÿÿ/˜“LomCû-†Μ{&!iJdLÕ^§Äès¡#a¢RHî®E°aî l7ºè<óa;‹Ë¡E!˜÷™{"xçV¡ ¸ÿOÏ;ÞõC·¡¤à¸¬šÙä×2iÂ{U¨Hï—gR æçÄ(D6³‹sŽ"φ{–>º.l…ã°&œMy0R‡ÏxŒßž[­ Ÿ'ÊÓ¤(ŸùN Ì r7ãÓ@û…ðä̹_‚$ÉÕ ƒ~â`oãa×®áûð=ª±t†?gž3Œpˆ|ÿý¼Çã,fŒÅqÌQÊ‚ ]/*Å_ã‹Ef$- Ý”R×dVâ£Úw:ÿ”ì]ð*¥Þ‰W¹Ý»[ÈCèY¦’p‹¶à•úLÄ+Ô›Áä ð‡Œ¡òªì ¼R£í7Œ„¸ŸÍ^Ü·'àU®®.³½¦ ÷«U­{ߚĻðþ\Ãû{t—ú¸§²±Lfc¤nÇüú—ç†l߉5J„¯,·Ó¬Ñºš¾)ƒ]ù>ç"‹>]GÛì²Þ üï‰\S¾Çp’]8ªðôÒþÊyÂ'\ñ.ª,/´ÌK¦á¥_» é°ª›¸žÒß==8'ýñ¸æÈMº¬Èk0ÓtYé.3» «†.|<ƒxgަO.®‚Çx¿Ìf3x éj=àñsÚèŽøÁ'âé ÷s‘§zöA R þ£ªéñ¦e”1 PÄ[?¹†êß)I]™ÞBf,£í¤Ãßxu]w~¤•Çh„"­êtò­2-Ó2ÝÀ>fê17ÂüÌ+¯jºý–ΞnL~—“¼õÝúßQC–$‹Å"Å3ÍÒ4ºÄ+-zâ{]  3>µ×í.øÜó <€Uý3+Ë{ E‚—r¹Ä×eñU†—iãñË0ÄÐ&`ágA÷snNÊY þ¦‰)šR­”±må*SSÍ‘ààú§…m=â½Å÷n•.)7aNœlþÀ#>ñŽOÉÐ'—$ŠH—ø÷ÁÚ8òÉÜ"?z›å1h¬XôŸ_{^¹z¢„:¦®YCrjª§žn“ˆÔ⛟8˜üô—ŒM_ÚVEÓã¹nXx—H+ô#2ŒŒº†6üì8äÊqœ?Éí)ñ\ hbRËôÂnIîe— .¾GG:JÃîx=Ǥ¯ô<ßÿwÝ9Ç™èP3Äì¼uE¯ú¾¸ptrBy&9ù´±‚¯šŒVTäð9aó„1?‘RkƉû¶“ïÀç_Ð3®öεÍ÷,%Îó|>Ç­ÁÄ]'l+߉Ïó§³oºYb·(’Ï$ µCžÏèzÛZk¥õ®©%ßgå^ª|`ð³`Û~¦¥?à[vOiKô1Ù7ùáx`Í,hDT…¨úÆF¿L¦@òwàÏoñ¶‰IulMÁÉ߃`D“Q;w°­Û¨ƒ—,#$'þ?”ËìÚ×öFn8IEND®B`‚./4pane-6.0/bitmaps/photocopier_42.png0000644000175000017500000000252512120710621016464 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33'%&-,70--666?C3f99A56h3f3AD*Rz4ffA?@bb7HFFQNNXUUWyWBllfffsnnxvv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰††‡„“‘ŒŒ˜˜˜ §˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÁ¹¹ËÆÆÕËËÒÒËÛÓÓÌÌúÌÿÿäÜÜîååðééùñì#\£ CtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿAbïbKGDˆH4IDATxÚµ–wš0À¶¶Êk±M×v Ö7Ú±DÖU-$°!òý?Ô.T þ}Û=É¿\.w¡ø¯ùú‘ñ¿no•’JÆRÊ8ޱ‹ýÛRdÙ;ÿÐ{N³…–²Íñ™™§¾Ì½X¤§ZvñœÕíðó$¼}%²-ȼA? ïЗ¬…Ìß§ ‘~~È=vÛ¥Bx<~¨<ÏÌÛžáÜ â]xµèr‹½›J€ ÷<ŒÌ­x€ë!qyÒx/‘.ÖØš$¯m ½;÷ ­ðâ Ðy¤á ÖôûaøÞÔ5}å²”ú:­ø¦ÀyçÄþ–¤J¥%¤Rzý{¿sSÛñ>Á˜1I»¬‡Ü’Äù5‘©Éj¥~GÀ´Òºamd^§f—ûÁy1( שèøTġ۾`q™á¥oÝ1w[ ¢ó5ñ£&âùèêcUš ž ±*ZÚ¶—®Žx냫ÒMº^˜¬$UÛ%~*?Þ Ÿkã‹MΆçŒZÆ+D¹ºjëʬ[=–h5oÑ“ù£©àÒÞ îà8Ë«ÝôL„ágðH2Ëßx½¬£wÂ;e²~÷䃅+ ú­I/«¬–6¶e¹äåz\zÒðss¤wäÂzÁ¶c­n]F.mÀ—K6"”Qâ è˜y„†œ:”…‚R!DÈhÄ„`bŽ ñ:Îì¦?ݾÒÄk¸féÀtD© +aFÁ(:E–Gí4n„uI#®Ë7]oq&èX§0´1uJžó‰~P‚àzBà•æVGq¯T.¬'à}±³Âä„0ö'¢×ËÓ³ ?»ƒ®££Ö}uáüòÒàé}¶?~“2’IÂ’<71Ÿ(éÙN±_|Åqõî ídOtÞ¢(J¤¤bQâ•ôm«Ø‰/Šùͳ~–Úeúb‘|.·düæ`µÔxɷлÎZkû‘WJ–­•? ¶Ùú@eÙî °ú×µ†øÐ~,ÇëHN[u2-/Œ“d»© .^§@‹#ð7e¢¨=’êd’¡5ƒ~q >‹UÀ÷‹ð`×_¥Î\8Jhq$þÊ_ W‘Oó­,IEND®B`‚./4pane-6.0/bitmaps/photocopier_16.png0000644000175000017500000000273112120710621016464 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33)()-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNN[YYWyWFii`\\fffsmmxwx2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜˜š™  §˜˜±šš¬§§£¤º³¬¬¸°¯½¶µššÉ—È—™ÌËÁ¹¹ËÇÇÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜâãÜîååðéèðïð÷ñìøøõHŸYþHtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆH³IDATxÚµ– [â8ǧ½ÓƒžÖÛÜ©«AÙåÊiŸTqÑ6iwûí÷ÿF7™¶´…¢Ïî(É$”_†Læ ø¥?~dîÂ!öNü×óS¥¤’RR.tU*R¥’¼÷â¯n'ieèÄô_[FmüÞèŽîâÒôÝa–<½Ÿ¦õ÷£[kfHêOÁ>|žŸòyû¼™ @!Ü·àóܲŸØ‚=}Ç‘9?Ÿù«²]!7#ñ8ZݘûðŽ¿†ä®œ¶fÅHkx@wâþüÄl!i°ôÎgQÚcYw0}]Ð:CMïÚx÷®€õ•Çxyî]~ší!¯=PÓÙô’Ü¿¥®.Ñ68®ñ‚™ÿRúœ±áðÒ 6ÀÛÛSîLufÒ!(¬j1°K¼1½x¨øvuîͲ,Û[LeV§OJ¼ ¤ -ºr`„3Û’•†¨ùåµ; öۢ젢ëà'ECGüxŒE€x1>ý]¢D…¤Má¹y@j›U±ÝØW)†'ñÆo6E–ÁG:ŽH­±y§œÇWõÖóPÓeu Ï‘q¬ƒÇÓõ窴â*-ÀZ{%úä•j¬'J¦,€¹AÇ‘/·¤`󨎱t@K†2”q’$ôŠ›>IRlÃ|•'¸5C@WÓÜìì»ò+ñFýme¿ˆ%¶Zeúù¬îVËeÙ¦yžÒÑs‡[y¹=©ªœõîÖt•“­ò|I{©ýº§¿.=m_°5¶Ón×¢0¶yÃFºg̸ÃÙàŒO~Å=¹3ó8zžçpßÁÖ{ÁÆñ(xÌ‚aBg {/nk΃ÀÓpÍšð3rϘs¯Í¡ ‡[”f} ÷]ˆ4Ãl[”ñ é`ÇãÂ%Úä£e]s˲þá÷gœ!¸^Dµ±Ïf¸WS6èÄ”Šo8KZ°} 2æ8ß}ïa0H£#A"Z\ô^æõÜgŽON„J3Å/â6,Ùħ“W)}¬ 'ÌRC”?GF¦UìÁŸ13¶ÎΩú¬¶¥õêû>Ö÷°b ¸¦QìÅŎ;ݹFçIV›*~äâA'äÕªðRì ÷ÝµÆÆvd›’·6ð wוÝ3視ËO*~¼­ý)Ü ™·Åáxm¹¬+.j‰jS„òþ/ÏÀ‹7à?HµÛZháéy0žÁ*Þ‚¿3îQ«\ñc›ºÂÝõãu'¾8ø¶"ãÅñ?Ñþ8‡½ÂdGk±IEND®B`‚./4pane-6.0/bitmaps/photocopier_2.png0000644000175000017500000000263412120710621016401 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GDDQNNYVUWyWBllfffsmmxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™ €«« §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüü¨ÿ¤bHtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿœìò`bKGDˆHvIDATxÚµ– s“@†4ý`*ÕÓ4z¤ãÅïjÓXÓÂñ¡þÿ?ro ” IGß!¸ažÝÛÛÝŠÿ*Øë­[ ûè™øïÃWQ¤ñÒ¡ÖËÐ܆øg”FfšnŸ‹ÌÒÌhEc–W7M­žëýàøëŠ ½¸y~] œ«4«Üî£ß´Äÿ üzíx‹´Ø0B„tcä üz=–º½µ½kXeÞ`q~]<Œ?Ç¿ŽvD@^{aîY‹° ‚|í´û^Êkúµôd–ÙKÌÎN<Àë1seR=ÿVÃùê/âÎ rCŸÍ½a§¡Éý-Mj¼úü.ˆ“ (êj4VOm)ùÍnf£,{kŠ dSpTá%³?Q œ1œô޹v"s“3ù)Pá>”=@3pK¼”¯YYÙ¨Ÿk¤æ$É;€Á~„qß¡GB#ü„¹Ž&ßS2ðmèø‹°Ô²ºšZÖ#”t0tYÑ.?™` ^N^½Ô™4´öjF7†°lú^:Ï0]o½p 2N¢ªÆPJÓº/VæÓ†'ág º¤]Ý¢ç1kVl®˜ZkÙdCºS>™Nܘ%10ö=Nî.©?€ËÉØp“réÞ¡‰a4ÕtkoG&Àô#<€U¹’l-«ì½n&ñÖC-,\’ºcøòlSµ Èñ8z¤—IÔ) ¤ÑÀZàØ’ nÕ&.ß¼L¡ÇbÆgÎ9Ÿ ñ¹â8r¥Ô\ð@(%ÔbNÎãX6lÙpk|1fì1¤)7„Ö”Ÿ³Þž3ó̯%hBp€ÖˆGð²í4¤æº2Jãºû–ŠO¹ëΔ;ÎÎ;þåœ3W)F·#»û0t <Žä©Ê:›€y`Lˆ_º:qòäXR¾¥áEÛI^7ä.É(Ï#~Ñò!Ð44½×:Љ:Ï6Þ‡ží=øâ#îŒK=ÚNú;pîÜAè˜ã*K|èÛVÑ‹/Š;×7_¬4ëUòž›máÓ{'Ë ¯e½í¬µvb“o/bµz< ¿ô»Žì–y?]õ»ßŒŒñ›Ð¾,öǃn+ÒÇÖ™lf(ßýÁíàÅø7»øÊ†i1ö¦M»Ð‘ž[KpŠCð>øØ«|ù´f>V ô}*µÖÂAâÅø¨?$ý®Q×B1IEND®B`‚./4pane-6.0/bitmaps/photocopier_40.png0000644000175000017500000000255112120710621016461 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33&%&-,70--555?C3f99A56h3f3AD*Rz4ffA?@bb7IFFQNNXVVWyWBll`[[fffsnnvuv2d–ee—rtŸpp f–f^‰‰e˜˜‚}}‘‚~‚˜˜f‰…†‡„“‘ŒŒ—˜˜ ¦˜˜±šš«§§£¤º³¬¬¸°¯¼µ´ššÉ—È—™ÌËÀ¹¹ËÆÇÕËËÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééùñìÿÿÿùÄ®EtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ²î±8bKGDˆHFIDATxÚµ– wš0†/l­-§Å–ÍöÌ`=u±Ž%bW±À(ÿÿ7-  @Á¯³½$\=OnÞ$7Bö_'üöí'£3ñ¿¾ 8gœ1ÈK4yà\)ß0Õ:ÿx;‹âD*–Wœª—4©)>7û‹Þ,®pÒÖf°8ºA㱑xA?¿kû5NöHuµÞ …ßÀˆ°’“vÁEîC{ú©ø ØOw^¤[^Z±(M±¼ºS€ý¶ ±ÎŒ«¾Ï‰ítãîF–IÂFêäђØÎíAc‡·xú ÐÊçÔ"@«]>8´{µlI€½,¦C.ü©.K<±ôïrïE>²¬2¸éõl§iL£›´tfrË®K‰7 ÌœDÈ•ïi¡ß>àܸn±XÒݳ¥;˜º AÇòDÇÖ½ÁdáˆdÀ}"à Eàyž¨,¼ó†Ò¶!Ûž I';ºÀÇ¢>ß~Þ¦yϲÐ*R‹Fî¹5@^ûdr^¥‹/¥(kaþŒx—àEH~)“—«š7銟H¼T /¦ž<d A’AɨÓÃÕ“*`Úez5ºv´1B„¿éug|±ü ß“ZaÁλÚêw=R„^¦ ‰18׺|º)v-`VŒ"ùpB~X=íU|¶ŒÕ,‹ÂØDQmÚ×xl!Œ,£&ض¥È@Ø¥H´¨‹‘)Åt%>0©kzÝOs‹ÏF¨uU.YÔW;%ßE[aÀÈPcdl4ÎÁ]I³L³2ïkЦhBUºŠ6A††Æ•ñýè#K€ó]¤XËG½¥¸!vkÚy )YÆ|Jo¯’è¢À{h;:ÊØ³ —77 öž{I2y™ÏB†Ã$Ñ> Fº‘íÁgÏbfL9;#=ËV÷3ùp´¨ ºó†M‘S2y7 <#º–—Òâ=©Ë;ŽwÝ)¼çtÙ-q'êàÇÉÇz#Qô§ìx<°Ê® ËzTVÌ0 ÃüdPëÝé½.e'àï?Râo¬«y`d§à˜‰båÚ:ÄØ÷W©u/œ$”ˆÿ‡ú ŒÃ‘4ޤIEND®B`‚./4pane-6.0/bitmaps/kedit.xpm0000644000175000017500000000737612120710621014755 0ustar daviddavid/* XPM */ static const char *kedit[] = { /* columns rows colors chars-per-pixel */ "24 24 155 2", " c #000000", ". c #000709", "X c #000A00", "o c #000909", "O c #0B0602", "+ c #0B0B0B", "@ c #001200", "# c #001C00", "$ c #001F0F", "% c #021616", "& c #011B1B", "* c #171800", "= c #1E1E00", "- c #1A1A26", "; c #012301", ": c #00210E", "> c #022B02", ", c #082507", "< c #002F10", "1 c #09221A", "2 c #023302", "3 c #003B00", "4 c #152100", "5 c #1F2000", "6 c #1B2C1C", "7 c #143800", "8 c #173E09", "9 c #163D16", "0 c #1B351B", "q c #0C3434", "w c #153636", "e c #123B3B", "r c #251000", "t c #2D3409", "y c #2B342B", "u c #2F3F2F", "i c #393B3B", "p c #004000", "a c #004A00", "s c #025C01", "d c #0E5C02", "f c #0B5017", "g c #144314", "h c #1E4314", "j c #145109", "k c #175E00", "l c #1F5C00", "z c #165516", "x c #1E5F1E", "c c #006200", "v c #006C00", "b c #0B6100", "n c #007300", "m c #007E00", "M c #116100", "N c #186018", "B c #235C00", "V c #314A04", "C c #3C4500", "Z c #205720", "A c #304030", "S c #2E6E2E", "D c #324F4F", "F c #3B5252", "G c #4A2600", "H c #4B4C3D", "J c #5F5F3F", "K c #7F5F2F", "L c #745A39", "P c #464646", "I c #494A49", "U c #445744", "Y c #495949", "T c #595B44", "R c #505A50", "E c #5D5854", "W c #436E42", "Q c #477647", "! c #4B714B", "~ c #5D6565", "^ c #606050", "/ c #646564", "( c #666969", ") c #6C6B6B", "_ c #6F7970", "` c #706F70", "' c #737272", "] c #77787D", "[ c #7B7B7B", "{ c #0000BF", "} c #29298D", "| c #33338F", " . c #303090", ".. c #3B3A94", "X. c #1C1CFF", "o. c #2020C5", "O. c #464695", "+. c #5555B6", "@. c #7C7CA9", "#. c #7F7FBF", "$. c #4242F9", "%. c #4C4CF4", "&. c #008100", "*. c #009300", "=. c #009B00", "-. c #00A400", ";. c #738473", ":. c #7D867D", ">. c #7F8080", ",. c #90673B", "<. c #A36E00", "1. c #A77000", "2. c #A1780D", "3. c #836845", "4. c #966F43", "5. c #817FA3", "6. c #FA9117", "7. c #FB931B", "8. c #FFC976", "9. c #FDCC79", "0. c #838383", "q. c #868E86", "w. c #8A8A8A", "e. c #959395", "r. c #999699", "t. c #9B9A9B", "y. c #8282A9", "u. c #8A8AAE", "i. c #A6A6A6", "p. c #A1A1AB", "a. c #AAA9AA", "s. c #A5A5B4", "d. c #AEAEBD", "f. c #B7B7B7", "g. c #B5B5BC", "h. c #BFBFBF", "j. c #8D8DE0", "k. c #ACACD9", "l. c #B0B0C1", "z. c #BDBEC0", "x. c #ACACFF", "c. c #C0BFC0", "v. c #FFE299", "b. c #EFE8AA", "n. c #C4C4C3", "m. c #CACACA", "M. c #D2D2D2", "N. c #DBDBDB", "B. c #E4E4E4", "V. c #E9E9E6", "C. c #ECECED", "Z. c #F6F6F6", "A. c #F8F8F7", "S. c #FEFEFE", "D. c None", /* pixels */ "D.D.D.D.D.D.D.D.D.D.D. @ > D.D.D.D.D.D.D.", "D.D.D.D.D.D.D.D. D. X a n *.@ D.D.D.D.D.D.D.", "D.D.D.D.D.D.D. 3 c =.-.p D.D.D.D.D.D.D.D.", "D.D.D.D.D. @ > v *.*.=.&.; D.D.D.D. ", "D.D.D.D.D. 3 s &.&.&.&.=.3 D.D.D.D.D. L ,.r ", "D.D.D.D. a &.m &.&.&.&.m @ D.D.D. O 4.9.6.G ", "D.D.D. o d n v &.m &.&.c D.D.D. O 4.9.6.<.= ", "D.D.D. < j n v &.&.&.n X D.D.D.O 4.8.7.<.= ", "D.D. o g d s n c n &.3 D.D. O 4.9.7.<.= D.", "D.D. : c B B b c c c @ D. O 4.9.6.<.= D.D.", "D. . h M k d M s 3 u / P O 4.8.7.<.= D.D.D.", "D. 1 V B k 3 2 0 ] a.V.B.E ,.9.7.1.5 D.D.D.D.", " o t C 7 < y ' #...l.A.h.3.v.7.<.* D.D.D.D.D.", " $ 8 4 u ) f.h.....>.x.+.E b.2.J 0.P D.D.D.", "X , 6 >.a.n.z.@.} #.o.X.{ - H T N.S.B.i.i + ", " I r.n.n.z.l.+.>.k.$.x.%.j.V.C.S.S.S.Z.m.) ", "+ I ' w.i.n.u. .d.A.S.S.C.M.Z.S.S.S.M.t.e.( ", "+ i ~ ` ' [ p.s.B.S.S.S.C.h.M.Z.N.r.0.r.:.Y ", " % q F ~ ' ) w.m.Z.S.S.C.n.a.r.[ e.q.! N p ", "D. & w D ( ) 0.e.n.Z.m.w.] ) [ Q x 3 @ ", "D.D. o % e F _ e.w.w.[ ` / Y g , # D.D.D.", "D.D.D.D. & f Q ;.t.0.U 9 ; D.D.D.D.", "D.D.D.D.D. D. 3 z S Z ; X D.D.D.D.D.D.", "D.D.D.D.D.D.D.D. @ ; # D.D.D.D.D.D.D.D.D." }; ./4pane-6.0/bitmaps/photocopier_7.png0000644000175000017500000000263212120710621016404 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33('(-,7-551--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNNXVUWyWDkk`\\fffsmmxvx2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜˜š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÆÕÌÌÒÒËÚÒÒÌÿÿäÜÜîååðééðïðùñìüüü¢Î­GtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆHuIDATxÚµ– {›6€¶|Ø,#­²Ô«…ãÖ“·RQãÔ!IÔ¦1ÿÿ'í„ ŽIží?ú¿wÜéN‚ò8öÂ*„>òFü÷ë+%…”BdøËp(²$“2—Z„ÐÝ[ñãóOùzƒ²Öm‡àúú­ÖŸœ}mb‹n Ë7à·¥{õ-?‚6ôå¡ Æo·Wt•oŽIé;M}ñÛí„‹£p$fA Öƒ»ê‡ß–?çÿÈâ±*ÚƒBÛËAf¦³J^°ÔÀ·€|Â-ž*Ñô¸¸ nуx€ß>Ÿ þŒ®ã£n/*ú<®Í †½-Ó>úô{*#£"Mân߀œ/çãÂ|ÐU•aÀ›§5ž÷/%¥’)ý8…¢èC‡Å¬ßŠ!èì}|=j™ð žówĤ·Ìé$Ž=M­q¡gèõ–tŸÑ%c@4~J|O˜*²ÃÛ$Áº’a»—¤5ÐOa¹§CEçHßã§SLÄóéï¿ZÓ¥¼vzÈJö¶$Öö†ñ÷,â_| VÚ5`T 4\òázf CAc?ÒèÛù`“ŸY»²Çy½öÙ‡Ó‹ .7…¤ÖO¡ísdö D*”bXøÀà³ÀõÊðågŒŒ_eâª#uÞ{HÓT A£Åg_\§|_–÷~Xu¡#qM«þ4!™=x/øI7½ë¬uÖ]Ô†4®T…Æ'á+î9¡\ëË—mØŽ¯ ^ Ý›²?ê$kåj=Q¹Rû'"<»½Z¾ÿ^TÙ»¯Âtê™¶\; Ê×àC±V…ü¸ÌC¾¾À—½k²Z¾ÿÊ¿™5ªñ›nIEND®B`‚./4pane-6.0/ExecuteInDialog.cpp0000644000175000017500000002157413566743310015221 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: ExecuteInDialog.cpp // Purpose: Displays exec output in a dialog // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/xrc/xmlres.h" #include "Externs.h" #include "ExecuteInDialog.h" DisplayProcess::DisplayProcess(CommandDisplay* display) : wxProcess(wxPROCESS_REDIRECT), m_WasCancelled(false), m_parent(display) { m_text = m_parent->text; } bool DisplayProcess::HasInput() // The following methods are adapted from the exec sample. This one manages the stream redirection { char c; bool hasInput = false; // The original used wxTextInputStream to read a line at a time. Fine, except when there was no \n, whereupon the thing would hang // Instead, read the stream (which may occasionally contain non-ascii bytes e.g. from g++) into a memorybuffer, then to a wxString while (IsInputAvailable()) // If there's std input { wxMemoryBuffer buf; do { c = GetInputStream()->GetC(); // Get a char from the input if (GetInputStream()->Eof()) break; // Check we've not just overrun buf.AppendByte(c); if (c==wxT('\n')) break; // If \n, break to print the line } while (IsInputAvailable()); // Unless \n, loop to get another char wxString line((const char*)buf.GetData(), wxConvUTF8, buf.GetDataLen()); // Convert the line to utf8 m_parent->AddInput(line); // Either there's a full line in 'line', or we've run out of input. Either way, print it hasInput = true; } while (IsErrorAvailable()) { wxMemoryBuffer buf; do { c = GetErrorStream()->GetC(); if (GetErrorStream()->Eof()) break; buf.AppendByte(c); if (c==wxT('\n')) break; } while (IsErrorAvailable()); wxString line((const char*)buf.GetData(), wxConvUTF8, buf.GetDataLen()); m_parent->AddInput(line); hasInput = true; } return hasInput; } void DisplayProcess::OnTerminate(int pid, int status) // When the subprocess has finished, show the rest of the output, then an exit message { while (HasInput()); wxString exitmessage; if (!status) exitmessage = _("Success\n"); else if (!AlreadyCancelled()) exitmessage = _("Process failed\n"); *m_text << exitmessage; m_parent->exitstatus = status; // Tell the dlg what the exit status was, in case caller is interested m_parent->OnProcessTerminated(this); } void DisplayProcess::OnKillProcess() { if (!m_pid) return; // Take the pid we stored earlier & kill it. SIGTERM seems to work now we use wxEXEC_MAKE_GROUP_LEADER and wxKILL_CHILDREN but first send a SIGHUP because of // the stream redirection (else if the child is saying "Are you sure?" and waiting for input, SIGTERM fails in practice -> zombie processes and a non-deleted wxProcess) Kill(m_pid, wxSIGHUP, wxKILL_CHILDREN); wxKillError result = Kill(m_pid, wxSIGTERM, wxKILL_CHILDREN); if (result == wxKILL_OK) { (*m_text) << _("Process successfully aborted\n"); m_parent->exitstatus = 1; // Tell the dlg we exited abnormally, in case caller is interested m_parent->OnProcessKilled(this); // Go thru the termination process, but detaching rather than deleting } else { (*m_text) << _("SIGTERM failed\nTrying SIGKILL\n"); // If we could be bothered, result holds the index in an enum that'd tell us why it failed result = Kill(m_pid, wxSIGKILL, wxKILL_CHILDREN); // Fight dirty if (result == wxKILL_OK) { (*m_text) << _("Process successfully killed\n"); m_parent->exitstatus = 1; m_parent->OnProcessKilled(this); } else { (*m_text) << _("Sorry, Cancel failed\n"); m_parent->OnProcessKilled(this); // We need to do this anyway, otherwise the dialog can't be closed } } m_WasCancelled = true; } //----------------------------------------------------------------------------------------------------------------------- void CommandDisplay::Init(wxString& command) { m_running = NULL; // Null to show there isn't currently a running process m_timerIdleWakeUp.SetOwner(this, wakeupidle); // Initialise the process timer shutdowntimer.SetOwner(this, endmodal); // & the shutdown timer text = (wxTextCtrl*)FindWindow(wxT("text")); RunCommand(command); // Actually run the process. This has to happen before ShowModal() } void CommandDisplay::RunCommand(wxString& command) // Do the Process/Execute things to run the command { if (command.IsEmpty()) return; DisplayProcess* process = new DisplayProcess(this); // Make a new Process, the sort with built-in redirection long pid = wxExecute(command, wxEXEC_ASYNC | wxEXEC_MAKE_GROUP_LEADER, process); // Try & run the command. pid of 0 means failed if (!pid) { wxLogError(_("Execution of '%s' failed."), command.c_str()); delete process; } else { process->SetPid(pid); // Store the pid in case Cancel is pressed AddAsyncProcess(process); // Start the timer to poll for output } } void CommandDisplay::AddInput(wxString input) // Displays input received from the running Process { if (input.IsEmpty()) return; text->AppendText(input); // Add string to textctrl } void CommandDisplay::OnCancel(wxCommandEvent& event) { if (m_running) m_running->OnKillProcess(); // If there's a running process, murder it else // If not, the user just pressed Close { shutdowntimer.Stop(); // Stop the shutdowntimer, in case it was running (to avoid 2 coinciding EndModals) wxDialog::EndModal(!exitstatus); } } void CommandDisplay::AddAsyncProcess(DisplayProcess *process) // Starts up the timer that generates wake-ups for OnIdle { if (m_running==NULL) // If it's not null, there's already a running process { m_timerIdleWakeUp.Start(100); // Tell the timer to create idle events every 1/10th sec m_running = process; // Store the process } } void CommandDisplay::OnProcessTerminated(DisplayProcess *process) // Stops everything, deletes process { m_timerIdleWakeUp.Stop(); // Stop the process timer delete process; m_running = NULL; SetupClose(); // Relabels Cancel button as Close, & starts the endmodal timer if desired } void CommandDisplay::OnProcessKilled(DisplayProcess *process) // Similar to OnProcessTerminated but Detaches rather than deletes, following a Cancel { m_timerIdleWakeUp.Stop(); process->Detach(); m_running = NULL; SetupClose(); } void CommandDisplay::SetupClose() // Relabels Cancel button as Close, & starts the endmodal timer if desired { if (((wxCheckBox*)FindWindow(wxT("Autoclose")))->IsChecked()) shutdowntimer.Start(exitstatus ? AUTOCLOSE_FAILTIMEOUT : AUTOCLOSE_TIMEOUT, wxTIMER_ONE_SHOT); ((wxButton*)FindWindow(wxT("wxID_CANCEL")))->SetLabel(_("Close")); } void CommandDisplay::OnProcessTimer(wxTimerEvent& WXUNUSED(event)) // When the timer fires, it wakes up the OnIdle method { wxWakeUpIdle(); } void CommandDisplay::OnEndmodalTimer(wxTimerEvent& WXUNUSED(event)) // Called when the one-shot shutdown timer fires { wxDialog::EndModal(!exitstatus); } void CommandDisplay::OnIdle(wxIdleEvent& event) // Made to happen by the process timer firing; runs HasInput() { if (m_running==NULL) return; // Ensure there IS a process m_running->HasInput(); // Check for input from the process } void CommandDisplay::OnAutocloseCheckBox(wxCommandEvent& event) { shutdowntimer.Stop(); // Either way, start with stop if (event.IsChecked() // If the autoclose checkbox was unchecked, & has just been checked && m_running==NULL) // If the process has finished/aborted, start the shutdown timer shutdowntimer.Start(exitstatus ? AUTOCLOSE_FAILTIMEOUT : AUTOCLOSE_TIMEOUT, wxTIMER_ONE_SHOT); } BEGIN_EVENT_TABLE(CommandDisplay, wxDialog) EVT_CHECKBOX(XRCID("Autoclose"), CommandDisplay::OnAutocloseCheckBox) EVT_IDLE(CommandDisplay::OnIdle) EVT_BUTTON(wxID_CANCEL, CommandDisplay::OnCancel) EVT_TIMER(wakeupidle, CommandDisplay::OnProcessTimer) EVT_TIMER(endmodal, CommandDisplay::OnEndmodalTimer) END_EVENT_TABLE() ./4pane-6.0/doc/0000755000175000017500000000000013566742225012244 5ustar daviddavid./4pane-6.0/doc/FileviewCols.htm0000644000175000017500000000534312120710621015332 0ustar daviddavid Fileview Columns
The Statusbar  The Statusbar   The Display  The Display   Drag'n'Drop  Drag'n'Drop

Fileview Columns

The right-hand part of each twin pane is a file-view: it shows the contents of the directory selected in the dir-view. While a dir-view has only one column, containing the directory names, a file-view can have several. The first, the Name column, is always present. The others are configurable, either from the file-view Context menu, or by right-clicking on a column header.

The optional columns are: Extension (the 'txt' bit of foo.txt); the Size of each file; its date and Time; Permissions; Owner; Group; and finally Link, which shows its target if it's a symlink. You can also choose to Show All the columns, or None (except for the name).

From the file-view context menu, or that of the 'ext' section of the column header, you can also choose how much of a multi-dot extension is displayed in the 'ext' column. By default an extension starts at the first '.' e.g. for foo-1.2.tar.gz it will be 2.tar.gz. This isn't always what you want, so you can change it to the last dot, or the penultimate one (appropriate for e.g. foo.tar.gz).

You can alter the width of a column by dragging the border between its header and an adjoining one. If you click once on the header of a column, the files will be sorted by that column's data; click again, and the sort will be reversed. For example, two clicks on the Size column header will sort the files by size, with the largest first.

Which columns are shown, their widths, and how they sort, are some of the things saved by Options > Save Pane Settings and Options > Save Pane Settings On Exit.

./4pane-6.0/doc/ConfigureUserDefTools.htm0000644000175000017500000002016613440442444017172 0ustar daviddavid User-defined Tools
Configuring Shortcuts  Configuring Shortcuts   Configuring 4Pane  Configuring 4Pane   Devices and Editors  Devices and Editors

User-defined Tools

One of the good things about using a gui file manager is being able to select several files, then do something to them e.g. rename or delete them. But rename etc has to be built into the file manager. Wouldn't it be nice if it were possible to extend this idea to process selected files using commands of your own. Well, with 4Pane you can do exactly this. A user-defined tool can call any available commands or scripts, to which you can pass selected items as parameters.

Though you can run programs that don't need parameters, such as 'df -h', you'll usually want to use them. This is how:

  • %s is replaced by a single selected file or directory.
  • %f is replaced by a single selected file only; directories are ignored.
  • %d is replaced by a single selected directory only; files are ignored.
  • %a is replaced by all the items selected in the active pane.
  • %b is replaced by a single selected item from both of the file-views.
  • %p will ask the user each time the command is run for a parameter to pass to the application.
  • %% is replaced by %, in case you need to use one in a script.
Sometimes you'll want finer control over which pane the items come from. For the 's', 'f', 'd' and 'a' parameters this can be done using the following modifiers (these examples use %s, but the other parameters could be substituted):
  • %1s An item from the left (or top if the split is horizontal) dir-view.
  • %2s An item from the left (or top) file-view.
  • %3s An item from the right (or bottom) dir-view.
  • %4s An item from the right (or bottom) file-view.
  • %As An item from the currently Active pane.
  • %Is An item from the Inactive pane (the equivalent pane on the opposite side).
Since 4Pane 6.0 you can also use:
  • %5s An item from the Active left (or top) dir-view.
  • %6s An item from the Inactive (or top) dir-view.
  • %7s An item from the Active right (or bottom) file-view.
  • %8s An item from the Inactive right (or bottom) file-view.
Note that some combinations aren't sensible (e.g. %3f: you can't select a file in a dir-view); and multiple modifiers aren't permitted (e.g. %A3d).

These parameters can be combined or repeated as appropriate e.g. ~/myscript %p %a %p will prompt the user for two string parameters, then pass these and all the currently selected items to myscript.
diff -u %2f %4f will diff two selected files, one from each file-view ("diff -u %b" or "diff -u %Af %If" would do the same if a file-view is active).
rsync -avu %3d/ %1d will update the contents of the selected directory in the left dir-view to match those of the right dir-view selection (the extra '/' is needed by rsync).

You can run a tool with superuser privileges without opening a terminal: tick the box when you Add the tool. However this ability is limited: the command should be one that quickly returns, e.g. fdisk %p, not one that will linger like kwrite %f; and as there's no terminal there is nowhere to display output, so there's no sense in doing something like fdisk -l. Instead try using an outside front-end such as kdesu or gksu e.g. kdesu kwrite %f; or in a terminal by prefixing 'su -c ' or 'sudo '.

The available user-defined commands can be run from the Tools > Run a Program menu or from the context menu. Alternatively you can give a tool a keyboard shortcut: see Configuring Shortcuts.


Add a new tool
4Pane comes with a "starter-pack" of these tools, but the idea is to add your own. You can do this in the Tools section of Options > Configure 4Pane. In the first box of the Add a tool sub-page, type in the full command e.g. myscript %f %p.

If the command needs to run in a terminal e.g. df -h, tick the "Run in Terminal" tickbox below. Some terminal commands (again df -h is a good example) display their output in the terminal, then immediately close before you can read the results. To prevent this, tick the "Keep terminal open" box.

The next two tick-boxes are 'Refresh pane after' and 'Refresh opposite pane too'. They are for commands that don't run in a terminal, and tell 4Pane to update either the current pane, or both of them, once the command has finished running.
You'd want this for a command that affects the files in one of the visible panes. For example, this mini-script uses imageMagick to resize all the selected files to quarter-size:
for image in %a; do path=`dirname ${image}` && filename=`basename ${image}` && name=`echo ${filename} | cut -d\'.\' -f1` && ext=`echo ${filename} | cut -d\'.\' -f2` && convert ${image} -resize 25%% ${path}/${name}-25%%.${ext}; done
You'd like to be able to see that the size of the files has changed when the command has finished running, so tell 4Pane to update the current pane by ticking the 'Refresh pane after' box.

The last tickbox is for when you want to run a program as root, and don't need to be shown any detailed output; for example, editing a root-owned file in a text editor. If you do need to view output you need to run in a terminal instead.

In the second box type the label: the words that you want to be seen in the Tools menu; if you leave this blank, the command itself will be used.

Lastly you need to choose to which menu or submenu the command should be added. The default is Run a Program, but you can also select any available submenus. You can create a new submenu, or delete the currently selected one, using the buttons on the right.


Edit an existing tool
The next sub-page lets you edit existing tools. Select from the dropdown box the label of the tool to be edited; the command and "in terminal" etc status will be shown below. When you have the correct tool selected. click the "Edit this Command" button. You will then be able to alter any of the entries. When you've finished click the button again (it will have changed its label to "Click when finished").


Delete an existing tool
The last sub-page handles deletion. Select the tool to delete from the dropdown box, then click the "Delete this command" button. An "Are you sure" dialog will appear, to allow you to change your mind.


Once the data has changed, the Apply and Cancel buttons become enabled. When you've finished all your alterations, click "Apply" (or Cancel if you've changed your mind). Until you do this, the results are not saved.

If you've finished configuring, click "Finished" to close the Configure dialog.

./4pane-6.0/doc/RegExpHelp.htm0000644000175000017500000001317212120710621014741 0ustar daviddavid Regular Expression Summary

Regular Expression Help


The following match as stated:

 . any single character
 $ end of a line
\< start of a word
\b either edge of a word
[asd] a, s or d
[^a-zA-Z] Anything except a letter (the ^ negates)
 ^ beginning of a line
\> end of a word
\B empty string not at the edge of a word
[a-d 0-9] abcd0123456789 or space



Repetition Operators:

? The preceding item will be matched zero or one times
* The preceding item will be matched zero or more times
+ The preceding item will be matched one or more times
{n} The preceding item will be matched exactly n times
{n,} The preceding item will be matched n or more times
{n,m} The preceding item will be matched from n to m times



Shortcuts:

[:alpha:]  [:lower:]  [:upper:]  [:digit:]  [:alnum:]  [:punct:]  [:blank:]  [:cntrl:]  [:graph:]  [:print:]  [:space:]  [:xdigit:]

[:blank:] means space or tab.  [:space:] means space tab CR FF NL or VT
[:print:]  means  [:alnum:], [:punct:] or [:space:]
[:xdigit:] means a hexadecimal digit, i.e. [0-9A-Fa-f]

Note that these shortcuts still need to be in brackets. Yes, really! e.g. [[:punct:]e] matches punctuation or 'e'

\w is a synonym for [[:alnum:]]     \W is a synonym for [^[:alnum]]
( ) do their usual precedence thing.  | is the OR operator  e.g. d(i|o)g matches dig or dog


For less concise information, including about backreferences, see man grep. If then you are still insufficiently confused, try man 7 regex. ./4pane-6.0/doc/DnDSelectedCursor.png0000644000175000017500000000026512120710621016245 0ustar daviddavid‰PNG  IHDRóÿabKGD²æÈn pHYs  d_‘tIMEÔ  °ž§~BIDATxœc` ü‡b ÀH¤0C0ô1â2™ÀÈÀÀÀÀD¦f¸‹ðy(—x ¢Ä D»¯+H‰F¼‚! ¨'  †ÜIEND®B`‚./4pane-6.0/doc/UnRedo.htm0000644000175000017500000001166512120710621014137 0ustar daviddavid Undo/Redo
The Properties Dialog  The Properties Dialog   Toolbar  Toolbar   Multiple Renaming or Duplication  Multiple Renaming or Duplication

Undoing and Redoing an Alteration

You can access this from the Edit menu (or the Context menu) or use the shortcuts Ctrl-Z and Ctrl-R respectively; but the most convenient way is to use the pair of curved arrows on the main toolbar (which will be disabled unless there are alterations available).
In what follows I'll mostly refer to Undoing things, but Redoing is exactly the same.

There are two ways to use these buttons:
  • Click the main part of the button. The next available alteration will be undone. More clicks, more undos. This is also what you get from a menu or a shortcut.
  • Use the "dropdown" arrow to the right of the main button. A menu-like window will appear, that lists the available items to undo. Select one and all items up to and including it will be Undone. If there are too many to show on one page (15 by default but you can change this in Options > Configure 4Pane > Misc) there will be a 'More' entry at the bottom to show the next page.
    Each item will give you some idea what you'll be Undoing e.g. Undo Delete or Undo Rename (17 items).
As you just read, actions are clustered: if you rename 17 items, you get to Undo and Redo these all at once; if you delete a directory containing hundreds of files, it appears as just one deletion. This is normally what you'd want (you really wouldn't want to have to undo hundreds of deletions one by one) but it does mean that if you decide you only wanted to rename 16 of these files, you have to Undo them all, select the correct files and rename again.

You should be able to go up and down the list, Undoing and Redoing the items, as often as you wish. However there are four situations where Redoing will no longer be possible:
  • If you reach the maximum number of allowed Undos. After this, when you add an extra Undo, the oldest one on the list is silently discarded.
    By default that maximum number is 10000, which should be enough for most people. However it isn't quite as good as it seems: Deleting 17 selected files uses up 17 Undo items (as data for each has to be stored). However deleting a directory with all its contents counts only as one. You can change the maximum number of Undos in Options > Configure 4Pane > Misc, but the change won't take effect until 4Pane is restarted.
  • If you Undo several alterations, and then do something else, you can't then Redo those several alterations. This is intentional: there would be no guarantee that those Redos were still possible and safe.
  • For similar reasons, if you empty the 'Deleted Can' (Options > Permanently delete 'Deleted' files) all Undo/Redos are lost. A warning message is shown first.
  • If something is done outside 4Pane. Suppose you rename a file, and then a different application deletes it. You clearly cannot then Undo the rename. Not only that, but if this happens 4Pane decides it can't trust any upstream Redo, and discards them.
The moral: You can't absolutely rely on the Undo/Redo system. It will work 99.9% of the time, but if you contemplate doing something that will hazard important files, I strongly suggest backing them up first. (Perhaps this would be a good time to re-read the licence and disclaimer.)

Most things that you do to your filesystem with 4Pane can be Undone and Redone. However there are some that can't. The main exceptions are:
  • Extracting an archive (Archive > Extract Archive or Compressed Files)
  • Anything that you do in the Terminal Emulator or Command-line, or with User-defined tools.
  • Permanently Delete, which intentionally bypasses the Undo/Redo system, thus trading safety for speed.


./4pane-6.0/doc/RAQ.htm0000644000175000017500000001063613440442444013376 0ustar daviddavid RAQ
FAQ  FAQ   Contents  Contents   Licence and Disclaimer  Licence and Disclaimer

Rarely Asked Questions

  • Why did you write 4Pane?
    I used to use a free MSWindows file manager called PowerDesk. When in 2003 I upgraded to Linux, I couldn't find an equivalent dual twin-pane file manager. There were various half-written, unmaintained efforts; and there was Nautilus (which wasn't exactly feature-rich) and Konqueror (which was slow, bloated and crashed twice a day). So I decided to write my own. It took a bit longer than I expected...

  • What toolkit does 4Pane use?
    It's written using wxWidgets, which is a cross-platform toolkit that tries to look native on each platform. As a result, 4Pane has a gtk appearance (though gtk-qt-engine often gives a good kde look).

  • Does that mean that 4Pane will work on other platforms?
    No, there are lots of Unix-only bits in it.
    4Pane is known to work on Linux and (since 4Pane 3.0) on GNU-hurd. I've not tried it on other Unices, but it might build and work on any that use the GNU C library. As I understand it, that means that it won't work on BSDs (though it could probably be adapted if there's overwhelming demand).

  • What about older hardware, and previous versions of distros?
    I've tested 4Pane on an old machine with an AMD K6-2 150 processor. It ran surprisingly fast, and was quite usable. (It took 10 minutes to build, though!) The only problem with old equipment is likely to be the display size: you won't enjoy using it at 800x600, and some of the configuration dialogs won't fit on the screen. (Update: since 0.7.0 they will.).
    Old distros shouldn't be a problem. 4Pane builds and runs on Redhat 7.2, which is 2001 vintage.

  • Which version of wxWidgets should I use?
    Many distros provide wxWidgets as a binary package (.rpm or .deb or whatever: the name often starts with wxGTK-). Early 4Pane versions would build and work with any version from wxGTK-2.4.0 to wxGTK-2.8.12. 4Pane 6.0 requires wxGTK-3.0.0 or later. Since 2018 all the main distros have at least wxGTK-3.0.0

    If you're building wxWidgets from source, use the latest stable version. The only exception to that is if you want to use gtk1.2, in which case consider wxGTK-2.6.3 (it's the last wx version extensively tested against gtk1.2) and use 4Pane 0.6.0, as later versions of 4Pane won't build against it.

  • Huh? Why would I want to use gtk1.2? It's old and less pretty.
    wxWidgets applications display noticeably faster using gtk1.2. Also, if you're not using gnome as your desktop, and your distro is a 2005/6 version or older, the way gtk2, wxWidgets and the theme engine interact results in severe ugliness. It's not a problem nowadays, and almost everyone should use gtk2 or 3.

  • And what about wxX11?
    wxX11 is a wxWidgets port that doesn't use any version of gtk. You might want this if you're using a minimalist distro, and you don't have the space for either gtk. It's not beautiful, but it works (though tooltips don't, and scrolling/resizing corrupts the screen a bit, and...). Very few people should choose it; but if you do, use wxX11-2.8.12 and 4Pane 2.0 (later versions won't compile).

./4pane-6.0/doc/Softlink.png0000644000175000017500000000162513440442444014536 0ustar daviddavid‰PNG  IHDRP.ˆçn.€PLTE!"+#,'.*.,0/3 4: 9?894CJERPXYc%`jB€‹G…ŒW“Z“žY”›Y”ž\—ž^– _™ a™¤cœ¦d›¦hŸ®h ªi¡«j «j¢¬m£ªl£­n¤«m¤®n¥®n¥¯n¤°p¤¯p¦¯p¥±p¦°q§°s§³s§µs¨±t©±t©²uª³u©µw«´wª¶x¬µz®¶{¯·|°·|°¸~±¹²º™ÇQO™™ÿÿ³º³»‚´¹‚´¼„³¼„µ½…¶½…¶¾‡µ¾Š·¿ˆ¸¿Š¹ÀŠ¸ÂºÄŽ»ÅŽ¼Ã‘¾Å“¿Æ–¿Ç”¿É”ÀƘÂÉ™ÃÊœÆË¡ÉÎ¥ËЯÑÕ´ÔØíÒÀ´Ê‡btRNS@æØfbKGDˆH pHYs  šœtIMEÕ#b“/ŸŽIDAT8Ëí•iSÂ0†oTâ1ã­(ŠŠ'b•"-M­ˆG+â1*ÿÿO˜ ›føÂLßé´M¶yvÓl6 (P >T•SO†õ¨ëU½¦.î(]€ *¤¶ Ì6ϵ<’~üXJwÂå³'5#6WÅp4£ìãy?Ü\ Ç#ê·‰Äiã:B¡‰ð¬em.ÅżåÅrêsj24FÍ© N[ÑÊšøµ—(ÖÞ¤J lZ%TDÄ#ÌZCÊœ˜Hêf( „Ž¥7е2¢È¥ B°õ¶þHÃIEND®B`‚./4pane-6.0/doc/Move.png0000644000175000017500000000047512120710621013642 0ustar daviddavid‰PNG  IHDR**•SbKGDÿÿÿÿÿÿ X÷ÜòIDATxÚíšAà “þÿÏ驇"¡°kc4sÉ¡²GÆ&)Ç[s]ÿÏxÎlîžayú´ýb‹ ÝÒq»8w=rö÷y>Yjæx[aTæCò§|Ñ ]„ŠA¨„ŠIš?<\ñ mªrŒiãì‹ JÈ-2ú]¾Ÿ¹BÝ[ztý¸8LšÕÇ·¦ ¦¼síUˆª§e}¾ëçe®P÷]•8ä¸ÏŸùë÷Ðü¡ñŽªçgYâ|¾Û„ŠA¨„Š)&T5lø×³á­ÿô/zžZ÷¢CQ¡?¸ŠcbËb›‘ÿ¦ôLNcöå…îIIEND®B`‚./4pane-6.0/doc/OpenWith.htm0000644000175000017500000000776013205575137014521 0ustar daviddavid The "Open With" dialog
Opening and Launching  Opening and Launching   Using 4Pane  Using 4Pane   FAQ  FAQ

The "Open With" dialog

This is 4Pane's substitute for MIME-types. You can get to the dialog by right-clicking a file and choosing "Open with...", or by double-clicking a file that has an extension unknown to 4Pane.

In the middle of the dialog is a tree of the applications that 4Pane knows about, stored in folders with names like Editors or Graphics. You can add more folders using the "Add Folder" button on the top right, and delete the currently-selected folder with the "Remove Folder" button. If a folder isn't empty, it has an Expand box to the left of its name. Clicking this opens it to show the names of the contained applications.

Select one of the folder's applications. You will see that its name is now displayed in the box at the top of the dialog, and the "Edit Application" button is now enabled. Clicking OK at this stage will open the file with that application just this once, without altering any settings.

To make persistent changes, click the "Edit Application" button. A new dialog appears, showing the settings for the application. You can alter any of these, but you will most often want to add or remove entries in the "Extension(s) that it should launch" box. This contains the extensions that this application can open e.g. txt for a text editor. If the application can cope with several different extensions, put them all here, separated by commas e.g. htm,html,HTM,HTML. Though I've called these entries 'extensions', and they almost always will be, you can actually put filenames there too if appropriate: for example, you might well want an editor to open "README" files, so enter txt,README,readme.

At the bottom of the dialog are two tickboxes. The first says "Open in terminal". A few applications will only work from a terminal, in which case tick this box. The other button, "Always use the selected application for this kind of file" does just that. If you tick this, the selected application will be used in the future if you double-click any file with this extension. Such extensions are displayed bold in the "Extension(s) that it should launch" box.

The other buttons at the top of the "Open With" dialog are "Remove Application", which does just that, and "Add Application", which launches a dialog similar to the "Edit Application" one just described.

That was all a bit confusing, so let me recap. You want an application to be associated with files having a particular extension, and so to appear on those files' context menu's "Open with..." submenu. Add that extension to the application's "Open With" dialog entry. If you want several applications to appear on the submenu, do this for each of them.
You want files having the extension "bar", when double-clicked, automatically to open in an application called "foo". Make sure that foo has an entry in the dialog, and the entry contains the extension bar. Then tick the entry's "Always use the selected application for this kind of file" box.

./4pane-6.0/doc/Tools.htm0000644000175000017500000001326213205575137014056 0ustar daviddavid The Tools menu
The Mount Menu  The Mount Menu   Menu Sections  Menu Sections   The Options menu  The Options menu

The Tools menu

What is a Tool? An outside program that is called from 4Pane, and the results displayed by 4Pane. There are three of these built-in, but you can add more yourself.

The first three menu-items are for the standard tools: Locate, Find and Grep. Selecting one of these invokes the appropriate dialog, and the results are displayed in the Terminal Emulator.

Locate is the quickest way of searching for a file or directory, as it looks up a database rather than each search scanning the filesystem. If it isn't already available on your system, install the 'findutils' package. Its search pattern can contain the simple wildcards *, ? and [Aa] (but see the -r option below).
The Locate dialog is quite simple; most often you'll just put the search string in the box and click OK. It keeps a history of the searches that you can access from the dropdown arrow or the Down/Up keys. There are also options that may occasionally be useful:

  • -b returns only matches in the last segment of a filepath; so the pattern 'foo' would match /bar/bigfoot but not /bigfoot/bar.
  • -i ignores case, so that 'foO' would match /Foo, /FOO etc
  • -e checks for the continued existence of each match, in case it had been deleted since the last database update. This might take a little time.
  • -r says to treat the pattern as a Regular Expression.


Grep comes in two flavours. For everyday use there is Quick Grep, which is easy to use but provides only the commonest options; and Full Grep, which has many more (see below).

In the Quick Grep dialog, all you absolutely must fill in is the search pattern and the search path, though there are other (self-explanatory) things too e.g. 'ignore binary files'. There are convenient shortcuts for the path: $HOME, '/' and (the most useful) the currently-selected directory. These settings are remembered by the dialog, as are recently used patterns and paths.
At the top of the dialog is a button to take you to the Full Grep dialog instead, and a checkbox to tick if you want that to be the default.

Since 4Pane 5.0, Find similarly has 'Quick' and 'Full' alternatives.

The Find and Full Grep dialogs definitely aren't simple; in fact they are too complicated to describe in detail here. Instead I've made them as self-describing as possible. Both split the numerous available options into several pages, and most options have a detailed tooltip.
For Find you will almost certainly want, as a minimum, to select from the Path and the Name pages; for Full Grep the File Options, Pattern and Location pages. As you will see, selections made on a page aren't added to the command until the Add to Command String button is clicked.
Most items that require you to provide a name e.g. the Find path, have a history. The final command also has a history, so you can alter and repeat one of the previous commands. You can also do this from the Terminal Emulator's history.

The output of these commands are a list of files displayed in the Terminal Emulator, and you'll often want to open one or more of them. You can, by:
  • Double-clicking one of them. If it's an executable file, it will be run. Otherwise, if it's a filetype that 4Pane knows how to deal with (e.g. a .txt file) it will be opened, or else the Open With dialog will appear.
    If instead, while you double-click, you press the Ctrl key, instead of opening the file you will "Go To" it: the current pane will display its directory, with the file itself selected.
  • Right-clicking over a file. A context menu will appear that contains those alternatives: Open or Go To.

Next a single item, Launch Terminal (Ctrl-T). This does just what is says: it opens a new console window, which will use the current selection as its path. You can configure which console application is opened (konsole, gnome-terminal etc) in Options > Configure 4Pane > Terminals.

The rest of the menu deals with user-defined tools: programs or scripts that you have chosen yourself (from the Options > Configure 4Pane); more about these here.
Run a Program opens a submenu from which you can select one of these tools. Once you've run one of them, the last command, Repeat Previous Program, allows you easily to repeat it.

./4pane-6.0/doc/Open.htm0000644000175000017500000000637513205575137013666 0ustar daviddavid Opening and Launching
Previews  Previews   Using 4Pane  Using 4Pane   FAQ  FAQ

Opening and Launching

Opening a file

If you double-click e.g. a text file (a file with the extension ".txt"), 4Pane tries to open it in your chosen text editor. Since 4Pane 3.0 there are two ways it can decide which editor to use:
  • It can ask your system for the default application for that extension, and use that.
  • The original, built-in method. When 4Pane first starts, it searches your system for standard applications like kwrite and gedit, and 'associates' these with text files. You can change these and add others at any time using the "Open With..." dialog.
By default it tries the first way first, then the second, but this can be configured here. If you try to open a file that isn't recognised, the "Open With..." dialog will automatically open.

Another way to open a file is from the context menu, and this is useful if there is more than one application available to open a particular type of file. If you right-click such a file, one of the items in the resulting context menu will be "Open with...". Selecting this produces a submenu containing the known applications appropriate to the file; beneath these will be the option "Other" which again leads to the "Open With..." dialog.

If you bring up a context menu for a file that 4Pane doesn't know how to open, it will still contain "Open with...", but this time not as a submenu. Selecting it will once again produce the "Open With..." dialog.

Launching an Executable file

An executable file is an application or a script that your computer can run. If you double-click such a file in 4Pane it will be launched (assuming that you have the right permissions etc).

However you might sometimes want an executable script to be opened in an editor instead of running. The easiest way to do so is to drag it onto an Editor icon, but an alternative is to double-click the file while pressing the Ctrl key. 4Pane will then treat it as though it were not executable, and try to open it.

./4pane-6.0/doc/Chapt.hhk0000644000175000017500000000035512120710621013756 0ustar daviddavid
./4pane-6.0/doc/Bookmarks.htm0000644000175000017500000000560012120710621014663 0ustar daviddavid The Bookmarks menu
The Tabs Menu  The Tabs Menu   Menu Sections  Menu Sections   The Archive menu  The Archive menu

The Bookmarks menu

A bookmark is, as you will have guessed, a way to save a filepath. You can have up to 9000 of them, which you can arrange in folders (and if you have anything like 9000 of them you'll need to). Choosing a bookmark from the menu will bring up its filepath in the current pane.

The only permanent menu-items are Add to Bookmarks and Manage Bookmarks. The bookmarks themselves appear below, with each folder shown in a submenu.

To bookmark the currently-highlit file or directory, click Add to Bookmarks. A dialog will appear, which confirms the filepath and allows you to choose a label. The default label will be the filepath itself, but you may want something shorter e.g. "2007 Holiday Pictures" instead of "/home/yourname/Documents/Pictures/2007 holiday/". By default a bookmark is created in the main Bookmarks part of the menu, but you can select a different folder by clicking the Change Folder button.

Manage Bookmarks invokes the Manage Bookmarks dialog, which contains a tree of the current bookmarks and folders. Clicking the appropriate button allows you to add a new folder or separator below the currently-selected bookmark, or inside the currently-selected folder. You can also Edit or Delete the current selection. Alternatively you can manipulate entries using the standard Delete, Cut, Copy and Paste shortcuts, or move them by drag and drop (or hold down the Ctrl key to Duplicate). The Duplicate and New Folder shortcuts also work, and right-clicking over an item shows the available commands on a Context Menu.

As I mentioned, if you create a new folder or separator while a folder is selected, the new item will be created inside the folder. So how do you put e.g. a separator below a folder? Create it elsewhere, then drag it to the correct position.

./4pane-6.0/doc/Devices.htm0000644000175000017500000001122613205575137014336 0ustar daviddavid Devices
Editors  Editors   Using 4Pane  Using 4Pane   Keyboard navigation  Keyboard navigation

Devices

On the right of your toolbar should be some icons. Each of these represents a Device that 4Pane has detected on your system.

A Device is a thing like a dvdrom drive or a usbpen. When 4Pane is first run, it does its best to detect which fixed drives are present: dvdrom drives, dvdrw and dvdram drives, floppy drives. Each of these gets an icon. 4Pane also detects removable devices whenever they are plugged in: usbpens, usb card-readers etc. If it hasn't seen that particular device before and can't guess what it is, 4Pane asks if you want to configure it; if so you're asked what type of device it is, and what label you want to give it. A Device icon for it is then added to the toolbar. When the removable device is removed, the icon disappears.

Different distros differ considerably in how they deal with devices. Older ones notice that they exist, but don't do much about it (very old ones didn't detect usb devices at all). More recent distros not only detect them, they also automatically mount any relevant dvdrom disc and any removable device, though the way they do so varies. 4Pane will usually be able to detect which distro you're using, and alter its settings accordingly. For distros that don't automount, it will take over mounting when you click an icon, and unmounting when you tell it to. For well-behaved automounting distros 4Pane will know where a device is mounted, and just display it there.
A few automounting distros are not so 4Pane-friendly. When a device is detected, or a dvdrom inserted, they don't just mount it, they open it with their default file manager. If this is what you want, that's fine: tell 4Pane (in the Devices and Managers page of Options > Configure 4Pane) that the distro automounts; you'll still be able to use the icon. However if you don't want your desktop spammed with multiple file managers, it's usually possible to tell the distro not to open devices, or even to open them with 4Pane (you'll probably enter 4Pane %u). If so, the distro will usually take umbrage and refuse to mount them at all; if that happens, tell 4Pane to do the mounting, making sure that /etc/fstab has the correct entries.

Clicking a Device's icon mounts the device if it's not already, and displays its contents in the currently-selected pane. Dragging or Pasting files onto the icon will Move/Copy them to the device (assuming it's read-write e.g. a usbpen), after first mounting it.

Right-clicking a Device icon will open its context menu (well, it will unless the drive is empty). This will have entries for mounting/displaying its contents (one for each partition of multipartitioned usbdrives) and unmounting/undisplaying. For a device with removable media, there will be an "Eject" option; whether this works depends on the device and your distro.
4Pane is not a dvd burner, and dvdrw devices are considered read-only. However it can mount, read from and write to a dvdram disc, so a dvdram drive context menu will also have a "Mount a DVD-RAM" item.

A mention about floppy drives. Once every computer had one, but they are now rare. Perhaps as a result, in recent distro versions they no longer work. So from 4Pane 2.0, although floppies are still searched for, if one is found the icon isn't shown. Instead the device is marked as 'ignored'; you can always 'unignore' it if you get the floppy drive to work.

Devices are the part of 4Pane that are most likely to need configuring. This can be done on Devices pages of Options > Configure 4Pane.

./4pane-6.0/doc/Chapt.con0000644000175000017500000000556113205575137014007 0ustar daviddavid

Contents

./4pane-6.0/doc/Configure.htm0000644000175000017500000000376112120710621014662 0ustar daviddavid Configuring 4Pane
The Options Menu  The Options Menu   Menu Sections  Menu Sections   Shortcuts  Shortcuts

Configuring 4Pane

The Configure Dialog is where you can configure 4Pane. It has a multi-page format, with one or more pages for each section. Note that most pages have "Accept" and "Cancel" buttons; these pages don't save your changes until you click "Accept".

You will find a detailed description on each page's link:


When you've finished configuring, click "Finished" to close the Configure dialog.

./4pane-6.0/doc/KeyboardNavigation.htm0000644000175000017500000000521413205575137016534 0ustar daviddavid Keyboard navigation
Devices  Devices   Using 4Pane  Using 4Pane   Previews  Previews

Keyboard navigation

I tend to use the mouse most of the time. However from version 1.0 there is more support for those who prefer to navigate from the keyboard.

There are keyboard shortcuts for:

  • Navigating between adjacent panes e.g. from a dir-view to the corresponding file-view.
  • Navigating to the opposite equivalent pane e.g. from a dir-view to the opposite dir-view.
  • Navigating to and from the panes, the toolbar text field, and (if open) the terminal emulator and the command-line.
  • Returning to the previous location (if it's still open).
  • Cycling through the tabs (should multiple tabs be visible).
These shortcuts are configurable, though as usual not all key combinations will work; some will be grabbed by gtk or your desktop environment. Most don't have default settings, so choose your own.


There are also the following ways of moving through a dir-view tree, which are set by the toolkit and can't be changed:
  • The Up and Down arrows, as you'd expect, move up/down to the next visible directory.
  • The Left arrow moves to the parent directory.
  • The Right arrow unfolds the current directory if closed, and moves to the first child. If there isn't one, it moves down.
  • '+' unfolds the selected branch.
  • '-' folds the selected branch.
  • '*' toggles the fold state of the selected branch and all its children.

./4pane-6.0/doc/ArchiveBrowse.htm0000644000175000017500000000701412120710621015477 0ustar daviddavid Browsing Archives
The Archive Menu  The Archive Menu   The Archive Menu  The Archive Menu   The Mount menu  The Mount menu

Browsing Archives

It's one of the features of 4Pane that you can "browse" inside a tar or zip archive without having to extract it (for compressed tars this works for compression by gz, bz2, xz and lzma). In fact browse is an understatement: you can do much more than just look.

Double-click on an archive (NB this only works for archives, not compressed files). You'll see that the dir-view changes to show the archive as the "root directory"; any subdirectories that the archive contains will appear beneath. The file-view will now be showing the archive's contents. Notice that the icon of each file or directory is somewhat ghost-like, to remind you that what you're seeing is "virtual".

You can do most of the things inside the archive that you'd be able to do outside, and in the same ways. So for example you can Cut and Paste files or subdirectories, either from a menu, shortcut or Drag'n'Drop; and you can do this within an archive, between the archive and the "real world", or even between two archives. Undo/Redo works.
Open and Open With appear to work as usual, but here there's a catch: to open foo.txt in kwrite, the text-file is first copied into a real, temporary file; then the temporary file is opened. So although the file isn't officially read-only, any changes that you make will be saved to the temporary file and then deleted. Be warned!

There are a few things that you can't do within an archive. You can't make an archive item a symlink target (it would be meaningless to try). You can't open the Properties dialog for an archive item. You can't create a new item inside the archive; however you can create a file or directory outside the archive, and then Move it in. And if you move a relative symlink within an archive or between archives, it doesn't keep pointing at its previous target.
There's one thing that you can do within an archive but probably shouldn't. Archives are happy to contain two files with the name, and so it's possible to paste a file into an archive directory more than once if you want to. However 4Pane has no way of distinguishing between such files, so if you delete or rename one, both are affected.

There's also an extra thing that you can do: highlighting one or more files and choosing Extract from Archive from the Context Menu allows you to extract just those files to the directory of your choice.

./4pane-6.0/doc/Toolbar.htm0000644000175000017500000001064513205575137014362 0ustar daviddavid Toolbars
The Display  The Display   Contents  Contents   The Statusbar  The Statusbar

Toolbars

4Pane has two sorts of toolbar: there is a standard one near the top, but each dir-view pane has its own small one.

The Main Toolbar

This is divided into three sections.
  • On the left are normal toolbar buttons. The first three are the standard Cut Copy and Paste. Next you'll see two buttons with curved arrows; each button has a thinner partner with a down-arrow. These are for undoing and redoing changes that you've made to your files e.g. Moving, Deleting. The first pair of buttons undo, the second redo. More about this here.
    The next two buttons are to do with tabs. The first creates a new tab, the second deletes the current one.
    The last button turns on or off whether Previews of image and text files are shown.
  • The middle of the toolbar is occupied by a box that displays the filepath of the current pane's selection. This has three uses: it's a visual confirmation of what is currently selected; it's an alternative way of changing it (write in the new filepath followed by Enter); and you can Copy its contents (Ctrl-C), then paste the filepath into a different application.
    If you don't want the filepath to be displayed here, this can be changed in the Display section of Options > Configure 4Pane.
  • The right of the toolbar contains two types of icon: Editors first, then Devices. Clicking an icon opens the editor, or mounts the device. Dragging a file onto the icon opens it in the editor, or moves/copies it to the device.

Dir-view Toolbars

At the top of every dir-view pane is a small toolbar. Its first button has a tree icon on it, and is a toggle button. When it is depressed the pane is in "Full-tree" mode: its topmost directory is always the root, '/' directory. When it isn't, its topmost directory will (probably) be a lower, branch directory e.g. your Home directory.

I use "Branch" mode almost all the time; with an extensive filesystem it's much more manageable to focus down on the bit you're currently interested in. It is more difficult to navigate in this mode, but the next few buttons help. The first (which is disabled in Full-tree mode) goes Up to the next higher directory. The next ones (which you can use in Full-tree mode, but they're much less useful) navigate backwards/forwards through the directory history. Both of these have a companion button to launch a dropdown page, like the Undo/Redo ones on the main toolbar. So if a dir-view starts in Branch mode at /home/yourname; you double-click /home/you/foo/, then use a bookmark to go to /home/you/somewhere/else/bar/, the pane will now have /home/you/somewhere/else/bar/ as 'root' and show its contents. One click on the Back button will take you back to /home/you/foo/, a second to /home/you/ again.

The rest of toolbar is for "GoTo" buttons. These have the same function as bookmarks, but are more convenient. Clicking one in Branch mode changes the pane's root to the button's path; in Full-tree mode it makes that directory visible.
4Pane automatically provides a button for your Home directory, and another for ~/Documents if this exists. You can add others of your choice from Options > Configure 4Pane, in the Display > Configure small-toolbar Tools dialog.

./4pane-6.0/doc/DnDStdCursor.png0000644000175000017500000000031312120710621015241 0ustar daviddavid‰PNG  IHDROc#"bKGDÿÿÿÿÿÿ X÷Ü€IDATxÚ½•KÀ Dg¸ÿíªÑjDäS–&oD´†OPcΟãT?dÚ³b›òœéz]GþqÌ­ÑK€üVmväQUOl‚Ù ½þ²ù ÎG˜üqÑ…ªAÈà ò‚Yo€,DvpÑ _'u»"¸õʼ`öuþÀŸ,Ú®vøIEND®B`‚./4pane-6.0/doc/FAQ.htm0000644000175000017500000000557613205575137013376 0ustar daviddavid FAQ
Menu Sections  Menu Sections   Contents  Contents   Rarely Asked Questions  RAQ

FAQ

  • Why can't 4Pane be like other file managers and have icon-view/one-pane options? There are already plenty of file managers that do that. 4Pane is for people (like me) who want the increased information that a list-view provides, and the ease of navigation that you get with a separate directory pane.

  • OK, but I can't see all that information: with four panes there isn't enough screen width.
    Well, there is a scrollbar... Anyway:
    • You can shrink other panes by dragging their vertical borders, giving more room to the file-view.
    • You don't have to display all of the file-view columns, only the ones that you're interested in.
    • You can use View > Unsplit Panes so that only one pair of panes is displayed.

  • Why doesn't 4Pane look up the mime-type of each file it displays?
    Speed. Opening my /usr/bin directory containing several thousand files used to take less than a second in 4Pane, compared with 15 seconds in Konqueror. Admittedly that was some time ago, and the difference is much less with a more modern computer. Nevertheless, why spend time and cpu cycles checking when you hardly ever need to know the answers?

  • Why isn't 4Pane an ftp client/web browser/dvdrom burner?
    Because it's a file manager. It tries to do one thing, well. If you want to burn a dvdrom, use a dvdrom burner.

  • Why doesn't 4Pane use the orthodox Commander-style shortcuts?
    Because it doesn't try to be a Commander-style file manager. Apart from standard things like Ctrl-C for Copy, it uses a mixture of PowerDesk and Konqueror shortcuts. However you can configure the shortcuts to suit your preferences.

./4pane-6.0/doc/Options.htm0000644000175000017500000001023013440442444014374 0ustar daviddavid The Options menu
The Tools Menu  The Tools Menu   Menu Sections  Menu Sections   The Context Menu  The Context Menu

The Options menu

This is the "Everything else" menu: it contains some miscellaneous things, plus Configure.

The first menu item is Show Recursive dir sizes. Huh? In a dir-view, select a directory containing subdirectories, and in the file-view select one of the subdirectories. In the third section of the statusbar, you'll see "Directory: Foo x.xK of files" where x.x is the total size of the directory's files. By default, 4Pane ignores any subdirectories in this calculation. Why? Because if the selected directory has lots of children, it takes a while recursively to calculate their total size: for example, my /usr takes 15 seconds.
However you may sometimes want the total size. If so, with this item set the statusbar would have read "Directory: Foo x.xK of files and subdirectories". You'll also notice that the fourth statusbar section has changed from (probably) "D F H *" to "D F R H *".
Note that recursive sizes apply only to directories in the file-view. In the interest of speed, dir-views ignore this setting.

Then comes Retain relative Symlink Targets. Huh again? When you Move or Paste a normal symlink (or dirs containing them), 4Pane cleverly retains the original target of the symlink. Most of the time this is what you'll want to happen in the case of relative symlinks too, but occasionally you might prefer it not to happen e.g. if you have a symlink libfoo.so pointing to libfoo.so.0 in the same directory, and you move both. By setting or resetting this item, you can select whichever of these behaviours is appropriate.

Starting with 4Pane 6.0 there is another item in this section: Keep Modification-time when pasting files. When Moving or Pasting files, if the modification time of the new files matters at all you will usually want it to be the current time. But sometimes you might prefer the 'cp -a' behaviour, where the timestamp is set to that of the originals. If this item is ticked, those original times are (as far as possible) preserved. It works for files, dirs and symlinks. It doesn't work for rarer things such as hardlinks, and not when 'browsing' inside archives (where timestamps seem always to be retained).

The next two menu items are Save Pane Settings, which happens immediately, and Save Pane Settings on Exit. The settings saved are what you see on the screen: 4Pane's size, which panes are shown, in which orientation, which file-view columns etc.

You'll remember from the Edit menu that 4Pane has its own Trash and Delete 'Cans'. The next two items, Empty the Trash-can and Permanently delete 'Deleted' files, give you the option of emptying these. While this is the only way (apart from brute force) of emptying the Trash-can, remember that 4Pane automatically empties the Delete-can whenever it exits. However you might occasionally want to Delete it earlier e.g. if you've deleted very large files, and you're short of space on your hard disc.

The final item, Configure 4Pane, is discussed here.

./4pane-6.0/doc/ConfiguringNetworks.htm0000644000175000017500000000407712120710621016751 0ustar daviddavid Configuring Networks
Configuring Terminals  Configuring Terminals   Configuring 4Pane  Configuring 4Pane   Configuring Misc  Configuring Misc

Configuring Networks

This is where you might rarely need to configure how 4Pane interacts with NFS or Samba. Note that NFS and/or Samba must be already installed, configured and running on your computer: 4Pane doesn't do this itself.

The first section of the dialog deals with NFS. The known current or previously available servers are listed; if for some reason you wish to delete one of these, select it and click the Delete button. Underneath is a box for adding a new server. Below this is the filepath for the helper application "showmount". This will normally already be correctly entered, but if your system puts it in a strange place, enter it here.

The Samba section only has one item: the directory where Samba binaries such as smbclient are to be found. This will normally be /usr/bin; if it isn't, enter the correct path here.

How to mount a network partition is discussed in The Mount menu.

./4pane-6.0/doc/Contents.htm0000644000175000017500000000617013205575137014553 0ustar daviddavid Contents

Contents

./4pane-6.0/doc/Tabs.htm0000644000175000017500000000554013205575137013647 0ustar daviddavid The Tabs menu

The View Menu  The View Menu   Menu Sections  Menu Sections   The Bookmarks menu  The Bookmarks menu

The Tabs menu

It's one of the features of 4Pane that you're not restricted to just those four panes; you can have up to 26 different four-pane pages, or Tabs. Each of these can have its own individual orientation, pane sizes and contents. When created, they are named "Page 1", "Page 2" etc, but you can rename each tab as you wish.

Wouldn't it be nice if, having created a set of Tabs that suits you, you could save the combination and reload it another time. Well, you can. A set is called a Tab Template, and you can have up to 26 of them, each with up to 26 pages. So you can have a template that contains the folders where your pictures are stored; another for your music...

Back to the menu. The first five items are almost self-explanatory. New creates a new Tab, Delete deletes the currently-selected one. These actions are also available from the toolbar. Insert inserts a new tab immediately after the currently-selected one. Rename renames the current tab, and Duplicate duplicates it.

The next two items configure the page's appearance. Show even single Tab Head means that, even if the current page is the only one, show its tab bit anyway. This is off by default. Give all Tab Heads equal Width does what it says, even if some names are much longer than others (NB this isn't available when using gtk3).

Finally, three items that deal with Tab Templates. Load a Tab Template opens a submenu that holds any templates that you've stored. Save Layout as Template saves the current Tab setup as a template. Delete a Template opens a dialog that allows you to delete one or more of your templates.

Most of these menu-items also feature on the Tab Context menu, that you can open by right-clicking on a Tab head.

./4pane-6.0/doc/Quickstart.htm0000644000175000017500000000314512120710621015067 0ustar daviddavid Help for people who don't read manuals
Introduction  Introduction   Contents  Contents   Features  Features

Help for people who don't read manuals

Ah, so you don't read manuals either ;) You're not going to miss a lot, but it might help to know that:

  • Most things you do can be Undone and Redone.
  • You can not only browse into archives without opening them, but also open or amend files contained in them.
  • Just about everything is configurable, mainly from the Options > Configure 4Pane menu.
  • You can get context-sensitive help for most elements by pressing F1.

./4pane-6.0/doc/Introduction.htm0000644000175000017500000000260512120710621015416 0ustar daviddavid Introduction
Contents  Contents   Help for people who don't read manuals  Help for people who don't read manuals

Introduction

4Pane is a multi-pane, detailed-list file manager for Linux. It is designed to be fully-featured without bloat, and aims for speed rather than beauty.

It has been built and tested on all the main Linux distros, using both current and older versions. Though it has a gtk-style appearance, it's not tied to any particular desktop.

4Pane's main features are listed here, and there is information about usage in Using 4Pane.

./4pane-6.0/doc/Filter.htm0000644000175000017500000000402312120710621014156 0ustar daviddavid Filtering
The Terminal Emulator and Command-line  The Terminal Emulator and Command-line   The View Menu  The View Menu   Fileview Columns  Fileview Columns

Filtering

Normally a pane will display all the files and/or directories that exist within the dir-view selection. However you might sometimes want to display only some of these: for example, only files with the extension ".txt". This can be accomplished with the Filter dialog, available from View > Filter Display, Context Menu > Filter Display or Ctrl-Sh-F.

? and * are wildcards for one/several characters. You can use more than one filter at a time, separated by ',' or '|'.
So a*.txt,MyText*.txt will show only .txt files beginning with 'a' or with 'MyText'. d?g.txt will show both dog.txt and dig.txt.

Normally these filters apply only to the currently-selected pane, but the dialog has an option for applying the filter to all visible panes at once. It also has a quick way of reverting to "Show Everything", and in a file-view you can choose to display only files.

./4pane-6.0/doc/Menu.htm0000644000175000017500000000350612120710621013642 0ustar daviddavid Menu Sections
The Display  The Display   Contents  Contents   The Context Menu  The Context Menu

Menu Sections

The main menu has the following sections:

  • The File menu is there because, well, it's traditional: every program must have one. The only entry is Exit, to close 4Pane; other file things (e.g. New File or Dir) are in the Edit menu.
  • Edit menu
  • View menu
  • Tabs menu
  • Bookmarks menu
  • Archive menu
  • Mount menu
  • Tools menu
  • Options menu
  • The Help menu has three self-explanatory entries: Help Contents, FAQ and About. You can also access help by pressing the F1 key; wherever possible the resulting help-page will context-sensitive.

./4pane-6.0/doc/Running.htm0000644000175000017500000000446713205575137014405 0ustar daviddavid Starting 4Pane
Main Features  Main Features   Contents  Contents   Using 4Pane  Using 4Pane

Starting 4Pane

The usual way to invoke 4Pane is by typing 4Pane into "Run command" or a console, or putting this in a desktop shortcut.

However you might occasionally need a more complicated method:

  • If you want to open 4Pane at a particular directory (or directories --- one on the left, one on the right), you can pass it as a parameter:
    4Pane /path/to/foo or 4Pane /path/to/foo /path/to/bar
    You would use this if you make 4Pane your desktop manager's default file manager: it would then open a new instance of 4Pane when removable media was plugged in.

  • If you are running a LiveCD: you'd need 4Pane's configuration file to be in a writable location, or in one that persists. You can do this with the -c option: e.g. 4Pane -c /media/usbpen. You can similarly set the directory that 4Pane calls Home by using the -d option.

The first time that you run 4Pane, or whenever a configuration file isn't found, a wizard will appear. Generally this will just acquire information about your system and save sensible defaults, but you also have the option of copying an existing configuration (perhaps one belonging to another user).

./4pane-6.0/doc/Editors.htm0000644000175000017500000000404613205575137014367 0ustar daviddavid Editors
Multiple Renaming or Duplication  MultipleRenDup   Using 4Pane  Using 4Pane   Devices  Devices

Editors

If you look at your toolbar, to the right of the central filepath box you should see one or more icons. Each of these is an Editor that 4Pane has detected on your system.

If you click one of these icons, 4Pane launches its Editor. More usefully, if you drag one or more files onto the icon, the Editor is launched with those files open in it. Some Editors (e.g. kwrite) can open only one file at a time; others (gedit) several.

An Editor can be any application. Though most will be actual editors like kwrite or gedit, good examples of non-editor Editors are LibreOffice and Firefox (both of which 4Pane will automatically add if it detects them). These are applications that will accept files, but there's nothing to stop you creating an icon for an application that doesn't.

You can add a new Editor, or delete one, from Options > Configure 4Pane, in the Display > Misc section.

./4pane-6.0/doc/Chapt.hhp0000644000175000017500000000167013205575137014004 0ustar daviddavid[OPTIONS] Compatibility=1.1 Full-text search=Yes Contents file=Chapt.hhc Compiled file=Chapt.chm Default Window=Contents.htm Default topic=Contents.htm Index file=Chapt.hhk Title=4Pane Help [WINDOWS] ChaptHelp=,"Chapt.hhc","Chapt.hhk","Contents.htm",,,,,,0x2420,,0x380e,,,,,0,,, [FILES] ArchiveBrowse.htm Archive.htm Bookmarks.htm Contents.htm Configure.htm ConfigureUserDefTools.htm ConfiguringDevices.htm ConfiguringDisplay.htm ConfiguringMisc.htm ConfiguringNetworks.htm ConfiguringShortcuts.htm ConfiguringTerminals.htm ContextMenu.htm Devices.htm Display.htm DnD.htm Edit.htm Editors.htm Export.htm FAQ.htm Features.htm FileviewCols.htm Filter.htm Introduction.htm KeyboardNavigation.htm Licence.htm Menu.htm Mount.htm MultipleRenDup.htm Open.htm OpenWith.htm Options.htm Previews.htm Properties.htm Quickstart.htm RAQ.htm RegExpHelp.htm Running.htm Statusbar.htm Tabs.htm TerminalEm.htm Toolbar.htm Tools.htm UnRedo.htm Using4Pane.htm View.htm ./4pane-6.0/doc/MultipleRenDup.htm0000644000175000017500000001217013205575137015664 0ustar daviddavid Multiple Renaming or Duplication
Undo and Redo  Undo and Redo   Using 4Pane  Using 4Pane   Editors  Editors

Multiple Renaming or Duplication

You can access Rename and Duplicate from the Edit menu (or the Context menu) or use the shortcuts F2 and Ctrl-D respectively. If more than one item is currently selected, the Multiple Rename dialog will appear (or Multiple Duplicate: the only difference is its title. From now on I'll just refer to Rename).

The dialog provides three different ways to generate a new name for each item; you can use all or any of these.
  • First on the dialog is Regular Expressions (RegEx). Put the regular expression in the box on the left, and the replacement text on the right. So you could rename BillGates.txt as LinusTorvalds.txt simply by putting BillGates in the first box, LinusTorvalds in the second (remember that letters/digits match themselves in a RegEx).
    You can of course use more complex RegEx.s too. There's a button that shows this help. However exactly what is available depends on your system e.g. backreferences may be missing.

    At the end of the RegEx section is another checkbox, 'Completely ignore non-matching files', which needs some explanation. Suppose you've selected all the files in a directory. It contains a number of .jpeg files that you wish to rename to .jpg, but mixed in with them are also some .txt files. You can use a RegEx to make the jpeg to jpg change, but you don't want to alter the .txt files. With this box ticked, the unmatched .txt files aren't renamed. Untick it and they will be, probably from foo.txt to foo0.txt; which you'll usually not want.

  • You can either prepend or append (or both) some text, either to the body of each original name (the bit before the last '.') or the ext (the bit after it). So you could append '.old' to every name, so that joe.txt becomes joe.txt.old.

  • Finally, you can add either a digit or a letter (uppercase or lower depending on a checkbox), to either the body of each original name or the ext.
    So you can change joe.txt and john.smith.txt to joe0.txt and john.smith0.txt, or joe.txtA and john.smith.txtA etc. You can also choose to add a higher number/letter instead.
    Why does the dialog use the word 'incrementing' to describe this process? Suppose you were to duplicate joe.txt, but joe0.txt already exists. The potential clash will be detected, and the new file called joe1.txt instead. And what about that 'Only if needed' checkbox? If you use one of the other methods too e.g. you prepend extra text, this prevents an unnecessary increment. So joe.txt is changed to newjoe.txt if there isn't already a file called newjoe.txt, or to newjoe0.txt if there is.
Notice that the Regex section is turned off by default, and Appending/Prepending is optional. Incrementing however will always happen automatically if it's needed to prevent a name-clash.

A more realistic example: Your digital camera names each picture 0001.jpg, 0002.jpg etc. You've stored 100 of these pictures in a directory, and you'd like to rename them '2013 Holiday 1.jpg', '2013 Holiday 2.jpg' etc. Select all the pictures and press F2 to get the dialog. Click the 'Use a Regular Expression' tickbox. In the 'Replace' box put [[:digit:]]*.jpg and in the 'With' box 2013 Holiday .jpg. Then set the 'Increment starting with' control to '1' (unless you want the first picture to be number 0) and untick 'Only if needed' (otherwise the first picture will be unnumbered). Click OK and a 'Confirm' dialog will appear, showing the old and new names. This gives you a chance to try again if it wasn't just as you wanted, as well as OK and Cancel.
What is happening? First the RegEx renames all the pictures '2013 Holiday .jpg'. The Increment section then adds a number from 1 to 100 between the second space and the '.' to make the name unique. (Yes, I know there are other ways to have done this, but this one is easy to understand.)


./4pane-6.0/doc/Previews.htm0000644000175000017500000000372113205575137014561 0ustar daviddavid Previews
KeyboardNavigation  KeyboardNavigation   Using 4Pane  Using 4Pane   Opening and Launching  Opening and Launching

Previews

From version 3.0 it's possible to peek at the contents of image and text files. First, turn on Previews from the View menu, by clicking on the toolbar tool or using the keyboard shortcut (Ctrl-P by default). Now if you hover over an image file in a fileview, after a configurable time its contents will appear. Small images will be full-size, but larger ones will be scaled down; the maximum sizes are also configurable. The preview will close when the mouse moves over a different item, or leaves the fileview.

The context of text files can also be viewed in this way. This is often less useful as only the first few lines will be visible, but it may be enough to identify the file that you were searching for.

./4pane-6.0/doc/forward.gif0000644000175000017500000000032112120710621014347 0ustar daviddavidGIF89aòwÄ€€€ÀäËÿÿÿ!ù,–HDD„DDDHDD„DDDHDD„DDDHDD€DDDHDD„D@HDD„DDDH0@„DD€3@DH3ƒ3318@D„1ƒ@DDH€1BD„"""(0 „DDDHD$€ DDHDD„DBHDD„DDD(BD„DDDHD$„DDDHDD„DDDHD”;./4pane-6.0/doc/About.htm0000644000175000017500000000067713566742225014042 0ustar daviddavid About

4Pane



4Pane Version 6.0

Copyright 2019 David Hart
david@4pane.co.uk

www.4pane.co.uk
./4pane-6.0/doc/ConfiguringTerminals.htm0000644000175000017500000000672113205575137017111 0ustar daviddavid Configuring Terminals
Configuring the Display  Configuring the Display   Configuring 4Pane  Configuring 4Pane   Configuring Networks  Configuring Networks

Configuring Terminals

This is about both "real" terminals, and 4Pane's terminal emulator. The first sub-page deals with terminals.

4Pane uses terminals in three ways. It can launch a terminal application (e.g. xterm) via Tools > Launch Terminal (Ctrl-T); it can open a file in a terminal by double-clicking it (or using Open); and it can open an application in a terminal with a user-defined tool.

The top three items on the page all have the same format. On the left is a list of common choices, with the currently-used one highlit. Select whichever you prefer from the list. To the right is a box for you to enter others if you wish (pressing OK adds each to the list).

The first item lets you choose which application to use in "Launch Terminal"; if you write in a different one, you'll probably just need the application's name. The second does the same for Opening an application in a terminal, either directly or from a user-defined tool. This time the command will need an extra option e.g. "xterm -e", so if you add your own you'll need to know what you're doing. The third item is similar, but only for user-defined tools where you want the terminal to stay open once the command has ended so you can read the output e.g. "df -h". Again you'll need extra options, and not all terminals can do this (e.g. gnome-terminal).


The other sub-page is for the terminal emulator and command-line.
First the prompt. Type the format you want into the box. You can use normal characters, and also any of the following options:

  • %H is changed to the full hostname e.g. linux.joe.bloggs.com
  • %h is substituted by the hostname up to the first dot e.g. linux
  • %u is replaced by your username
  • %w becomes the current working directory
  • %W becomes the last segment only of the current working directory
  • %$ is substituted either by $, or by # if you are root.
You can also alter the font used in the terminal emulator and command-line. Click the "Change" button to select a different font, which will be displayed in the adjacent box if valid. There's also a "Use Default" button.

./4pane-6.0/doc/ContextMenu.htm0000644000175000017500000000450413205575137015226 0ustar daviddavid The Context Menu
Menu Sections  Menu Sections   Using 4Pane  Using 4Pane   Undo and Redo  Undo and Redo

The Context Menu

Right-clicking on a file or directory brings up a context menu, the content of which varies slightly, depending on the nature of the selected item.

Many of its items are duplicated from the Edit, View and Archive menus, and have already been discussed there. There may also be Open and Open with... menu items that launch executable files, or open them with appropriate applications.

Since 4Pane 5.0 a fileview context menu has an addition item, 'Sort filenames ending in digits in Decimal order', that requires some explanation. Consider a directory that contains files with names like foo1.png, foo2.png, foo11.png, foo12.png. These will normally display in a different order: 1, 11, 12, 2. For a few such files that won't matter, but what if the directory contains hundreds of numbered photos?
Clicking this item will order them in a more natural way. Note that doing this will affect only the current fileview. Note also that it affects only files where the name ends in a number, not ones like f12oo.txt.

The last menu item, Properties, opens the Properties dialog with the selected item's information.

./4pane-6.0/doc/up.gif0000644000175000017500000000032112120710621013327 0ustar daviddavidGIF89aòwÄ€€€ÀäËÿÿÿ!ù,–HDD„DDDHDD„DDDHDD„DDDHD„DDDHDD€BDHDD„D03BD„DD81€BDDH31 HDD€0 „DDD‚""DHDƒ@D„D0€BDDBHDƒ D„D€BDDHDD„DDDHDD„DDDHD”;./4pane-6.0/doc/Archive.htm0000644000175000017500000001361013440442444014327 0ustar daviddavid The Archive menu
The Bookmarks Menu  The Bookmarks Menu   Menu Sections  Menu Sections   The Mount menu  The Mount menu

The Archive menu

With this menu you can create and manage Archives, and compress/decompress files. Note that it doesn't deal with "virtual" browsing of archives; for this see here.

If the programs are installed on your computer, 4Pane can compress and decompress files using gzip, bzip2, xz, lmza, lzop and compress, corresponding to filenames ending in gz, bz2, xz, lzma, lzo and Z. Similarly it can extract tar, zip, 7-Zip, ar, rar and cpio archives, with filenames ending in .tar.gz, .tgz etc, .zip, .7z, .rar, .ar (and .deb) and .cpio (and rpm). It can create archives using tar and zip; tar archives can be compressed using the above compressors plus 7z. (4Pane doesn't try to create 'standard' 7z archives (like those made in 7-Zip) as these don't store their content's ownership/group info, and so aren't appropriate for Linux. If you especially wish to make an archive compressed with 7z, use .tar.7z.)
All the following are applied to the currently-selected items in the active pane; so to create a new archive containing three particular files, first highlight those files. Most of the dialogs allow you to add extra items later, but pre-selection is usually easier.

The first menu item is Extract Archive or Compressed File(s), with the shortcut Ctrl-E. If the highlit items are compressed files, or a mixture of compessed files and archives, a dialog will appear that lists the items to be decompressed. To the right of the list is a section that allows you to add more items: write in another file, or browse for one, then click the Add to List button.
Below are three tickboxes. If first is ticked, and there are directories in the list, any compressed files in those directories and their subdirectories will be decompressed too. The second deals with overwriting existing files; unless it's ticked, if there is already a file called foo, trying to decompress foo.gz will fail. The third determines what to do with any archives in the list. If it's ticked, archives are decompressed but not extracted: so foo.tar.gz becomes foo.tar. If not, archives are ignored.

If the selected item is an archive (you can only extract archives one at a time; if more than one is selected, only the first will be extracted) you get a different dialog that just asks you to choose a directory in which to put the extracted files. By default this is the currect directory.

Create a New Archive (Sh-Ctrl-Z) brings up a dialog which starts in the same way as the Extract dialog: a list of files to add, and a way to get more. Below is place for you to type in the name you want for the archive; just the main part, the extension will be added automatically. To the right you optionally can choose a different directory to put the archive in; by default it will be the current one.
Finally choose the type of archive to make: tar or zip. If it's tar, you can choose to compress it with e.g. gzip or xz, or not at all; whether to add any symlinks to the archive, or the files that they target; whether to verify the archive afterwards; and whether to delete the original files once they've been added (not a good idea for important files). These choices will persist for future dialogs.

The next item, Add to an Existing Archive, uses a similar dialog to Create a New Archive. It tries to be intelligent: if the current pane has an archive highlit as well as files, it will suggest adding the files to that archive. However it isn't all that intelligent; it doesn't prevent you from adding the file foo.txt to an archive that already contains a foo.txt.

Test integrity of an Archive or Compressed File(s) does this for the selected archive or compressed files, after showing a dialog.

The last item is Compress Files (Ctrl-Alt-Z). It produces a dialog that by now should be familiar. The main difference is that, for compressors where it's appropriate, you can also choose whether to compress faster/less or slower/better.

A few general points:

  • The output of all these commands is shown in a (different) dialog, so you can see what is happening, and what goes wrong. This dialog self-closes after 2 seconds if all goes well, or 5 seconds if there are any failures; if you don't want it to, untick the "Auto-Close" tickbox. These times can be changed in Options > Configure 4Pane > Misc: Times.
  • Enormous archives will take a very long time to process and display; to backup a whole filesystem, you might prefer to use a terminal.
  • 4Pane subcontracts these commands to other programs (tar, gzip etc). As a result they are outside 4Pane's Undo/Redo system.

./4pane-6.0/doc/Edit.htm0000644000175000017500000001315013440442444013632 0ustar daviddavid The Edit menu
Menu Sections  Menu Sections   Menu Sections  Menu Sections   The View menu  The View menu

The Edit menu

The first three items in this menu are Cut, Copy and Paste, and as you'd expect they have the standard shortcuts: Ctrl-X, Ctrl-C and Ctrl-V (by default: all the shortcuts mentioned in this Help assume that you haven't altered them).
If you Cut a file or directory, it will be immediately removed from the display and 'deleted' (see below for what that doesn't mean). If you change your mind, you can use Undo to retrieve it.

(Copying and) Pasting a symlink behaves as you would wish: the new symlink has the same target as did the original. This normally applies to relative symlinks too; to alter this behaviour see here.

The fourth item is Paste as Directory Template. Occasionally you may wish to replicate a directory and all its subdirectories, but without their contained files. To do so, Copy the directory, select the destination dir, then use this menu-item.

The last item in this section is Cancel Paste. Since 4Pane 4.0 pasting usually happens in a separate thread, which allows large, time-consuming ones to be cancelled if you wish. Note that this doesn't always work, particularly when pasting from a slow device like a usbpen or over NFS.
Talking of time-consuming pastes, since 4Pane 5.0 a paste's progress is displayed in the statusbar.


Creating a file or directory is straightforward. The only thing worth mentioning is that, if a file-view pane has focus, the dialog gives you the choice of making a file or a directory; if a dir-view, you can only make a directory.

Next comes Linking. You can choose to make a Symbolic Link (Symlink) with Alt-Sh-L or a Hard link with Ctrl-Sh-L (note that the same metakeys are used to make the corresponding link in Drag'n'Drop). As with Pasting, you need first to have Copied the item(s) to be linked, then clicked on the directory in which you want the link(s) to be created.
When you call Link, a dialog appears in which you can:

  • Choose a name to give the link: either keeping the same name as the link's target (providing you're not making the link in the same directory!); using the same name plus an extension e.g. foo -> foo.lnk; or providing a new name of your choice.
  • Change your mind as to which sort of link to make.
  • If a symlink, choose whether this should be absolute or relative e.g. /home/me/foo or ../foo
  • If you are creating links to more than one file, you can make these choices 'Apply to all' of them. This isn't possible if you are choosing a new name for the links.

The next two items are Trash (Del) and Delete (Sh-Del). These have similar meanings to normal, but different mechanisms. Neither actually deletes anything; instead files are moved to a newly-created temporary directory. This means that you can Undo a Delete! The difference between Delete and Trash is that the Delete temporary dirs are (really) deleted when 4Pane exits. The Trash ones are never lost, unless you use Options > Empty the Trash-can.
There are three consequences of this. The first two are bad: Deleting a directory containing thousands of files and subdirectories will take a long time (on a slow computer a very long time); and Deleting a very large file e.g. a 4GB iso image, will take forever if it's on a different partition. The good news is that, were your computer to crash before you have a chance to Undo an accidental Delete, the file will still be available, probably in a dir called ~/.cache/4Pane/.Trash/DeletedBy4Pane/05-07-18__13-53-14/ where '05-07-18__13-53-14' is the timestamp of the Deletion.

Third in this section is Permanently Delete. This does what it sounds like: deletes without saving the files. So it would be a good choice for getting rid of large items you are entirely sure you no longer want; but beware, you can't undo this!

Then come Rename (F2) and Duplicate (Ctrl-D). Both of these are simple and obvious when applied to only one file or dir. However you can also do multiple rename/duplicate.

Undo (Ctrl-Z) and Redo (Ctrl-R) are next. They are discussed here.

Finally you can view information about the current selection, and change its permissions etc, in Properties.

./4pane-6.0/doc/Export.htm0000644000175000017500000000627512120710621014225 0ustar daviddavid Exporting a Configuration
Configuring Miscellany  Configuring Miscellany   Configuring 4Pane  Configuring 4Pane   The Context Menu  The Context Menu

Exporting a Configuration

Most people won't want to do this! 4Pane creates and uses a configuration file, ~/.4Pane, which is specific to your software and hardware; not to mention any personal choices that you've made.

However there are three reasons that I can think of to want some or all of this configuration to be passed to other machines.

  1. If you happen to have two or more identical setups. In that case you'd configure one box, then just copy ~/.4Pane to the others.
  2. If you have the same software running on several machines with different hardware.
  3. If you're a packager for a distro, creating a 4Pane package :D. You might want to specify e.g. default editors or file associations that are appropriate for that distro.
In the second two cases you'd want to copy just some of the configuration. This can be done from the dialog that you get when you click the "Export Configuration File" button in Options > Configure 4Pane > Misc > Other. You can choose to export data about any or all of:
  • User-defined Tools
  • Editors
  • Device-mounting
  • Terminals
  • File Associations
The selected parts of your current configuration will be saved in your home directory, as file called 4Pane.conf.

When 4Pane starts, it looks for its configuration file. If it can't find one, the setup wizard opens. This normally creates a configuration file containing data that is, as far as possible, appropriate for your machine and distro. However it first looks for a file called either 4Pane.conf or 4pane.conf; looking first in $Home, then in the current working directory, and finally in /etc/4Pane/ and /etc/4pane/. If one of these exists, any saved data is used instead of the wizard's guesses.

So to copy your preferences to a different machine, export them as above, and transfer 4Pane.conf to the other machines' $Home. To use 4Pane.conf in a packaging situation, arrange for it to be installed in one of those places, presumably /etc/4[Pp]ane/.

./4pane-6.0/doc/Using4Pane.htm0000644000175000017500000000400313205575137014724 0ustar daviddavid Using 4Pane
Running 4Pane  Running 4Pane   Contents  Contents   FAQ  FAQ

Using 4Pane

Usage is much as you'd expect for a file manager, but a couple of quick mentions:
      4Pane follows the "Click to select, Double-click to launch" paradigm.
      You can access context-sensitive help for most elements by pressing F1.
      Most dialogs have informative tooltips.

There is detailed information in the following links:

./4pane-6.0/doc/Display.htm0000644000175000017500000000604413205575137014363 0ustar daviddavid The Display
Using 4Pane  Using 4Pane   Contents  Contents   Menu Sections  Menu Sections

The Display

You can change the appearance of 4Pane considerably, but when you first run it you will see four panes, arranged side by side in pairs. The lefthand pane of each pair shows only directories (the dir-view). When you select one of those directories, its contents (both files and subdirectories) are displayed in the righthand pane (the file-view).

The panes are separated by draggable sashes, so you can adjust their sizes as you need. Each twin-pane is always split vertically, but you can choose to display one twin-pane above the other, or even to hide one of them. Initially each twin-pane displays your home directory, but of course you can change this. You can also create extra pages of panes: see the Tabs menu.

People with a preference for keyboard navigation can use shortcuts to move between dir-view and file-view (sh-ctrl-a by default) and to the opposite twin-pane (sh-ctrl-o). If there are multiple tabs, you can go backwards and forwards between them using sh-ctrl-',' and sh-ctrl-'.' (all these shortcuts can be changed, of course).

Since version 2.0, by default 4Pane uses inotify to keep its display up-to-date. However you can still refresh the currently-selected pane at any time by clicking Refresh on the Context Menu, or by pressing F5.

You can read more about panes in the View Menu and Fileview columns.


Below the panes you can choose to display a Terminal Emulator. This also automatically appears to display the results when you use Search commands: see Tools.

As you'd expect, 4Pane has a Menu, a Toolbar and a Statusbar.

Having got 4Pane organised as you wish, you can save the settings from the Options menu. You can also configure many aspects of the display from the Configure menu.

./4pane-6.0/doc/ConfiguringMisc.htm0000644000175000017500000001257313205575137016050 0ustar daviddavid Configuring Misc
Configuring Networks  Configuring Networks   Configuring 4Pane  Configuring 4Pane   The Context Menu  The Context Menu

Configuring Misc

This is where to configure the bits that don't fit anywhere else. The first sub-page is for "How many?".

Most of the alterations that 4Pane makes to files can be undone and redone again. Each time it is opened, 4Pane reserves a certain amount of space to hold the data needed to do this. By default this is enough for 10000 items, but remember that it would immediately be filled by selecting and then deleting all the contents of a directory that contains >9999 files! Change the number here if you wish. This will take effect when 4Pane next opens.

Next, dropdowns. These are used in two places: the Undo/Redo buttons on the main toolbar, and the Back/Forward buttons on the small dir-view toolbars. To process several items at once, you click the side button with the 'down' arrow and a dropdown page opens containing the first so-many available items. This is where you can configure how many that is, the default being 15.

The second sub-page is for "How long?".
The first two items concern the transient message dialogs that appear, telling you the result of e.g. extracting an archive. Unless you stop them these automatically close after a few seconds: 2 seconds if the process succeeded, 5 if it failed (to give you longer to read why). You can change either of these times here.

Similarly you can change how long statusbar messages last e.g. "3 items copied". By default this is 10 seconds.

The next sub-page is about becoming superuser. Sometimes you'll need administrative privileges e.g. to mount a non-fstab partition. You can do this by using a gui 'su'-type program, for example gksu, but since v1.0 4Pane can do this 'in-house'.
4Pane should have detected whether you're on a distro that uses sudo (ubuntu) or the commoner su, but if it gets it wrong you can set it here. You can also choose whether the password is temporarily remembered and, if so, for how long (maximum 1 hour) and whether the countdown is restarted on each use.
Alternatively if you'd prefer to use an external front-end, choose which one here; 4Pane should prevent you selecting any missing from your system.

Next, four buttons. The first deals with how to open a file, for example when a text file is double-clicked. Since version 3.0, 4Pane has two methods for doing this:

  • It can ask your system for the default application for that extension, and use that.
  • 4Pane's original, built-in method. When 4Pane first starts, it searches your system for standard applications like kwrite and gedit, and 'associates' these with text files. You can change these and add others at any time using the "Open With..." dialog.
By default both are tried, with the system method going first. Here you can change that to use only one, or to try the 4Pane method first.

The second button brings up a dialog for configuring Drag and Drop. The first part of this lets you change which metakeys do what. By default with no metakeys pressed D'n'D does a Move; with Ctrl pressed Copy; Shift + Ctrl creates a Hardlink; and Shift + Alt a softlink. Change these if you wish.
Below you can configure the triggering sensitivity of D'n'D. By default this won't trigger until the mouse has dragged more than 10 pixels horizontally, or 15 vertically. (The horizontal figure is lower because you will often want to drag horizontally onto the adjacent pane, and D'n'D won't trigger once you leave the original pane.)
The last D'n'D item is about scrollwheel sensitivity. Sometimes during D'n'D you'll want to scroll a pane to make visible a destination subdirectory. One of the ways to do this is to use the scrollwheel. Here you can change how many lines a pane will scroll per wheel 'click'; the default is 2.

The third button produces a dialog for statusbar configuration. The statusbar is divided into 4 sections, and here you can alter the proportion each section gets.

The last button is "Export Configuration File". If you think you might want to do this (to transfer your preferences to multiple computers, or perhaps because you're a packager for a distro) see here.

./4pane-6.0/doc/Hardlink.png0000644000175000017500000000253712120710621014471 0ustar daviddavid‰PNG  IHDRP.ˆçn.aPLTEÿÿÿíÒÀÇQO894„µ½uª³p¦°Ž¼Ã‚´¼˜ÂÉ¡ÉÎs¨±‡·¿l£­ˆ¸¿t©²‹ºÁi¡«…¶¾²º°ÒÖ|°¸¯ÑÕz®¶œÆË»Â ÈÍež¨`š¤w«´x®°q§°j¢¬h ª{¯·n¥¯W“‘¾Å³»Š¹À‚´¹G…Œm¤®´ÔØ*./3 9?YcY”žžÇÌ%`j E+/CJ,is„µº˜ÂÆ\—žY”›“¿Æ™ÃʦÌÑ7uB€‹>|‡ Configuring the Display
Configuring Devices and Editors  Configuring Devices and Editors   Configuring 4Pane  Configuring 4Pane   Configuring Terminals  Configuring Terminals

Configuring the Display

This section is where you can configure 4Pane's appearance.

The 'Trees' sub-page contains things to do with the appearance of the trees on the panes.
First is tree indents. In a dir-view, subdirectories are indented compared to their parent. If a subdirectory itself has children, there will be an "expand" box within that indent. You can configure both the distance between the parent level and the expand box, and that between the expand box and the directory's name.

Then come several tick-boxes.

  • The first sets whether hidden files and directories are displayed by default (individual panes can override this setting).
  • The second is about the order in which files are sorted: if ticked, this happens in a locale-aware way.
  • The third is about where in a file-view a symlink-to-a-directory is displayed. Normally it's shown at the top, with the real directories. Untick this box if you want it below, in with the files.
  • The fourth determines whether directories and subdirectories are joined by lines in dir-views. If you don't want this, untick the box.
  • Tick the fifth if you want to set a background colour for dir-views, file-views or both; then choose the colours using the button on the right.
  • The sixth is about fileviews. Some file managers colour the background of alternate lines, presumably to make it easier to see which size, time etc belong to a file. I find these stripes unaesthetic, but if you want them, tick this box. You can then select which lurid colours to use by clicking the button on the right.
  • The seventh is about highlighting the focused pane. If the box is ticked, 4Pane will subtly hint at which of its four panes currently has focus: in a dir-view by changing the brightness at the top of its toolbar; in a file-view by changing the brightness of its column headers. You can configure the degree of subtlety used from the dialog fired by clicking the 'Configure' button.
  • Finally one that indirectly affects the display. Before version 2.0, when files and directories were added/deleted/altered by 4Pane itself, the display was updated; but if such changes were made outside 4Pane (e.g. from running a script) nothing changed unless the user happened to 'Refresh the Display'. Now 4Pane gets 'inotify' to inform it of any changes, so the display refreshes in both situations. This is enabled by default; untick the box if you prefer the old behaviour (NB current panes won't be affected until they are refreshed).

The 'Tree font' sub-page lets you can change the font used in the panes. Click the "Change" button to select a different font, which will be displayed in the adjacent box if valid. There's also a "Use Default" button.

The 'Misc' sub-page starts with a tick-box that specifies whether or not the current filepath is displayed in the toolbar. This is useful to have, partly to confirm what is currently selected, and as an alternative way of changing it (write in the desired filepath followed by Enter); but mostly because you can use Ctrl-C to Copy it, then paste into a different application. However if you don't want one, untick here.

The next tick-box lets you configure which icons to use in the toolbars: your theme's 'stock' ones wherever possible (e.g. for things like Copy and Undo), or the ones that 4Pane supplies.

The last two tick-boxes determine whether or not an "Are you Sure?" dialog pops up when you Delete or Trash a file. By default Delete does, Trash doesn't; but you can change this behaviour here. Below you can change which directory contains these cans.

Last come four buttons, which bring up the following dialogs:
  • Configure Editors
    The Configure Editors dialog is similar to the device ones. You can Add a new editor, or select an existing one and click Edit or Delete. If you Add or Edit, another dialog appears, asking for the program's name, and the launch command. For kwrite, both will be "kwrite"; other programs may need the full path to the command. You might occasionally need to fill in the optional "Working Directory to use" field; most programs don't need this but a few might, especially ones you build yourself but don't 'make install'.

    Some editors e.g. gedit, accept multiple files, each opening in a new tab. Others e.g. kwrite, don't. Set the tick-box accordingly. You can also "Ignore" the editor, so that it doesn't get an icon.

    To the right of the Name box is the "Icon to use" bitmap-button, which shows the current/suggested icon. If you don't like it, clicking it brings up a dialog where you can select a different one from those available, or browse to add one of your own.

  • Small toolbar buttons
    The second button deals with the configurable "GoTo" buttons that you get in each dir-view's toolbar. By default you get one for "Home", and another for "Documents" if you have a ~/Documents directory. However you can add more here.
    Clicking the "Configure small-toolbar Tools" button brings up a dialog, with the current items listed on the left. To the right are buttons for adding a new item, and editing or deleting the current selection. Add and Edit produce similar dialogs; you're asked for a filepath to GoTo, and if you wish you can provide a tooltip. You can also click on the offered icon to change it, either to another of the built-in ones or one of your own.

  • Previews
    Starting from 4Pane 3.0, hovering over an image or text file optionally shows a tooltip preview of its contents. The third button lets you configure what the preview's maximum dimensions should be; you can set different sizes for images and text files. You can also configure how long a delay should occur before it shows; enter a figure in tenths of a second.

  • Tooltips
    The last button deals with tooltips. Clicking it gives a dialog where you can configure the delay before a tooltip appears, and whether they are shown at all. Note that this doesn't currently work for tooltips from toolbar tools.

./4pane-6.0/doc/ConfiguringDevices.htm0000644000175000017500000001611612120710621016514 0ustar daviddavid Configuring Devices and Editors
User-defined Tools  User-defined Tools   Configuring 4Pane  Configuring 4Pane   Configuring the Display  Configuring the Display

Configuring Devices and Editors

Devices are things like dvdrom drives and usb-pens. Different Linux distros vary enormously in how they deal with these; some, especially recent ones, automatically mount them as soon as they're found; others, especially older versions, do nothing automatically, leaving you to do the work. When 4Pane first runs, it tries to work out which choices your distro makes, and work with them. When it gets it wrong, this is where you can sort things out.

For each attached device 4Pane adds an icon on the righthand side of the toolbar. In automounting distros, this can be clicked to display the device's contents in the current pane; in non-automounting distros, this will also mount the device. For read-write devices like usb-pens, you can also drag files onto the icon to move or copy them to the device.

To the left of the device icons in the toolbar are "editor" ones, which can be configured in the Display section. The Configuring Devices and Editors dialog has four buttons, each of which brings up another dialog. They are:

  • Automount
    This section deals with device detection and automounting. Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 kernels introduced the usb-storage method. Recent distros with 2.6 kernels usually use udev/hal, but earlier ones used to do other things involving mtab. 4Pane should have got this right automatically; if not, use trial and error.

    Below is where to configure whether 4Pane treats floppies, dvd drives and removable devices as automounting. Again the default settings should be correct but, for example, you might wish to turn off automounting and have 4Pane mount devices on demand.

  • Mounting
    The next sub-page applies mostly to non-automounting distros, some of which insert information about devices directly into either /etc/mtab or /etc/fstab.

    A few older distros (e.g. Mandriva 10.1) use Supermount to help manage disk-changes; if so, the fstab entry may start with "none" instead of the device name, so tick the Supermount box.

  • Usb devices
    This sub-page is about usb devices. You can change how often 4Pane checks to see if any devices have been inserted or removed; by default this is every 3 seconds.

    Multicard usb readers are usually treated by the system as if each slot were a separate device. By default 4Pane only adds a button to the toolbar for the slots with a card inserted. If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!

    Lastly, you can decide what, in a non-automounting distro, you want to do when 4Pane has mounted a removable device, and then you exit 4Pane; do you want to leave the device mounted?

  • Configure Removable Devices
    Removable devices like usb-pens or usb-readers should be autodetected by 4Pane the first time they are plugged in. If not, or if it gets it wrong, this is where you can configure things.

    You will see a list of known drives. To the right of this are buttons for adding a new device, and editing or deleting the current selection. Note that Delete doesn't actually delete the device's information, it just ignores the device. If you reattach it, you can use Edit to 'undelete' it.

    Add and Edit invoke similar dialogs. The name of the device and manufacturer should have been auto-inserted, but if not you can enter them. Select the most appropriate device type e.g. 'usb pen', then say whether it is read-only: the answer is usually "No". You can also choose to Ignore or Un-ignore the device.

    If a device has an entry in /etc/fstab, you should be able to mount it without needing superuser privileges. For this to work in 4Pane, the device node and mount point entries here must be the same as in /etc/fstab.

    Any changes should take effect immediately, but sometimes (I don't know why) they don't show until you restart 4Pane. This is especially likely if it involves a change of icon.

  • Configure Fixed Devices
    Fixed devices are things like floppy disc drives, dvdrom drives. 4Pane should have autodetected these when it first started, but if it got it wrong, or you add a new device, this is where you can configure things.

    You will see a list of known drives. To the right of this are buttons for adding a new device, and editing or deleting the current selection. Note that Delete doesn't actually delete the device's information, it just ignores the device. If you reattach it, you can use Edit to 'undelete' it.

    Add and Edit invoke similar dialogs. You will need to provide or change the device node (e.g. /dev/dvd) and mount-point (e.g. /media/dvdrom). Next provide a label to call the device (e.g. "dvd") and select the most appropriate device type. Then say whether it is read-only: the answer is usually "Yes" except for floppies. You can also choose to Ignore or Unignore the device.
    If a device has an entry in /etc/fstab, you should be able to mount it without needing superuser privileges. For this to work in 4Pane, the device node and mount point entries here must be the same as in /etc/fstab. Beware device node symlinks: it's common to find that e.g. /dev/dvd is a symlink to /dev/hdb. You must use whichever is written in the /etc/fstab entry.

    Any changes should take effect immediately, but sometimes (I don't know why) they don't show until you restart 4Pane. This is especially likely if it involves a change of icon.

  • Advanced Configuration
    Finally, the Advanced page has three sub-pages dealing with very low-level issues. You are very unlikely to need any of them, but if you do, the tooltips contain useful information.

  • ./4pane-6.0/doc/TerminalEm.htm0000644000175000017500000001162313205575137015012 0ustar daviddavid The Terminal Emulator and Command-line
    Drag'n'Drop  Drag'n'Drop   The Display  The Display   Menu Sections  Menu Sections

    The Terminal Emulator

    If you do View > Show Terminal Emulator or Ctrl-M, a new area will appear near the bottom of the screen, between the panes and the statusbar. This is the Terminal Emulator, a place where you can type commands such as ls or df -h and have the result displayed. It also is where are displayed the results of Find, Grep and Locate (see Tools).
    Just like a real console, the Terminal Emulator has a prompt. By default this will look something like: david@linux: /home/david $> (especially if you're called 'david'). However this can be configured at Options > Configure 4Pane > Terminals. Changes will take effect the next time the Terminal Emulator is opened.

    On the right you will see three buttons with self-explanatory labels. The Cancel button does its best to interrupt a running command, but it doesn't always succeed. This can be a problem, as the Terminal Emulator isn't as fast as a real console; a command that displays hundreds of thousands of lines will take a long time to finish.

    The Terminal Emulator has other disadvantages too:

    • You can't create a root terminal with su or sudo bash. However you can run simple commands as the superuser with sudo e.g. sudo mkdir /mnt/foo or, for non-sudo distros, using su -c: su -c "mkdir /mnt/foo"
    • It's not a real terminal emulator, so you can't use the official escape sequences
    • You can't use most bash things e.g. variables, Ctrl-R.
    However:
    • It does support things like wildcards ('*' and '?'), pipes ('|') and redirection ('>' and '<').
    • You can navigate through the command history with the Up and Down keys, or go to the first and last items with Ctrl-PageUp and Ctrl-PageDown.
    • You can drag files from a pane into the Terminal Emulator. If the Ctrl key is being pressed, dragging 'foo' will write ./foo into the Terminal Emulator; if Ctrl-Shift, the full filepath; otherwise just the filename. You might find this convenient to add parameters to a command that you're constructing.
    There is also an extra feature that I often find useful. If you use Locate or Find, in the results you'll have a list of files. You can:
    • Double-click one of them. If it's an executable file, it will be run. Otherwise, if it's a filetype that 4Pane knows how to deal with (e.g. a .txt file) it will be opened, or else the Open With dialog will appear.
      If instead, while you double-click, you press the Ctrl key, instead of opening the file you will 'Go To' it: the current pane will display its directory, with the file itself selected.
    • If you right-click over a file, a context menu will appear that contains those alternatives: Open or Go To.
    The size of the Terminal Emulator can be adjusted by dragging its top border up or down. It can be closed by the same methods that open it, or by clicking its Close button.

    The Command-line

    This is a single-line version of the Terminal Emulator. It is shown/hidden by View > Show Command-line or Ctrl-F6, and is positioned just below the toolbar.
    You can use the Command-line in the same sort of way as the Terminal Emulator, but as it's only a single line, any output of a command is shown in the Terminal Emulator. So why not just use the Terminal Emulator in the first place? Good question. I've no idea why file-managers usually have both; but they do, so presumably someone likes them. If you want it, it's there.


    If you run a command in the Terminal Emulator or Command-line, it's executed outside 4Pane; therefore the results can't be Undone and Redone. So don't experiment here with 'rm -f /' ;)

    ./4pane-6.0/doc/Mount.htm0000644000175000017500000001553313440442444014056 0ustar daviddavid The Mount menu
    The Archive Menu  The Archive Menu   Menu Sections  Menu Sections   The Tools menu  The Tools menu

    The Mount menu

    This is where you can Mount and Unmount other partitions, ISO images and network mounts. Devices, such as dvdroms and usb pens, are managed from their toolbar icons: see here.
    Note that this applies when using Linux. See the bottom of the page for GNU-Hurd differences.

    Linux distros vary in how they deal with other partitions. Older distros ignore them, and most current ones still do so. However some now will detect and automatically mount all the partitions on your disc.
    If your partitions are not automatically mounted, you can do it yourself using the Mount a Partition menu item. Selecting this will bring up a dialog that lists any unmounted partitions in /etc/fstab, together with their mount-points; that is, ones that an ordinary user can (probably) mount. If the partition that you're interested in is there, select it and click OK. The partition will be mounted, and should be displayed in the active pane.

    If the partition wasn't listed, click the Mount a non-fstab partition button. A different dialog will appear, listing all the other available partitions. This time you have to enter your own choice of mount-point: if this doesn't exist, 4Pane will offer to create it. Alternatively, you can use the Browse button which will open a Select a Directory dialog, starting at the contents of /mnt/.
    Underneath the mountpoint is an Options section; there are several of these available, which you'll probably never want to use.
    For non-fstab partitions you will then be asked for a password. In most distros this will be the root, superuser, password; in sudo-using ones like *buntu it will be your own password.

    To Unmount a partition, use the next item, Unmount a Partition. A dialog will appear that lists the currently-mounted partitions and their mount-points. Select the one you want. Again you might have to provide a password.

    Next comes Mount an ISO image. An ISO image is the image, on your hard-disc, of a dvdrom. A common example is downloading a different Linux distro; this goes first to your hard-disc, then you burn the image onto a usbcard or dvdrom. However it's sometimes useful to "look inside" the image, perhaps to extract a file from it.
    Select the image in the current pane, then choose this menu-item. In the dialog, choose where to mount the image. After you provide your password, the image will be mounted, read-only, as though it were a dvdrom. When you've finished with it, use Unmount a Partition to unmount it.


    The rest of this menu deals with network mounts: NFS, sshfs and samba. Be aware that 4Pane doesn't set up NFS, ssh or samba for you. Getting the appropriate daemons and utilities running, poking holes in your firewall etc; you have to have done such things yourself, perhaps with your distro's help. Then 4Pane will help you mount/unmount exports, shares etc over the network.

    First in this section is Mount an NFS export. At the top of resulting dialog you should see a list of known NFS servers, and the exports associated with the selected one. If the export is currently mounted, this will be stated alongside. 4Pane reads /etc/fstab to try to find servers, and remembers previous ones, but you can add missing ones by clicking the "Add" button.
    Below this is a place for the mount-point for your selected export. If the export is in /etc/fstab this will automatically have been filled, otherwise you need to enter one yourself.
    Lastly you need to choose how the export should be mounted: a Hard Mount is fine while it works, but if something goes wrong your computer may hang. A Soft Mount won't do this (or not for long), but might lose data.
    After entering your password (if the export isn't in fstab) the current pane will display the mounted export, which can be manipulated just as though it were on your computer.

    Next is Mount over Ssh using sshfs. Sshfs lets you mount a directory located on a remote server. For this to work you need to have fuse and sshfs installed (if they aren't, this item will be missing from the menu); you also need ssh access to the server.

    In the dialog you must fill at least the Host name and Local mount-point fields. You can also choose the remote username and 'base' directory; otherwise your local username and its 'home' directory will be used. Add any options you wish; make sure they are valid, though, as 4Pane doesn't check them, and mistakes will cause the mount to fail. Note that there is no password field. If you haven't set up password-less logins to that server, you should install ssh-askpass to provide the password.

    If the mount succeeds, after a short delay the active pane will change to display the mount. If it fails, a statusbar message will eventually appear.

    The Mount a Samba share item produces a similar dialog. Select a server and one of its shares, then enter a mount-point. Below you choose whether to try to mount anonymously, or supply a username and password; and whether to mount read-only.

    NFS, sshfs and samba mounts are unmounted using the last menu-item, Unmount a Network mount.

    GNU-Hurd

    Most 4Pane features work just the same on GNU-Hurd as on Linux. However hurd does mounting very differently. Currently 4Pane can mount partitions, ISO images and NFS exports, but not Sshfs (which doesn't exist), Devices or Samba shares. Mounts can be 'active' or both 'active' and 'passive' (hurd seems to have troubles at present with pure 'passive' mounts, so these are not currently supported).

    Unmounting all of these happens in the same way: there's no separate section for network unmounts.

    ./4pane-6.0/doc/Licence.htm0000644000175000017500000000320212120710621014271 0ustar daviddavid Licence
    RAQ  RAQ Contents  Contents

    Licence and Disclaimer


    I copied sections of code from the wxWidgets source, and small amounts from other places. These retain their original wxWindows licence. Otherwise 4Pane is covered by the GNU General Public Licence v.3.

    Please contact me if there are 4Pane classes or other parts of the code that you would like to use in your code under a different licence.

    You will just have read in the GNU GPL that this program comes with no warranty. In addition, be warned that this file manager is a file manager, and so has the ability to change or delete some or all of your data and file-system beyond all hope of recovery. If you make use of this ability, any resulting loss is your fault not mine. As always, if you're not sure that you know what you're doing, don't do it!

    ./4pane-6.0/doc/DnD.htm0000644000175000017500000001603613205575137013425 0ustar daviddavid Drag and Drop
    Fileview Columns  Fileview Columns   The Display  The Display   The Terminal Emulator  The Terminal Emulator

    Drag and Drop

    Between Panes

    4Pane uses Drag and Drop (D'n'D) to Move, Paste or Link files or directories. The destination will usually be a directory displayed in a different pane, but it can be in the same pane (or even sometimes the same directory).

    To start dragging, place the mouse on the name of the item to be dragged, press the left mouse button and start moving. For multiple items, first highlight them, then press the Ctrl key as you begin to drag one of them; release it once the drag has "caught" if you don't need it. Within the first centimeter of movement you should get a visual feedback to show that dragging has started. You can configure how easily you want this to happen in Options > Configure 4Pane > Misc; however too low a trigger distance might result in unintended changes to your filesystem!

    The visual feedback will depend on what you're trying to do:
    If no metakeys are being pressed, you are Moving and you will see Move

    With the Ctrl key pressed you're Copying, and you will see Copier
    With the Ctrl and Shift keys pressed you get a Hardlink, and you will see Hard link
    With the Alt and Shift keys you're making a Softlink, and you will see Soft link

    If you change keys in mid-drag, the icon will change appropriately. You can choose different metakey-patterns in Options > Configure 4Pane > Misc.

    Apart from this "What am I doing?" feedback, you also need some for "Are we there yet?". This is provided by the cursor: if you can't drop in the current position, the cursor looks like   Can't Drop cursor
    Once you're over a suitable target, so you can drop, it changes to   Can Drop Here cursor

    What if you are dragging, and you realise that your target directory isn't actually visible? Well the easy answer is to stop dragging (in "mid air", so you don't accidentally drop the files in the wrong place), expose the target, and start again. But if you want you can force a scroll while dragging, in three ways:
    • If you hover just above/below the destination pane, it will slowly scroll in that direction.
    • If you hover over the destination pane, you can use the mousewheel to scroll.
    • A right-click above or below the destination pane's vertical scrollbar's thumb (the bit that moves) will scroll a page at a time. Don't forget to keep the left button pressed all the time, or the drag will abort.
    Once you are over the name of a directory, the cursor will change and dropping is possible. If you are doing a Move or a Paste, it will just happen. For Linking, a dialog will appear. In this you can:
    • Choose a name to give the link: either keeping the same name as the link's target (providing you're not making the link in the same directory!); using the same name plus an extension e.g. foo -> foo.lnk; or providing a new name of your choice.
    • Change your mind as to which sort of link to make.
    • If you are creating links to more than one file, you can make these choices 'Apply to all' of them. This isn't possible if you are choosing a new name for the links.
    Instead of dropping onto a directory in a dir-view, you can drop in a file-view. If you drop onto a file, it will be the file's parent directory that accepts the drop; if onto a subdirectory in the fileview, it will be that subdirectory.

    If you Move or Paste a file by D'n'D, but drop it back into its own directory, this will usually be accidental: either D'n'D triggered unintentionally, or you released the mouse button too early. If this happens a dialog appears, allowing you to admit to the mistake, but also giving the option to Duplicate the file instead. However creating a Link in the same directory is perfectly reasonable, you just need to give it a different name.

    Starting with 4Pane 4.0 Moving or Pasting a file by D'n'D usually happens in a separate thread. This allows large, time-consuming ones to be cancelled if you wish; see the Edit menu. Note that cancelling doesn't always work, particularly when pasting from a slow device like a usbpen or over NFS.

    D'n'D to elsewhere

    You can use D'n'D from a pane in three other situations:
    • You can drag item(s) onto the Terminal Emulator or the Command-line. The name segment of each filepath will be copied there. If the Ctrl key is pressed, instead you get ./filename; with both Ctrl and Shift keys pressed, the whole filepaths are copied. This is useful if you're building a command and want to pass it several filenames as parameters.
    • Editors. These are applications, usually editors e.g. kwrite, but may be others e.g. Firefox, OpenOffice. Each has an icon in the toolbar. Dragging a file (or for some applications e.g. gedit, multiple files) onto an editor's icon will launch that editor, with that file opened. This is useful for opening a text file that doesn't have the .txt extension e.g. a Readme file.
    • Devices. These are things like dvdrom drives and usbpens. Each has an icon in the toolbar, to the right of the Editors. Dragging item(s) onto a device's icon will have no effect if it's read-only e.g. a dvdrom, but if it's read-write e.g. a floppy disc or a usbpen, the device will be mounted if it isn't already, and the file Moved or Copied onto it.
    It isn't possible to use D'n'D from 4Pane to other applications, or from outside into 4Pane.

    ./4pane-6.0/doc/ConfiguringShortcuts.htm0000644000175000017500000000732413562546401017147 0ustar daviddavid Configuring Shortcuts
    Configuring 4Pane  Configuring 4Pane   Configuring 4Pane  Configuring 4Pane   User-defined Tools  User-defined Tools

    Configuring Shortcuts

    4Pane uses the standard key-bindings for things like Copy and Paste, and provides default bindings for most others. However all shortcuts can be changed to those of your choice, either from the Shortcuts page of the Configuration dialog (Options > Configure 4Pane) or by pressing Ctrl-S. You will see a list of all the possible commands. Double-click on the one to be changed (or select it and press Enter), and a dialog will appear which will let you:

    • Change the Key-Binding by pressing the desired keys. So to change Copy from the default Ctrl-C to Ctrl-Comma, press both the Ctrl key and the ',' key. In theory it's possible to choose almost any key combination, however foolish. Each key can be used alone (e.g. F1 for Help) or in combination with any or all of the Ctrl, Shift and Alt keys. However some combinations won't work as they will have been pre-empted by your window-manager (e.g. Ctrl-Alt-Delete).
      If you change your mind in the future, you can cancel a user-defined key-binding by:
      • Entering a different key combination.
      • Clicking the Default button to return to the default (if there was one).
      • Clicking the Clear button to remove any binding for this command.

    • Change the Label. If the command in question can be accessed from a menu, you might wish to change the label that appears there. If so, your first step should be to lie down until the feeling goes away. If it doesn't, you can replace the label with one of your choice by clicking the Change Label button and following the instructions.

    • Change the Help String. Again this applies only to commands that have menu entries. As you won't have noticed, some of these entries, when highlit by the cursor hovering over them, produce a helpfully descriptive message on the left of the status bar. If you wish to amend or remove such a message or add your own, click the Change Help String button and follow the instructions.

    There is also a tick-box at the top of the dialog, that controls whether mnemonics are displayed in the shortcut labels e.g. C&ut instead of Cut. (Even if it's hidden in the main list, you can still see and change the mnemonic if you edit the label.)

    ./4pane-6.0/doc/back.gif0000644000175000017500000000032112120710621013603 0ustar daviddavidGIF89aòwÄ€€€ÀäËÿÿÿ!ù,–HDD„DDDHDD„DDDHDD„DDDHD@„DDDHDD„DDHDD„DHDD„DDD3€@HD0ƒ1338D„0@D8@HDƒD„D(""‚BDDH „DDDHDD„BDHDD„DD$(DD„DDDHD$„DDDHDD„DDDHD”;./4pane-6.0/doc/Copier.png0000644000175000017500000000264112120710621014152 0ustar daviddavid‰PNG  IHDR^#*°MC€PLTE/5 33(''-,71--666?C3f99A56h3f3AD*Rz4ffA?@bb7GEEQNN[XXWyWBllfffsnnxvw2d–ee—rtŸpp f–f^‰‰e˜˜ƒ||‘‚~‚˜˜fˆ……‡„“‘ŒŒ˜˜—š™  §˜˜±šš¬§§£¤º³¬¬¸°¯¼µµššÉ—È—™ÌËÁ¹¹ËÆÇÕÌÌÕÌÐÒÒËÚÒÒÌÌúÌÿÿäÜÜîååðééðïðùñìüüüQ*6LGtRNSÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÇœVobKGDˆH|IDATxÚµ– s›8†zù0“’žÚÄSÙñÔ'wÊI‰KH@î ­ùÿ?éVÂÆÆ®iß!„óìË"­ õoù½ÇŽÑñÿÜ|TJâG¦RÆ)žUš¦Ê /µÞŠ^FËå²,K}l¶U¹Öò­îÏ.þ^–Ûª¶{‹7àWµÜ[äj'š¦/vüÿ¿Z½§OEËëáÅ ýDüj5㲃®:Ñz—£ù'áWõq”}爵|4ôžâCx–tà«€ÜpÙMÍ:Ž¡ ?ƹ¹ðaLBž¯G¾‹›¹*ÉyŸÍGMïjÒâÅg /I&Ñd] ÇóŸ€-]ͳa —ðMÁ¹Ãsâÿ¥ üBB 1ƒ£‹a”nóªž ˜™”0Ëö‡¨Œ@hñœ Ò­ð`uí ÅãŽÙ¶Ýô>›s‡®ktBB|4í Ÿ€ƒ-â´UœÆöÔ^·=Xpfüg¾¦#~2ÁE€x>yÿ‡…kå¦ýèU µ´wH»ÞµyÀï½ -7³üBû‡&XQ´qí=}í=¥Ò¯:7oµC?׿kûXV™ùCÿ™Ä’«Ö[rÓæp÷°A€¿CÏò—;S ¤…uœ¹ÄêèÄhãàcœ'¿›™§ŸÁxÎ}Þ<5w³÷Á5îØ½ü:Ÿ+섽»jV-°&5kºyÅY¾‘õLm$Ü `ÿÌ{ÄNÏD]Q˜„´5Ž9ÂÅÆ&„2J‚k:eô3‚(› Š=1g4aB0ñ‚ ›ó˜MχNŒ°Å×cBì”ÌŒ÷Li¸fMéµé^}MmÅÌ£@n7Ûç¸g/´%„!·’G rð8t*Œ]C›Ò â|¢ß®)A° h©õ|ë÷÷f( `àØÄÁ*VÂØ‰¸¿ ªâŒ›[¤·Ð·u¸±/!œ_]qUUŠÞ.˽Ò!¦¯¹Lr•3YUÆ}–§#?¨àë/øfBS£}µëêXðš$‰”’ŠÒâUù^}_×/a¤Oß¼ìàRÊ)åú•L_¬—/ùzß^ë-ãËb¹±…k|íÛ²{Æ£bß ·;/v`Œ¿ý»úx˜U.•œ{1 êSðÌøqšEœú©Ô»N­OÄÿBý9 ¦µ¾ZKIEND®B`‚./4pane-6.0/doc/Properties.htm0000644000175000017500000000535412120710621015075 0ustar daviddavid Properties
    The Context Menu  The Context Menu   Using 4Pane  Using 4Pane   Undo and Redo  Undo and Redo

    Properties

    To access the Properties dialog, first select one or more files or directories, then either press Alt-P or use Edit > Properties (or the Context menu).

    The dialog has three pages (and opens at the page last used).

    • The first page, General, shows the selection's filename (which you can change, if you have permission); its path and filetype e.g. regular file, directory; its size, and the time it was last accessed/modified/administratively changed. Note that here the size is accurate e.g. 23171 bytes; elsewhere in 4Pane that would be simplified to 22.6KB.
      If the selection is a symlink, there is also the filepath of its target (which you can amend if you wish), and a button Go To Link Target that will take you there. If the target is itself a symlink, the dialog is different again: there is also an Ultimate Target field (which you can't amend) and a button to take you there.

    • The second page deals with permissions and ownership. You can see which permissions are set for the selected file, and its owner and group information.
      If the file belongs to you (or you have superuser rights) you can alter the permissions and group. If you're root, you can alter the owner too.
      If several files are selected, these changes will apply to them all. If a directory is selected, there will be a tick-box that gives you the option of applying any changes to all the directory contents too.

    • The third page, Esoterica, contains more information about the selection that you are very unlikely to want to know about.

    ./4pane-6.0/doc/Chapt.hhc0000644000175000017500000001527613205575137013776 0ustar daviddavid










































    ./4pane-6.0/doc/View.htm0000644000175000017500000000627313205575137013674 0ustar daviddavid The View menu
    The Edit menu  The Edit menu   Menu Sections  Menu Sections   The Tabs menu  The Tabs menu

    The View menu

    This is the menu where you can choose what is displayed, and where. The first two items are Show Terminal Emulator and Show Command-line; more about these here. The third, Show Previews, turns on or off whether Previews of image and text files are shown.

    The next three determine how the panes are orientated, and how many are shown. Panes come in pairs. The one on the left of each pair shows only directories (the dir-view). When you select one of those directories, its contents (both files and immediate subdirectories) are displayed in the other, righthand pane (the file-view). By default 4Pane has (believe it or not) four panes showing, split vertically; dir-view, file-view; dir-view, file-view. However you can choose instead for the split to be horizontal, with an upper pair and a lower. Or (despite the name) to unsplit, so that only one pair shows; this is useful when you want to be able to see more file-view columns at a time. You can change the display type at any time, using Split Panes Vertically, Split Panes Horizontally and Unsplit Panes.

    Sometimes useful are Replicate in Opposite Pane, which duplicates the current twin-pane's filepaths on the opposite side; and Swap the Panes, which swaps one twin-pane's selection with the other.

    The next menu item is Filter Display, which allows you to restrict what is displayed in the currently-selected pane. See Filter. Following this is Hide Hidden dirs and files (or, if they're already hidden, Show), which also applies to the currently-selected pane. You can set the global default in Options > Configure 4Pane: Display > trees.

    Last is Columns to Display, which opens this submenu. Here you can choose which columns the current file-view should display: time, owner etc. As you'd expect, you can sort a file-view by clicking on a column header; for example, to sort by size, click the size-column header.

    ./4pane-6.0/doc/Features.htm0000644000175000017500000000565013205575137014536 0ustar daviddavid Main Features
    Help for people who don't read manuals  Help for people who don't read manuals   Contents  Contents   Running 4Pane  Running 4Pane

    Main Features

    4Pane is a multi-pane, detailed-list file manager, and is designed to be fully-featured without bloat.

    All of the standard file manager abilities e.g. Moving are available; and are made easier by the dual twin-pane format, since you can display the source and destination directories at the same time, however far apart they may be in your filesystem.

    Navigation around the filesystem is made easier by the provision of Bookmarks, user-defined GoTo buttons, and a history of "Recently-visited directories".

    Almost everything that you do with 4Pane, even deletion, can be undone and redone.

    Tar (compressed and uncompressed) and zip archives can be created and extracted in the normal way. Alternatively, most archive types can be browsed, their contents altered, individual files read or launched; all without opening the archive.

    If your distro doesn't automatically mount dvdroms, usbpens etc, 4Pane can do it for you. Any mounted device is easily accessed via its toolbar icon.

    4Pane does Multiple Renaming or duplication of files, either by prepending/appending, incrementing or using Regular Expressions.

    You can extend 4Pane by creating your own User-Defined Tools.

    Apart from the twin-pane, detailed list nature of 4Pane, almost everything else is configurable. You're used to different shortcuts? Change to them. You want to use a different console? You can. Look here for details.


    See the FAQ for reasons why certain "features" aren't part of 4Pane: why it's not a web-browser/ftp client/cd burner, and why there's no mimetype-detection.

    ./4pane-6.0/doc/Statusbar.htm0000644000175000017500000000516313205575137014727 0ustar daviddavid The Statusbar
    The Toolbar  The Toolbar   The Display  The Display   Fileview Columns  Fileview Columns

    The Statusbar

    The statusbar has four sections:

    1. When a menu-item is highlit, this is where any associated help information is displayed
    2. 4Pane's confirmatory messages appear here e.g. "2 files copied".
      These messages are automatically removed after 10 seconds. You can change this time in Options > Configure 4Pane > Misc.
      Since 4Pane 5.0, the progress of a long move or paste is displayed in this section.
    3. The largest and most useful section, this displays the type, name and size of the currently-selected file. e.g.
      Regular File: Statusbar.htm 1.6K
      or, if a symlink, the type, name and target. e.g.
      Symbolic Link: libwx_baseu-2.8.so --> /usr/lib/libwx_baseu-2.8.so.0
    4. This section shows what sort of things are being displayed in the selected pane. This will normally be either D H * or D F H *. D means Directories, F Files and H Hidden ones.
      If the Options > Show recursive dir sizes menu item is ticked, there will also be an R for Recursive when a fileview has focus.
      The '*' denotes "Show all of these things". Alternatively D F H d* would mean that only files starting with 'd' were displayed. You can adjust the Filter by [Right-click] > Filter Display (or Ctrl-Sh-F). See Filter.

    You can alter the proportion of the statusbar allocated to each section in Options > Configure 4Pane > Misc > Other: Configure Statusbar.

    ./4pane-6.0/README0000644000175000017500000000065013205575137012354 0ustar daviddavidWelcome to 4Pane, a multi-pane, detailed-list file manager for Linux. You will find installation instructions in INSTALL. Once that's done, you can run 4Pane by typing 4Pane in a console, or from the desktop shortcut that should have been created. Packagers should read the file cunningly called PACKAGERS. Full documentation is available online at http://www.4Pane.co.uk, or within 4Pane from the menu or by pressing F1. ./4pane-6.0/Makefile.am0000644000175000017500000002221013567046226013527 0ustar daviddavid ## Check the user actually wants to install the binary if AMINSTALL_install_app bin_PROGRAMS = 4Pane endif ## automake seems to derive $(pkgdatadir) from AC_INIT, which lowercases it! pkgdatadir = $(datadir)/4Pane ACLOCAL_AMFLAGS = -I .build --install ## Variables: ## CC = @CC@ CXX = @CXX@ WX_CFLAGS = @WX_CFLAGS@ WX_CXXFLAGS = @WX_CXXFLAGS@ WX_LIBS = @WX_LIBS@ GTKPKG_CFLAGS = @GTKPKG_CFLAGS@ GTKPKG_LDFLAGS = @GTKPKG_LDFLAGS@ XZFLAGS = @XZFLAGS@ BZIP2_FLAGS = @BZIP2_FLAGS@ EXTRA_CPPFLAGS = @EXTRA_CPPFLAGS@ EXTRA_CFLAGS = @EXTRA_CFLAGS@ EXTRA_CXXFLAGS = @EXTRA_CXXFLAGS@ EXTRA_LDFLAGS = @EXTRA_LDFLAGS@ ## The following prevents outputting, in every compile element, several inches of unnecessary '-DPACKAGE_FOO=bar' type definitions DEFS = ## I'm intentionally omitting $CPPFLAGS here: they're a dup of WX_C(XX)FLAGS, which would fill every compile line with cruft ## I'm similarly omitting $CFLAGS & $CXXFLAGS to prevent duplication as they're auto-added later 4Pane_CFLAGS = $(WX_CFLAGS) $(EXTRA_CPPFLAGS) $(PREVENT_ASSERTS) $(XZFLAGS) $(BZIP2_FLAGS) $(EXTRA_CFLAGS) 4Pane_CXXFLAGS = -std=c++11 $(WX_CXXFLAGS) $(EXTRA_CPPFLAGS) $(GTKPKG_CFLAGS) $(PREVENT_ASSERTS) $(XZFLAGS) $(BZIP2_FLAGS) $(EXTRA_CXXFLAGS) ## LIBS is an autoconf builtin (like CXXFLAGS etc). It seems 2b the best place for lib stuff as it gets appended to the link line LIBS = $(WX_LIBS) $(GTKPKG_LDFLAGS) $(AM_LDFLAGS) $(LDFLAGS) $(XTRLIBS) ## We can't let 4Pane_LINK work as usual: it appends the objects, which means link fails. So override it 4Pane_LINK=$(CXX) -o 4Pane ## Sources: ## 4Pane_SOURCES = \ Accelerators.cpp Accelerators.h \ Archive.cpp Archive.h \ ArchiveStream.cpp ArchiveStream.h \ Bookmarks.cpp Bookmarks.h \ Configure.cpp Configure.h \ Devices.cpp Devices.h \ Dup.cpp Dup.h \ ExecuteInDialog.cpp ExecuteInDialog.h \ Filetypes.cpp Filetypes.h \ Misc.cpp Misc.h \ Mounts.cpp Mounts.h \ MyDirs.cpp MyDirs.h \ MyDragImage.cpp MyDragImage.h \ MyFiles.cpp MyFiles.h \ MyFrame.cpp MyFrame.h \ MyGenericDirCtrl.cpp MyGenericDirCtrl.h \ MyNotebook.cpp MyNotebook.h \ MyTreeCtrl.cpp MyTreeCtrl.h \ Otherstreams.cpp Otherstreams.h \ Redo.cpp Redo.h \ Tools.cpp Tools.h \ bzipstream.cpp bzipstream.h \ config.h \ Externs.h \ sdk/rsvg/rsvg.cpp \ sdk/fswatcher/MyFSWatcher.cpp \ sdk/fswatcher/MyFSWatcher.h if AMBUILTIN_BZIP 4Pane_SOURCES += \ sdk/bzip/blocksort.c \ sdk/bzip/bzlib.c sdk/bzip/bzlib.h \ sdk/bzip/compress.c \ sdk/bzip/crctable.c \ sdk/bzip/decompress.c \ sdk/bzip/huffman.c \ sdk/bzip/randtable.c \ sdk/bzip/bzlib_private.h endif EXTRA_DIST = \ 4Pane.1 \ 4Pane.appdata.xml \ changelog \ LICENCE \ PACKAGERS \ .build/autogen.sh \ .build/configure.ac \ .build/DONT_README \ bitmaps \ doc \ locale/4Pane.pot \ locale/ja/LC_MESSAGES/ja.po locale/fa/LC_MESSAGES/fa.po locale/fr/LC_MESSAGES/fr.po locale/da/LC_MESSAGES/da.po locale/it/LC_MESSAGES/it.po locale/ca/LC_MESSAGES/ca.po locale/es/LC_MESSAGES/es.po locale/pl/LC_MESSAGES/pl.po locale/de/LC_MESSAGES/de.po locale/ar/LC_MESSAGES/ar.po locale/pt_BR/LC_MESSAGES/pt_BR.po locale/et/LC_MESSAGES/et.po locale/nl/LC_MESSAGES/nl.po locale/ru/LC_MESSAGES/ru.po locale/vi/LC_MESSAGES/vi.po locale/zh_CN/LC_MESSAGES/zh_CN.po\ rc/4Pane.desktop rc/dialogs.xrc rc/configuredialogs.xrc rc/moredialogs.xrc if AMMSGFMT_AVAILABLE SUBDIRS = locale endif if AMINSTALL_install_rc rcdir = $(pkgdatadir)/rc rc_DATA = rc/dialogs.xrc rc/moredialogs.xrc rc/configuredialogs.xrc rc/4Pane.desktop bitmapdir = $(pkgdatadir)/bitmaps bitmap_DATA = bitmaps/4PaneIcon48.png bitmaps/4Pane.png bitmaps/chrome-chromium.png bitmaps/DelTab.png bitmaps/DnDSelectedCursor.png bitmaps/DnDStdCursor.png bitmaps/dragicon.png bitmaps/featherpad.png bitmaps/firefox.png bitmaps/gjots.png bitmaps/hardlink.png bitmaps/help.png bitmaps/iceweasel.png bitmaps/largedropdown.png bitmaps/libreoffice.png bitmaps/mate-text-editor.png bitmaps/mousepad.png bitmaps/mozillacrystal.png bitmaps/NewTab.png bitmaps/openoffice.png bitmaps/palemoon.png bitmaps/photocopier_0.png bitmaps/photocopier_10.png bitmaps/photocopier_11.png bitmaps/photocopier_12.png bitmaps/photocopier_13.png bitmaps/photocopier_14.png bitmaps/photocopier_15.png bitmaps/photocopier_16.png bitmaps/photocopier_17.png bitmaps/photocopier_18.png bitmaps/photocopier_19.png bitmaps/photocopier_1.png bitmaps/photocopier_20.png bitmaps/photocopier_21.png bitmaps/photocopier_22.png bitmaps/photocopier_23.png bitmaps/photocopier_24.png bitmaps/photocopier_25.png bitmaps/photocopier_26.png bitmaps/photocopier_27.png bitmaps/photocopier_28.png bitmaps/photocopier_29.png bitmaps/photocopier_2.png bitmaps/photocopier_30.png bitmaps/photocopier_31.png bitmaps/photocopier_32.png bitmaps/photocopier_33.png bitmaps/photocopier_34.png bitmaps/photocopier_35.png bitmaps/photocopier_36.png bitmaps/photocopier_37.png bitmaps/photocopier_38.png bitmaps/photocopier_39.png bitmaps/photocopier_3.png bitmaps/photocopier_40.png bitmaps/photocopier_41.png bitmaps/photocopier_42.png bitmaps/photocopier_43.png bitmaps/photocopier_4.png bitmaps/photocopier_5.png bitmaps/photocopier_6.png bitmaps/photocopier_7.png bitmaps/photocopier_8.png bitmaps/photocopier_9.png bitmaps/Preview.png bitmaps/seamonkey.png bitmaps/smalldropdown.png bitmaps/softlink.png bitmaps/4PaneIcon16.xpm bitmaps/4PaneIcon32.xpm bitmaps/4PaneIcon40x32.xpm bitmaps/4PaneIcon48.xpm bitmaps/back.xpm bitmaps/bm1_button.xpm bitmaps/bm2_button.xpm bitmaps/bm3_button.xpm bitmaps/cdrom.xpm bitmaps/cdr.xpm bitmaps/clear_right.xpm bitmaps/connect_no.xpm bitmaps/dir_up.xpm bitmaps/down.xpm bitmaps/abiword.png bitmaps/evince.xpm bitmaps/fileopen.xpm bitmaps/floppy.xpm bitmaps/forward.xpm bitmaps/gedit.xpm bitmaps/gohome.xpm bitmaps/harddisk-usb.xpm bitmaps/harddisk.xpm bitmaps/kedit.xpm bitmaps/kwrite.xpm bitmaps/largedropdown.xpm bitmaps/MyDocuments.xpm bitmaps/new_dir.xpm bitmaps/smalldropdown.xpm bitmaps/toparent.xpm bitmaps/unknown.xpm bitmaps/UsbMem.xpm bitmaps/UsbMulticard.xpm bitmaps/UsbPen.xpm appsvgicondir=$(datadir)/icons/hicolor/scalable/apps appsvgicon_DATA=bitmaps/4Pane.svg appicondir=$(datadir)/icons/hicolor/48x48/apps appicon_DATA=bitmaps/4Pane.png endif if AMINSTALL_install_docs docsdir = $(datadir)/doc/4Pane docs_DATA = doc/About.htm doc/Archive.htm doc/ArchiveBrowse.htm doc/Bookmarks.htm doc/Chapt.con doc/Chapt.hhc doc/Chapt.hhk doc/Chapt.hhp doc/Configure.htm doc/ConfigureUserDefTools.htm doc/ConfiguringDevices.htm doc/ConfiguringDisplay.htm doc/ConfiguringMisc.htm doc/ConfiguringNetworks.htm doc/ConfiguringShortcuts.htm doc/ConfiguringTerminals.htm doc/Contents.htm doc/ContextMenu.htm doc/Copier.png doc/Devices.htm doc/Display.htm doc/DnD.htm doc/DnDSelectedCursor.png doc/DnDStdCursor.png doc/Edit.htm doc/Editors.htm doc/Export.htm doc/FAQ.htm doc/Features.htm doc/FileviewCols.htm doc/Filter.htm doc/Hardlink.png doc/Introduction.htm doc/KeyboardNavigation.htm doc/Licence.htm doc/Menu.htm doc/Mount.htm doc/Move.png doc/MultipleRenDup.htm doc/Open.htm doc/OpenWith.htm doc/Options.htm doc/Previews.htm doc/Properties.htm doc/Quickstart.htm doc/RAQ.htm doc/RegExpHelp.htm doc/Running.htm doc/Softlink.png doc/Statusbar.htm doc/Tabs.htm doc/TerminalEm.htm doc/Toolbar.htm doc/Tools.htm doc/UnRedo.htm doc/Using4Pane.htm doc/View.htm doc/back.gif doc/forward.gif doc/up.gif endif if AMMSGFMT_AVAILABLE if AMINSTALL_locale locldir = $(datadir) nobase_locl_DATA = locale/ar/LC_MESSAGES/4Pane.mo locale/ca/LC_MESSAGES/4Pane.mo locale/da/LC_MESSAGES/4Pane.mo locale/de/LC_MESSAGES/4Pane.mo locale/es/LC_MESSAGES/4Pane.mo locale/et/LC_MESSAGES/4Pane.mo locale/fa/LC_MESSAGES/4Pane.mo locale/fr/LC_MESSAGES/4Pane.mo locale/it/LC_MESSAGES/4Pane.mo locale/ja/LC_MESSAGES/4Pane.mo locale/nl/LC_MESSAGES/4Pane.mo locale/pl/LC_MESSAGES/4Pane.mo locale/pt_BR/LC_MESSAGES/4Pane.mo locale/ru/LC_MESSAGES/4Pane.mo locale/vi/LC_MESSAGES/4Pane.mo locale/zh_CN/LC_MESSAGES/4Pane.mo endif endif appdatadir = $(datadir)/metainfo appdata_DATA = 4Pane.appdata.xml ## Hooks: ## install-exec-hook: ## Create a pP symlink if requested, but only if the app itself is being installed if AMINSTALL_install_app if AMINSTALL_symlink ln -fs 4Pane $(DESTDIR)$(bindir)/4pane; endif endif ##----------------------------------------------------------- install-data-hook: ## Install the desktop file if requested, but only if the datadir exists if AMINSTALL_install_rc if AMINSTALL_desktop if test -d ~/Desktop/; then \ cp -up $(DESTDIR)$(pkgdatadir)/rc/4Pane.desktop ~/Desktop; \ chmod 0755 ~/Desktop/4Pane.desktop; \ fi endif endif ##----------------------------------------------------------- uninstall-hook: ## Remove the pP symlink if requested, but only if the app itself is being uninstalled if AMUNINSTALL_install_app if AMUNINSTALL_symlink rm -rf $(DESTDIR)$(bindir)/4pane; endif endif ## /usr/share/4Pane/ is autocreated by install, but isn't autodeleted by uninstall. So do it here if AMUNINSTALL_install_rc rm -rf $(DESTDIR)$(pkgdatadir); endif ## Similarly /usr/share/doc/4Pane/ if AMUNINSTALL_install_docs rm -rf $(DESTDIR)$(datadir)/doc/4Pane/; endif ## Remove any unwanted desktop file if AMUNINSTALL_desktop rm -f ~/Desktop/4Pane.desktop; endif ##----------------------------------------------------------- ./4pane-6.0/Makefile.in0000644000175000017500000035421113567046233013547 0ustar daviddavid# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : @AMINSTALL_install_app_TRUE@bin_PROGRAMS = 4Pane$(EXEEXT) @AMBUILTIN_BZIP_TRUE@am__append_1 = \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/blocksort.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/bzlib.c sdk/bzip/bzlib.h \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/compress.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/crctable.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/decompress.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/huffman.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/randtable.c \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/bzlib_private.h subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/.build/4Pane.m4 \ $(top_srcdir)/.build/wxwin.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ $(am__configure_deps) $(am__DIST_COMMON) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno config.status.lineno mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appdatadir)" \ "$(DESTDIR)$(appicondir)" "$(DESTDIR)$(appsvgicondir)" \ "$(DESTDIR)$(bitmapdir)" "$(DESTDIR)$(docsdir)" \ "$(DESTDIR)$(locldir)" "$(DESTDIR)$(rcdir)" PROGRAMS = $(bin_PROGRAMS) am__4Pane_SOURCES_DIST = Accelerators.cpp Accelerators.h Archive.cpp \ Archive.h ArchiveStream.cpp ArchiveStream.h Bookmarks.cpp \ Bookmarks.h Configure.cpp Configure.h Devices.cpp Devices.h \ Dup.cpp Dup.h ExecuteInDialog.cpp ExecuteInDialog.h \ Filetypes.cpp Filetypes.h Misc.cpp Misc.h Mounts.cpp Mounts.h \ MyDirs.cpp MyDirs.h MyDragImage.cpp MyDragImage.h MyFiles.cpp \ MyFiles.h MyFrame.cpp MyFrame.h MyGenericDirCtrl.cpp \ MyGenericDirCtrl.h MyNotebook.cpp MyNotebook.h MyTreeCtrl.cpp \ MyTreeCtrl.h Otherstreams.cpp Otherstreams.h Redo.cpp Redo.h \ Tools.cpp Tools.h bzipstream.cpp bzipstream.h config.h \ Externs.h sdk/rsvg/rsvg.cpp sdk/fswatcher/MyFSWatcher.cpp \ sdk/fswatcher/MyFSWatcher.h sdk/bzip/blocksort.c \ sdk/bzip/bzlib.c sdk/bzip/bzlib.h sdk/bzip/compress.c \ sdk/bzip/crctable.c sdk/bzip/decompress.c sdk/bzip/huffman.c \ sdk/bzip/randtable.c sdk/bzip/bzlib_private.h am__dirstamp = $(am__leading_dot)dirstamp @AMBUILTIN_BZIP_TRUE@am__objects_1 = \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-blocksort.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-bzlib.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-compress.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-crctable.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-decompress.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-huffman.$(OBJEXT) \ @AMBUILTIN_BZIP_TRUE@ sdk/bzip/4Pane-randtable.$(OBJEXT) am_4Pane_OBJECTS = 4Pane-Accelerators.$(OBJEXT) \ 4Pane-Archive.$(OBJEXT) 4Pane-ArchiveStream.$(OBJEXT) \ 4Pane-Bookmarks.$(OBJEXT) 4Pane-Configure.$(OBJEXT) \ 4Pane-Devices.$(OBJEXT) 4Pane-Dup.$(OBJEXT) \ 4Pane-ExecuteInDialog.$(OBJEXT) 4Pane-Filetypes.$(OBJEXT) \ 4Pane-Misc.$(OBJEXT) 4Pane-Mounts.$(OBJEXT) \ 4Pane-MyDirs.$(OBJEXT) 4Pane-MyDragImage.$(OBJEXT) \ 4Pane-MyFiles.$(OBJEXT) 4Pane-MyFrame.$(OBJEXT) \ 4Pane-MyGenericDirCtrl.$(OBJEXT) 4Pane-MyNotebook.$(OBJEXT) \ 4Pane-MyTreeCtrl.$(OBJEXT) 4Pane-Otherstreams.$(OBJEXT) \ 4Pane-Redo.$(OBJEXT) 4Pane-Tools.$(OBJEXT) \ 4Pane-bzipstream.$(OBJEXT) sdk/rsvg/4Pane-rsvg.$(OBJEXT) \ sdk/fswatcher/4Pane-MyFSWatcher.$(OBJEXT) $(am__objects_1) 4Pane_OBJECTS = $(am_4Pane_OBJECTS) 4Pane_LDADD = $(LDADD) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = DEFAULT_INCLUDES = -I.@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__maybe_remake_depfiles = depfiles am__depfiles_remade = ./$(DEPDIR)/4Pane-Accelerators.Po \ ./$(DEPDIR)/4Pane-Archive.Po \ ./$(DEPDIR)/4Pane-ArchiveStream.Po \ ./$(DEPDIR)/4Pane-Bookmarks.Po ./$(DEPDIR)/4Pane-Configure.Po \ ./$(DEPDIR)/4Pane-Devices.Po ./$(DEPDIR)/4Pane-Dup.Po \ ./$(DEPDIR)/4Pane-ExecuteInDialog.Po \ ./$(DEPDIR)/4Pane-Filetypes.Po ./$(DEPDIR)/4Pane-Misc.Po \ ./$(DEPDIR)/4Pane-Mounts.Po ./$(DEPDIR)/4Pane-MyDirs.Po \ ./$(DEPDIR)/4Pane-MyDragImage.Po ./$(DEPDIR)/4Pane-MyFiles.Po \ ./$(DEPDIR)/4Pane-MyFrame.Po \ ./$(DEPDIR)/4Pane-MyGenericDirCtrl.Po \ ./$(DEPDIR)/4Pane-MyNotebook.Po \ ./$(DEPDIR)/4Pane-MyTreeCtrl.Po \ ./$(DEPDIR)/4Pane-Otherstreams.Po ./$(DEPDIR)/4Pane-Redo.Po \ ./$(DEPDIR)/4Pane-Tools.Po ./$(DEPDIR)/4Pane-bzipstream.Po \ sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po \ sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po \ sdk/bzip/$(DEPDIR)/4Pane-compress.Po \ sdk/bzip/$(DEPDIR)/4Pane-crctable.Po \ sdk/bzip/$(DEPDIR)/4Pane-decompress.Po \ sdk/bzip/$(DEPDIR)/4Pane-huffman.Po \ sdk/bzip/$(DEPDIR)/4Pane-randtable.Po \ sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po \ sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po am__mv = mv -f AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent am__v_lt_1 = COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) AM_V_CC = $(am__v_CC_@AM_V@) am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) am__v_CC_0 = @echo " CC " $@; am__v_CC_1 = CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ AM_V_CCLD = $(am__v_CCLD_@AM_V@) am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) am__v_CCLD_0 = @echo " CCLD " $@; am__v_CCLD_1 = CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) AM_V_CXX = $(am__v_CXX_@AM_V@) am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) am__v_CXX_0 = @echo " CXX " $@; am__v_CXX_1 = CXXLD = $(CXX) CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ -o $@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) am__v_CXXLD_0 = @echo " CXXLD " $@; am__v_CXXLD_1 = SOURCES = $(4Pane_SOURCES) DIST_SOURCES = $(am__4Pane_SOURCES_DIST) RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ ctags-recursive dvi-recursive html-recursive info-recursive \ install-data-recursive install-dvi-recursive \ install-exec-recursive install-html-recursive \ install-info-recursive install-pdf-recursive \ install-ps-recursive install-recursive installcheck-recursive \ installdirs-recursive pdf-recursive ps-recursive \ tags-recursive uninstall-recursive am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; am__install_max = 40 am__nobase_strip_setup = \ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` am__nobase_strip = \ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" am__nobase_list = $(am__nobase_strip_setup); \ for p in $$list; do echo "$$p $$p"; done | \ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ if (++n[$$2] == $(am__install_max)) \ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ END { for (dir in files) print dir, files[dir] }' am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__uninstall_files_from_dir = { \ test -z "$$files" \ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ $(am__cd) "$$dir" && rm -f $$files; }; \ } DATA = $(appdata_DATA) $(appicon_DATA) $(appsvgicon_DATA) \ $(bitmap_DATA) $(docs_DATA) $(nobase_locl_DATA) $(rc_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive am__recursive_targets = \ $(RECURSIVE_TARGETS) \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ cscope distdir distdir-am dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is # *not* preserved. am__uniquify_input = $(AWK) '\ BEGIN { nonempty = 0; } \ { items[$$0] = 1; nonempty = 1; } \ END { if (nonempty) { for (i in items) print i; }; } \ ' # Make sure the list of sources is unique. This is necessary because, # e.g., the same source file might be shared among _SOURCES variables # for different programs/libraries. am__define_uniq_tagged_files = \ list='$(am__tagged_files)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | $(am__uniquify_input)` ETAGS = etags CTAGS = ctags CSCOPE = cscope DIST_SUBDIRS = locale am__DIST_COMMON = $(srcdir)/Makefile.in INSTALL README compile \ config.guess config.sub depcomp install-sh missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ if test -d "$(distdir)"; then \ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -rf "$(distdir)" \ || { sleep 5 && rm -rf "$(distdir)"; }; \ else :; fi am__post_remove_distdir = $(am__remove_distdir) am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ sed_rest='s,^[^/]*/*,,'; \ sed_last='s,^.*/\([^/]*\)$$,\1,'; \ sed_butlast='s,/*[^/]*$$,,'; \ while test -n "$$dir1"; do \ first=`echo "$$dir1" | sed -e "$$sed_first"`; \ if test "$$first" != "."; then \ if test "$$first" = ".."; then \ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ else \ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ if test "$$first2" = "$$first"; then \ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ else \ dir2="../$$dir2"; \ fi; \ dir0="$$dir0"/"$$first"; \ fi; \ fi; \ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ done; \ reldir="$$dir2" DIST_ARCHIVES = $(distdir).tar.gz GZIP_ENV = --best DIST_TARGETS = dist-gzip distuninstallcheck_listfiles = find . -type f -print am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print pkgdatadir = $(datadir)/4Pane ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BZIP2_FLAGS = @BZIP2_FLAGS@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_CFLAGS = @EXTRA_CFLAGS@ EXTRA_CPPFLAGS = @EXTRA_CPPFLAGS@ EXTRA_CXXFLAGS = @EXTRA_CXXFLAGS@ EXTRA_LDFLAGS = @EXTRA_LDFLAGS@ GREP = @GREP@ GTKPKG_CFLAGS = @GTKPKG_CFLAGS@ GTKPKG_LDFLAGS = @GTKPKG_LDFLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = $(WX_LIBS) $(GTKPKG_LDFLAGS) $(AM_LDFLAGS) $(LDFLAGS) $(XTRLIBS) LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ WX_CFLAGS = @WX_CFLAGS@ WX_CFLAGS_ONLY = @WX_CFLAGS_ONLY@ WX_CONFIG_PATH = @WX_CONFIG_PATH@ WX_CPPFLAGS = @WX_CPPFLAGS@ WX_CXXFLAGS = @WX_CXXFLAGS@ WX_CXXFLAGS_ONLY = @WX_CXXFLAGS_ONLY@ WX_DEBUG = @WX_DEBUG@ WX_LIBS = @WX_LIBS@ WX_LIBS_STATIC = @WX_LIBS_STATIC@ WX_PORT = @WX_PORT@ WX_RESCOMP = @WX_RESCOMP@ WX_SHARED = @WX_SHARED@ WX_UNICODE = @WX_UNICODE@ WX_VERSION = @WX_VERSION@ WX_VERSION_MAJOR = @WX_VERSION_MAJOR@ WX_VERSION_MICRO = @WX_VERSION_MICRO@ WX_VERSION_MINOR = @WX_VERSION_MINOR@ XTRLIBS = @XTRLIBS@ XZFLAGS = @XZFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ ACLOCAL_AMFLAGS = -I .build --install 4Pane_CFLAGS = $(WX_CFLAGS) $(EXTRA_CPPFLAGS) $(PREVENT_ASSERTS) $(XZFLAGS) $(BZIP2_FLAGS) $(EXTRA_CFLAGS) 4Pane_CXXFLAGS = -std=c++11 $(WX_CXXFLAGS) $(EXTRA_CPPFLAGS) $(GTKPKG_CFLAGS) $(PREVENT_ASSERTS) $(XZFLAGS) $(BZIP2_FLAGS) $(EXTRA_CXXFLAGS) 4Pane_LINK = $(CXX) -o 4Pane 4Pane_SOURCES = Accelerators.cpp Accelerators.h Archive.cpp Archive.h \ ArchiveStream.cpp ArchiveStream.h Bookmarks.cpp Bookmarks.h \ Configure.cpp Configure.h Devices.cpp Devices.h Dup.cpp Dup.h \ ExecuteInDialog.cpp ExecuteInDialog.h Filetypes.cpp \ Filetypes.h Misc.cpp Misc.h Mounts.cpp Mounts.h MyDirs.cpp \ MyDirs.h MyDragImage.cpp MyDragImage.h MyFiles.cpp MyFiles.h \ MyFrame.cpp MyFrame.h MyGenericDirCtrl.cpp MyGenericDirCtrl.h \ MyNotebook.cpp MyNotebook.h MyTreeCtrl.cpp MyTreeCtrl.h \ Otherstreams.cpp Otherstreams.h Redo.cpp Redo.h Tools.cpp \ Tools.h bzipstream.cpp bzipstream.h config.h Externs.h \ sdk/rsvg/rsvg.cpp sdk/fswatcher/MyFSWatcher.cpp \ sdk/fswatcher/MyFSWatcher.h $(am__append_1) EXTRA_DIST = \ 4Pane.1 \ 4Pane.appdata.xml \ changelog \ LICENCE \ PACKAGERS \ .build/autogen.sh \ .build/configure.ac \ .build/DONT_README \ bitmaps \ doc \ locale/4Pane.pot \ locale/ja/LC_MESSAGES/ja.po locale/fa/LC_MESSAGES/fa.po locale/fr/LC_MESSAGES/fr.po locale/da/LC_MESSAGES/da.po locale/it/LC_MESSAGES/it.po locale/ca/LC_MESSAGES/ca.po locale/es/LC_MESSAGES/es.po locale/pl/LC_MESSAGES/pl.po locale/de/LC_MESSAGES/de.po locale/ar/LC_MESSAGES/ar.po locale/pt_BR/LC_MESSAGES/pt_BR.po locale/et/LC_MESSAGES/et.po locale/nl/LC_MESSAGES/nl.po locale/ru/LC_MESSAGES/ru.po locale/vi/LC_MESSAGES/vi.po locale/zh_CN/LC_MESSAGES/zh_CN.po\ rc/4Pane.desktop rc/dialogs.xrc rc/configuredialogs.xrc rc/moredialogs.xrc @AMMSGFMT_AVAILABLE_TRUE@SUBDIRS = locale @AMINSTALL_install_rc_TRUE@rcdir = $(pkgdatadir)/rc @AMINSTALL_install_rc_TRUE@rc_DATA = rc/dialogs.xrc rc/moredialogs.xrc rc/configuredialogs.xrc rc/4Pane.desktop @AMINSTALL_install_rc_TRUE@bitmapdir = $(pkgdatadir)/bitmaps @AMINSTALL_install_rc_TRUE@bitmap_DATA = bitmaps/4PaneIcon48.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/4Pane.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/chrome-chromium.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/DelTab.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/DnDSelectedCursor.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/DnDStdCursor.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/dragicon.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/featherpad.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/firefox.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/gjots.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/hardlink.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/help.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/iceweasel.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/largedropdown.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/libreoffice.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/mate-text-editor.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/mousepad.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/mozillacrystal.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/NewTab.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/openoffice.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/palemoon.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_0.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_10.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_11.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_12.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_13.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_14.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_15.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_16.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_17.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_18.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_19.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_1.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_20.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_21.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_22.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_23.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_24.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_25.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_26.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_27.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_28.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_29.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_2.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_30.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_31.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_32.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_33.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_34.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_35.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_36.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_37.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_38.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_39.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_3.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_40.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_41.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_42.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_43.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_4.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_5.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_6.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_7.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_8.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/photocopier_9.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/Preview.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/seamonkey.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/smalldropdown.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/softlink.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/4PaneIcon16.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/4PaneIcon32.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/4PaneIcon40x32.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/4PaneIcon48.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/back.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/bm1_button.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/bm2_button.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/bm3_button.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/cdrom.xpm bitmaps/cdr.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/clear_right.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/connect_no.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/dir_up.xpm bitmaps/down.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/abiword.png \ @AMINSTALL_install_rc_TRUE@ bitmaps/evince.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/fileopen.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/floppy.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/forward.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/gedit.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/gohome.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/harddisk-usb.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/harddisk.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/kedit.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/kwrite.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/largedropdown.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/MyDocuments.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/new_dir.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/smalldropdown.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/toparent.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/unknown.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/UsbMem.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/UsbMulticard.xpm \ @AMINSTALL_install_rc_TRUE@ bitmaps/UsbPen.xpm @AMINSTALL_install_rc_TRUE@appsvgicondir = $(datadir)/icons/hicolor/scalable/apps @AMINSTALL_install_rc_TRUE@appsvgicon_DATA = bitmaps/4Pane.svg @AMINSTALL_install_rc_TRUE@appicondir = $(datadir)/icons/hicolor/48x48/apps @AMINSTALL_install_rc_TRUE@appicon_DATA = bitmaps/4Pane.png @AMINSTALL_install_docs_TRUE@docsdir = $(datadir)/doc/4Pane @AMINSTALL_install_docs_TRUE@docs_DATA = doc/About.htm doc/Archive.htm \ @AMINSTALL_install_docs_TRUE@ doc/ArchiveBrowse.htm \ @AMINSTALL_install_docs_TRUE@ doc/Bookmarks.htm doc/Chapt.con \ @AMINSTALL_install_docs_TRUE@ doc/Chapt.hhc doc/Chapt.hhk \ @AMINSTALL_install_docs_TRUE@ doc/Chapt.hhp doc/Configure.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfigureUserDefTools.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringDevices.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringDisplay.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringMisc.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringNetworks.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringShortcuts.htm \ @AMINSTALL_install_docs_TRUE@ doc/ConfiguringTerminals.htm \ @AMINSTALL_install_docs_TRUE@ doc/Contents.htm \ @AMINSTALL_install_docs_TRUE@ doc/ContextMenu.htm \ @AMINSTALL_install_docs_TRUE@ doc/Copier.png doc/Devices.htm \ @AMINSTALL_install_docs_TRUE@ doc/Display.htm doc/DnD.htm \ @AMINSTALL_install_docs_TRUE@ doc/DnDSelectedCursor.png \ @AMINSTALL_install_docs_TRUE@ doc/DnDStdCursor.png doc/Edit.htm \ @AMINSTALL_install_docs_TRUE@ doc/Editors.htm doc/Export.htm \ @AMINSTALL_install_docs_TRUE@ doc/FAQ.htm doc/Features.htm \ @AMINSTALL_install_docs_TRUE@ doc/FileviewCols.htm \ @AMINSTALL_install_docs_TRUE@ doc/Filter.htm doc/Hardlink.png \ @AMINSTALL_install_docs_TRUE@ doc/Introduction.htm \ @AMINSTALL_install_docs_TRUE@ doc/KeyboardNavigation.htm \ @AMINSTALL_install_docs_TRUE@ doc/Licence.htm doc/Menu.htm \ @AMINSTALL_install_docs_TRUE@ doc/Mount.htm doc/Move.png \ @AMINSTALL_install_docs_TRUE@ doc/MultipleRenDup.htm \ @AMINSTALL_install_docs_TRUE@ doc/Open.htm doc/OpenWith.htm \ @AMINSTALL_install_docs_TRUE@ doc/Options.htm doc/Previews.htm \ @AMINSTALL_install_docs_TRUE@ doc/Properties.htm \ @AMINSTALL_install_docs_TRUE@ doc/Quickstart.htm doc/RAQ.htm \ @AMINSTALL_install_docs_TRUE@ doc/RegExpHelp.htm \ @AMINSTALL_install_docs_TRUE@ doc/Running.htm doc/Softlink.png \ @AMINSTALL_install_docs_TRUE@ doc/Statusbar.htm doc/Tabs.htm \ @AMINSTALL_install_docs_TRUE@ doc/TerminalEm.htm \ @AMINSTALL_install_docs_TRUE@ doc/Toolbar.htm doc/Tools.htm \ @AMINSTALL_install_docs_TRUE@ doc/UnRedo.htm doc/Using4Pane.htm \ @AMINSTALL_install_docs_TRUE@ doc/View.htm doc/back.gif \ @AMINSTALL_install_docs_TRUE@ doc/forward.gif doc/up.gif @AMINSTALL_locale_TRUE@@AMMSGFMT_AVAILABLE_TRUE@locldir = $(datadir) @AMINSTALL_locale_TRUE@@AMMSGFMT_AVAILABLE_TRUE@nobase_locl_DATA = locale/ar/LC_MESSAGES/4Pane.mo locale/ca/LC_MESSAGES/4Pane.mo locale/da/LC_MESSAGES/4Pane.mo locale/de/LC_MESSAGES/4Pane.mo locale/es/LC_MESSAGES/4Pane.mo locale/et/LC_MESSAGES/4Pane.mo locale/fa/LC_MESSAGES/4Pane.mo locale/fr/LC_MESSAGES/4Pane.mo locale/it/LC_MESSAGES/4Pane.mo locale/ja/LC_MESSAGES/4Pane.mo locale/nl/LC_MESSAGES/4Pane.mo locale/pl/LC_MESSAGES/4Pane.mo locale/pt_BR/LC_MESSAGES/4Pane.mo locale/ru/LC_MESSAGES/4Pane.mo locale/vi/LC_MESSAGES/4Pane.mo locale/zh_CN/LC_MESSAGES/4Pane.mo appdatadir = $(datadir)/metainfo appdata_DATA = 4Pane.appdata.xml all: all-recursive .SUFFIXES: .SUFFIXES: .c .cpp .o .obj am--refresh: Makefile @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: $(am__configure_deps) $(am__cd) $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) $(am__aclocal_m4_deps): install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ fi; \ for p in $$list; do echo "$$p $$p"; done | \ sed 's/$(EXEEXT)$$//' | \ while read p p1; do if test -f $$p \ ; then echo "$$p"; echo "$$p"; else :; fi; \ done | \ sed -e 'p;s,.*/,,;n;h' \ -e 's|.*|.|' \ -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ sed 'N;N;N;s,\n, ,g' | \ $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ if ($$2 == $$4) files[d] = files[d] " " $$1; \ else { print "f", $$3 "/" $$4, $$1; } } \ END { for (d in files) print "f", d, files[d] }' | \ while read type dir files; do \ if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ test -z "$$files" || { \ echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ } \ ; done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ files=`for p in $$list; do echo "$$p"; done | \ sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ -e 's/$$/$(EXEEXT)/' \ `; \ test -n "$$list" || exit 0; \ echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ cd "$(DESTDIR)$(bindir)" && rm -f $$files clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) sdk/rsvg/$(am__dirstamp): @$(MKDIR_P) sdk/rsvg @: > sdk/rsvg/$(am__dirstamp) sdk/rsvg/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) sdk/rsvg/$(DEPDIR) @: > sdk/rsvg/$(DEPDIR)/$(am__dirstamp) sdk/rsvg/4Pane-rsvg.$(OBJEXT): sdk/rsvg/$(am__dirstamp) \ sdk/rsvg/$(DEPDIR)/$(am__dirstamp) sdk/fswatcher/$(am__dirstamp): @$(MKDIR_P) sdk/fswatcher @: > sdk/fswatcher/$(am__dirstamp) sdk/fswatcher/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) sdk/fswatcher/$(DEPDIR) @: > sdk/fswatcher/$(DEPDIR)/$(am__dirstamp) sdk/fswatcher/4Pane-MyFSWatcher.$(OBJEXT): \ sdk/fswatcher/$(am__dirstamp) \ sdk/fswatcher/$(DEPDIR)/$(am__dirstamp) sdk/bzip/$(am__dirstamp): @$(MKDIR_P) sdk/bzip @: > sdk/bzip/$(am__dirstamp) sdk/bzip/$(DEPDIR)/$(am__dirstamp): @$(MKDIR_P) sdk/bzip/$(DEPDIR) @: > sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-blocksort.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-bzlib.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-compress.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-crctable.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-decompress.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-huffman.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) sdk/bzip/4Pane-randtable.$(OBJEXT): sdk/bzip/$(am__dirstamp) \ sdk/bzip/$(DEPDIR)/$(am__dirstamp) 4Pane$(EXEEXT): $(4Pane_OBJECTS) $(4Pane_DEPENDENCIES) $(EXTRA_4Pane_DEPENDENCIES) @rm -f 4Pane$(EXEEXT) $(AM_V_GEN)$(4Pane_LINK) $(4Pane_OBJECTS) $(4Pane_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) -rm -f sdk/bzip/*.$(OBJEXT) -rm -f sdk/fswatcher/*.$(OBJEXT) -rm -f sdk/rsvg/*.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Accelerators.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Archive.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-ArchiveStream.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Bookmarks.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Configure.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Devices.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Dup.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-ExecuteInDialog.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Filetypes.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Misc.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Mounts.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyDirs.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyDragImage.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyFiles.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyFrame.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyGenericDirCtrl.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyNotebook.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-MyTreeCtrl.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Otherstreams.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Redo.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-Tools.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/4Pane-bzipstream.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-compress.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-crctable.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-decompress.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-huffman.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/bzip/$(DEPDIR)/4Pane-randtable.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po@am__quote@ # am--include-marker @AMDEP_TRUE@@am__include@ @am__quote@sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po@am__quote@ # am--include-marker $(am__depfiles_remade): @$(MKDIR_P) $(@D) @echo '# dummy' >$@-t && $(am__mv) $@-t $@ am--depfiles: $(am__depfiles_remade) .c.o: @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< .c.obj: @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` sdk/bzip/4Pane-blocksort.o: sdk/bzip/blocksort.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-blocksort.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-blocksort.Tpo -c -o sdk/bzip/4Pane-blocksort.o `test -f 'sdk/bzip/blocksort.c' || echo '$(srcdir)/'`sdk/bzip/blocksort.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-blocksort.Tpo sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/blocksort.c' object='sdk/bzip/4Pane-blocksort.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-blocksort.o `test -f 'sdk/bzip/blocksort.c' || echo '$(srcdir)/'`sdk/bzip/blocksort.c sdk/bzip/4Pane-blocksort.obj: sdk/bzip/blocksort.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-blocksort.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-blocksort.Tpo -c -o sdk/bzip/4Pane-blocksort.obj `if test -f 'sdk/bzip/blocksort.c'; then $(CYGPATH_W) 'sdk/bzip/blocksort.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/blocksort.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-blocksort.Tpo sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/blocksort.c' object='sdk/bzip/4Pane-blocksort.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-blocksort.obj `if test -f 'sdk/bzip/blocksort.c'; then $(CYGPATH_W) 'sdk/bzip/blocksort.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/blocksort.c'; fi` sdk/bzip/4Pane-bzlib.o: sdk/bzip/bzlib.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-bzlib.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-bzlib.Tpo -c -o sdk/bzip/4Pane-bzlib.o `test -f 'sdk/bzip/bzlib.c' || echo '$(srcdir)/'`sdk/bzip/bzlib.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-bzlib.Tpo sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/bzlib.c' object='sdk/bzip/4Pane-bzlib.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-bzlib.o `test -f 'sdk/bzip/bzlib.c' || echo '$(srcdir)/'`sdk/bzip/bzlib.c sdk/bzip/4Pane-bzlib.obj: sdk/bzip/bzlib.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-bzlib.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-bzlib.Tpo -c -o sdk/bzip/4Pane-bzlib.obj `if test -f 'sdk/bzip/bzlib.c'; then $(CYGPATH_W) 'sdk/bzip/bzlib.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/bzlib.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-bzlib.Tpo sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/bzlib.c' object='sdk/bzip/4Pane-bzlib.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-bzlib.obj `if test -f 'sdk/bzip/bzlib.c'; then $(CYGPATH_W) 'sdk/bzip/bzlib.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/bzlib.c'; fi` sdk/bzip/4Pane-compress.o: sdk/bzip/compress.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-compress.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-compress.Tpo -c -o sdk/bzip/4Pane-compress.o `test -f 'sdk/bzip/compress.c' || echo '$(srcdir)/'`sdk/bzip/compress.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-compress.Tpo sdk/bzip/$(DEPDIR)/4Pane-compress.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/compress.c' object='sdk/bzip/4Pane-compress.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-compress.o `test -f 'sdk/bzip/compress.c' || echo '$(srcdir)/'`sdk/bzip/compress.c sdk/bzip/4Pane-compress.obj: sdk/bzip/compress.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-compress.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-compress.Tpo -c -o sdk/bzip/4Pane-compress.obj `if test -f 'sdk/bzip/compress.c'; then $(CYGPATH_W) 'sdk/bzip/compress.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/compress.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-compress.Tpo sdk/bzip/$(DEPDIR)/4Pane-compress.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/compress.c' object='sdk/bzip/4Pane-compress.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-compress.obj `if test -f 'sdk/bzip/compress.c'; then $(CYGPATH_W) 'sdk/bzip/compress.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/compress.c'; fi` sdk/bzip/4Pane-crctable.o: sdk/bzip/crctable.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-crctable.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-crctable.Tpo -c -o sdk/bzip/4Pane-crctable.o `test -f 'sdk/bzip/crctable.c' || echo '$(srcdir)/'`sdk/bzip/crctable.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-crctable.Tpo sdk/bzip/$(DEPDIR)/4Pane-crctable.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/crctable.c' object='sdk/bzip/4Pane-crctable.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-crctable.o `test -f 'sdk/bzip/crctable.c' || echo '$(srcdir)/'`sdk/bzip/crctable.c sdk/bzip/4Pane-crctable.obj: sdk/bzip/crctable.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-crctable.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-crctable.Tpo -c -o sdk/bzip/4Pane-crctable.obj `if test -f 'sdk/bzip/crctable.c'; then $(CYGPATH_W) 'sdk/bzip/crctable.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/crctable.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-crctable.Tpo sdk/bzip/$(DEPDIR)/4Pane-crctable.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/crctable.c' object='sdk/bzip/4Pane-crctable.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-crctable.obj `if test -f 'sdk/bzip/crctable.c'; then $(CYGPATH_W) 'sdk/bzip/crctable.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/crctable.c'; fi` sdk/bzip/4Pane-decompress.o: sdk/bzip/decompress.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-decompress.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-decompress.Tpo -c -o sdk/bzip/4Pane-decompress.o `test -f 'sdk/bzip/decompress.c' || echo '$(srcdir)/'`sdk/bzip/decompress.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-decompress.Tpo sdk/bzip/$(DEPDIR)/4Pane-decompress.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/decompress.c' object='sdk/bzip/4Pane-decompress.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-decompress.o `test -f 'sdk/bzip/decompress.c' || echo '$(srcdir)/'`sdk/bzip/decompress.c sdk/bzip/4Pane-decompress.obj: sdk/bzip/decompress.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-decompress.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-decompress.Tpo -c -o sdk/bzip/4Pane-decompress.obj `if test -f 'sdk/bzip/decompress.c'; then $(CYGPATH_W) 'sdk/bzip/decompress.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/decompress.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-decompress.Tpo sdk/bzip/$(DEPDIR)/4Pane-decompress.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/decompress.c' object='sdk/bzip/4Pane-decompress.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-decompress.obj `if test -f 'sdk/bzip/decompress.c'; then $(CYGPATH_W) 'sdk/bzip/decompress.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/decompress.c'; fi` sdk/bzip/4Pane-huffman.o: sdk/bzip/huffman.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-huffman.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-huffman.Tpo -c -o sdk/bzip/4Pane-huffman.o `test -f 'sdk/bzip/huffman.c' || echo '$(srcdir)/'`sdk/bzip/huffman.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-huffman.Tpo sdk/bzip/$(DEPDIR)/4Pane-huffman.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/huffman.c' object='sdk/bzip/4Pane-huffman.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-huffman.o `test -f 'sdk/bzip/huffman.c' || echo '$(srcdir)/'`sdk/bzip/huffman.c sdk/bzip/4Pane-huffman.obj: sdk/bzip/huffman.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-huffman.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-huffman.Tpo -c -o sdk/bzip/4Pane-huffman.obj `if test -f 'sdk/bzip/huffman.c'; then $(CYGPATH_W) 'sdk/bzip/huffman.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/huffman.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-huffman.Tpo sdk/bzip/$(DEPDIR)/4Pane-huffman.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/huffman.c' object='sdk/bzip/4Pane-huffman.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-huffman.obj `if test -f 'sdk/bzip/huffman.c'; then $(CYGPATH_W) 'sdk/bzip/huffman.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/huffman.c'; fi` sdk/bzip/4Pane-randtable.o: sdk/bzip/randtable.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-randtable.o -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-randtable.Tpo -c -o sdk/bzip/4Pane-randtable.o `test -f 'sdk/bzip/randtable.c' || echo '$(srcdir)/'`sdk/bzip/randtable.c @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-randtable.Tpo sdk/bzip/$(DEPDIR)/4Pane-randtable.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/randtable.c' object='sdk/bzip/4Pane-randtable.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-randtable.o `test -f 'sdk/bzip/randtable.c' || echo '$(srcdir)/'`sdk/bzip/randtable.c sdk/bzip/4Pane-randtable.obj: sdk/bzip/randtable.c @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -MT sdk/bzip/4Pane-randtable.obj -MD -MP -MF sdk/bzip/$(DEPDIR)/4Pane-randtable.Tpo -c -o sdk/bzip/4Pane-randtable.obj `if test -f 'sdk/bzip/randtable.c'; then $(CYGPATH_W) 'sdk/bzip/randtable.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/randtable.c'; fi` @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) sdk/bzip/$(DEPDIR)/4Pane-randtable.Tpo sdk/bzip/$(DEPDIR)/4Pane-randtable.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sdk/bzip/randtable.c' object='sdk/bzip/4Pane-randtable.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CFLAGS) $(CFLAGS) -c -o sdk/bzip/4Pane-randtable.obj `if test -f 'sdk/bzip/randtable.c'; then $(CYGPATH_W) 'sdk/bzip/randtable.c'; else $(CYGPATH_W) '$(srcdir)/sdk/bzip/randtable.c'; fi` .cpp.o: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< .cpp.obj: @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 4Pane-Accelerators.o: Accelerators.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Accelerators.o -MD -MP -MF $(DEPDIR)/4Pane-Accelerators.Tpo -c -o 4Pane-Accelerators.o `test -f 'Accelerators.cpp' || echo '$(srcdir)/'`Accelerators.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Accelerators.Tpo $(DEPDIR)/4Pane-Accelerators.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Accelerators.cpp' object='4Pane-Accelerators.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Accelerators.o `test -f 'Accelerators.cpp' || echo '$(srcdir)/'`Accelerators.cpp 4Pane-Accelerators.obj: Accelerators.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Accelerators.obj -MD -MP -MF $(DEPDIR)/4Pane-Accelerators.Tpo -c -o 4Pane-Accelerators.obj `if test -f 'Accelerators.cpp'; then $(CYGPATH_W) 'Accelerators.cpp'; else $(CYGPATH_W) '$(srcdir)/Accelerators.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Accelerators.Tpo $(DEPDIR)/4Pane-Accelerators.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Accelerators.cpp' object='4Pane-Accelerators.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Accelerators.obj `if test -f 'Accelerators.cpp'; then $(CYGPATH_W) 'Accelerators.cpp'; else $(CYGPATH_W) '$(srcdir)/Accelerators.cpp'; fi` 4Pane-Archive.o: Archive.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Archive.o -MD -MP -MF $(DEPDIR)/4Pane-Archive.Tpo -c -o 4Pane-Archive.o `test -f 'Archive.cpp' || echo '$(srcdir)/'`Archive.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Archive.Tpo $(DEPDIR)/4Pane-Archive.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Archive.cpp' object='4Pane-Archive.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Archive.o `test -f 'Archive.cpp' || echo '$(srcdir)/'`Archive.cpp 4Pane-Archive.obj: Archive.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Archive.obj -MD -MP -MF $(DEPDIR)/4Pane-Archive.Tpo -c -o 4Pane-Archive.obj `if test -f 'Archive.cpp'; then $(CYGPATH_W) 'Archive.cpp'; else $(CYGPATH_W) '$(srcdir)/Archive.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Archive.Tpo $(DEPDIR)/4Pane-Archive.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Archive.cpp' object='4Pane-Archive.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Archive.obj `if test -f 'Archive.cpp'; then $(CYGPATH_W) 'Archive.cpp'; else $(CYGPATH_W) '$(srcdir)/Archive.cpp'; fi` 4Pane-ArchiveStream.o: ArchiveStream.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-ArchiveStream.o -MD -MP -MF $(DEPDIR)/4Pane-ArchiveStream.Tpo -c -o 4Pane-ArchiveStream.o `test -f 'ArchiveStream.cpp' || echo '$(srcdir)/'`ArchiveStream.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-ArchiveStream.Tpo $(DEPDIR)/4Pane-ArchiveStream.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ArchiveStream.cpp' object='4Pane-ArchiveStream.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-ArchiveStream.o `test -f 'ArchiveStream.cpp' || echo '$(srcdir)/'`ArchiveStream.cpp 4Pane-ArchiveStream.obj: ArchiveStream.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-ArchiveStream.obj -MD -MP -MF $(DEPDIR)/4Pane-ArchiveStream.Tpo -c -o 4Pane-ArchiveStream.obj `if test -f 'ArchiveStream.cpp'; then $(CYGPATH_W) 'ArchiveStream.cpp'; else $(CYGPATH_W) '$(srcdir)/ArchiveStream.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-ArchiveStream.Tpo $(DEPDIR)/4Pane-ArchiveStream.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ArchiveStream.cpp' object='4Pane-ArchiveStream.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-ArchiveStream.obj `if test -f 'ArchiveStream.cpp'; then $(CYGPATH_W) 'ArchiveStream.cpp'; else $(CYGPATH_W) '$(srcdir)/ArchiveStream.cpp'; fi` 4Pane-Bookmarks.o: Bookmarks.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Bookmarks.o -MD -MP -MF $(DEPDIR)/4Pane-Bookmarks.Tpo -c -o 4Pane-Bookmarks.o `test -f 'Bookmarks.cpp' || echo '$(srcdir)/'`Bookmarks.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Bookmarks.Tpo $(DEPDIR)/4Pane-Bookmarks.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Bookmarks.cpp' object='4Pane-Bookmarks.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Bookmarks.o `test -f 'Bookmarks.cpp' || echo '$(srcdir)/'`Bookmarks.cpp 4Pane-Bookmarks.obj: Bookmarks.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Bookmarks.obj -MD -MP -MF $(DEPDIR)/4Pane-Bookmarks.Tpo -c -o 4Pane-Bookmarks.obj `if test -f 'Bookmarks.cpp'; then $(CYGPATH_W) 'Bookmarks.cpp'; else $(CYGPATH_W) '$(srcdir)/Bookmarks.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Bookmarks.Tpo $(DEPDIR)/4Pane-Bookmarks.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Bookmarks.cpp' object='4Pane-Bookmarks.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Bookmarks.obj `if test -f 'Bookmarks.cpp'; then $(CYGPATH_W) 'Bookmarks.cpp'; else $(CYGPATH_W) '$(srcdir)/Bookmarks.cpp'; fi` 4Pane-Configure.o: Configure.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Configure.o -MD -MP -MF $(DEPDIR)/4Pane-Configure.Tpo -c -o 4Pane-Configure.o `test -f 'Configure.cpp' || echo '$(srcdir)/'`Configure.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Configure.Tpo $(DEPDIR)/4Pane-Configure.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Configure.cpp' object='4Pane-Configure.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Configure.o `test -f 'Configure.cpp' || echo '$(srcdir)/'`Configure.cpp 4Pane-Configure.obj: Configure.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Configure.obj -MD -MP -MF $(DEPDIR)/4Pane-Configure.Tpo -c -o 4Pane-Configure.obj `if test -f 'Configure.cpp'; then $(CYGPATH_W) 'Configure.cpp'; else $(CYGPATH_W) '$(srcdir)/Configure.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Configure.Tpo $(DEPDIR)/4Pane-Configure.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Configure.cpp' object='4Pane-Configure.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Configure.obj `if test -f 'Configure.cpp'; then $(CYGPATH_W) 'Configure.cpp'; else $(CYGPATH_W) '$(srcdir)/Configure.cpp'; fi` 4Pane-Devices.o: Devices.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Devices.o -MD -MP -MF $(DEPDIR)/4Pane-Devices.Tpo -c -o 4Pane-Devices.o `test -f 'Devices.cpp' || echo '$(srcdir)/'`Devices.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Devices.Tpo $(DEPDIR)/4Pane-Devices.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Devices.cpp' object='4Pane-Devices.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Devices.o `test -f 'Devices.cpp' || echo '$(srcdir)/'`Devices.cpp 4Pane-Devices.obj: Devices.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Devices.obj -MD -MP -MF $(DEPDIR)/4Pane-Devices.Tpo -c -o 4Pane-Devices.obj `if test -f 'Devices.cpp'; then $(CYGPATH_W) 'Devices.cpp'; else $(CYGPATH_W) '$(srcdir)/Devices.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Devices.Tpo $(DEPDIR)/4Pane-Devices.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Devices.cpp' object='4Pane-Devices.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Devices.obj `if test -f 'Devices.cpp'; then $(CYGPATH_W) 'Devices.cpp'; else $(CYGPATH_W) '$(srcdir)/Devices.cpp'; fi` 4Pane-Dup.o: Dup.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Dup.o -MD -MP -MF $(DEPDIR)/4Pane-Dup.Tpo -c -o 4Pane-Dup.o `test -f 'Dup.cpp' || echo '$(srcdir)/'`Dup.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Dup.Tpo $(DEPDIR)/4Pane-Dup.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Dup.cpp' object='4Pane-Dup.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Dup.o `test -f 'Dup.cpp' || echo '$(srcdir)/'`Dup.cpp 4Pane-Dup.obj: Dup.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Dup.obj -MD -MP -MF $(DEPDIR)/4Pane-Dup.Tpo -c -o 4Pane-Dup.obj `if test -f 'Dup.cpp'; then $(CYGPATH_W) 'Dup.cpp'; else $(CYGPATH_W) '$(srcdir)/Dup.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Dup.Tpo $(DEPDIR)/4Pane-Dup.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Dup.cpp' object='4Pane-Dup.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Dup.obj `if test -f 'Dup.cpp'; then $(CYGPATH_W) 'Dup.cpp'; else $(CYGPATH_W) '$(srcdir)/Dup.cpp'; fi` 4Pane-ExecuteInDialog.o: ExecuteInDialog.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-ExecuteInDialog.o -MD -MP -MF $(DEPDIR)/4Pane-ExecuteInDialog.Tpo -c -o 4Pane-ExecuteInDialog.o `test -f 'ExecuteInDialog.cpp' || echo '$(srcdir)/'`ExecuteInDialog.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-ExecuteInDialog.Tpo $(DEPDIR)/4Pane-ExecuteInDialog.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ExecuteInDialog.cpp' object='4Pane-ExecuteInDialog.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-ExecuteInDialog.o `test -f 'ExecuteInDialog.cpp' || echo '$(srcdir)/'`ExecuteInDialog.cpp 4Pane-ExecuteInDialog.obj: ExecuteInDialog.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-ExecuteInDialog.obj -MD -MP -MF $(DEPDIR)/4Pane-ExecuteInDialog.Tpo -c -o 4Pane-ExecuteInDialog.obj `if test -f 'ExecuteInDialog.cpp'; then $(CYGPATH_W) 'ExecuteInDialog.cpp'; else $(CYGPATH_W) '$(srcdir)/ExecuteInDialog.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-ExecuteInDialog.Tpo $(DEPDIR)/4Pane-ExecuteInDialog.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='ExecuteInDialog.cpp' object='4Pane-ExecuteInDialog.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-ExecuteInDialog.obj `if test -f 'ExecuteInDialog.cpp'; then $(CYGPATH_W) 'ExecuteInDialog.cpp'; else $(CYGPATH_W) '$(srcdir)/ExecuteInDialog.cpp'; fi` 4Pane-Filetypes.o: Filetypes.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Filetypes.o -MD -MP -MF $(DEPDIR)/4Pane-Filetypes.Tpo -c -o 4Pane-Filetypes.o `test -f 'Filetypes.cpp' || echo '$(srcdir)/'`Filetypes.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Filetypes.Tpo $(DEPDIR)/4Pane-Filetypes.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Filetypes.cpp' object='4Pane-Filetypes.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Filetypes.o `test -f 'Filetypes.cpp' || echo '$(srcdir)/'`Filetypes.cpp 4Pane-Filetypes.obj: Filetypes.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Filetypes.obj -MD -MP -MF $(DEPDIR)/4Pane-Filetypes.Tpo -c -o 4Pane-Filetypes.obj `if test -f 'Filetypes.cpp'; then $(CYGPATH_W) 'Filetypes.cpp'; else $(CYGPATH_W) '$(srcdir)/Filetypes.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Filetypes.Tpo $(DEPDIR)/4Pane-Filetypes.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Filetypes.cpp' object='4Pane-Filetypes.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Filetypes.obj `if test -f 'Filetypes.cpp'; then $(CYGPATH_W) 'Filetypes.cpp'; else $(CYGPATH_W) '$(srcdir)/Filetypes.cpp'; fi` 4Pane-Misc.o: Misc.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Misc.o -MD -MP -MF $(DEPDIR)/4Pane-Misc.Tpo -c -o 4Pane-Misc.o `test -f 'Misc.cpp' || echo '$(srcdir)/'`Misc.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Misc.Tpo $(DEPDIR)/4Pane-Misc.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Misc.cpp' object='4Pane-Misc.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Misc.o `test -f 'Misc.cpp' || echo '$(srcdir)/'`Misc.cpp 4Pane-Misc.obj: Misc.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Misc.obj -MD -MP -MF $(DEPDIR)/4Pane-Misc.Tpo -c -o 4Pane-Misc.obj `if test -f 'Misc.cpp'; then $(CYGPATH_W) 'Misc.cpp'; else $(CYGPATH_W) '$(srcdir)/Misc.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Misc.Tpo $(DEPDIR)/4Pane-Misc.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Misc.cpp' object='4Pane-Misc.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Misc.obj `if test -f 'Misc.cpp'; then $(CYGPATH_W) 'Misc.cpp'; else $(CYGPATH_W) '$(srcdir)/Misc.cpp'; fi` 4Pane-Mounts.o: Mounts.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Mounts.o -MD -MP -MF $(DEPDIR)/4Pane-Mounts.Tpo -c -o 4Pane-Mounts.o `test -f 'Mounts.cpp' || echo '$(srcdir)/'`Mounts.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Mounts.Tpo $(DEPDIR)/4Pane-Mounts.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Mounts.cpp' object='4Pane-Mounts.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Mounts.o `test -f 'Mounts.cpp' || echo '$(srcdir)/'`Mounts.cpp 4Pane-Mounts.obj: Mounts.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Mounts.obj -MD -MP -MF $(DEPDIR)/4Pane-Mounts.Tpo -c -o 4Pane-Mounts.obj `if test -f 'Mounts.cpp'; then $(CYGPATH_W) 'Mounts.cpp'; else $(CYGPATH_W) '$(srcdir)/Mounts.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Mounts.Tpo $(DEPDIR)/4Pane-Mounts.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Mounts.cpp' object='4Pane-Mounts.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Mounts.obj `if test -f 'Mounts.cpp'; then $(CYGPATH_W) 'Mounts.cpp'; else $(CYGPATH_W) '$(srcdir)/Mounts.cpp'; fi` 4Pane-MyDirs.o: MyDirs.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyDirs.o -MD -MP -MF $(DEPDIR)/4Pane-MyDirs.Tpo -c -o 4Pane-MyDirs.o `test -f 'MyDirs.cpp' || echo '$(srcdir)/'`MyDirs.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyDirs.Tpo $(DEPDIR)/4Pane-MyDirs.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyDirs.cpp' object='4Pane-MyDirs.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyDirs.o `test -f 'MyDirs.cpp' || echo '$(srcdir)/'`MyDirs.cpp 4Pane-MyDirs.obj: MyDirs.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyDirs.obj -MD -MP -MF $(DEPDIR)/4Pane-MyDirs.Tpo -c -o 4Pane-MyDirs.obj `if test -f 'MyDirs.cpp'; then $(CYGPATH_W) 'MyDirs.cpp'; else $(CYGPATH_W) '$(srcdir)/MyDirs.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyDirs.Tpo $(DEPDIR)/4Pane-MyDirs.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyDirs.cpp' object='4Pane-MyDirs.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyDirs.obj `if test -f 'MyDirs.cpp'; then $(CYGPATH_W) 'MyDirs.cpp'; else $(CYGPATH_W) '$(srcdir)/MyDirs.cpp'; fi` 4Pane-MyDragImage.o: MyDragImage.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyDragImage.o -MD -MP -MF $(DEPDIR)/4Pane-MyDragImage.Tpo -c -o 4Pane-MyDragImage.o `test -f 'MyDragImage.cpp' || echo '$(srcdir)/'`MyDragImage.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyDragImage.Tpo $(DEPDIR)/4Pane-MyDragImage.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyDragImage.cpp' object='4Pane-MyDragImage.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyDragImage.o `test -f 'MyDragImage.cpp' || echo '$(srcdir)/'`MyDragImage.cpp 4Pane-MyDragImage.obj: MyDragImage.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyDragImage.obj -MD -MP -MF $(DEPDIR)/4Pane-MyDragImage.Tpo -c -o 4Pane-MyDragImage.obj `if test -f 'MyDragImage.cpp'; then $(CYGPATH_W) 'MyDragImage.cpp'; else $(CYGPATH_W) '$(srcdir)/MyDragImage.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyDragImage.Tpo $(DEPDIR)/4Pane-MyDragImage.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyDragImage.cpp' object='4Pane-MyDragImage.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyDragImage.obj `if test -f 'MyDragImage.cpp'; then $(CYGPATH_W) 'MyDragImage.cpp'; else $(CYGPATH_W) '$(srcdir)/MyDragImage.cpp'; fi` 4Pane-MyFiles.o: MyFiles.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyFiles.o -MD -MP -MF $(DEPDIR)/4Pane-MyFiles.Tpo -c -o 4Pane-MyFiles.o `test -f 'MyFiles.cpp' || echo '$(srcdir)/'`MyFiles.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyFiles.Tpo $(DEPDIR)/4Pane-MyFiles.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyFiles.cpp' object='4Pane-MyFiles.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyFiles.o `test -f 'MyFiles.cpp' || echo '$(srcdir)/'`MyFiles.cpp 4Pane-MyFiles.obj: MyFiles.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyFiles.obj -MD -MP -MF $(DEPDIR)/4Pane-MyFiles.Tpo -c -o 4Pane-MyFiles.obj `if test -f 'MyFiles.cpp'; then $(CYGPATH_W) 'MyFiles.cpp'; else $(CYGPATH_W) '$(srcdir)/MyFiles.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyFiles.Tpo $(DEPDIR)/4Pane-MyFiles.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyFiles.cpp' object='4Pane-MyFiles.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyFiles.obj `if test -f 'MyFiles.cpp'; then $(CYGPATH_W) 'MyFiles.cpp'; else $(CYGPATH_W) '$(srcdir)/MyFiles.cpp'; fi` 4Pane-MyFrame.o: MyFrame.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyFrame.o -MD -MP -MF $(DEPDIR)/4Pane-MyFrame.Tpo -c -o 4Pane-MyFrame.o `test -f 'MyFrame.cpp' || echo '$(srcdir)/'`MyFrame.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyFrame.Tpo $(DEPDIR)/4Pane-MyFrame.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyFrame.cpp' object='4Pane-MyFrame.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyFrame.o `test -f 'MyFrame.cpp' || echo '$(srcdir)/'`MyFrame.cpp 4Pane-MyFrame.obj: MyFrame.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyFrame.obj -MD -MP -MF $(DEPDIR)/4Pane-MyFrame.Tpo -c -o 4Pane-MyFrame.obj `if test -f 'MyFrame.cpp'; then $(CYGPATH_W) 'MyFrame.cpp'; else $(CYGPATH_W) '$(srcdir)/MyFrame.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyFrame.Tpo $(DEPDIR)/4Pane-MyFrame.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyFrame.cpp' object='4Pane-MyFrame.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyFrame.obj `if test -f 'MyFrame.cpp'; then $(CYGPATH_W) 'MyFrame.cpp'; else $(CYGPATH_W) '$(srcdir)/MyFrame.cpp'; fi` 4Pane-MyGenericDirCtrl.o: MyGenericDirCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyGenericDirCtrl.o -MD -MP -MF $(DEPDIR)/4Pane-MyGenericDirCtrl.Tpo -c -o 4Pane-MyGenericDirCtrl.o `test -f 'MyGenericDirCtrl.cpp' || echo '$(srcdir)/'`MyGenericDirCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyGenericDirCtrl.Tpo $(DEPDIR)/4Pane-MyGenericDirCtrl.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyGenericDirCtrl.cpp' object='4Pane-MyGenericDirCtrl.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyGenericDirCtrl.o `test -f 'MyGenericDirCtrl.cpp' || echo '$(srcdir)/'`MyGenericDirCtrl.cpp 4Pane-MyGenericDirCtrl.obj: MyGenericDirCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyGenericDirCtrl.obj -MD -MP -MF $(DEPDIR)/4Pane-MyGenericDirCtrl.Tpo -c -o 4Pane-MyGenericDirCtrl.obj `if test -f 'MyGenericDirCtrl.cpp'; then $(CYGPATH_W) 'MyGenericDirCtrl.cpp'; else $(CYGPATH_W) '$(srcdir)/MyGenericDirCtrl.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyGenericDirCtrl.Tpo $(DEPDIR)/4Pane-MyGenericDirCtrl.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyGenericDirCtrl.cpp' object='4Pane-MyGenericDirCtrl.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyGenericDirCtrl.obj `if test -f 'MyGenericDirCtrl.cpp'; then $(CYGPATH_W) 'MyGenericDirCtrl.cpp'; else $(CYGPATH_W) '$(srcdir)/MyGenericDirCtrl.cpp'; fi` 4Pane-MyNotebook.o: MyNotebook.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyNotebook.o -MD -MP -MF $(DEPDIR)/4Pane-MyNotebook.Tpo -c -o 4Pane-MyNotebook.o `test -f 'MyNotebook.cpp' || echo '$(srcdir)/'`MyNotebook.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyNotebook.Tpo $(DEPDIR)/4Pane-MyNotebook.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyNotebook.cpp' object='4Pane-MyNotebook.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyNotebook.o `test -f 'MyNotebook.cpp' || echo '$(srcdir)/'`MyNotebook.cpp 4Pane-MyNotebook.obj: MyNotebook.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyNotebook.obj -MD -MP -MF $(DEPDIR)/4Pane-MyNotebook.Tpo -c -o 4Pane-MyNotebook.obj `if test -f 'MyNotebook.cpp'; then $(CYGPATH_W) 'MyNotebook.cpp'; else $(CYGPATH_W) '$(srcdir)/MyNotebook.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyNotebook.Tpo $(DEPDIR)/4Pane-MyNotebook.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyNotebook.cpp' object='4Pane-MyNotebook.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyNotebook.obj `if test -f 'MyNotebook.cpp'; then $(CYGPATH_W) 'MyNotebook.cpp'; else $(CYGPATH_W) '$(srcdir)/MyNotebook.cpp'; fi` 4Pane-MyTreeCtrl.o: MyTreeCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyTreeCtrl.o -MD -MP -MF $(DEPDIR)/4Pane-MyTreeCtrl.Tpo -c -o 4Pane-MyTreeCtrl.o `test -f 'MyTreeCtrl.cpp' || echo '$(srcdir)/'`MyTreeCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyTreeCtrl.Tpo $(DEPDIR)/4Pane-MyTreeCtrl.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyTreeCtrl.cpp' object='4Pane-MyTreeCtrl.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyTreeCtrl.o `test -f 'MyTreeCtrl.cpp' || echo '$(srcdir)/'`MyTreeCtrl.cpp 4Pane-MyTreeCtrl.obj: MyTreeCtrl.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-MyTreeCtrl.obj -MD -MP -MF $(DEPDIR)/4Pane-MyTreeCtrl.Tpo -c -o 4Pane-MyTreeCtrl.obj `if test -f 'MyTreeCtrl.cpp'; then $(CYGPATH_W) 'MyTreeCtrl.cpp'; else $(CYGPATH_W) '$(srcdir)/MyTreeCtrl.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-MyTreeCtrl.Tpo $(DEPDIR)/4Pane-MyTreeCtrl.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='MyTreeCtrl.cpp' object='4Pane-MyTreeCtrl.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-MyTreeCtrl.obj `if test -f 'MyTreeCtrl.cpp'; then $(CYGPATH_W) 'MyTreeCtrl.cpp'; else $(CYGPATH_W) '$(srcdir)/MyTreeCtrl.cpp'; fi` 4Pane-Otherstreams.o: Otherstreams.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Otherstreams.o -MD -MP -MF $(DEPDIR)/4Pane-Otherstreams.Tpo -c -o 4Pane-Otherstreams.o `test -f 'Otherstreams.cpp' || echo '$(srcdir)/'`Otherstreams.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Otherstreams.Tpo $(DEPDIR)/4Pane-Otherstreams.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Otherstreams.cpp' object='4Pane-Otherstreams.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Otherstreams.o `test -f 'Otherstreams.cpp' || echo '$(srcdir)/'`Otherstreams.cpp 4Pane-Otherstreams.obj: Otherstreams.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Otherstreams.obj -MD -MP -MF $(DEPDIR)/4Pane-Otherstreams.Tpo -c -o 4Pane-Otherstreams.obj `if test -f 'Otherstreams.cpp'; then $(CYGPATH_W) 'Otherstreams.cpp'; else $(CYGPATH_W) '$(srcdir)/Otherstreams.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Otherstreams.Tpo $(DEPDIR)/4Pane-Otherstreams.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Otherstreams.cpp' object='4Pane-Otherstreams.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Otherstreams.obj `if test -f 'Otherstreams.cpp'; then $(CYGPATH_W) 'Otherstreams.cpp'; else $(CYGPATH_W) '$(srcdir)/Otherstreams.cpp'; fi` 4Pane-Redo.o: Redo.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Redo.o -MD -MP -MF $(DEPDIR)/4Pane-Redo.Tpo -c -o 4Pane-Redo.o `test -f 'Redo.cpp' || echo '$(srcdir)/'`Redo.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Redo.Tpo $(DEPDIR)/4Pane-Redo.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Redo.cpp' object='4Pane-Redo.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Redo.o `test -f 'Redo.cpp' || echo '$(srcdir)/'`Redo.cpp 4Pane-Redo.obj: Redo.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Redo.obj -MD -MP -MF $(DEPDIR)/4Pane-Redo.Tpo -c -o 4Pane-Redo.obj `if test -f 'Redo.cpp'; then $(CYGPATH_W) 'Redo.cpp'; else $(CYGPATH_W) '$(srcdir)/Redo.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Redo.Tpo $(DEPDIR)/4Pane-Redo.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Redo.cpp' object='4Pane-Redo.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Redo.obj `if test -f 'Redo.cpp'; then $(CYGPATH_W) 'Redo.cpp'; else $(CYGPATH_W) '$(srcdir)/Redo.cpp'; fi` 4Pane-Tools.o: Tools.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Tools.o -MD -MP -MF $(DEPDIR)/4Pane-Tools.Tpo -c -o 4Pane-Tools.o `test -f 'Tools.cpp' || echo '$(srcdir)/'`Tools.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Tools.Tpo $(DEPDIR)/4Pane-Tools.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Tools.cpp' object='4Pane-Tools.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Tools.o `test -f 'Tools.cpp' || echo '$(srcdir)/'`Tools.cpp 4Pane-Tools.obj: Tools.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-Tools.obj -MD -MP -MF $(DEPDIR)/4Pane-Tools.Tpo -c -o 4Pane-Tools.obj `if test -f 'Tools.cpp'; then $(CYGPATH_W) 'Tools.cpp'; else $(CYGPATH_W) '$(srcdir)/Tools.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-Tools.Tpo $(DEPDIR)/4Pane-Tools.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='Tools.cpp' object='4Pane-Tools.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-Tools.obj `if test -f 'Tools.cpp'; then $(CYGPATH_W) 'Tools.cpp'; else $(CYGPATH_W) '$(srcdir)/Tools.cpp'; fi` 4Pane-bzipstream.o: bzipstream.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-bzipstream.o -MD -MP -MF $(DEPDIR)/4Pane-bzipstream.Tpo -c -o 4Pane-bzipstream.o `test -f 'bzipstream.cpp' || echo '$(srcdir)/'`bzipstream.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-bzipstream.Tpo $(DEPDIR)/4Pane-bzipstream.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='bzipstream.cpp' object='4Pane-bzipstream.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-bzipstream.o `test -f 'bzipstream.cpp' || echo '$(srcdir)/'`bzipstream.cpp 4Pane-bzipstream.obj: bzipstream.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT 4Pane-bzipstream.obj -MD -MP -MF $(DEPDIR)/4Pane-bzipstream.Tpo -c -o 4Pane-bzipstream.obj `if test -f 'bzipstream.cpp'; then $(CYGPATH_W) 'bzipstream.cpp'; else $(CYGPATH_W) '$(srcdir)/bzipstream.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/4Pane-bzipstream.Tpo $(DEPDIR)/4Pane-bzipstream.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='bzipstream.cpp' object='4Pane-bzipstream.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o 4Pane-bzipstream.obj `if test -f 'bzipstream.cpp'; then $(CYGPATH_W) 'bzipstream.cpp'; else $(CYGPATH_W) '$(srcdir)/bzipstream.cpp'; fi` sdk/rsvg/4Pane-rsvg.o: sdk/rsvg/rsvg.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT sdk/rsvg/4Pane-rsvg.o -MD -MP -MF sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Tpo -c -o sdk/rsvg/4Pane-rsvg.o `test -f 'sdk/rsvg/rsvg.cpp' || echo '$(srcdir)/'`sdk/rsvg/rsvg.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Tpo sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sdk/rsvg/rsvg.cpp' object='sdk/rsvg/4Pane-rsvg.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o sdk/rsvg/4Pane-rsvg.o `test -f 'sdk/rsvg/rsvg.cpp' || echo '$(srcdir)/'`sdk/rsvg/rsvg.cpp sdk/rsvg/4Pane-rsvg.obj: sdk/rsvg/rsvg.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT sdk/rsvg/4Pane-rsvg.obj -MD -MP -MF sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Tpo -c -o sdk/rsvg/4Pane-rsvg.obj `if test -f 'sdk/rsvg/rsvg.cpp'; then $(CYGPATH_W) 'sdk/rsvg/rsvg.cpp'; else $(CYGPATH_W) '$(srcdir)/sdk/rsvg/rsvg.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Tpo sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sdk/rsvg/rsvg.cpp' object='sdk/rsvg/4Pane-rsvg.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o sdk/rsvg/4Pane-rsvg.obj `if test -f 'sdk/rsvg/rsvg.cpp'; then $(CYGPATH_W) 'sdk/rsvg/rsvg.cpp'; else $(CYGPATH_W) '$(srcdir)/sdk/rsvg/rsvg.cpp'; fi` sdk/fswatcher/4Pane-MyFSWatcher.o: sdk/fswatcher/MyFSWatcher.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT sdk/fswatcher/4Pane-MyFSWatcher.o -MD -MP -MF sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Tpo -c -o sdk/fswatcher/4Pane-MyFSWatcher.o `test -f 'sdk/fswatcher/MyFSWatcher.cpp' || echo '$(srcdir)/'`sdk/fswatcher/MyFSWatcher.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Tpo sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sdk/fswatcher/MyFSWatcher.cpp' object='sdk/fswatcher/4Pane-MyFSWatcher.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o sdk/fswatcher/4Pane-MyFSWatcher.o `test -f 'sdk/fswatcher/MyFSWatcher.cpp' || echo '$(srcdir)/'`sdk/fswatcher/MyFSWatcher.cpp sdk/fswatcher/4Pane-MyFSWatcher.obj: sdk/fswatcher/MyFSWatcher.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -MT sdk/fswatcher/4Pane-MyFSWatcher.obj -MD -MP -MF sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Tpo -c -o sdk/fswatcher/4Pane-MyFSWatcher.obj `if test -f 'sdk/fswatcher/MyFSWatcher.cpp'; then $(CYGPATH_W) 'sdk/fswatcher/MyFSWatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/sdk/fswatcher/MyFSWatcher.cpp'; fi` @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Tpo sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='sdk/fswatcher/MyFSWatcher.cpp' object='sdk/fswatcher/4Pane-MyFSWatcher.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(4Pane_CXXFLAGS) $(CXXFLAGS) -c -o sdk/fswatcher/4Pane-MyFSWatcher.obj `if test -f 'sdk/fswatcher/MyFSWatcher.cpp'; then $(CYGPATH_W) 'sdk/fswatcher/MyFSWatcher.cpp'; else $(CYGPATH_W) '$(srcdir)/sdk/fswatcher/MyFSWatcher.cpp'; fi` install-appdataDATA: $(appdata_DATA) @$(NORMAL_INSTALL) @list='$(appdata_DATA)'; test -n "$(appdatadir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(appdatadir)'"; \ $(MKDIR_P) "$(DESTDIR)$(appdatadir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(appdatadir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(appdatadir)" || exit $$?; \ done uninstall-appdataDATA: @$(NORMAL_UNINSTALL) @list='$(appdata_DATA)'; test -n "$(appdatadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(appdatadir)'; $(am__uninstall_files_from_dir) install-appiconDATA: $(appicon_DATA) @$(NORMAL_INSTALL) @list='$(appicon_DATA)'; test -n "$(appicondir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(appicondir)'"; \ $(MKDIR_P) "$(DESTDIR)$(appicondir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(appicondir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(appicondir)" || exit $$?; \ done uninstall-appiconDATA: @$(NORMAL_UNINSTALL) @list='$(appicon_DATA)'; test -n "$(appicondir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(appicondir)'; $(am__uninstall_files_from_dir) install-appsvgiconDATA: $(appsvgicon_DATA) @$(NORMAL_INSTALL) @list='$(appsvgicon_DATA)'; test -n "$(appsvgicondir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(appsvgicondir)'"; \ $(MKDIR_P) "$(DESTDIR)$(appsvgicondir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(appsvgicondir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(appsvgicondir)" || exit $$?; \ done uninstall-appsvgiconDATA: @$(NORMAL_UNINSTALL) @list='$(appsvgicon_DATA)'; test -n "$(appsvgicondir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(appsvgicondir)'; $(am__uninstall_files_from_dir) install-bitmapDATA: $(bitmap_DATA) @$(NORMAL_INSTALL) @list='$(bitmap_DATA)'; test -n "$(bitmapdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(bitmapdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(bitmapdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bitmapdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(bitmapdir)" || exit $$?; \ done uninstall-bitmapDATA: @$(NORMAL_UNINSTALL) @list='$(bitmap_DATA)'; test -n "$(bitmapdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(bitmapdir)'; $(am__uninstall_files_from_dir) install-docsDATA: $(docs_DATA) @$(NORMAL_INSTALL) @list='$(docs_DATA)'; test -n "$(docsdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(docsdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(docsdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(docsdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(docsdir)" || exit $$?; \ done uninstall-docsDATA: @$(NORMAL_UNINSTALL) @list='$(docs_DATA)'; test -n "$(docsdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(docsdir)'; $(am__uninstall_files_from_dir) install-nobase_loclDATA: $(nobase_locl_DATA) @$(NORMAL_INSTALL) @list='$(nobase_locl_DATA)'; test -n "$(locldir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(locldir)'"; \ $(MKDIR_P) "$(DESTDIR)$(locldir)" || exit 1; \ fi; \ $(am__nobase_list) | while read dir files; do \ xfiles=; for file in $$files; do \ if test -f "$$file"; then xfiles="$$xfiles $$file"; \ else xfiles="$$xfiles $(srcdir)/$$file"; fi; done; \ test -z "$$xfiles" || { \ test "x$$dir" = x. || { \ echo " $(MKDIR_P) '$(DESTDIR)$(locldir)/$$dir'"; \ $(MKDIR_P) "$(DESTDIR)$(locldir)/$$dir"; }; \ echo " $(INSTALL_DATA) $$xfiles '$(DESTDIR)$(locldir)/$$dir'"; \ $(INSTALL_DATA) $$xfiles "$(DESTDIR)$(locldir)/$$dir" || exit $$?; }; \ done uninstall-nobase_loclDATA: @$(NORMAL_UNINSTALL) @list='$(nobase_locl_DATA)'; test -n "$(locldir)" || list=; \ $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \ dir='$(DESTDIR)$(locldir)'; $(am__uninstall_files_from_dir) install-rcDATA: $(rc_DATA) @$(NORMAL_INSTALL) @list='$(rc_DATA)'; test -n "$(rcdir)" || list=; \ if test -n "$$list"; then \ echo " $(MKDIR_P) '$(DESTDIR)$(rcdir)'"; \ $(MKDIR_P) "$(DESTDIR)$(rcdir)" || exit 1; \ fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ done | $(am__base_list) | \ while read files; do \ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(rcdir)'"; \ $(INSTALL_DATA) $$files "$(DESTDIR)$(rcdir)" || exit $$?; \ done uninstall-rcDATA: @$(NORMAL_UNINSTALL) @list='$(rc_DATA)'; test -n "$(rcdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(rcdir)'; $(am__uninstall_files_from_dir) # This directory's subdirectories are mostly independent; you can cd # into them and run 'make' without going through this Makefile. # To change the values of 'make' variables: instead of editing Makefiles, # (1) if the variable is set in 'config.status', edit 'config.status' # (which will cause the Makefiles to be regenerated when you run 'make'); # (2) otherwise, pass the desired values on the 'make' command line. $(am__recursive_targets): @fail=; \ if $(am__make_keepgoing); then \ failcom='fail=yes'; \ else \ failcom='exit 1'; \ fi; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique tags: tags-recursive TAGS: tags tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) set x; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ $(am__define_uniq_tagged_files); \ shift; \ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ if test $$# -gt 0; then \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ "$$@" $$unique; \ else \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$unique; \ fi; \ fi ctags: ctags-recursive CTAGS: ctags ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) $(am__define_uniq_tagged_files); \ test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && $(am__cd) $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) "$$here" cscope: cscope.files test ! -s cscope.files \ || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) clean-cscope: -rm -f cscope.files cscope.files: clean-cscope cscopelist cscopelist: cscopelist-recursive cscopelist-am: $(am__tagged_files) list='$(am__tagged_files)'; \ case "$(srcdir)" in \ [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ *) sdir=$(subdir)/$(srcdir) ;; \ esac; \ for i in $$list; do \ if test -f "$$i"; then \ echo "$(subdir)/$$i"; \ else \ echo "$$sdir/$$i"; \ fi; \ done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am distdir-am: $(DISTFILES) $(am__remove_distdir) test -d "$(distdir)" || mkdir "$(distdir)" @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ $(am__make_dryrun) \ || test -d "$(distdir)/$$subdir" \ || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ dir1=$$subdir; dir2="$(top_distdir)"; \ $(am__relativize); \ new_top_distdir=$$reldir; \ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ ($(am__cd) $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$new_top_distdir" \ distdir="$$new_distdir" \ am__remove_distdir=: \ am__skip_length_check=: \ am__skip_mode_fix=: \ distdir) \ || exit 1; \ fi; \ done -test -n "$(am__skip_mode_fix)" \ || find "$(distdir)" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r "$(distdir)" dist-gzip: distdir tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz $(am__post_remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__post_remove_distdir) dist-lzip: distdir tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__post_remove_distdir) dist-xz: distdir tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__post_remove_distdir) dist-tarZ: distdir @echo WARNING: "Support for distribution archives compressed with" \ "legacy program 'compress' is deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__post_remove_distdir) dist-shar: distdir @echo WARNING: "Support for shar distribution archives is" \ "deprecated." >&2 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz $(am__post_remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__post_remove_distdir) dist dist-all: $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' $(am__post_remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lz*) \ lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir) chmod u+w $(distdir) mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst chmod a-w $(distdir) test -d $(distdir)/_build || exit 0; \ dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build/sub \ && ../../configure \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ --srcdir=../.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ && cd "$$am__cwd" \ || exit 1 $(am__post_remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @test -n '$(distuninstallcheck_dir)' || { \ echo 'ERROR: trying to run $@ with an empty' \ '$$(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ $(am__cd) '$(distuninstallcheck_dir)' || { \ echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ exit 1; \ }; \ test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile $(PROGRAMS) $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(appdatadir)" "$(DESTDIR)$(appicondir)" "$(DESTDIR)$(appsvgicondir)" "$(DESTDIR)$(bitmapdir)" "$(DESTDIR)$(docsdir)" "$(DESTDIR)$(locldir)" "$(DESTDIR)$(rcdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) -rm -f sdk/bzip/$(DEPDIR)/$(am__dirstamp) -rm -f sdk/bzip/$(am__dirstamp) -rm -f sdk/fswatcher/$(DEPDIR)/$(am__dirstamp) -rm -f sdk/fswatcher/$(am__dirstamp) -rm -f sdk/rsvg/$(DEPDIR)/$(am__dirstamp) -rm -f sdk/rsvg/$(am__dirstamp) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-binPROGRAMS clean-generic mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -f ./$(DEPDIR)/4Pane-Accelerators.Po -rm -f ./$(DEPDIR)/4Pane-Archive.Po -rm -f ./$(DEPDIR)/4Pane-ArchiveStream.Po -rm -f ./$(DEPDIR)/4Pane-Bookmarks.Po -rm -f ./$(DEPDIR)/4Pane-Configure.Po -rm -f ./$(DEPDIR)/4Pane-Devices.Po -rm -f ./$(DEPDIR)/4Pane-Dup.Po -rm -f ./$(DEPDIR)/4Pane-ExecuteInDialog.Po -rm -f ./$(DEPDIR)/4Pane-Filetypes.Po -rm -f ./$(DEPDIR)/4Pane-Misc.Po -rm -f ./$(DEPDIR)/4Pane-Mounts.Po -rm -f ./$(DEPDIR)/4Pane-MyDirs.Po -rm -f ./$(DEPDIR)/4Pane-MyDragImage.Po -rm -f ./$(DEPDIR)/4Pane-MyFiles.Po -rm -f ./$(DEPDIR)/4Pane-MyFrame.Po -rm -f ./$(DEPDIR)/4Pane-MyGenericDirCtrl.Po -rm -f ./$(DEPDIR)/4Pane-MyNotebook.Po -rm -f ./$(DEPDIR)/4Pane-MyTreeCtrl.Po -rm -f ./$(DEPDIR)/4Pane-Otherstreams.Po -rm -f ./$(DEPDIR)/4Pane-Redo.Po -rm -f ./$(DEPDIR)/4Pane-Tools.Po -rm -f ./$(DEPDIR)/4Pane-bzipstream.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-compress.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-crctable.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-decompress.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-huffman.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-randtable.Po -rm -f sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po -rm -f sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive html-am: info: info-recursive info-am: install-data-am: install-appdataDATA install-appiconDATA \ install-appsvgiconDATA install-bitmapDATA install-docsDATA \ install-nobase_loclDATA install-rcDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook install-dvi: install-dvi-recursive install-dvi-am: install-exec-am: install-binPROGRAMS @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-exec-hook install-html: install-html-recursive install-html-am: install-info: install-info-recursive install-info-am: install-man: install-pdf: install-pdf-recursive install-pdf-am: install-ps: install-ps-recursive install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f ./$(DEPDIR)/4Pane-Accelerators.Po -rm -f ./$(DEPDIR)/4Pane-Archive.Po -rm -f ./$(DEPDIR)/4Pane-ArchiveStream.Po -rm -f ./$(DEPDIR)/4Pane-Bookmarks.Po -rm -f ./$(DEPDIR)/4Pane-Configure.Po -rm -f ./$(DEPDIR)/4Pane-Devices.Po -rm -f ./$(DEPDIR)/4Pane-Dup.Po -rm -f ./$(DEPDIR)/4Pane-ExecuteInDialog.Po -rm -f ./$(DEPDIR)/4Pane-Filetypes.Po -rm -f ./$(DEPDIR)/4Pane-Misc.Po -rm -f ./$(DEPDIR)/4Pane-Mounts.Po -rm -f ./$(DEPDIR)/4Pane-MyDirs.Po -rm -f ./$(DEPDIR)/4Pane-MyDragImage.Po -rm -f ./$(DEPDIR)/4Pane-MyFiles.Po -rm -f ./$(DEPDIR)/4Pane-MyFrame.Po -rm -f ./$(DEPDIR)/4Pane-MyGenericDirCtrl.Po -rm -f ./$(DEPDIR)/4Pane-MyNotebook.Po -rm -f ./$(DEPDIR)/4Pane-MyTreeCtrl.Po -rm -f ./$(DEPDIR)/4Pane-Otherstreams.Po -rm -f ./$(DEPDIR)/4Pane-Redo.Po -rm -f ./$(DEPDIR)/4Pane-Tools.Po -rm -f ./$(DEPDIR)/4Pane-bzipstream.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-blocksort.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-bzlib.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-compress.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-crctable.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-decompress.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-huffman.Po -rm -f sdk/bzip/$(DEPDIR)/4Pane-randtable.Po -rm -f sdk/fswatcher/$(DEPDIR)/4Pane-MyFSWatcher.Po -rm -f sdk/rsvg/$(DEPDIR)/4Pane-rsvg.Po -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-appdataDATA uninstall-appiconDATA \ uninstall-appsvgiconDATA uninstall-binPROGRAMS \ uninstall-bitmapDATA uninstall-docsDATA \ uninstall-nobase_loclDATA uninstall-rcDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) uninstall-hook .MAKE: $(am__recursive_targets) install-am install-data-am \ install-exec-am install-strip uninstall-am .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ am--depfiles am--refresh check check-am clean \ clean-binPROGRAMS clean-cscope clean-generic cscope \ cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ distcheck distclean distclean-compile distclean-generic \ distclean-tags distcleancheck distdir distuninstallcheck dvi \ dvi-am html html-am info info-am install install-am \ install-appdataDATA install-appiconDATA install-appsvgiconDATA \ install-binPROGRAMS install-bitmapDATA install-data \ install-data-am install-data-hook install-docsDATA install-dvi \ install-dvi-am install-exec install-exec-am install-exec-hook \ install-html install-html-am install-info install-info-am \ install-man install-nobase_loclDATA install-pdf install-pdf-am \ install-ps install-ps-am install-rcDATA install-strip \ installcheck installcheck-am installdirs installdirs-am \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am uninstall-appdataDATA \ uninstall-appiconDATA uninstall-appsvgiconDATA \ uninstall-binPROGRAMS uninstall-bitmapDATA uninstall-docsDATA \ uninstall-hook uninstall-nobase_loclDATA uninstall-rcDATA .PRECIOUS: Makefile install-exec-hook: @AMINSTALL_install_app_TRUE@@AMINSTALL_symlink_TRUE@ ln -fs 4Pane $(DESTDIR)$(bindir)/4pane; install-data-hook: @AMINSTALL_desktop_TRUE@@AMINSTALL_install_rc_TRUE@ if test -d ~/Desktop/; then \ @AMINSTALL_desktop_TRUE@@AMINSTALL_install_rc_TRUE@ cp -up $(DESTDIR)$(pkgdatadir)/rc/4Pane.desktop ~/Desktop; \ @AMINSTALL_desktop_TRUE@@AMINSTALL_install_rc_TRUE@ chmod 0755 ~/Desktop/4Pane.desktop; \ @AMINSTALL_desktop_TRUE@@AMINSTALL_install_rc_TRUE@ fi uninstall-hook: @AMUNINSTALL_install_app_TRUE@@AMUNINSTALL_symlink_TRUE@ rm -rf $(DESTDIR)$(bindir)/4pane; @AMUNINSTALL_install_rc_TRUE@ rm -rf $(DESTDIR)$(pkgdatadir); @AMUNINSTALL_install_docs_TRUE@ rm -rf $(DESTDIR)$(datadir)/doc/4Pane/; @AMUNINSTALL_desktop_TRUE@ rm -f ~/Desktop/4Pane.desktop; # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: ./4pane-6.0/Accelerators.cpp0000644000175000017500000016261413566743153014625 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Accelerators.cpp // Purpose: Accelerators and shortcuts // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/wx.h" #include "wx/config.h" #include "wx/xrc/xmlres.h" #include "Externs.h" #include "Configure.h" #include "Bookmarks.h" #include "Accelerators.h" #include "MyFrame.h" wxString TranslateKeycode(int code) // Make a string from the keycode eg "F1" from WXK_F1. Adapted from GetGtkHotKey() in src/gtk/menu.cpp, & the Text sample { wxString str; switch (code) { case WXK_F1: case WXK_F2: case WXK_F3: case WXK_F4: case WXK_F5: case WXK_F6: case WXK_F7: case WXK_F8: case WXK_F9: case WXK_F10: case WXK_F11: case WXK_F12: str << wxT('F') << code - WXK_F1 + 1; break; case WXK_INSERT: str << wxT("Insert"); break; case WXK_DELETE: str << wxT("Delete"); break; case WXK_UP: str << wxT("Up"); break; case WXK_DOWN: str << wxT("Down"); break; case WXK_LEFT: str << wxT("Left"); break; case WXK_RIGHT: str << wxT("Right"); break; case WXK_HOME: str << wxT("Home"); break; case WXK_END: str << wxT("End"); break; case WXK_RETURN: str << wxT("Return"); break; case WXK_BACK: str << wxT("Back"); break; case WXK_TAB: str << wxT("Tab"); break; case WXK_ESCAPE: str << wxT("Escape"); break; case WXK_SPACE: str << wxT("Space"); break; case WXK_START: str << wxT("Start"); break; case WXK_LBUTTON: str << wxT("LButton"); break; case WXK_RBUTTON: str << wxT("RButton"); break; case WXK_CANCEL: str << wxT("Cancel"); break; case WXK_MBUTTON: str << wxT("MButton"); break; case WXK_CLEAR: str << wxT("Clear"); break; case WXK_SHIFT: str << wxT("Shift"); break; case WXK_ALT: str << wxT("Alt"); break; case WXK_CONTROL: str << wxT("Control"); break; case WXK_MENU: str << wxT("Menu"); break; case WXK_PAUSE: str << wxT("Pause"); break; case WXK_CAPITAL: str << wxT("Capital"); break; case WXK_PAGEUP: str << wxT("PgUp"); break; case WXK_PAGEDOWN: str << wxT("PgDn"); break; case WXK_SELECT: str << wxT("Select"); break; case WXK_PRINT: str << wxT("Print"); break; case WXK_EXECUTE: str << wxT("Execute"); break; case WXK_SNAPSHOT: str << wxT("Snapshot"); break; case WXK_HELP: str << wxT("Help"); break; case WXK_WINDOWS_LEFT: str << wxT("Super_L"); break; case WXK_WINDOWS_RIGHT: str << wxT("Super_R"); break; case WXK_WINDOWS_MENU: str << wxT("Menu"); break; case WXK_NUMPAD0: str << wxT("KP_0"); break; case WXK_NUMPAD1: str << wxT("KP_1"); break; case WXK_NUMPAD2: str << wxT("KP_2"); break; case WXK_NUMPAD3: str << wxT("KP_3"); break; case WXK_NUMPAD4: str << wxT("KP_4"); break; case WXK_NUMPAD5: str << wxT("KP_5"); break; case WXK_NUMPAD6: str << wxT("KP_6"); break; case WXK_NUMPAD7: str << wxT("KP_7"); break; case WXK_NUMPAD8: str << wxT("KP_8"); break; case WXK_NUMPAD9: str << wxT("KP_9"); break; case WXK_MULTIPLY: str << wxT("Multiply"); break; case WXK_ADD: str << wxT("Add"); break; case WXK_SEPARATOR: str << wxT("Separator"); break; case WXK_SUBTRACT: str << wxT("Subtract"); break; case WXK_DECIMAL: str << wxT("Decimal"); break; case WXK_DIVIDE: str << wxT("Divide"); break; case WXK_NUMLOCK: str << wxT("Num_Lock"); break; case WXK_SCROLL: str << wxT("Scroll_Lock"); break; case WXK_NUMPAD_SPACE: str << wxT("KP_Space"); break; case WXK_NUMPAD_TAB: str << wxT("KP_Tab"); break; case WXK_NUMPAD_ENTER: str << wxT("KP_Enter"); break; case WXK_NUMPAD_F1: str << wxT("KP_F1"); break; case WXK_NUMPAD_F2: str << wxT("KP_F2"); break; case WXK_NUMPAD_F3: str << wxT("KP_F3"); break; case WXK_NUMPAD_F4: str << wxT("KP_F4"); break; case WXK_NUMPAD_HOME: str << wxT("KP_Home"); break; case WXK_NUMPAD_LEFT: str << wxT("KP_Left"); break; case WXK_NUMPAD_UP: str << wxT("KP_Up"); break; case WXK_NUMPAD_RIGHT: str << wxT("KP_Right"); break; case WXK_NUMPAD_DOWN: str << wxT("KP_Down"); break; case WXK_NUMPAD_PAGEUP: str << wxT("KP_PageUp"); break; case WXK_NUMPAD_END: str << wxT("KP_End"); break; case WXK_NUMPAD_BEGIN: str << wxT("KP_Begin"); break; case WXK_NUMPAD_EQUAL: str << wxT("KP_Equal"); break; case WXK_NUMPAD_DIVIDE: str << wxT("KP_Divide"); break; case WXK_NUMPAD_MULTIPLY: str << wxT("KP_Multiply"); break; case WXK_NUMPAD_ADD: str << wxT("KP_Add"); break; case WXK_NUMPAD_SEPARATOR: str << wxT("KP_Separator"); break; case WXK_NUMPAD_SUBTRACT: str << wxT("KP_Subtract"); break; case WXK_NUMPAD_DECIMAL: str << wxT("KP_Decimal"); break; case WXK_NUMPAD_INSERT: str << wxT("KP_Insert"); break; case WXK_NUMPAD_DELETE: str << wxT("KP_Delete"); break; default: if (wxIsgraph(code)) { str << (wxChar)code; break; } } return str; } wxString MakeAcceleratorLabel(int metakeys, int keycode) { wxString accel; if (metakeys & wxACCEL_CTRL) accel = wxString(_("Ctrl")) + wxT("+"); if (metakeys & wxACCEL_ALT) accel += wxString(_("Alt")) + wxT("+"); if (metakeys & wxACCEL_SHIFT) accel += wxString(_("Shift")) + wxT("+"); accel += TranslateKeycode(keycode); // Add the keycode return accel; } bool AccelEntry::Load(wxConfigBase* config, wxString& key) // Given info about where it's stored, load data for this entry { if (config==NULL || key.IsEmpty()) return false; cmd = (int)config->Read(key+wxT("/Cmd"), -1l); if (cmd == wxNOT_FOUND) return false; cmd += SHCUT_START; // Shortcut was saved as 0,1,2 etc, so add the offset flags = (int)config->Read(key+wxT("/Flags"), 0l); keyCode = (int)config->Read(key+wxT("/KeyCode"), 0l); config->Read(key+wxT("/Label"), &label); config->Read(key+wxT("/Help"), &help); config->Read(key+wxT("/UD"), &UserDefined); AE_type type = (AE_type)config->Read(key+wxT("/Type"), (long)AE_unknown); if (type == wxNOT_FOUND) // Otherwise any necessary compensation for the 0.8.0 changes has already occurred AdjustShortcutIfNeeded(); return true; } bool AccelEntry::Save(wxConfigBase* config, wxString& key) // Given info about where it's stored, save data for this entry { if (config==NULL || key.IsEmpty()) return false; config->Write(key+wxT("/Flags"), (long)flags); config->Write(key+wxT("/KeyCode"), (long)keyCode); config->Write(key+wxT("/Cmd"), (long)(cmd - SHCUT_START)); config->Write(key+wxT("/Label"), label); config->Write(key+wxT("/Help"), help); config->Write(key+wxT("/UD"), (long)UserDefined); config->Write(key+wxT("/Type"), (long)type); return true; } void AccelEntry::AdjustShortcutIfNeeded() { // 0.8.0 inserted a new shortcut, SHCUT_REALLYDELETE, so this and subsequent old values need adjusting to compensate if (cmd >= SHCUT_REALLYDELETE) ++cmd; // Pre-0.8.0 user-defined tools shortcuts followed immediately after the normal ones; so appending extra normal shortcuts affected the UDTools values // Since 0.8.0 the UDTools ones are in a higher range. This function tries to cope with the transition if (cmd > SHCUT_TOOLS_REPEAT) cmd += GAP_FOR_NEW_SHORTCUTS; SetType((cmd >= SHCUT_TOOLS_LAUNCH) ? AE_udtool : AE_normal); } #if wxVERSION_NUMBER < 2900 DEFINE_EVENT_TYPE(MyReloadAcceleratorsEvent) // Sent by AcceleratorList to tell everyone to reload their menus/acceltables DEFINE_EVENT_TYPE(MyListCtrlEvent) // Used by AcceleratorList::ConfigureShortcuts() to size listctrl columns #else wxDEFINE_EVENT(MyReloadAcceleratorsEvent, wxNotifyEvent); wxDEFINE_EVENT(MyListCtrlEvent, wxNotifyEvent); #endif #define EVT_MYLISTCTRL(fn) \ DECLARE_EVENT_TABLE_ENTRY(\ MyListCtrlEvent, wxID_ANY, wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction)(wxNotifyEventFunction)&fn, \ (wxObject*) NULL ), AcceleratorList::~AcceleratorList() { WX_CLEAR_ARRAY(Accelarray); } void AcceleratorList::Init() { WX_CLEAR_ARRAY(Accelarray); // Make sure the array is empty ImplementDefaultShortcuts(); // Set the array to defaults LoadUserDefinedShortcuts(); // Add any user-defined entries, and change any default ones to suit the user AccelEntry* entry = GetEntry(SHCUT_ESCAPE); if (entry) { wxGetApp().SetEscapeKeycode(entry->GetKeyCode()); // Set the Escape code/flags checked for in MyApp::FilterEvent wxGetApp().SetEscapeKeyFlags(entry->GetFlags()); } } void AcceleratorList::ImplementDefaultShortcuts() { // The following 3 arrays contain matching label/flags/keycode for SHCUTno of shortcuts. Hack them in to Accelarray const wxString DefaultMenuLabels[] = { _("C&ut"), _("&Copy"), _("Send to &Trash-can"), _("De&lete"), _("Permanently Delete"), _("Rena&me"), _("&Duplicate"), _("Prop&erties"),_("&Open"),_("Open &with..."),wxT(""),_("&Paste"),_("Make a &Hard-Link"),_("Make a &Symlink"), _("&Delete Tab"),_("&Rename Tab"),_("Und&o"), _("&Redo"), _("Select &All"), _("&New File or Dir"), _("&New Tab"), _("&Insert Tab"), _("D&uplicate this Tab"),_("Show even single Tab &Head"),_("Give all Tab Heads equal &Width"),_("&Replicate in Opposite Pane"),_("&Swap the Panes"),_("Split Panes &Vertically"), _("Split Panes &Horizontally"),_("&Unsplit Panes"),_("&Extension"),_("&Size"),_("&Time"),_("&Permissions"), _("&Owner"),_("&Group"),_("&Link"),_("Show &all columns"),_("&Unshow all columns"),_("Save &Pane Settings"), _("Save Pane Settings on &Exit"),_("&Save Layout as Template"),wxT(""),_("D&elete a Template"), _("&Refresh the Display"),_("Launch &Terminal"),_("&Filter Display"),_("Show/Hide Hidden dirs and files"),_("&Add To Bookmarks"),_("&Manage Bookmarks"), #ifndef __GNU_HURD__ _("&Mount a Partition"),_("&Unmount a Partition"),_("Mount an &ISO image"),_("Mount an &NFS export"),_("Mount a &Samba share"),_("U&nmount a Network mount"), #else _("&Mount a Partition"),_("&Unmount"),_("Mount an &ISO image"),_("Mount an &NFS export"),_("Unused"),_("Unused"), #endif wxT("&locate"),wxT("&find"),wxT("&grep"),_("Show &Terminal Emulator"),_("Show Command-&line"),_("&GoTo selected file"),_("Empty the &Trash-can"),_("Permanently &delete 'Deleted' files"), _("E&xtract Archive or Compressed File(s)"),_("Create a &New Archive"),_("&Add to an Existing Archive"),_("&Test integrity of Archive or Compressed Files"),_("&Compress Files"), _("&Show Recursive dir sizes"),_("&Retain relative Symlink Targets"),_("&Configure 4Pane"),_("E&xit"),_("Context-sensitive Help"),_("&Help Contents"),_("&FAQ"),_("&About 4Pane"),_("Configure Shortcuts"), _("Go to Symlink Target"),_("Go to Symlink Ultimate Target"),_("Edit"),_("New Separator"), _("Repeat Previous Program"), _("Navigate to opposite pane"), _("Navigate to adjacent pane"), _("Switch to the Panes"), _("Switch to the Terminal Emulator"), _("Switch to the Command-line"), _("Switch to the toolbar Textcontrol"), _("Switch to the previous window"), _("Go to Previous Tab"), _("Go to Next Tab"), _("Paste as Director&y Template"), _("&First dot"), _("&Penultimate dot"), _("&Last dot"), _("Mount over Ssh using ssh&fs"), _("Show &Previews"), _("C&ancel Paste"), _("Decimal-aware filename sort"), _("&Keep Modification-time when pasting files") }; int DefaultShortcutFlags[] = { wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_NORMAL, wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_ALT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_ALT+wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_CTRL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_CTRL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL+wxACCEL_ALT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_ALT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_NORMAL, wxACCEL_NORMAL,wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_CTRL+wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_NORMAL, wxACCEL_CTRL, wxACCEL_SHIFT, wxACCEL_NORMAL, wxACCEL_NORMAL }; int DefaultShortcutKeycode[] = { 'X', 'C', WXK_DELETE,WXK_DELETE,0, WXK_F2, 'D', // 7 entries 'P', 0, 0, 0, 'V', 'L', 'L', // 7 0, 0, 'Z', 'R', 'A', WXK_F10, 0, 0, // 8 0, 0, 0, 0, 0, 0, // 6 0, 0, 0, 0, 0, 0, // 6 0, 0, 0, 0, 0, 0, // 6 0, 0, 0, 0, // 4 WXK_F5, 'T', 'F', 'H', 0, 0, // 6 0, 0, 0, 0, 0, 0, // 6 'L', 'F', 'G', 'M', WXK_F6, 0, 0, 0, // 8 'E', 'Z', 0, 0, 'Z', // 5 0, 0, 0, WXK_F4, WXK_F1, 0, 0, 0, 'S', // 9 0, 0, 0, 0, 0, 'O','A', // 7 0, 0, 0, 0, 0, // 5 ',', '.', 0, 0, 0, 0 , 0, 'P', WXK_ESCAPE, 0, 0 }; // 11 const wxString DefaultMenuHelp[] = { _("Cuts the current selection"), _("Copies the current selection"), _("Send to the Trashcan"), _("Kill, but may be resuscitatable"),_("Delete with extreme prejudice"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Paste the contents of the Clipboard"), _("Hardlink the contents of the Clipboard to here"), _("Softlink the contents of the Clipboard to here"), _("Delete the currently-selected Tab"), _("Rename the currently-selected Tab"), wxT(""), wxT(""), wxT(""), wxT(""), _("Append a new Tab"), _("Insert a new Tab after the currently selected one"), wxT(""), _("Hide the head of a solitary tab"), wxT(""), _("Copy this side's path to the opposite pane"), _("Swap one side's path with the other"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Save the layout of panes within each tab"), _("Always save the layout of panes on exit"), _("Save these tabs as a reloadable template"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Add the currently-selected item to your bookmarks"), _("Rearrange, Rename or Delete bookmarks"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Locate matching files. Much faster than 'find'"), _("Find matching file(s)"), _("Search Within Files"), _("Show/Hide the Terminal Emulator"), _("Show/Hide the Command-line"), wxT(""), _("Empty 4Pane's in-house trash-can"), _("Delete 4Pane's 'Deleted' folder"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Whether to calculate dir sizes recursively in fileviews"),_("On moving a relative symlink, keep its target the same"), wxT(""), _("Close this program"), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""),wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), wxT(""), _("Paste only the directory structure from the clipboard"),_("An ext starts at first . in the filename"), _("An ext starts at last or last-but-one . in the filename"), _("An ext starts at last . in the filename"), wxT(""), _("Show previews of image and text files"), _("Cancel the current process"), _("Should files like foo1, foo2 be in Decimal order"), _("Should a Moved or Pasted file keep its original modification time (as in 'cp -a')") }; const size_t SHCUTno = sizeof(DefaultShortcutKeycode)/sizeof(int); wxCHECK_RET(SHCUTno == sizeof(DefaultShortcutFlags)/sizeof(int) && SHCUTno == sizeof(DefaultMenuLabels)/sizeof(wxString) && SHCUTno == sizeof(DefaultMenuHelp)/sizeof(wxString), _("\nThe arrays in ImplementDefaultShortcuts() aren't of equal size!")); for (size_t n=0; n < SHCUTno; ++n) // For every entry in the static arrays, make a new AccelEntry & add to array { AccelEntry* AccEntry = new class AccelEntry(AccelEntry::AE_normal); AccEntry->SetShortcut(SHCUT_START + n); AccEntry->SetFlags(DefaultShortcutFlags[n]); AccEntry->SetKeyCode(DefaultShortcutKeycode[n]); AccEntry->SetLabel(DefaultMenuLabels[n]); AccEntry->SetHelpstring(DefaultMenuHelp[n]); AccEntry->SetUserDefined(false); Accelarray.Add(AccEntry); } AccelEntry* AccEntry = new class AccelEntry(AccelEntry::AE_normal); // Now do Fulltree toggle: it's in a different enum range, so isn't in the above arrays AccEntry->SetShortcut(IDM_TOOLBAR_fulltree); AccEntry->SetFlags(wxACCEL_ALT); AccEntry->SetKeyCode((int)'W'); AccEntry->SetLabel(_("Toggle Fulltree mode")); AccEntry->SetUserDefined(false); Accelarray.Add(AccEntry); // Finally, make room for the User-Defined Tools. We have to pretend to load them to find out how many there are, and the name of each // Unfortunately we can't piggyback on MyFrame::mainframe->Layout->m_notebook->LaunchFromMenu, as it doesn't yet exist int index = SHCUT_TOOLS_LAUNCH; LoadUDToolData(wxT("/Tools/Launch"), index); } void AcceleratorList::LoadUDToolData(wxString name, int& index) // Recursively add to array a (sub)menu 'name' of user-defined commands { if (name.IsEmpty()) return; if (index >= SHCUT_TOOLS_LAUNCH_LAST) return; wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } config->SetPath(name); // Use name to create the config path eg /Tools/Launch/a wxString itemlabel, itemdata, key; // First do the entries size_t count = (size_t)config->Read(wxT("Count"), 0l); // Load the no of tools in this (sub)menu for (size_t n=0; n < count; ++n) // Create the key for every item, from label_a & data_a, to label_/data_('a'+count-1) { key.Printf(wxT("%c"), wxT('a') + (wxChar)n); // Make key hold a, b, c etc config->Read(wxT("label_")+key, &itemlabel); // Load the entry's label config->Read(wxT("data_")+key, &itemdata); // & data if (itemdata.IsEmpty()) continue; if (itemlabel.IsEmpty()) itemlabel = itemdata; // If need be, use the data as label AccelEntry* AccEntry = new class AccelEntry(AccelEntry::AE_udtool); // Make an accel entry for this tool AccEntry->SetShortcut(index); AccEntry->SetLabel(itemlabel); AccEntry->SetFlags(wxACCEL_NORMAL); // Null the rest of the entry AccEntry->SetKeyCode(0); AccEntry->SetHelpstring(wxT("")); AccEntry->SetUserDefined(false); Accelarray.Add(AccEntry); ++index; } // Now deal with any subfolders, by recursion count = config->GetNumberOfGroups(); for (size_t n=0; n < count; ++n) // Create the path for each. If name was "a", then subfolders will be "a/a", "a/b" etc { key.Printf(wxT("%c"), wxChar(wxT('a') + n)); LoadUDToolData(name + wxCONFIG_PATH_SEPARATOR + key, index); } config->SetPath(wxT("/")); } void AcceleratorList::LoadUserDefinedShortcuts() // Add any user-defined tools, & override default shortcuts with user prefs { wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) return; long cookie; wxString group; config->SetPath(wxT("/Configure/Shortcuts")); bool bCont = config->GetFirstGroup(group, cookie); while (bCont) { AccelEntry* AccEntry = new class AccelEntry(AccelEntry::AE_unknown); if (!AccEntry->Load(config, group)) delete AccEntry; // Must have been a mis-load else { int current = FindEntry(AccEntry->GetShortcut()); // There was a valid user entry, so see if there's already an entry for this shortcut if (current == -1) // No, there isn't Accelarray.Add(AccEntry); // so add to the array else // There IS already a default entry, so remove it and replace with the user's choices { AccelEntry* oldentry = Accelarray.Item(current); Accelarray.RemoveAt(current); AccEntry->SetDefaultFlags(oldentry->GetFlags()); // Insert into the default-store the old entry's accel data AccEntry->SetDefaultKeyCode(oldentry->GetKeyCode()); AccEntry->SetType(oldentry->GetType()); if (current < (int)Accelarray.GetCount()) // Insert if the (new, reduced) count shows it won't be at the end Accelarray.Insert(AccEntry, current); else Accelarray.Add(AccEntry); // Otherwise append delete oldentry; } } bCont = config->GetNextGroup(group, cookie); } config->SetPath(wxT("/")); } void AcceleratorList::SaveUserDefinedShortcuts(ArrayOfAccels& Accelarray) { wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) return; size_t count = Accelarray.GetCount(), UDtotal = 0; for (size_t n=0; n < count; ++n) if (Accelarray.Item(n)->GetUserDefined()) ++UDtotal; // Go thru the array, counting the UD entries, the ones that we should be saving config->DeleteGroup(wxT("/Configure/Shortcuts")); // Delete current info (otherwise deleted data would remain, & be reloaded in future) config->SetPath(wxT("/Configure/Shortcuts")); // Do this even if UDtotal is 0; otherwise the last UD entry doesn't get deleted! if (UDtotal) { size_t UDcount = 0; for (size_t n=0; n < count; ++n) { if (Accelarray.Item(n)->GetUserDefined()) // If this is one of the user-defined entries, save it { wxString name = CreateSubgroupName(UDcount++, UDtotal); // Get the next available path name for this group eg aa, ab Accelarray.Item(n)->Save(config, name); } } } config->Flush(); config->SetPath(wxT("/")); } int AcceleratorList::FindEntry(int shortcutId) // Returns the index of the shortcut within Accelarray, or -1 for not found { for (size_t n=0; n < Accelarray.GetCount(); ++n) if (Accelarray.Item(n)->GetShortcut() == shortcutId) return (int)n; return -1; } AccelEntry* AcceleratorList::GetEntry(int shortcutId) // Returns the entry that contains this shortcut ID { for (size_t n=0; n < Accelarray.GetCount(); ++n) if (Accelarray.Item(n)->GetShortcut() == shortcutId) return Accelarray.Item(n); AccelEntry* empty = NULL; return empty; // If we're here, the shortcut wasn't found } void AcceleratorList::FillEntry(wxAcceleratorEntry& entry, int shortcutId) // Fills entry with the data corresponding to this shortcut { AccelEntry* arrayentry = GetEntry(shortcutId); // Find the correct entry within the array wxCHECK_RET(arrayentry, wxT("Invalid shortcutId in FillEntry()")); entry.Set(arrayentry->GetFlags(), arrayentry->GetKeyCode(), arrayentry->GetShortcut()); // Use its data to fill the referenced entry } void AcceleratorList::CreateAcceleratorTable(wxWindow* win, int AccelEntries[], size_t shortcutNo) // Creates an accelerator table for the passed window { if (win==NULL || !shortcutNo) return; wxAcceleratorEntry* entries = new wxAcceleratorEntry[shortcutNo]; for (size_t n=0; n < shortcutNo; ++n) // For every shortcut, FillEntry(*(entries+n), AccelEntries[n]); // Get the keycode etc wxAcceleratorTable accel(shortcutNo, entries); win->SetAcceleratorTable(accel); delete[] entries; } void AcceleratorList::FillMenuBar(wxMenuBar* MenuBar, bool refilling/*=false*/) // Creates/refills the menubar menus, attaches them to menubar { const int ID_INSERT_SUBMENU = wxID_SEPARATOR - 1; const int ID_CHECKNEXTITEM = wxID_SEPARATOR - 2; // Flags to Check next item const int ID_RADIONEXTITEM = wxID_SEPARATOR - 3; // Flags to Radio next item const int ID_EMPTYITEM = wxID_SEPARATOR - 4; // Flags that the next item shouldn't be added to its menu const size_t menuno = 10; // The no of main menus const size_t submenuno = 2; // Ditto submenus const size_t ptrsize = sizeof(int); int* itemslistarray[ menuno ]; size_t itemslistcount[ menuno ]; int* subitemslistarray[ submenuno ]; size_t subitemslistcount[ submenuno ]; int fileitems[] = { SHCUT_EXIT }; int edititems[] = { SHCUT_CUT, SHCUT_COPY, SHCUT_PASTE, SHCUT_PASTE_DIR_SKELETON, SHCUT_ESCAPE, wxID_SEPARATOR, SHCUT_NEW, SHCUT_SOFTLINK, SHCUT_HARDLINK, wxID_SEPARATOR, SHCUT_TRASH, SHCUT_DELETE, SHCUT_REALLYDELETE, wxID_SEPARATOR, SHCUT_REFRESH, SHCUT_RENAME, SHCUT_DUP, wxID_SEPARATOR, SHCUT_UNDO, SHCUT_REDO, wxID_SEPARATOR, SHCUT_PROPERTIES }; int viewitems[] = { SHCUT_TERMINAL_EMULATOR, SHCUT_COMMANDLINE, ID_CHECKNEXTITEM, SHCUT_PREVIEW, wxID_SEPARATOR, SHCUT_SPLITPANE_VERTICAL, SHCUT_SPLITPANE_HORIZONTAL, SHCUT_SPLITPANE_UNSPLIT, wxID_SEPARATOR, SHCUT_REPLICATE, SHCUT_SWAPPANES, wxID_SEPARATOR, SHCUT_FILTER, SHCUT_TOGGLEHIDDEN,wxID_SEPARATOR, ID_INSERT_SUBMENU }; int tabitems[] = { SHCUT_NEWTAB, SHCUT_DELTAB, SHCUT_INSERTTAB, SHCUT_RENAMETAB, SHCUT_DUPLICATETAB, wxID_SEPARATOR, ID_CHECKNEXTITEM, SHCUT_ALWAYS_SHOW_TAB, ID_CHECKNEXTITEM, SHCUT_SAME_TEXTSIZE_TAB, wxID_SEPARATOR, ID_INSERT_SUBMENU, SHCUT_TAB_SAVEAS_TEMPLATE, SHCUT_TAB_DELETE_TEMPLATE }; int bmitems[] = { SHCUT_ADD_TO_BOOKMARKS, SHCUT_MANAGE_BOOKMARKS, wxID_SEPARATOR }; int archiveitems[] = { SHCUT_ARCHIVE_EXTRACT, wxID_SEPARATOR, SHCUT_ARCHIVE_CREATE, SHCUT_ARCHIVE_APPEND, SHCUT_ARCHIVE_TEST, wxID_SEPARATOR, SHCUT_ARCHIVE_COMPRESS }; #ifndef __GNU_HURD__ bool sshfs = Configure::TestExistence(wxT("sshfs")); // Test if sshfs is available. Don't add its menuitem otherwise int mountitems[] = { SHCUT_MOUNT_MOUNTPARTITION, SHCUT_MOUNT_UNMOUNTPARTITION, wxID_SEPARATOR, SHCUT_MOUNT_MOUNTISO, wxID_SEPARATOR, SHCUT_MOUNT_MOUNTNFS, sshfs ? SHCUT_MOUNT_MOUNTSSHFS : ID_EMPTYITEM, SHCUT_MOUNT_MOUNTSAMBA, SHCUT_MOUNT_UNMOUNTNETWORK }; #else int mountitems[] = { SHCUT_MOUNT_MOUNTPARTITION, ID_EMPTYITEM, SHCUT_MOUNT_MOUNTISO, SHCUT_MOUNT_MOUNTNFS, ID_EMPTYITEM, ID_EMPTYITEM, wxID_SEPARATOR, SHCUT_MOUNT_UNMOUNTPARTITION }; #endif int toolsitems[] = { SHCUT_TOOL_LOCATE, SHCUT_TOOL_FIND, SHCUT_TOOL_GREP, wxID_SEPARATOR, SHCUT_LAUNCH_TERMINAL }; int optionsitems[] = { ID_CHECKNEXTITEM, SHCUT_SHOW_RECURSIVE_SIZE, ID_CHECKNEXTITEM, SHCUT_RETAIN_REL_TARGET, ID_CHECKNEXTITEM, SHCUT_RETAIN_MTIME_ON_PASTE, wxID_SEPARATOR, SHCUT_SAVETABS, ID_CHECKNEXTITEM, SHCUT_SAVETABS_ONEXIT, wxID_SEPARATOR, SHCUT_EMPTYTRASH, SHCUT_EMPTYDELETED, wxID_SEPARATOR, SHCUT_CONFIGURE }; int helpitems[] = { SHCUT_HELP, SHCUT_FAQ, wxID_SEPARATOR, SHCUT_ABOUT }; int columnitems[] = { ID_CHECKNEXTITEM,SHCUT_SHOW_COL_EXT, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_SIZE, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_TIME, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_PERMS, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_OWNER, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_GROUP, ID_CHECKNEXTITEM,SHCUT_SHOW_COL_LINK, wxID_SEPARATOR, SHCUT_SHOW_COL_ALL, SHCUT_SHOW_COL_CLEAR }; int loadtabitems[] = { }; // "This page intentionally left blank" --- the items are created on the fly if needed // Hack in the arrays to the array-ptrs itemslistarray[0] = fileitems; itemslistcount[0] = sizeof(fileitems)/ptrsize; itemslistarray[1] = edititems; itemslistcount[1] = sizeof(edititems)/ptrsize; itemslistarray[2] = viewitems; itemslistcount[2] = sizeof(viewitems)/ptrsize; itemslistarray[3] = tabitems; itemslistcount[3] = sizeof(tabitems)/ptrsize; itemslistarray[4] = bmitems; itemslistcount[4] = sizeof(bmitems)/ptrsize; itemslistarray[5] = archiveitems; itemslistcount[5] = sizeof(archiveitems)/ptrsize; itemslistarray[6] = mountitems; itemslistcount[6] = sizeof(mountitems)/ptrsize; itemslistarray[7] = toolsitems; itemslistcount[7] = sizeof(toolsitems)/ptrsize; itemslistarray[8] = optionsitems; itemslistcount[8] = sizeof(optionsitems)/ptrsize; itemslistarray[9] = helpitems; itemslistcount[9] = sizeof(helpitems)/ptrsize; subitemslistarray[0] = columnitems; subitemslistcount[0] = sizeof(columnitems)/ptrsize; subitemslistarray[1] = loadtabitems; subitemslistcount[1] = sizeof(loadtabitems)/ptrsize; // Make arrays for menus & for submenus const wxString menutitles[] = { _("&File"), _("&Edit"), _("&View"), _("&Tabs"), _("&Bookmarks"), _("&Archive"), _("&Mount"), _("Too&ls"), _("&Options"), _("&Help") }; Bookmarks::SetMenuIndex(4); // *** remember to change these if their position changes! *** LaunchMiscTools::SetMenuIndex(7); const wxString submenutitles[] = { _("&Columns to Display"), _("&Load a Tab Template") }; int submenID[2]; submenID[0] = SHCUT_FINISH + 1; submenID[1] = LoadTabTemplateMenu; // "Columns to Display" hasn't a set id, so use SHCUT_FINISH+1 wxMenu* menuarray[ menuno ]; wxMenu* submenuarray[ submenuno ]; if (refilling) // If we're updating, we need to acquire ptrs to the current menus { for (size_t n=0; n < MenuBar->GetMenuCount(); ++n) menuarray[n] = MenuBar->GetMenu(n); for (size_t n=0; n < sizeof(submenutitles)/sizeof(wxString); ++n) { wxMenuItem* item = MenuBar->FindItem(submenID[n]); // Submenus are trickier. You have to have stored their id, then find its menuitem submenuarray[n] = item->GetSubMenu(); // This will then locate the submenu } } for (size_t n=0; n < submenuno; ++n) // Do the submenus first, so they're available to be attached to the menus { wxItemKind kind = wxITEM_NORMAL; // kind may be normal or check (& in theory radio) if (!refilling) submenuarray[n] = new wxMenu; // First make a new menu, unless we're updating int* ip = subitemslistarray[n]; for (size_t i=0; i < subitemslistcount[n]; ++i) // For every item in the corresponding itemarray { if (ip[i] == ID_CHECKNEXTITEM) { kind = wxITEM_CHECK; continue; } // If this item just says "check next item", flag & skip to the next entry if (ip[i] == ID_RADIONEXTITEM) { kind = wxITEM_RADIO; continue; } // Ditto "radio next item" if (ip[i] == ID_EMPTYITEM) continue; // This item isn't to be entered. Currently only SHCUT_MOUNT_MOUNTSSHFS when sshfs isn't installed if (refilling) UpdateMenuItem(submenuarray[n], ip[i]); // Otherwise update/add to the menu else AddToMenu(*submenuarray[n], ip[i], wxEmptyString, kind); kind = wxITEM_NORMAL; // Reset the flag in case we just used it } } size_t sub = 0; // 'sub' indexes which submenu to use next for (size_t n=0; n < menuno; ++n) // Now do the same sort of thing for the main menus, attaching submenus where appropriate { wxItemKind kind = wxITEM_NORMAL; if (!refilling) menuarray[n] = new wxMenu; int* ip = itemslistarray[n]; for (size_t i=0; i < itemslistcount[n]; ++i) { if (ip[i] == ID_CHECKNEXTITEM) { kind = wxITEM_CHECK; continue; } // If this item just says "check next item", flag & skip to the next entry if (ip[i] == ID_RADIONEXTITEM) { kind = wxITEM_RADIO; continue; } // Ditto "radio next item" if (ip[i] == ID_EMPTYITEM) continue; // This item isn't to be entered. Currently only for hurd, & SHCUT_MOUNT_MOUNTSSHFS when sshfs isn't installed if (ip[i] == ID_INSERT_SUBMENU) // If it's a placeholder for a submenu, append the next one here if not updating { if (!refilling) { menuarray[n]->Append(submenID[sub], submenutitles[sub], submenuarray[sub]); sub++; } continue; } if (refilling) UpdateMenuItem(menuarray[n], ip[i]); // Otherwise update/add to the menu else AddToMenu(*menuarray[n], ip[i], wxEmptyString, kind); kind = wxITEM_NORMAL; } if (!refilling) MenuBar->Append(menuarray[n], menutitles[n]); // Finally append the menu to the menubar } } void AcceleratorList::AddToMenu(wxMenu& menu, int shortcutId, // Fills menu with the data corresponding to this shortcut wxString overridelabel /*=wxEmptyString*/, wxItemKind kind /*=wxITEM_NORMAL*/,wxString overridehelp /*=wxEmptyString*/) { if (shortcutId == wxID_SEPARATOR) { menu.AppendSeparator(); return; } // Nothing else to do! AccelEntry* arrayentry = GetEntry(shortcutId); // Find the correct entry within the array wxString label = ConstructLabel(arrayentry, overridelabel); wxString help = overridehelp.IsEmpty() ? arrayentry->GetHelpstring() : overridehelp; // Unless there's a helpstring provided by the caller, use the default one menu.Append(shortcutId, label, help, kind); } void AcceleratorList::UpdateMenuItem(wxMenu* menu, int shortcutId) { if (shortcutId == wxID_SEPARATOR) return; AccelEntry* arrayentry = GetEntry(shortcutId); // Find the correct entry within the array wxString label = ConstructLabel(arrayentry, wxT("")); // Construct & set the new label/accel menu->SetLabel(shortcutId, label); menu->SetHelpString(shortcutId, arrayentry->GetHelpstring()); // Set help too } //static wxString AcceleratorList::ConstructLabel(AccelEntry* arrayentry, const wxString& overridelabel) // Make a label/accelerator combination { wxString label = overridelabel.IsEmpty() ? arrayentry->GetLabel() : overridelabel; // Unless there's a label provided by the caller, use the default one label = label.BeforeFirst(wxT('\t')); // Remove any pre-existing accelerator included by mistake if (arrayentry->GetKeyCode()) // If there's a keycode, add it preceded by any flags { label += wxT('\t'); // Add a tab, to denote that what follows is accelerator label += MakeAcceleratorLabel(arrayentry->GetFlags(), arrayentry->GetKeyCode()); } return label; } void AcceleratorList::ConfigureShortcuts() { // This dialog used to be loaded, empty, from XRC. However that caused a gtk size error (because it was empty...) wxDialog dlg(parent, wxID_ANY, _("Configure Shortcuts"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER); if (!LoadPreviousSize(&dlg, wxT("ConfigureShortcuts"))) { wxSize size = wxGetDisplaySize(); // Get a reasonable dialog size. WE have to, because the treectrl has no idea how big it is dlg.SetSize(2*size.x/3, 2*size.y/3); } dlg.Centre(); // Load and add the contents, which are used also by ConfigureNotebook MyShortcutPanel* panel = (MyShortcutPanel*)wxXmlResource::Get()->LoadPanel(&dlg, wxT("ConfigureShortcuts")); panel->Init(this, false); wxBoxSizer* sizer = new wxBoxSizer(wxVERTICAL); sizer->Add(panel, 1, wxEXPAND); dlg.SetSizer(sizer); sizer->Layout(); wxNotifyEvent event(MyListCtrlEvent); // Send a custom event to panel to size listctrl columns. Can't just tell it: list won't be properly made yet wxPostEvent(panel, event); dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("ManageBookmarks")); } //---------------------------------------------------------------------------------------- MyShortcutPanel::~MyShortcutPanel() { for (int n = (int)Temparray.GetCount(); n > 0; --n ) { AccelEntry* item = Temparray.Item(n-1); delete item; Temparray.RemoveAt(n-1); } if (list) list->Disconnect(wxEVT_COMMAND_LIST_COL_END_DRAG, wxListEventHandler(MyShortcutPanel::OnColDrag), NULL, this); list = NULL; } void MyShortcutPanel::Init(AcceleratorList* parent, bool fromNB) { AL = parent; FromNotebook = fromNB; if (!FromNotebook) { CallersHelpcontext = HelpContext; HelpContext = HCconfigShortcuts; // Save the global to local store & set to us (if from notebook, this has already been done) wxButton* btn = wxDynamicCast(FindWindow(XRCID("UDSCancel")), wxButton); wxCHECK_RET(btn, wxT("Can't find the Cancel button")); btn->SetId(wxID_CANCEL); // When used in the Configure dialog, the button has a bespoke ID. Revert to wxID_CANCEL, otherwise the 'X' button doesn't close the dialog in wx2.8 } AL->dirty = false; list = (wxListCtrl*)FindWindow(wxT("List")); for (int n = (int)Temparray.GetCount(); n > 0; --n ) // Ensure the local array is empty, then copy to it the contents of the main array { AccelEntry* item = Temparray.Item(n-1); delete item; Temparray.RemoveAt(n-1); } ArrayOfAccels mainarray = AL->GetAccelarray(); for (size_t n=0; n < mainarray.GetCount(); ++n) Temparray.Add(new AccelEntry(*mainarray.Item(n))); HideMnemonicsChk = (wxCheckBox*)FindWindow(wxT("HideMnemonicsChk")); if (HideMnemonicsChk) { bool hidemn; wxConfigBase::Get()->Read(wxT("/Configure/Shortcuts/hide_mnemonics"), &hidemn, true); HideMnemonicsChk->SetValue(hidemn); } LoadListCtrl(); list->Disconnect(wxEVT_COMMAND_LIST_COL_END_DRAG, wxListEventHandler(MyShortcutPanel::OnColDrag), NULL, this); // In case re-entering after a Cancel list->Connect(wxEVT_COMMAND_LIST_COL_END_DRAG, wxListEventHandler(MyShortcutPanel::OnColDrag), NULL, this); wxString DE; wxGetEnv(wxT("XDG_CURRENT_DESKTOP"), &DE); // xfce seems not to set focus anywhere, so compel it if (DE == wxT("XFCE")) list->SetFocus(); } void MyShortcutPanel::LoadListCtrl() { list->ClearAll(); // Make sure we start with a clean sheet list->InsertColumn(0, _("Action")); list->InsertColumn(1, _("Shortcut")); list->InsertColumn(2, _("Default")); for (size_t n=0; n < Temparray.GetCount(); ++n) DisplayItem(n); list->SetColumnWidth(0, wxLIST_AUTOSIZE); // Make sure the 1st 2 cols are big enough. The 3rd will get the dregs list->SetColumnWidth(1, wxLIST_AUTOSIZE); } long MyShortcutPanel::GetListnoFromArrayNo(int arrayno) // Translates from array index to list index { for (int n=0; n < (int)list->GetItemCount(); ++n) if ((int)list->GetItemData(n) == arrayno) return (long)n; return (long)wxNOT_FOUND; } void MyShortcutPanel::DisplayItem(size_t no, bool refresh /*= false*/) { static const wxString LabelsToRename[] = { //Some shortcuts aren't self-explanatory out of context, so provide an expanded label _("Extension"),_("(Un)Show fileview Extension column"), _("Size"),_("(Un)Show fileview Size column"), _("Time"),_("(Un)Show fileview Time column"), _("Permissions"),_("(Un)Show fileview Permissions column"), _("Owner"),_("(Un)Show fileview Owner column"), _("Group"),_("(Un)Show fileview Group column"), _("Link"),_("(Un)Show fileview Link column"), _("Show all columns"),_("Fileview: Show all columns"), _("Unshow all columns"),_("Fileview: Unshow all columns"), _("Edit"),_("Bookmarks: Edit"), _("New Separator"),_("Bookmarks: New Separator"), _("First dot"),_("Extensions start at the First dot"), _("Penultimate dot"),_("Extensions start at the Penultimate dot"), _("Last dot"),_("Extensions start at the Last dot") }; AccelEntry* entry = Temparray.Item(no); if (entry->GetLabel().IsEmpty()) return; // As some 'shortcuts' will be only for UpdateUI, or for some other reason aren't user-accessible wxString accel = MakeAcceleratorLabel(entry->GetFlags(), entry->GetKeyCode()); // We can't use 'no' to index the list, as we may have earlier skipped some Temparray items long listindex; if (!refresh) // If we're not refreshing, we have to Insert the item { wxString label = entry->GetLabel(); // The 'What is it' label goes in 1st col if (HideMnemonicsChk && HideMnemonicsChk->IsChecked()) label.Replace(wxT("&"), wxT("")); // If requested, display 'Cut' instead of 'C&ut' // If the label isn't self-explanatory out of context, replace with an expanded version for (size_t n=0; n < sizeof(LabelsToRename)/sizeof(wxString); n+=2) { wxString lbl(label); lbl.Replace(wxT("&"), wxT("")); if (lbl == LabelsToRename[n]) label = LabelsToRename[n+1]; } listindex = list->InsertItem(list->GetItemCount(), label, 0); } else { listindex = GetListnoFromArrayNo(no); // If we are refreshing, don't. Just find the item index if (listindex == wxNOT_FOUND) return; } if (refresh) { wxString label = entry->GetLabel(); // If refreshing, redo the label in case we just changed it if (HideMnemonicsChk && HideMnemonicsChk->IsChecked()) label.Replace(wxT("&"), wxT("")); list->SetItem(listindex, 0, label); } list->SetItem(listindex, 1, accel); // The accelerator is displayed in 2nd col if (entry->IsKeyFlagsUserDefined()) // Now see if the keycode/flags are user-defined. If so, put the default accelerator in 3rd col { wxString accel = MakeAcceleratorLabel(entry->GetFlags(true), entry->GetKeyCode(true)); list->SetItem(listindex, 2, accel); } else if (refresh) list->SetItem(listindex, 2, wxEmptyString); // If refreshing, clear any previous default display lest we've reverted to default wxListItem item; item.m_itemId = listindex; if (!refresh) { item.SetData(no); item.SetMask(wxLIST_MASK_DATA); } // Store the temparray index as the list item data item.SetTextColour((entry->IsKeyFlagsUserDefined() ? *wxBLUE : GetForegroundColour())); // Colour the item blue if keycode/flags non-default list->SetItem(item); } void MyShortcutPanel::OnEdit(wxListEvent& event) { wxString current, dfault, action = list->GetItemText(event.GetIndex()); ArrayIndex = event.GetData(); // Remember, because of omitted items, list-index and array-index are not always the same wxListItem item; item.m_itemId = event.GetIndex(); item.m_col = 1; item.m_mask = wxLIST_MASK_TEXT; if (list->GetItem(item)) current = item.m_text.c_str(); item.m_col = 2; if (list->GetItem(item)) dfault = item.m_text.c_str(); ChangeShortcutDlg dlg; wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("ChangeShortcutDlg")); LoadPreviousSize(&dlg, wxT("ChangeShortcutDlg")); dlg.Init(action, current, dfault, Temparray.Item(ArrayIndex)); // 'action' will usually be the label, but might have been changed from LabelsToRename[] in DisplayItem() dlg.parent = this; dlg.label = Temparray.Item(ArrayIndex)->GetLabel(); dlg.help = Temparray.Item(ArrayIndex)->GetHelpstring(); int result = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("ChangeShortcutDlg")); if (result == wxID_CANCEL || result==XRCID("Cancel")) return; // Cancel is from the DuplicateAccel dialog // The result must have been OK (from ChangeShortcutDlg) or Override (from the DuplicateAccel dialog). Either way, save any new accel AccelEntry* AccEntry = Temparray.Item(ArrayIndex); if (AccEntry->IsKeyFlagsUserDefined() && // If we're reverting to default, take the data from AccEntry & reset the flag ((dlg.text->GetValue()==wxT("None")) || (dlg.text->GetValue()==dfault))) { AccEntry->SetKeyCode(AccEntry->GetKeyCode(true)); AccEntry->SetFlags(AccEntry->GetFlags(true)); AccEntry->SetKeyFlagsUserDefined(false); } else { if (!AccEntry->IsKeyFlagsUserDefined()) // If the entry wasn't previously key-flag UD, make it so & save default data { if (AccEntry->GetKeyCode() != dlg.text->keycode || AccEntry->GetFlags() != dlg.text->flags) // but 1st check 1 of these changed, not just Help or Label { AccEntry->SetDefaultKeyCode(AccEntry->GetKeyCode()); AccEntry->SetDefaultFlags(AccEntry->GetFlags()); AccEntry->SetKeyFlagsUserDefined(true); // Switch on the key/flags flag } } AccEntry->SetKeyCode(dlg.text->keycode); // Now we can insert the new data AccEntry->SetFlags(dlg.text->flags); } if (dlg.label != AccEntry->GetLabel()) // If the Label or Help-string changed, save & set appropriate flag { AccEntry->SetLabel(dlg.label); AccEntry->SetUserDefined(AccEntry->GetUserDefined() | UD_LABEL); } if (dlg.help != AccEntry->GetHelpstring()) { AccEntry->SetHelpstring(dlg.help); AccEntry->SetUserDefined(AccEntry->GetUserDefined() | UD_HELP); } AL->dirty = true; if (ArrayIndex == SHCUT_ESCAPE - SHCUT_START) // If it's the Escape shortcut that's been changed, cache the value as MyApp::FilterEvent needs it { wxGetApp().SetEscapeKeycode(AccEntry->GetKeyCode()); wxGetApp().SetEscapeKeyFlags(AccEntry->GetFlags()); } DisplayItem(ArrayIndex, true); // Update the display. True makes it refresh, not append if (result != XRCID("Override")) return; // If we're not stealing another entry's accelerator, we're done AccelEntry* DupedEntry = Temparray.Item(DuplicateAccel); // Get the duplicated shortcut & zero its data if (!DupedEntry->IsKeyFlagsUserDefined()) // If the entry was previously not key-flag UD, save defaults { DupedEntry->SetDefaultKeyCode(DupedEntry->GetKeyCode()); DupedEntry->SetDefaultFlags(DupedEntry->GetFlags()); } DupedEntry->SetKeyCode(0); DupedEntry->SetFlags(0); // Whether or not it was user-defined before it will be now, unless the default is to have no accelerator! DupedEntry->SetKeyFlagsUserDefined(DupedEntry->GetKeyCode(true) || DupedEntry->GetFlags(true)); DisplayItem(DuplicateAccel, true); // Update the display of the item // Now we need to allow the user to provide a new accelerator if he wishes wxListEvent newevent(wxEVT_COMMAND_LIST_ITEM_ACTIVATED); // Make a fake activation event, in the name of the burgled shortcut newevent.m_item.m_data = DuplicateAccel; // Store the only 2 bits of info we use, array index & listctrl index newevent.m_itemIndex = GetListnoFromArrayNo(DuplicateAccel); ProcessEvent(newevent); } int MyShortcutPanel::CheckForDuplication(int key, int flags, wxString& label, wxString& help) // Returns the entry corresponding to this accel if there already is one, else wxNOT_FOUND { if (!key) return wxNOT_FOUND; for (int n=0; n < (int)Temparray.GetCount(); ++n) if (Temparray.Item(n)->GetKeyCode() == key && Temparray.Item(n)->GetFlags() == flags) { if (n != ArrayIndex) return n; // Found a match. Return it if it's not the original item, which the user failed to amend if (Temparray.Item(n)->GetLabel() == label && Temparray.Item(n)->GetHelpstring() == help) return SH_UNCHANGED; // Nothing was changed, so signal the fact to caller else return wxNOT_FOUND; // The Help or Label strings were changed. wxNOT_FOUND will deal with these } return wxNOT_FOUND; // If we're here, there wasn't a match } void MyShortcutPanel::OnHideMnemonicsChk(wxCommandEvent& event) { wxConfigBase::Get()->Write(wxT("/Configure/Shortcuts/hide_mnemonics"), HideMnemonicsChk->IsChecked()); LoadListCtrl(); DoSizeCols(); } void MyShortcutPanel::OnSize(wxSizeEvent& event) { DoSizeCols(); event.Skip(); } void MyShortcutPanel::OnColDrag(wxListEvent& event) // If the user adjusts a col header position { wxUnusedVar(event); DoSizeCols(); } void MyShortcutPanel::SizeCols(wxNotifyEvent& event) // Parent panel sends this event when everything should be properly created { wxUnusedVar(event); DoSizeCols(); } void MyShortcutPanel::DoSizeCols() // Common to both SizeCols and OnSize. Sizes col 3 to fill the spare space { if (!list) return; // Too soon int width, height; list->GetClientSize(&width, &height); int spare = width - list->GetColumnWidth(0) - list->GetColumnWidth(1); // Cols 0 & 1 have self-sized to fit the text. Give col 3 the spare spare -= 15; // Unfortunately this somehow makes the cols a bit too big, so a scrollbar appears list->SetColumnWidth(2, spare); } void MyShortcutPanel::OnFinished(wxCommandEvent& event) // On Apply or Cancel. Saves data if appropriate, does dtor things { if (event.GetId() == XRCID("UDSCancel")) { if (AL->dirty) { wxMessageDialog dialog(this, _("Lose changes?"), _("Are you sure?"), wxYES_NO | wxICON_QUESTION ); if (dialog.ShowModal() != wxID_YES) return; } } if (event.GetId() == XRCID("UDSApply")) // If it's an OK { if (AL->dirty) // & there are changes, save the data to parent array & tell parent { AL->SaveUserDefinedShortcuts(Temparray); AL->Init(); // This deletes the main array & reloads it with the new data wxNotifyEvent event(MyReloadAcceleratorsEvent); // Send a custom event, eventually to MyFrame, to tell it to update menus, accel tables wxPostEvent(wxTheApp->GetTopWindow(), event); } } else if (FromNotebook) { Init(AL, FromNotebook); } // Cancel needs to redo the listctrl as the dialog will remain visible WX_CLEAR_ARRAY(Temparray); AL->dirty = false; if (FromNotebook) // If we came from ConfigureNotebook, reload data as we're not EndingModal { ArrayOfAccels mainarray = AL->GetAccelarray(); for (size_t n=0; n < mainarray.GetCount(); ++n) Temparray.Add(new AccelEntry(*mainarray.Item(n))); } else // If we came from a dialog, close it { HelpContext = CallersHelpcontext; // after restoring the caller's helpcontext return ((wxDialog*)GetParent())->EndModal(event.GetId() == XRCID("UDSApply") ? wxID_OK : wxID_CANCEL); } } IMPLEMENT_DYNAMIC_CLASS(MyShortcutPanel,wxPanel) BEGIN_EVENT_TABLE(MyShortcutPanel,wxPanel) EVT_LIST_ITEM_ACTIVATED(-1,MyShortcutPanel::OnEdit) EVT_CHECKBOX(XRCID("HideMnemonicsChk"), MyShortcutPanel::OnHideMnemonicsChk) EVT_BUTTON(XRCID("UDSApply"), MyShortcutPanel::OnFinished) EVT_BUTTON(XRCID("UDSCancel"), MyShortcutPanel::OnFinished) EVT_MYLISTCTRL(MyShortcutPanel::SizeCols) EVT_SIZE(MyShortcutPanel::OnSize) END_EVENT_TABLE() void ChangeShortcutDlg::Init(wxString& action, wxString& current, wxString& dfault, AccelEntry* ntry) { entry = ntry; text = (NewAccelText*)FindWindow(wxT("Text")); text->Init(current); // Set the textctrl to the current key combination text->keycode = entry->GetKeyCode(); // Store current keycode/flags here, lest user clicks OK without making a keypress, so leaving the ints empty text->flags = entry->GetFlags(); ((wxButton*)FindWindow(wxT("DefaultBtn")))->Enable((dfault != current)); // If no separate default, turn off its button wxString statictext; if (dfault.IsEmpty()) { if (current.IsEmpty()) statictext = _("None"); // If no default & no current, say there's no data else statictext = (entry->GetUserDefined() ? _("None") : _("Same")); // If current IS the default, say 'same' } defaultstatic = (wxStaticText*)FindWindow(wxT("DefaultStatic")); defaultstatic->SetLabel(dfault.IsEmpty() ? statictext : dfault); // Set the static to default value, or "None"/"Same" ((wxStaticText*)FindWindow(wxT("ActionStatic")))->SetLabel(action); // Set this one to the name of the function eg Paste SetEscapeId(wxID_NONE); // If we don't, it's impossible to use the ESC key as a shortcut; it just closes the dialog } void ChangeShortcutDlg::OnButton(wxCommandEvent& event) { if (event.GetId() == XRCID("DefaultBtn")) { text->SetValue(defaultstatic->GetLabel()); // Reset the textctrl to default value text->keycode = entry->GetKeyCode(true); // Store default keycode/flags here (the 'true' parameter says we want the default value) text->flags = entry->GetFlags(true); } else if (event.GetId() == XRCID("ChangeLabel")) { wxString newlabel = wxGetTextFromUser(_("Type in the new Label to show for this menu item"), _("Change label"), label); if (!newlabel.IsEmpty()) // We certainly don't want a blank label! { label = newlabel; ((wxStaticText*)FindWindow(wxT("ActionStatic")))->SetLabel(newlabel); } } else if (event.GetId() == XRCID("ChangeHelp")) help = wxGetTextFromUser(_("Type in the Help string to show for this menu item\nCancel will Clear the string"), _("Change Help String"), help); else if (event.GetId() == wxID_CANCEL) EndModal(wxID_CANCEL); else { text->keycode = text->flags = 0; // 'Clear' button, so clear the keycode/flags store text->SetValue(wxEmptyString); // Clear the textctrl } text->SetFocus(); // Need to return the focus to the textctrl after } void ChangeShortcutDlg::EndModal(int retCode) // Check that the code that was input is not already in use { if (retCode == wxID_OK) // We're only interested if the user WANTS the result { int item = parent->CheckForDuplication(text->keycode, text->flags, label, help); if (item == SH_UNCHANGED) retCode = wxID_CANCEL; // If the user clicked OK without altering the data, convert it into a Cancel else if (item != wxNOT_FOUND) // If wxNOT_FOUND, there's no duplication so no problem { wxString dup = parent->Temparray.Item(item)->GetLabel(); DupAccelDlg dlg; wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("DupAccelDlg")); ((wxStaticText*)dlg.FindWindow(wxT("Duplicate")))->SetLabel(dup); retCode = dlg.ShowModal(); // Ask whether to override the duplicated code, abort, or try again if (retCode == XRCID("TryAgain")) // Try again, so cancel the EndModal. Otherwise fall thru to it { text->SetFocus(); return; } if (retCode == XRCID("Override")) parent->DuplicateAccel = item; // If overriding, store the bereaved entry's index here } } wxDialog::EndModal(retCode); } IMPLEMENT_DYNAMIC_CLASS(ChangeShortcutDlg,wxDialog) BEGIN_EVENT_TABLE(ChangeShortcutDlg,wxDialog) EVT_BUTTON(XRCID("DefaultBtn"), ChangeShortcutDlg::OnButton) EVT_BUTTON(XRCID("ChangeLabel"), ChangeShortcutDlg::OnButton) EVT_BUTTON(XRCID("ChangeHelp"), ChangeShortcutDlg::OnButton) EVT_BUTTON(XRCID("ClearBtn"), ChangeShortcutDlg::OnButton) EVT_BUTTON(wxID_CANCEL, ChangeShortcutDlg::OnButton) END_EVENT_TABLE() void NewAccelText::OnKey(wxKeyEvent& event) { int key = event.GetKeyCode(); if (key == WXK_SHIFT || key == WXK_CONTROL || key == WXK_ALT) return; // We don't want to see metakeys alone int metakeys = 0; if (event.ControlDown()) metakeys |= wxACCEL_CTRL; if (event.ShiftDown()) metakeys |= wxACCEL_SHIFT; if (event.AltDown()) metakeys |= wxACCEL_ALT; if (key == keycode && metakeys == flags) return; // No change from previous iteration keycode = key; flags = metakeys; // OK, this is a real, new selection. Store it wxString accel = MakeAcceleratorLabel(metakeys, key); // Now translate all this into a displayable string SetValue(accel); } IMPLEMENT_DYNAMIC_CLASS(NewAccelText,wxTextCtrl) BEGIN_EVENT_TABLE(NewAccelText,wxTextCtrl) EVT_KEY_DOWN(NewAccelText::OnKey) END_EVENT_TABLE() BEGIN_EVENT_TABLE(DupAccelDlg,wxDialog) EVT_BUTTON(-1, DupAccelDlg::OnButtonPressed) END_EVENT_TABLE() ./4pane-6.0/Mounts.cpp0000666000175000017500000026404413566743443013511 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Mounts.cpp // Purpose: Mounting partitions // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/wx.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/menu.h" #include "wx/dirctrl.h" #include "wx/tokenzr.h" #include "wx/busyinfo.h" #include "Externs.h" #include "Devices.h" #include "Mounts.h" #include "MyDirs.h" #include "MyGenericDirCtrl.h" #include "MyFrame.h" #include "Filetypes.h" #include "Configure.h" #include "Misc.h" void DeviceAndMountManager::OnMountPartition() // Acquire & try to mount a hard-disk partition, either via an fstab entry or the hard way { bool OtherPartitions = false; wxString partition, mount, options, checkboxes; { // Start by protecting against a stale rc/ file; it's easier to do here than later MountPartitionDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountPartitionDlg")); if (dlg.FindWindow(wxT("MountptTxt"))) // This was present until 4.0 return; } FillPartitionArray(); // Acquire partition & mount data MountPartitionDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountFromFstabDlg")); LoadPreviousSize(&dlg, wxT("MountFromFstabDlg")); if (!dlg.Init(this)) return; #ifdef __GNU_HURD__ bool passive(false); #endif int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountFromFstabDlg")); if (ans==XRCID("OtherPartitions")) // If we want to mount a non-fstab partition, use a different dialog { OtherPartitions = true; MountPartitionDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountPartitionDlg")); #ifdef __GNU_HURD__ wxCheckBox* passivechk = XRCCTRL(dlg, "MS_PASSIVE", wxCheckBox); if (passivechk) passivechk->Show(); // gnu-hurd has an extra option: to use a passive translator wxCheckBox* temp = XRCCTRL(dlg, "MS_NOATIME", wxCheckBox); if (temp) temp->Disable(); // Not available in gnu-hurd temp = XRCCTRL(dlg, "MS_NODEV", wxCheckBox); if (temp) temp->Disable(); #endif LoadPreviousSize(&dlg, wxT("MountPartitionDlg")); if (!dlg.Init(this)) return; do { ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountPartitionDlg")); if (ans != wxID_OK) return; mount = dlg.MountptCombo->GetValue(); if (mount.IsEmpty()) { wxMessageDialog dialog(&dlg, _("You haven't entered a mount-point.\nTry again?"), wxT(""),wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() == wxID_YES) continue; // Try again else return; } break; } while (true); partition = dlg.PartitionsCombo->GetValue(); // Read the data from the dialog #ifdef __LINUX__ if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_SYNCHRONOUS"))))->IsChecked()) checkboxes += wxT("sync,"); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NOATIME"))))->IsChecked()) checkboxes += wxT("noatime,"); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_RDONLY"))))->IsChecked()) checkboxes += wxT("ro,"); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NOEXEC"))))->IsChecked()) checkboxes += wxT("noexec,"); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NODEV"))))->IsChecked()) checkboxes += wxT("nodev,"); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NOSUID"))))->IsChecked()) checkboxes += wxT("nosuid,"); if (!checkboxes.IsEmpty()) options = wxT("-o ") + checkboxes.BeforeLast(wxT(',')); #endif #ifdef __GNU_HURD__ if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_SYNCHRONOUS"))))->IsChecked()) checkboxes += wxT("-s "); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_RDONLY"))))->IsChecked()) checkboxes += wxT("-r "); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NOEXEC"))))->IsChecked()) checkboxes += wxT("-E "); if (((wxCheckBox*)(dlg.FindWindow(wxT("MS_NOSUID"))))->IsChecked()) checkboxes += wxT("--no-suid "); passive = (passivechk && passivechk->IsChecked()); #endif } else partition = dlg.PartitionsCombo->GetValue(); // We need this even for an fstab mount, for the ReadMtab(partition) later if (ans != wxID_OK) return; if (!OtherPartitions) mount = dlg.FstabMountptTxt->GetValue(); if (mount.IsEmpty()) return; #ifndef __GNU_HURD__ // In hurd we add -c, that autocreates the mountpt FileData mountdir(mount); if (!mountdir.IsValid()) { if (wxMessageBox(_("The mount-point for this partition doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mount)) return; } #endif EscapeQuote(mount); // Avoid any problems due to single-quotes in the path wxArrayString output, errors; long result; #ifdef __LINUX__ if (!OtherPartitions) result = wxExecute(wxT("mount \"") + mount + wxT("\""), output, errors); // Call mount sync (ie wait for answer) lest we update the tree display before the data arrives else { if (getuid() != 0) // If user isn't super { if (WHICH_SU==mysu) { if (USE_SUDO) // sudo chokes on singlequotes :/ result = ExecuteInPty(wxT("sudo sh -c \"mount ") + options + wxT(" ") + partition + wxT(' ') + EscapeSpaceStr(mount) + wxT('\"'), output, errors); else result = ExecuteInPty(wxT("su -c \"mount ") + options + wxT(" ") + partition + wxT(" \'") + mount + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \"mount ") + options + wxT(" ") + partition + wxT(" \'") + mount + wxT("\'\""), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \"mount ") + options + wxT(" ") + partition + wxT(" \'") + mount + wxT("\'\""), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \"mount ") + options + wxT(" ") + partition + wxT(" \'") + mount + wxT("\'\" -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\"mount ") + options + wxT(" ") + partition + wxT(" \'") + mount + wxT("\'\" -d"), output, errors); else { wxMessageBox(_("Sorry, you need to be root to mount non-fstab partitions"), wxT(":-(")); return; } } else result = wxExecute(wxT("mount ") + options + wxT(" ") + partition + wxT(" \"") + mount + wxT("\""), output, errors); // If we happen to be root } #else // __GNU_HURD__ // Hurd doesn't seem to be able to mount an fstab entry just using the mountpt, so always use both. NB we ignore any fstab options: afaict there's no API to get them wxString ttype = (passive ? wxT(" -apc"): wxT(" -ac")); if (ExecuteInPty(wxT("settrans") + ttype + wxT(" \"")+ mount + wxT("\" /hurd/ext2fs ") + checkboxes + wxT('\"') + partition + wxT('\"'), output, errors) != 0) { result = ExecuteInPty(wxT("su -c \"settrans") + ttype + wxT(" \'")+ mount + wxT("\' /hurd/ext2fs ") + checkboxes + wxT("\'") + partition + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } ans = DeviceAndMountManager::GnuCheckmtab(mount, partition, TT_active); // Check for an active one; if both were requested, the passive one is unlikely to have failed alone if (ans == CANCEL_RETURN_CODE) return; result = (ans != 0); #endif //!#ifdef __LINUX__ if (!result) #ifdef __LINUX__ { if (ReadMtab(partition) == NULL) return; } // Success, provided ReadMtab can find the partition. (kdesu returns 0 if the user cancels!) else #endif { wxString msg(_("Oops, failed to mount the partition.")); size_t ecount = errors.GetCount(); // If it failed, show any (reasonable number of) error messages if (ecount) { msg << _(" The error message was:"); for (size_t n=0; n < wxMin(ecount, 9); ++n) msg << wxT('\n') << errors[n]; if (ecount > 9) msg << wxT("\n..."); } wxMessageBox(msg); return; } if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(mount, false); wxString msg(_("Mounted successfully on ")); BriefLogStatus bls(msg + mount); } bool DeviceAndMountManager::MkDir(wxString& mountpt) // Make a dir onto which to mount { if (mountpt.IsEmpty() || mountpt.GetChar(0) != wxFILE_SEP_PATH // If we're trying to create a dir out of total rubbish, abort || mountpt == wxT("/")) // or if we're being asked to create root! { wxMessageBox(_("Impossible to create directory ") + mountpt); return false; } wxString parentdir = mountpt.BeforeLast(wxFILE_SEP_PATH); // Try to work out what is the longest valid parent dir of the requested one while (!wxDirExists(parentdir)) { if (parentdir.IsEmpty()) parentdir = wxT("/"); // In case mountpt is eg /mnt else parentdir = parentdir.BeforeLast(wxFILE_SEP_PATH); // In case we're being asked recursively to add several subdirs at a time } // Finally a valid parent dir! Check if we have write permission to it, as otherwise we'll need to su FileData parent(parentdir); if (parent.CanTHISUserWriteExec()) { if (!wxFileName::Mkdir(mountpt, 0777, wxPATH_MKDIR_FULL)) // Do it the normal way. wxPATH_MKDIR_FULL means intermediate dirs are created too { wxMessageBox(_("Oops, failed to create the directory")); return false; } } else // NB Most of the following won't work if mountpt contains a space. I've tried all the escape clauses, but none work with mkdir/su combo { wxArrayString output, errors; long result; if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo sh -c \"mkdir -p ") + EscapeSpaceStr(mountpt) + wxT('\"'), output, errors); // -p flags make intermediate dirs too else result = ExecuteInPty(wxT("su -c \"mkdir -p ") + mountpt + wxT('\"'), output, errors); if (result == CANCEL_RETURN_CODE) return false; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \"sh -c \'mkdir -p ") + mountpt + wxT("\'\""), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \"sh -c \'mkdir -p ") + mountpt + wxT("\'\""), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \"sh -c \'mkdir -p ") + mountpt + wxT("\'\" -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\"sh -c \'mkdir -p ") + mountpt + wxT("\'\""), output, errors); else { wxMessageBox(_("Oops, I don't have enough permission to create the directory")); return false; } if (!!result) { wxString msg(_("Oops, failed to create the directory.")); size_t ecount = errors.GetCount(); // If it failed, show any error messages if (ecount) { msg << _(" The error message was:"); for (size_t n=0; n < wxMin(ecount, 9); ++n) msg << wxT('\n') << errors[n]; if (ecount > 9) msg << wxT("\n..."); } wxMessageBox(msg); return false; } } return true; } void DeviceAndMountManager::OnUnMountPartition() { FillPartitionArray(false); // Acquire partition & mount data. False signifies to look in mtab for mounted iso-images too UnMountPartitionDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("UnMountDlg")); LoadPreviousSize(&dlg, wxT("UnMountDlg")); dlg.Init(this); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("UnMountDlg")); if (ans != wxID_OK) return; wxString partition = dlg.PartitionsCombo->GetValue().BeforeFirst(' '); // BeforeFirst in case of "/dev/sda1 $UUID/$LABEL"; wxString mount = dlg.FstabMountptTxt->GetValue(); if (mount.IsEmpty()) return; if (mount==wxT("/")) { wxMessageBox(_("Unmounting root is a SERIOUSLY bad idea!"), wxT("Tsk! Tsk!")); return; } EscapeQuote(mount); // Avoid any problems due to single-quotes in the path wxArrayString output, errors; #ifdef __LINUX__ long result = wxExecute(wxT("umount -l \"") + mount + wxT('\"'), output, errors); // We *could* test for kernel >2.4.11, when lazy umounts were invented ;) if (result != 0) // If it fails: { if (errors.GetCount()) { if (getuid() != 0 && (WHICH_SU != dunno)) // If there's an error message & we're not already root, try becoming it { errors.Clear(); if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo sh -c \"umount -l ") + EscapeSpaceStr(mount) + wxT('\"'), output, errors); // sudo chokes on singlequotes :/ else result = ExecuteInPty(wxT("su -c \"umount -l \'") + mount + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) { result = wxExecute(wxT("kdesu \"umount -l \'") + mount + wxT("\'\""), output, errors); } else if (WHICH_SU==gksu) { result = wxExecute(wxT("gksu \"umount -l \'") + mount + wxT("\'\""), output, errors); } else if (WHICH_SU==gnomesu) { result = wxExecute(wxT("gnomesu --title "" -c \"umount -l \'") + mount + wxT("\'\" -d"), output, errors); } else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) { result = wxExecute(OTHER_SU_COMMAND + wxT("\"umount -l \'") + mount + wxT("\'\""), output, errors); } if (!!result) { wxString msg(_("Oops, failed to unmount the partition.")); size_t ecount = errors.GetCount(); // If it failed, show any error messages if (ecount) { msg << _(" The error message was:"); for (size_t n=0; n < wxMin(ecount, 9); ++n) msg << wxT('\n') << errors[n]; if (ecount > 9) msg << wxT("\n..."); } wxMessageBox(msg); return; } // Unfortunately kdesu returns 0 if Cancel pressed, so check the partition really was umounted if (ReadMtab(partition) != NULL) { wxString str(_("Failed to unmount ")); BriefLogStatus bls(str + mount); return; } wxArrayInt IDs; MyFrame::mainframe->OnUpdateTrees(mount, IDs); // Update in case this partition was visible in a pane BriefLogStatus bls(mount + _(" unmounted successfully")); } else // If we're already root or we're unable to su, print the error & abort { wxString msg; msg.Printf(wxT("%s%lu\n"), _("Oops, failed to unmount successfully due to error "), result); wxMessageBox(msg + errors[0]); } } else wxMessageBox(_("Oops, failed to unmount")); // Generic error message (shouldn't happen) return; } // Unfortunately kdesu returns 0 if Cancel pressed, so check the partition really was umounted if (ReadMtab(partition) != NULL) { wxString str(_("Failed to unmount ")); BriefLogStatus bls(str + mount); return; } #else // __GNU_HURD__ // It doesn't seem to be possible to remove just the active translator when there's a passive one too // (perhaps the passive immediately starts another active). So always remove both int result = ExecuteInPty(wxT("settrans -fg \"") + mount + wxT('\"'), output, errors); if (result != 0) // It currently returns 5 if "Operation not permitted", but let's not rely on that result = ExecuteInPty(wxT("su -c \"settrans -fg \'") + mount + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; if (DeviceAndMountManager::GnuCheckmtab(mount, partition, TT_either)) { wxString msg; msg.Printf(wxT("%s%lu\n"), _("Oops, failed to unmount successfully due to error "), result); wxMessageBox(msg + errors[0]); return; }; #endif //!#ifdef __LINUX__ wxArrayInt IDs; MyFrame::mainframe->OnUpdateTrees(mount, IDs); // Update in case this partition was visible in a pane BriefLogStatus bls(mount + _(" unmounted successfully")); } void DeviceAndMountManager::OnMountIso() { wxString image, mount, options, checkboxes; long result; MountLoopDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountLoopDlg")); LoadPreviousSize(&dlg, wxT("MountLoopDlg")); if (!dlg.Init()) return; int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountLoopDlg")); if (ans != wxID_OK) return; image = dlg.ImageTxt->GetValue(); mount = dlg.MountptCombo->GetValue(); if (mount.IsEmpty()) return; FileData mountdir(mount); if (!mountdir.IsValid()) { if (wxMessageBox(_("The requested mount-point doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mount)) return; } options = wxT("-o loop"); EscapeQuote(image); EscapeQuote(mount); // Avoid any problems due to single-quotes in a path wxArrayString output, errors; #ifdef __LINUX__ if (dlg.InFstab && (mount == dlg.FstabMt)) // If it has a fstab entry, and we're trying to use it { FileData mountdir(mount); wxBusyCursor wait; result = wxExecute(wxT("mount \"") + image + wxT("\""), output, errors); // Do the mount the easy way } else { if (getuid() != 0) // If user isn't super { if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo sh -c \"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\""), output, errors); else result = ExecuteInPty(wxT("su -c \"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\""), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\""), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\" -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\"mount ") + options + wxT(" \'") + image + wxT("\' \'") + mount + wxT("\'\""), output, errors); else { wxMessageBox(_("Sorry, you need to be root to mount non-fstab partitions"), wxT(":-(")); return; } } else result = wxExecute(wxT("mount ") + options + wxT(" \"") + image + wxT("\" \"") + mount + wxT("\""), output, errors); // If we happen to be root } switch(result) { case 0: break; // Success case 1: wxMessageBox(_("Oops, failed to mount successfully\nDo you have permission to do this?")); return; case 16: wxMessageBox(_("Oops, failed to mount successfully\nThere was a problem with /etc/mtab")); return; case 96: wxMessageBox(_("Oops, failed to mount successfully\nAre you sure the file is a valid Image?")); return; default: wxString msg; msg.Printf(wxT("%s%lu"), _("Oops, failed to mount successfully due to error "), result); wxMessageBox(msg); return; } #endif #ifdef __GNU_HURD__ result = ExecuteInPty(wxT("settrans -a \"") + mount + wxT("\" /hurd/iso9660fs ") + image + wxT('\"'), output, errors); if (result != 0) // It currently returns 5 if "Operation not permitted", but let's not rely on that result = ExecuteInPty(wxT("su -c \"settrans -a \'") + mount + wxT("\' /hurd/iso9660fs ") + wxT('\'') + image + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; if (!DeviceAndMountManager::GnuCheckmtab(mount, image, TT_active)) { wxString msg; if (errors.GetCount() > 0) msg.Printf(wxT("%s%lu\n%s"), _("Failed to mount successfully due to error "), result, errors[0].c_str()); else msg.Printf(wxT("%s%lu"), _("Failed to mount successfully"), result); wxMessageBox(msg); return; } #endif if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(mount, false); wxString msg(_("Mounted successfully on ")); BriefLogStatus bls(msg + mount); } void DeviceAndMountManager::OnMountNfs() { MountNFSDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountNFSDlg")); if (!dlg.Init()) return; LoadPreviousSize(&dlg, wxT("MountNFSDlg")); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountNFSDlg")); if (ans != wxID_OK) return; long result; wxString name, options, mountpt = dlg.MountptCombo->GetValue(); if (mountpt.IsEmpty()) return; wxArrayString output, errors; #ifdef __LINUX__ if (dlg.IsMounted) // If this export is already mounted, abort or mount elsewhere { if (mountpt == dlg.AtMountPt) { wxMessageBox(_("This export is already mounted at ") + dlg.AtMountPt); return; } wxString msg; msg.Printf(wxT("%s%s\nDo you want to mount it at %s too?"), _("This export is already mounted at "), dlg.AtMountPt.c_str(), mountpt.c_str()); wxMessageDialog dialog(MyFrame::mainframe->GetActivePane(), msg, wxT(""), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return; } #endif name = dlg.IPCombo->GetValue(); // Make a 'device' name. Use GetValue() in case there's been a write-in name += wxT(':'); name += dlg.SharesCombo->GetValue(); #ifdef __LINUX__ if (dlg.RwRadio->GetSelection()) // First do the options. Set the rw/ro according to the radiobox options = wxT(" -o ro"); else options = wxT(" -o rw"); if (dlg.MounttypeRadio->GetSelection()) // Now the texture of the mount. We used to look for 'intr' too, but that's now a deprecated no-op options << wxT(",soft"); else options << wxT(",hard"); if (dlg.InFstab && (mountpt == dlg.FstabMt)) // If it has a fstab entry, and we're trying to use it { FileData mountdir(mountpt); if (!mountdir.IsValid()) { if (wxMessageBox(_("The mount-point for this Export doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mountpt)) return; } wxBusyCursor wait; // Do the mount the easy way. Use mountpt as mount is less picky about presence/absence of a terminal '/' than it is for the export result = wxExecute(wxT("mount \"") + mountpt + wxT("\""), output, errors); } else // Not in fstab, so we have to work harder { wxBusyCursor wait; FileData mountdir(mountpt); if (!mountdir.IsValid()) { if (wxMessageBox(_("The mount-point for this share doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mountpt)) return; } EscapeQuote(name); EscapeQuote(mountpt); // Avoid any problems due to single-quotes in a path if (getuid() != 0) // If user isn't super { if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo \"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\""), output, errors); else result = ExecuteInPty(wxT("su -c \"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\""), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\""), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\" -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\"mount \'") + name + wxT("\' \'") + mountpt + wxT("\'") + options + wxT("\""), output, errors); else { wxMessageBox(_("Sorry, you need to be root to mount non-fstab exports"), wxT(":-(")); return; } } else result = wxExecute(wxT("mount \"") + name + wxT("\" \"") + mountpt + wxT("\"") + options, output, errors); // If we happen to be root } switch(result) { case 0: break; // Success case 1: wxMessageBox(_("Oops, failed to mount successfully\nDo you have permission to do this?")); return; case 4: wxMessageBox(_("Oops, failed to mount successfully\nIs NFS running?")); return; default: wxString msg; msg.Printf(wxT("%s%lu") , _("Oops, failed to mount successfully due to error "), result); wxMessageBox(msg); return; } #endif #ifdef __GNU_HURD__ if (dlg.MounttypeRadio->GetSelection()) options << wxT(" --soft "); else options << wxT(" --hard "); // At present, wxExecute will always hang here (and sometimes elsewhere too) so use ExecuteInPty for even for non-su result = ExecuteInPty(wxT("settrans -ac \"") + mountpt + wxT("\" /hurd/nfs ") + options + wxT('\"') + name + wxT('\"'), output, errors); //if (result != 0) if (!DeviceAndMountManager::GnuCheckmtab(mountpt, name, TT_active)) { result = ExecuteInPty(wxT("su -c \"settrans -ac \'") + mountpt + wxT("\' /hurd/nfs ") + options + wxT('\'') + name + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } if (!DeviceAndMountManager::GnuCheckmtab(mountpt, name, TT_active)) { wxString msg; if (errors.GetCount() > 0) msg.Printf(wxT("%s%lu\n%s"), _("Failed to mount successfully due to error "), result, errors[0].c_str()); else msg.Printf(wxT("%s%lu"), _("Failed to mount successfully due to error "), result); wxMessageBox(msg); return; } #endif if(MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(mountpt, false); wxString msg(_("Mounted successfully on ")); BriefLogStatus bls(msg + mountpt); } void DeviceAndMountManager::OnMountSshfs() { MountSshfsDlg dlg; wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("MountSshfsDlg")); if (!dlg.Init()) return; LoadPreviousSize(&dlg, wxT("MountSshfsDlg")); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountSshfsDlg")); if (ans != wxID_OK) return; wxString command(wxT("sshfs ")), mountpt = dlg.MountptCombo->GetValue(); if (mountpt.IsEmpty()) return; mountpt.Trim().Trim(false); { FileData mountdir(mountpt); // Check mountdir in this limited scope, in case it's invalid. If so, we'll have to recreate the FileData after if (!mountdir.IsValid()) { if (wxMessageBox(_("The selected mount-point doesn't exist. Create it?"), wxT("4Pane"), wxYES_NO) != wxYES) return; if (!MkDir(mountpt)) return; } } wxString options; if (dlg.Idmap->IsChecked()) options << wxT("-o idmap=user "); if (dlg.Readonly->IsChecked()) options << wxT("-o ro "); wxString otheroptions = dlg.OtherOptions->GetValue(); FileData mountdir(mountpt); if (!mountdir.IsDir()) { wxMessageBox(_("The selected mount-point isn't a directory"), wxT("4Pane")); return; } wxDir dir(mountpt); if (!dir.IsOpened()) { wxMessageBox(_("The selected mount-point can't be accessed"), wxT("4Pane")); return; } if ((dir.HasFiles() || dir.HasSubDirs()) && !otheroptions.Contains(wxT("nonempty"))) { if (wxMessageBox(_("The selected mount-point is not empty. Try to mount there anyway?"), wxT("4Pane"), wxYES_NO) != wxYES) return; options << wxT("-o nonempty "); } if (!otheroptions.empty()) options << otheroptions << wxT(' '); wxString user = dlg.UserCombo->GetValue(); user.Trim().Trim(false); if (!user.empty()) user << wxT('@'); // Supplying a remote user isn't compulsary, but if we do, @ is the separator wxString host = dlg.HostnameCombo->GetValue(); host.Trim().Trim(false); host << wxT(':'); wxString remotemt = dlg.RemotedirCombo->GetValue(); remotemt.Trim().Trim(false); remotemt = StrWithSep(remotemt); // Any remote dir must be '/' terminated, otherwise mounting fails :/ remotemt << wxT(' '); command << options << user << host << remotemt << wxT("\"") << mountpt << wxT("\""); #if wxVERSION_NUMBER < 3000 // For some reason, in wx2.8 using the usual sync execution with output,errors works, but hangs; and async doesn't give a useful exit code; // and we can't check for success by looking in mtab as it won't have mounted yet (sshfs takes a few seconds). // Trying use a wxProcess to output success/failure also fails, as the process hangs until the unmount occurs! // We also have the insuperable problem of what will ssh do: a password-less public key login; a password login with a valid gui setting for SSH_ASKPASS; // or will it ask for a password using stdin/out. If the latter, not providing one in a wxProcess will hang 4Pane! // and (for some reason) though using ExecuteInPty() 'works', the login itself fails silently (even with LogLevel=DEBUG3). // So, for now, just run the command and hope ssh can cope. Do the display update by polling (not with findmnt --poll, which is too recent). wxExecute(command, wxEXEC_ASYNC | wxEXEC_MAKE_GROUP_LEADER); m_MtabpollTimer->Begin(mountpt, 250, 120); // Poll every 1/4sec for up to 30sec #else wxArrayString output, errors; long result = wxExecute(command, output, errors); if (!result) // Success { if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(mountpt, false); wxString msg(_("Mounted successfully on ")); BriefLogStatus bls(msg + mountpt); return; } wxString msg; size_t ecount = errors.GetCount(); // If it failed, show any error messages or, failing that, the exit code if (ecount) { msg = _("Failed to mount over ssh. The error message was:"); for (size_t n=0; n < ecount; ++n) msg << wxT('\n') << errors[n]; } else msg.Printf(wxT("%s%i"), _("Failed to mount over ssh due to error "), (int)result); wxMessageBox(msg); #endif } #if wxVERSION_NUMBER < 3000 void MtabPollTimer::Notify() { static int hitcount = 0; if (m_devman && (m_devman->Checkmtab(m_Mountpt1) || m_devman->Checkmtab(m_Mountpt2))) // One of these has a terminal '/' { // When, in a non-gui situation, there's no available password so the mount is destined to fail, somehow the mountpoint gets briefly added to mtab // It's then immediately removed, but by then we've hit it, resulting in an error message when we try to stat it. To be safe, ignore the first 2 hits if (hitcount++ == 2) { Stop(); hitcount = 0; if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(m_Mountpt1, false); BriefLogStatus bls(_("Mounted successfully on ") + m_Mountpt1); return; } } if (--remaining <= 0) { Stop(); hitcount = 0; BriefLogStatus bls(wxString::Format(_("Failed to mount over ssh on %s"), m_Mountpt1.c_str())); } } #endif void DeviceAndMountManager::OnMountSamba() { MountSambaDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("MountSambaDlg")); if (!dlg.Init()) return; LoadPreviousSize(&dlg, wxT("MountSambaDlg")); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("MountSambaDlg")); if (ans != wxID_OK) return; long result = -1; wxString name, login, mountpt = dlg.MountptCombo->GetValue(); if (mountpt.IsEmpty()) return; wxArrayString output, errors; if (dlg.IsMounted) // If this share is already mounted, abort or mount elsewhere { if (mountpt == dlg.AtMountPt) { wxMessageBox(_("This share is already mounted at ") + dlg.AtMountPt); return; } wxString msg; msg.Printf(_("This share is already mounted at %s\nDo you want to mount it at %s too?"), dlg.AtMountPt.c_str(), mountpt.c_str()); wxMessageDialog dialog(MyFrame::mainframe->GetActivePane(), msg, wxT("4Pane"), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return; } if (dlg.RwRadio->GetSelection()) // First do the options. Set the rw/ro according to the radiobox login = wxT("-o ro"); else login = wxT("-o rw"); if (!((wxRadioBox*)dlg.FindWindow(wxT("PwRadio")))->GetSelection()) // Now the username/password { wxString user = dlg.Username->GetValue(); if (!user.IsEmpty()) user = wxT(",user=") + user; // No username means smb defaults to the linux user wxString pw = dlg.Password->GetValue(); if (!pw.IsEmpty()) pw = wxT(",pass=") + pw; if (pw.IsEmpty()) login += wxT(",guest"); // We can't cope without a password, as smb would prompt for one. So try for guest else { login += user; login += pw; } // Add the username (if any) & pw } else login += wxT(",guest"); // If the radiobox selection was for anon login += wxT(" "); // Make a 'device' name. I used to use the hostname in preference to the ip address, but the latter seems more reliable name = dlg.IPCombo->GetValue(); if (name.IsEmpty()) name = dlg.HostnameCombo->GetValue(); // If there isn't a valid ip address, use the hostname name = wxT("//") + name; name += wxT('/'); name += dlg.SharesCombo->GetValue(); if (dlg.InFstab && (mountpt == dlg.FstabMt)) // If it has a fstab entry, and we're trying to use it { FileData mountdir(mountpt); if (!mountdir.IsValid()) { if (wxMessageBox(_("The mount-point for this share doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mountpt)) return; } wxBusyCursor wait; result = wxExecute(wxT("mount \"") + name + wxT('\"'), output, errors); // Do the mount the easy way if (!result) result = errors.GetCount(); // Unfortunately, wxExecute returns 0 even if submnt fails. Success gives no error msg, so use this instead } if (!!result) // Not in fstab, or it is but it failed (probably as recent smbmounts aren't setuid); so we have to work harder { wxBusyCursor wait; FileData mountdir(mountpt); if (!mountdir.IsValid()) { if (wxMessageBox(_("The mount-point for this share doesn't exist. Create it?"), wxEmptyString, wxYES_NO) != wxYES) return; if (!MkDir(mountpt)) return; } EscapeQuote(name); EscapeQuote(mountpt); // Avoid any problems due to single-quotes in a path if (WeCanUseSmbmnt(mountpt)) // We can only use smbmnt if we're root, or if it's setuid root & we own mountpt { wxString smbmount_filepath; if (Configure::TestExistence(wxT("smbmount"), true)) smbmount_filepath = wxT("smbmount"); // See if it's in PATH else smbmount_filepath = SMBPATH+wxT("smbmount \""); // Otherwise use the presumed samba dir result = wxExecute(smbmount_filepath + name + wxT("\" \"") + mountpt + wxT("\" ") + login, output, errors); } else { if (getuid() != 0) // If user isn't super { if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo sh -c \"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\""), output, errors); else result = ExecuteInPty(wxT("su -c \"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\""), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\""), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\""), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\" -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\"mount -t cifs ") + login + wxT("\'") + name + wxT("\' \'") + mountpt + wxT("\'\""), output, errors); else { wxMessageBox(_("Sorry, you need to be root to mount non-fstab shares"), wxT(":-(")); return; } } else result = wxExecute(wxT("mount -t cifs ") + login + wxT("\"") + name + wxT("\" \"") + mountpt + wxT("\""), output, errors); // If we happen to be root } } if (!result) // Success { if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->OnOutsideSelect(mountpt, false); wxString msg(_("Mounted successfully on ")); BriefLogStatus bls(msg + mountpt); return; } wxString msg; size_t ecount = errors.GetCount(); // If it failed, show any error messages or, failing that, the exit code if (ecount) { msg = _("Oops, failed to mount successfully. The error message was:"); for (size_t n=0; n < ecount; ++n) msg << wxT('\n') << errors[n]; } else msg.Printf(wxT("%s%i"), _("Oops, failed to mount successfully due to error "), (int)result); wxMessageBox(msg); } bool DeviceAndMountManager::WeCanUseSmbmnt(wxString& mountpt, bool TestUmount /*=false*/) // Do we have enough kudos to (u)mount with smb { wxString smbfilepath = SMBPATH + (TestUmount ? wxT("smbumount") : wxT("smbmnt")); // Make a filepath to whichever file we're interested in FileData smb(smbfilepath); if (!smb.IsValid()) return false; // If it's not in SMBPATH (or doesn't exist anyway e.g. ubuntu), forget it size_t ourID = getuid(); if (ourID == 0) return true; // If we're root anyway we certainly can use it FileData mnt(mountpt); if (!mnt.IsValid()) return false; // This is to test the mountpt dir's details. If it doesn't exist, return if (smb.IsSetuid()) // If the file is setuid, we can use it if (TestUmount || // if we're UNmounting (mnt.OwnerID()==ourID && mnt.IsUserWriteable())) // or provided we own and have write permission for the target dir return true; return false; } void DeviceAndMountManager::OnUnMountNetwork() { UnMountSambaDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg,MyFrame::mainframe, wxT("UnMountDlg")); if (!dlg.Init()) { wxMessageBox(_("No Mounts of this type found")); return; } // Init returns the no located. Bug out if none LoadPreviousSize(&dlg, wxT("UnMountDlg")); dlg.SetTitle(_("Unmount a Network mount")); ((wxStaticText*)dlg.FindWindow(wxT("FirstStatic")))->SetLabel(_("Share or Export to Unmount")); ((wxStaticText*)dlg.FindWindow(wxT("SecondStatic")))->SetLabel(_("Mount-Point")); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("UnMountDlg")); if (ans != wxID_OK) return; wxString mount = dlg.FstabMountptTxt->GetValue(); if (mount.IsEmpty()) return; if (mount==wxT("/")) { wxMessageBox(_("Unmounting root is a SERIOUSLY bad idea!"), wxT("Tsk! Tsk!")); return; } wxArrayString output, errors; long result = -1; if (dlg.IsSshfs()) // sshfs does things in userspace, so try its unmounter first { if (!FUSERMOUNT.empty() && (wxExecute(FUSERMOUNT + wxT(" -u ") + mount, output, errors) == 0)) { wxArrayInt IDs; MyFrame::mainframe->OnUpdateTrees(mount, IDs); BriefLogStatus bls(mount + _(" unmounted successfully")); return; } } // Otherwise fall through to use the standard umount if (dlg.IsSamba() && WeCanUseSmbmnt(mount, true)) // If this is a samba share, & we're set up to do so, use smbumount { wxString smbmount_filepath; if (Configure::TestExistence(wxT("smbumount"), true)) smbmount_filepath = wxT("smbumount"); // See if it's in PATH else smbmount_filepath = SMBPATH+wxT("smbumount "); result = wxExecute(smbmount_filepath + mount, output, errors); if (!result) { wxArrayInt IDs; MyFrame::mainframe->OnUpdateTrees(mount, IDs); BriefLogStatus bls(mount + _(" Unmounted successfully")); return; } else errors.Clear(); } // Otherwise we have to do it the harder way if ((result = wxExecute(wxT("umount -l ") + mount, output, errors)) != 0) { wxString mount1; // If it failed, try again with(out) a terminal '/' if (mount.Right(1) == wxFILE_SEP_PATH) mount1 = mount.BeforeLast(wxFILE_SEP_PATH); else mount1 << mount << wxFILE_SEP_PATH; result = wxExecute(wxT("umount -l ") + mount1, output, errors); } if (result != 0) { if (WHICH_SU != dunno) { errors.Clear(); // Didn't work using fstab. Try again as root if (WHICH_SU==mysu) { if (USE_SUDO) result = ExecuteInPty(wxT("sudo sh -c \"umount -l ") + mount + wxT('\"'), output, errors); else result = ExecuteInPty(wxT("su -c \'umount -l ") + mount + wxT("\'"), output, errors); if (result == CANCEL_RETURN_CODE) return; } else if (WHICH_SU==kdesu) result = wxExecute(wxT("kdesu \'umount -l ") + mount + wxT("\'"), output, errors); else if (WHICH_SU==gksu) result = wxExecute(wxT("gksu \'umount -l ") + mount + wxT("\'"), output, errors); else if (WHICH_SU==gnomesu) result = wxExecute(wxT("gnomesu --title "" -c \'umount -l ") + mount + wxT("\' -d"), output, errors); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) result = wxExecute(OTHER_SU_COMMAND + wxT("\'umount -l ") + mount + wxT("\'"), output, errors); } if (!!result) // If nothing's worked, abort after displaying what we did get { wxString msg; size_t ecount = errors.GetCount(); if (ecount) { msg = _("Unmount failed with the message:"); for (size_t n=0; n < ecount; ++n) msg << wxT('\n') << errors[n]; } else msg = (_("Oops, failed to unmount")); // Generic error message (shouldn't happen) wxMessageBox(msg); return; } } if (!!result) return; // If we missed any failures above, catch them here wxArrayInt IDs; MyFrame::mainframe->OnUpdateTrees(mount, IDs); // Update in case this partition was visible in a pane BriefLogStatus bls(mount + _(" unmounted successfully")); } bool MountPartitionDialog::Init(DeviceAndMountManager* dad, wxString device /*=wxEmptyString*/) { parent = dad; PartitionsCombo = (wxComboBox*)FindWindow(wxT("PartitionsCombo")); FstabMountptTxt = NULL; // Start with this null, as we use this to test which dialog version we're in FstabMountptTxt = (wxTextCtrl*)FindWindow(wxT("FstabMountptTxt"));// Find the textctrl if this is the fstab version of the dialog MountptCombo = (wxComboBox*)FindWindow(wxT("MountptCombo")); // Ditto for the 'Other' version if (!FstabMountptTxt && !MountptCombo) return false; // These are new in 4.0, so protect against a stale rc/ historypath = wxT("/History/MountPartition/"); LoadMountptHistory(); if (device != wxEmptyString) // This is if we're trying to mount a DVD-RAM disc { wxArrayString answerarray; PartitionsCombo->Append(device.c_str()); if (MountptCombo && parent->FindUnmountedFstabEntry(device, answerarray)) // Try to find a suggested mountpt from ftab { if (answerarray.GetCount()) // Array holds any unused mountpoints. Just show the first (there'll probably be 0 or 1 anyway) MountptCombo->SetValue(answerarray.Item(0)); } return true; } for (size_t n=0; n < parent->PartitionArray->GetCount(); ++n) { PartitionStruct* pstruct = parent->PartitionArray->Item(n); if (FstabMountptTxt == NULL) // If this is the 'Other' version of the dialog, load every known unmounted partition { if (!pstruct->IsMounted) { wxString devicestr(pstruct->device); if (!pstruct->label.empty()) devicestr << " " << pstruct->label; PartitionsCombo->Append(devicestr); } } else { if (pstruct->IsMounted || pstruct->mountpt.IsEmpty()) continue; // Ignore already-mounted partitions, or ones not in fstab (so no known mountpt) wxString devicestr(pstruct->device); if (!pstruct->label.empty()) devicestr << " " << pstruct->label; else if (!pstruct->uuid.empty()) { wxString UUID(pstruct->uuid); if (UUID.Len() > 16) UUID = pstruct->uuid.BeforeFirst('-') + "..." + pstruct->uuid.AfterLast('-'); // Truncate display of standard UUIDs devicestr << " " << UUID; } PartitionsCombo->Append(devicestr); // This one qualifies, so add it } } #if (defined(__WXGTK20__) || defined(__WXX11__)) if (PartitionsCombo->GetCount()) PartitionsCombo->SetSelection(0); #endif DisplayMountptForPartition(); // Show ftab's suggested mountpt, if we're in the correct dialog return true; } void MountPartitionDialog::DisplayMountptForPartition(bool GetDataFromMtab /*=false*/) // This enters the correct mountpt for the selected partition, in the fstab version of the dialog { if (FstabMountptTxt == NULL) return; // because in the 'Other' version of the dialog, the user enters his own mountpt wxString dev = PartitionsCombo->GetValue(); // We need to use GetValue(), not GetStringSelection(), as in >2.6.3 the latter fails for (size_t n=0; n < parent->PartitionArray->GetCount(); ++n) if (parent->PartitionArray->Item(n)->device == dev.BeforeFirst(' ')) // BeforeFirst in case of "/dev/sda1 $UUID/$LABEL" { if (GetDataFromMtab) // If we're unmounting, we can't rely on the PartitionArray info: the partition may not have been mounted where fstab intended { FstabMountptTxt->Clear(); struct mntent* mnt = parent->ReadMtab(dev); // So see where it really is if (mnt != NULL) FstabMountptTxt->ChangeValue(wxString(mnt->mnt_dir, wxConvUTF8)); return; } else { FstabMountptTxt->Clear(); FstabMountptTxt->ChangeValue(parent->PartitionArray->Item(n)->mountpt); return; } } } void MountPartitionDialog::OnBrowseButton(wxCommandEvent& WXUNUSED(event)) // The Browse button was clicked, so let user locate a mount-pt dir { wxString startdir; if (wxDirExists(wxT("/mnt"))) startdir = wxT("/mnt"); wxDirDialog ddlg(this, _("Choose a Directory to use as a Mount-point"), startdir, wxDD_DEFAULT_STYLE | wxDD_DIR_MUST_EXIST); if (ddlg.ShowModal() != wxID_OK) return; wxString filepath = ddlg.GetPath(); if (!filepath.IsEmpty()) MountptCombo->SetValue(filepath); } void MountPartitionDialog::LoadMountptHistory() const { if (!MountptCombo || historypath.empty()) return; size_t count = (size_t)wxConfigBase::Get()->Read(historypath + wxT("itemcount"), 0l); for (size_t n=0; n < count; ++n) { wxString Mountpt = wxConfigBase::Get()->Read(historypath + wxString::Format(wxT("%c/"), wxT('a') + (wxChar)n) + wxT("Mountpt"), wxString()); if (!Mountpt.empty()) MountptCombo->Append(Mountpt); } } void MountPartitionDialog::SaveMountptHistory() const { if (!MountptCombo || historypath.empty()) return; wxString mp = MountptCombo->GetValue(); if (mp.empty()) return; wxArrayString History = MountptCombo->GetStrings(); int index = History.Index(mp); if (index != wxNOT_FOUND) History.RemoveAt(index); // Avoid duplication History.Insert(mp, 0); // Prepend the current entry wxConfigBase::Get()->DeleteGroup(historypath); size_t count = wxMin(History.GetCount(), MAX_COMMAND_HISTORY); wxConfigBase::Get()->Write(historypath + wxT("itemcount"), (long)count); for (size_t n=0; n < count; ++n) wxConfigBase::Get()->Write(historypath + wxString::Format(wxT("%c/"), wxT('a') + (wxChar)n) + wxT("Mountpt"), History[n]); } BEGIN_EVENT_TABLE(MountPartitionDialog,wxDialog) EVT_COMBOBOX(XRCID("PartitionsCombo"), MountPartitionDialog::OnSelectionChanged) EVT_BUTTON(XRCID("Browse"), MountPartitionDialog::OnBrowseButton) EVT_BUTTON(-1, MountPartitionDialog::OnButtonPressed) END_EVENT_TABLE() bool MountLoopDialog::Init() { ImageTxt = (wxTextCtrl*)FindWindow(wxT("ImageTxt")); MountptCombo = (wxComboBox*)FindWindow(wxT("MountptCombo")); if (!MountptCombo) return false; // This is new in 4.0, so protect against a stale rc/ AlreadyMounted = (wxStaticText*)FindWindow(wxT("AlreadyMounted")); AlreadyMounted->Hide(); historypath = wxT("/History/MountLoop/"); LoadMountptHistory(); wxString possibleIso; if (MyFrame::mainframe->GetActivePane()) possibleIso = MyFrame::mainframe->GetActivePane()->GetPath(); FileData poss(possibleIso); if (!poss.IsValid()) return true; FileData tgt(poss.GetUltimateDestination()); if (tgt.IsRegularFile()) { ImageTxt->ChangeValue(possibleIso); MountptCombo->SetFocus(); } else ImageTxt->SetFocus(); return true; } void MountLoopDialog::OnIsoBrowseButton(wxCommandEvent& WXUNUSED(event)) { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); // Find the active dirview's path to use as startdir for dialog if (active->fileview==ISRIGHT) active = active->partner; wxFileDialog fdlg(this,_("Choose an Image to Mount"), active->GetPath(), wxEmptyString, wxT("*"), wxFD_OPEN); if (fdlg.ShowModal() != wxID_OK) return; wxString filepath = fdlg.GetPath(); // Get the selection if (!filepath.IsEmpty()) ImageTxt->SetValue(filepath); // Paste into the textctrl } void MountLoopDialog::DisplayMountptForImage() // This enters the correct mountpt for the selected Image if it's in fstab { wxString Image = ImageTxt->GetValue(); if (Image.IsEmpty()) // If no currently selected share, abort { InFstab = IsMounted = false; FstabMt.Empty(); AtMountPt.Empty(); AlreadyMounted->Hide(); return; } struct fstab* fs = DeviceAndMountManager::ReadFstab(Image); InFstab = (fs != NULL); // Store or null the data according to the result FstabMt = (InFstab ? wxString(fs->fs_file, wxConvUTF8) : wxT("")); struct mntent* mnt = DeviceAndMountManager::ReadMtab(Image); // Now read mtab to see if the share's already mounted IsMounted = (mnt != NULL); AlreadyMounted->Show(IsMounted); GetSizer()->Layout(); // If it is mounted, expose the wxStaticTxt that says so (and Layout, else 2.8.0 displays it in top left corner!) AtMountPt = (IsMounted ? wxString(mnt->mnt_dir, wxConvUTF8) : wxT("")); // Store any mountpt, or delete any previous entry if (IsMounted) MountptCombo->SetValue(AtMountPt); // Put any mountpt in the combobox else if (InFstab) MountptCombo->SetValue(FstabMt); // If not, but there was an fstab entry, insert that instead } BEGIN_EVENT_TABLE(MountLoopDialog,MountPartitionDialog) EVT_BUTTON(XRCID("Browse"), MountLoopDialog::OnBrowseButton) EVT_BUTTON(XRCID("IsoBrowse"), MountLoopDialog::OnIsoBrowseButton) EVT_TEXT(XRCID("ImageTxt"), MountLoopDialog::OnSelectionChanged) END_EVENT_TABLE() bool MountSshfsDlg::Init() { UserCombo = (wxComboBox*)FindWindow(wxT("UserCombo")); HostnameCombo = (wxComboBox*)FindWindow(wxT("HostnameCombo")); RemotedirCombo = (wxComboBox*)FindWindow(wxT("RemotedirCombo")); MountptCombo = (wxComboBox*)FindWindow(wxT("MountptCombo")); if (!MountptCombo) return false; // This is new in 4.0, so protect against a stale rc/ Idmap = (wxCheckBox*)FindWindow(wxT("idmap")); Readonly = (wxCheckBox*)FindWindow(wxT("readonly")); OtherOptions = (wxTextCtrl*)FindWindow(wxT("OtherOptions")); if (!(UserCombo && HostnameCombo && RemotedirCombo && MountptCombo && OtherOptions)) return false; historypath = wxT("/History/MountSshfs/"); LoadMountptHistory(); wxConfigBase* config = wxConfigBase::Get(); config->SetPath(wxT("/History/SshfsHistory/")); size_t count = (size_t)config->Read(wxT("itemcount"), 0l); SshfsHistory.Clear(); wxString key; const wxString dfault; for (size_t n=0; n < count; ++n) { key.Printf(wxT("%c/"), wxT('a') + (wxChar)n); wxString Hostname = config->Read(key + wxT("Hostname"), dfault); if (Hostname.IsEmpty()) continue; wxString User = config->Read(key + wxT("User"), dfault); wxString Remotedir = config->Read(key + wxT("Remotedir"), dfault); wxString Mountpt = config->Read(key + wxT("Mountpt"), dfault); bool map; config->Read(key + wxT("idmap"), &map, true); bool ro; config->Read(key + wxT("readonly"), &ro, true); wxString OtherOpts = config->Read(key + wxT("OtherOptions"), dfault); SshfsHistory.Add( new SshfsNetworkStruct(User, Hostname, Remotedir, Mountpt, map, ro, OtherOpts) ); } config->SetPath(wxT("/")); // Now see if there's anything extra in /etc/fstab ArrayofPartitionStructs PartitionArray; wxString types(wxT("fuse,fuse.sshfs")); size_t fcount = MyFrame::mainframe->Layout->m_notebook->DeviceMan->DeviceAndMountManager::ReadFstab(PartitionArray, types); for (size_t n=0; n < fcount; ++n) { bool idmap(false), ro(false); wxString source(PartitionArray.Item(n)->device.AfterLast(wxT('#'))); // There are 2 fstab entry methods. One prepends 'sshfs#' wxString user = source.BeforeLast(wxT('@')); // Use BeforeLast, not First, as it returns empty if not found wxString hostname = source.AfterLast(wxT('@')).BeforeFirst(wxT(':')); // We _want_ the whole string if there's no ':' wxString remotedir = source.AfterFirst(wxT(':')); // Use AfterFirst as we want "" if not found wxString options; // Now parse any options wxArrayString optsarray = wxStringTokenize(PartitionArray.Item(n)->uuid, // They were put here, for want of a better field wxT(","),wxTOKEN_STRTOK); for (size_t op=0; op < optsarray.GetCount(); ++op) { wxString opt = optsarray.Item(op).Trim().Trim(false); size_t pos = opt.find(wxT("idmap=")); // Filter out idmap=user and ro, as we have separate boxes for them if ((pos != wxString::npos) && (opt.find(wxT("user"), pos+6, 4) != wxString::npos)) { idmap = true; continue; } if ((pos = opt.find(wxT("ro"))) != wxString::npos) { ro = true; continue; } if (!options.empty() && !opt.empty()) options << wxT(' '); options << wxT("-o ") << opt; } SshfsNetworkStruct* sstruct = new SshfsNetworkStruct(user, hostname, remotedir, PartitionArray.Item(n)->mountpt, idmap, ro, options); bool found(false); for (size_t i=0; i < SshfsHistory.GetCount(); ++i) if (SshfsHistory.Item(i)->IsEqualTo(sstruct)) { found = true; break; } if (!found) SshfsHistory.Add(sstruct); else delete sstruct; } // Load all the hostnames, uniqued for (size_t n=0; n < SshfsHistory.GetCount() && n < MAX_COMMAND_HISTORY; ++n) { SshfsNetworkStruct* sstruct = SshfsHistory.Item(n); if (HostnameCombo->FindString(sstruct->hostname) == wxNOT_FOUND) HostnameCombo->Append(sstruct->hostname); } Connect(wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler(MountSshfsDlg::OnSelectionChanged), NULL, this); // We must connect them all, otherwise the baseclass catches some and crashes Connect(wxID_OK, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(MountSshfsDlg::OnOK), NULL, this); Connect(wxID_OK, wxEVT_UPDATE_UI, wxUpdateUIEventHandler(MountSshfsDlg::OnOKUpdateUI), NULL, this); if (SshfsHistory.GetCount() > 0) { HostnameCombo->SetSelection(0); // Now fake a selection event to get the index==0 host's user/remotedir data loaded wxCommandEvent event(wxEVT_COMMAND_COMBOBOX_SELECTED, XRCID("HostnameCombo")); GetEventHandler()->ProcessEvent(event); } return true; } void MountSshfsDlg::OnSelectionChanged(wxCommandEvent& event) { if (event.GetId() != XRCID("HostnameCombo")) return; // We only care about this id, but have to catch them all here to prevent MountPartitionDialog catching and crashing int index = HostnameCombo->GetSelection(); if (index == wxNOT_FOUND) return; // Fill the user/remotedir combos, but only with the data previously used for this hostname UserCombo->Clear(); RemotedirCombo->Clear(); wxString hostname = HostnameCombo->GetStringSelection(); int firstfound = -1; for (size_t n=0; n < SshfsHistory.GetCount() && n < MAX_COMMAND_HISTORY; ++n) { SshfsNetworkStruct* sstruct = SshfsHistory.Item(n); if (sstruct->hostname == hostname) { if (UserCombo->FindString(sstruct->user) == wxNOT_FOUND) UserCombo->Append(sstruct->user); if (RemotedirCombo->FindString(sstruct->remotedir) == wxNOT_FOUND) RemotedirCombo->Append(sstruct->remotedir); if (firstfound == -1) // We need to cache the first-found index-item so we can use it to get the correct data below firstfound = n; } } if (UserCombo->GetCount() > 0) UserCombo->SetSelection(0); if (RemotedirCombo->GetCount() > 0) RemotedirCombo->SetSelection(0); if (!SshfsHistory[index]->localmtpt.empty()) // If there's data for this item, overwrite the current textctrl's contents. Otherwise don't clobber with "" MountptCombo->SetValue(SshfsHistory[firstfound]->localmtpt); Idmap->SetValue(SshfsHistory[firstfound]->idmap); Readonly->SetValue(SshfsHistory[firstfound]->readonly); OtherOptions->ChangeValue(SshfsHistory[firstfound]->otheroptions); } void MountSshfsDlg::OnOKUpdateUI(wxUpdateUIEvent& event) { event.Enable(!HostnameCombo->GetValue().empty() && !MountptCombo->GetValue().empty()); } void MountSshfsDlg::OnOK(wxCommandEvent& event) { SshfsNetworkStruct* newitem = new SshfsNetworkStruct(UserCombo->GetValue(), HostnameCombo->GetValue(), RemotedirCombo->GetValue(), MountptCombo->GetValue(), Idmap->IsChecked(), Readonly->IsChecked(), OtherOptions->GetValue()); for (size_t n=0; n < SshfsHistory.GetCount(); ++n) if (SshfsHistory[n]->IsEqualTo(newitem)) { SshfsHistory.RemoveAt(n); break; } // Remove any identical item SshfsHistory.Insert(newitem, 0); // Either way, prepend the new item wxConfigBase* config = wxConfigBase::Get(); config->DeleteGroup(wxT("/History/SshfsHistory")); config->SetPath(wxT("/History/SshfsHistory/")); long count = wxMin(SshfsHistory.GetCount(), 26); config->Write(wxT("itemcount"), count); wxString key; for (int n=0; n < count; ++n) { key.Printf(wxT("%c/"), wxT('a') + (wxChar)n); SshfsNetworkStruct* history = SshfsHistory[n]; config->Write(key + wxT("User"), history->user); config->Write(key + wxT("Hostname"), history->hostname); config->Write(key + wxT("Remotedir"), history->remotedir); config->Write(key + wxT("Mountpt"), history->localmtpt); config->Write(key + wxT("idmap"), history->idmap); config->Write(key + wxT("readonly"), history->readonly); config->Write(key + wxT("OtherOptions"), history->otheroptions); } config->SetPath(wxT("/")); event.Skip(); // Needed to save the 'global' mountptcombo history (though we already saved the sshfs-specific stuff above) } bool MountSambaDialog::Init() { IPCombo = (wxComboBox*)FindWindow(wxT("IPCombo")); HostnameCombo = (wxComboBox*)FindWindow(wxT("HostnameCombo")); SharesCombo = (wxComboBox*)FindWindow(wxT("SharesCombo")); MountptCombo = (wxComboBox*)FindWindow(wxT("MountptCombo")); if (!MountptCombo) return false; // This is new in 4.0, so protect against a stale rc/ AlreadyMounted = (wxStaticText*)FindWindow(wxT("AlreadyMounted")); AlreadyMounted->Hide(); RwRadio = (wxRadioBox*)FindWindow(wxT("RwRadio")); Username = (wxTextCtrl*)FindWindow(wxT("Username")); Password = (wxTextCtrl*)FindWindow(wxT("Password")); historypath = wxT("/History/MountSamba/"); LoadMountptHistory(); GetFstabShares(); if (!FindData() && (NetworkArray.GetCount() == 0)) return false; // Fill the array with data. If none, abort unless some came from /etc/fstab for (size_t n=0; n < NetworkArray.GetCount(); ++n) { IPCombo->Append(NetworkArray.Item(n)->ip); HostnameCombo->Append(NetworkArray.Item(n)->hostname); } #if (defined(__WXGTK20__) || defined(__WXX11__)) if (NetworkArray.GetCount()) IPCombo->SetSelection(0); // Need actually to set the textbox in >2.7.0.1 if (NetworkArray.GetCount()) HostnameCombo->SetSelection(0); #endif if (NetworkArray.GetCount()) LoadSharesForThisServer(0); // If there were any servers found, load the shares for the 1st of them return true; } void MountSambaDialog::LoadSharesForThisServer(int sel) // Fill the relevant combo with available shares for the displayed server { if (sel == -1) return; // If no currently selected hostname, abort if (sel > (int)(NetworkArray.GetCount()-1)) return; // Shouldn't happen, of course struct NetworkStruct* ss = NetworkArray.Item(sel); SharesCombo->Clear(); SharesCombo->SetValue(wxEmptyString); for (size_t c=0; c < ss->shares.GetCount(); ++c) // We have the server. Load its shares into the combo SharesCombo->Append(ss->shares[c]); #if (defined(__WXGTK20__) || defined(__WXX11__)) if (SharesCombo->GetCount()) SharesCombo->SetSelection(0); #endif if (!ss->user.empty()) Username->ChangeValue(ss->user); // If we have user/pass/ro info for this item, set it (but don't clobber unnecessarily) if (!ss->passwd.empty()) Password->ChangeValue(ss->passwd); RwRadio->SetSelection(ss->readonly); GetMountptForShare(); // Finally display any relevant mountpt } void MountSambaDialog::GetMountptForShare() // Enter into MountptTxt any known mountpoint for the selection in SharesCombo { wxString device1, device2; wxString share = SharesCombo->GetValue(); if (share.IsEmpty()) // If no currently selected share, abort { InFstab = IsMounted = false; FstabMt.Empty(); AtMountPt.Empty(); AlreadyMounted->Hide(); return; } device1.Printf(wxT("//%s/%s"), HostnameCombo->GetValue().c_str(), share.c_str()); // Construct a 'device' name to search for. \\hostname\share device2.Printf(wxT("//%s/%s"), IPCombo->GetValue().c_str(), share.c_str()); // & another with eg \\192.168.0.1\share struct fstab* fs = DeviceAndMountManager::ReadFstab(device1); if (fs == NULL) fs = DeviceAndMountManager::ReadFstab(device2); // Null means not found so try again with the IP version InFstab = (fs != NULL); // Store or null the data according to the result FstabMt = (InFstab ? wxString(fs->fs_file, wxConvUTF8) : wxT("")); struct mntent* mnt = DeviceAndMountManager::ReadMtab(device1); // Now read mtab to see if the share's already mounted if (mnt == NULL) mnt = DeviceAndMountManager::ReadMtab(device2); // Null means not found, so try again with the IP version IsMounted = (mnt != NULL); AlreadyMounted->Show(IsMounted); GetSizer()->Layout(); // If it is mounted, expose the wxStaticTxt that says so (and Layout, else 2.8.0 displays it in top left corner!) AtMountPt = (IsMounted ? wxString(mnt->mnt_dir, wxConvUTF8) : wxT("")); // Store any mountpt, or delete any previous entry if (IsMounted) MountptCombo->SetValue(AtMountPt); else if (InFstab) MountptCombo->SetValue(FstabMt); } size_t IsPlausibleIPaddress(wxString& str) { if (str.IsEmpty()) return false; // Start with 2 quick checks. If the string is empty, if (!wxIsxdigit(str.GetChar(0))) return false; // or if the 1st char isn't a hex number, abort if (str.find(wxT(':')) == wxString::npos) // If there isn't a ':', it can't be IPv6 { wxStringTokenizer tkn(str, wxT("."), wxTOKEN_STRTOK); if (tkn.CountTokens() !=4) return false; // If it's IPv4 there should be 4 tokens for (int c=0; c < 4; ++c) { unsigned long val; if ((tkn.GetNextToken()).ToULong(&val) == false || val > 255) // If each token isn't a number < 256, abort return false; } return 4; // If we've here, it's a valid IPv4 address. Return 4 to signify this } wxStringTokenizer tkn(str, wxT(":"), wxTOKEN_STRTOK); size_t count = tkn.CountTokens(); if (count == 0 || count > 8) return false; // If it's IPv6 we can't be sure of the token no as :::::::1 is valid, but there must be 1, and < 9 for (size_t c=0; c < count; ++c) { unsigned long val; wxString next = tkn.GetNextToken(); if (next.IsEmpty()) { if (c == (count-1)) return false; } // If the token is empty, abort if it's the last one else if (next.ToULong(&val,16) == false || val > 255) // If each token isn't a number < 256, abort return false; } return 8; // If we've here, it's a valid IPv6 address. Return 8 to signify this } bool MountSambaDialog::GetSharesForServer(wxArrayString& array, wxString& hostname, bool findprinters/*=false*/) // Return hostname's available shares { wxString diskorprinter = (findprinters ? wxT("Printer") : wxT("Disk")); // This determines which sort of line is recognised wxString smbclient; // Check that we have a known smbclient file if (Configure::TestExistence(wxT("smbclient"), true)) smbclient = wxT("smbclient"); else { FileData fd(SMBPATH + wxT("smbclient")); // If it's not in PATH, see if it's in a known place if (fd.IsValid()) smbclient = SMBPATH + wxT("smbclient"); } if (smbclient.IsEmpty()) { wxMessageBox(_("I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\nAlternatively there may be a PATH or permissions problem")); return false; } wxArrayString output, errors; // Call smbclient to list the available Shares on this host if (wxExecute(smbclient + wxT(" -d0 -N -L ") + hostname, output, errors) != 0) return true; // Don't shout and scream here: this may be a stale nmb entry, with others succeeding. And return true, not false, else FindData() will abort for (size_t n=0; n < output.GetCount(); ++n) // The output is in 'output' { wxStringTokenizer tkn(output[n]); // Parse it to find lines that begin with an IP address wxString first = tkn.GetNextToken(); if (first.Right(1) == wxT("$")) continue; // If it ends in $, it's an admin thing eg ADMIN$, so ignore if (tkn.GetNextToken() == diskorprinter) // If the next token is Disk (or Printer if we're looking for printers), it's a valid share array.Add(first); // so add the name to array } return true; } bool MountSambaDialog::FindData() // Query the network to find samba servers, & each server to find available Shares { wxString nmblookuperrormsg = _("I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\nAlternatively there may be a PATH or permissions problem"); wxString nmblookup; // Check that we have a known nmblookup file if (Configure::TestExistence(wxT("nmblookup"), true)) nmblookup = wxT("nmblookup"); else { FileData fd(SMBPATH + wxT("nmblookup")); // If it's not in PATH, see if it's in a known place if (fd.IsValid()) nmblookup = fd.GetFilepath(); } if (nmblookup.IsEmpty()) { wxMessageBox(_("I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\nAlternatively there may be a PATH or permissions problem")); return false; } wxBusyInfo wait(_("Searching for samba shares...")); // We don't know what the local IP address is, so start by not specifying one. That seems to give only one result, but from that we can deduce where to look wxArrayString output, errors; wxString IPaddress, secondchance; if (wxExecute(nmblookup + wxT(" -d0 '*'"), output, errors) != 0) // -d0 means debug=0 { wxMessageBox(nmblookuperrormsg); return false; } if (!output.GetCount()) return true; // even though there's no data :/ for (size_t n=0; n < output.GetCount(); ++n) // The output from nmblookup is in 'output' { wxStringTokenizer tkn(output[n]); // Parse it to find lines that begin with an IP address wxString addr = tkn.GetNextToken(); if (IsPlausibleIPaddress(addr)) { IPaddress = addr.BeforeLast(wxT('.')) + wxT(".0"); break; } // Found a valid address. Deduce the base e.g. 192.168.0.3 -> 192.168.0.0 // If that string isn't the right answer, it may contain ' 127.255.255.255' or ' 192.168.0.255' // This is all we'll get if there's not a local samba server, so grab the latter wxString retry = output[n].AfterLast(wxT(' ')); if ((retry != wxT("127.255.255.255")) && IsPlausibleIPaddress(retry)) secondchance = retry.BeforeLast(wxT('.')) + wxT(".0"); } if (IPaddress.empty()) IPaddress = secondchance; if (IPaddress.empty()) { wxString msg(_("I can't find an active samba server.\nIf you know of one, please tell me its address e.g. 192.168.0.3")); IPaddress = wxGetTextFromUser(msg, _("No server found")); if (IPaddress.empty()) return false; } output.Clear(); errors.Clear(); // Now try again, using the base IP address. That should query other boxes too if (wxExecute(nmblookup + wxT(" -d0 -B ") + IPaddress + wxT(" '*'"), output, errors) != 0) { wxMessageBox(nmblookuperrormsg); return false; } wxArrayString IPList; for (size_t n=0; n < output.GetCount(); ++n) // Parse the resulting output { wxStringTokenizer tkn(output[n]); wxString addr = tkn.GetNextToken(); if (IsPlausibleIPaddress(addr)) IPList.Add(addr); } // We should now have a list of >0 IP addresses e.g. 192.168.0.2, 192.168.0.3. We need to query each to find its share(s) for (size_t i=0; i < IPList.GetCount(); ++i) { wxString addr = IPList.Item(i); output.Clear(); errors.Clear(); if (wxExecute(nmblookup + wxT(" -d0 -A ") + addr, output, errors) != 0) { wxMessageBox(nmblookuperrormsg); return false; } for (size_t n=0; n < output.GetCount(); ++n) { wxStringTokenizer tkn(output[n]); wxString hostname = tkn.GetNextToken(); hostname.Trim(false); wxString second = tkn.GetNextToken(); second.Trim(false); if (second != wxT("<00>")) continue; // We're looking for lines that (trimmed) look like "hostname<00> ..." struct NetworkStruct* ss = new struct NetworkStruct; ss->ip = addr; ss->hostname = hostname; if (!GetSharesForServer(ss->shares, ss->hostname)) return false; // False means smbclient doesn't work, not just that there are no available shares NetworkArray.Add(ss); break; } } return true; } void MountSambaDialog::GetFstabShares() { ArrayofPartitionStructs PartitionArray; wxString types(wxT("smbfs,cifs")); size_t count = MyFrame::mainframe->Layout->m_notebook->DeviceMan->DeviceAndMountManager::ReadFstab(PartitionArray, types); for (size_t n=0; n < count; ++n) { // The 'partition' may be //netbiosname/share or //192.168.0.1/share if ((PartitionArray.Item(n)->device.Left(2) != wxT("//")) || (PartitionArray.Item(n)->device.Mid(2).Find(wxT('/')) == wxNOT_FOUND)) continue; wxString hostname = PartitionArray.Item(n)->device.Mid(2).BeforeLast(wxT('/')); wxString share = PartitionArray.Item(n)->device.Mid(2).AfterLast(wxT('/')); struct NetworkStruct* ss = new struct NetworkStruct; if (IsPlausibleIPaddress(hostname)) ss->ip = hostname; else ss->hostname = hostname; ss->shares.Add(share); ss->mountpt = PartitionArray.Item(n)->mountpt; wxArrayString optsarray = wxStringTokenize(PartitionArray.Item(n)->uuid, // Options were put here, for want of a better field wxT(","),wxTOKEN_STRTOK); for (size_t op=0; op < optsarray.GetCount(); ++op) { wxString opt = optsarray.Item(op).Trim().Trim(false); if (opt == wxT("ro")) { ss->readonly = true; continue; } if (opt == wxT("rw")) { ss->readonly = false; continue; } // This is the default anyway wxString rest; if (opt.StartsWith(wxT("user="), &rest) || opt.StartsWith(wxT("username="), &rest)) { ss->user = rest; continue; } if (opt.StartsWith(wxT("pass="), &rest) || opt.StartsWith(wxT("password="), &rest)) { ss->passwd = rest; continue; } } NetworkArray.Add(ss); } } void MountSambaDialog::OnSelectionChanged(wxCommandEvent& event) { int id = event.GetId(); if (id == XRCID("SharesCombo")) { GetMountptForShare(); return; } // If it's the Shares combo, enter any known mountpoint // If it's one of the Server combos, set the other one to the same selection if (id == XRCID("IPCombo")) { HostnameCombo->SetSelection(IPCombo->GetSelection()); LoadSharesForThisServer(IPCombo->GetSelection()); // Then load that selection's shares } if (id == XRCID("HostnameCombo")) { IPCombo->SetSelection(HostnameCombo->GetSelection()); LoadSharesForThisServer(HostnameCombo->GetSelection()); } } void MountSambaDialog::OnUpdateUI(wxUpdateUIEvent& event) { // NB The event here is from Username ctrl. We have to use a textctrl UI event as, at least in wxGTK2.4.2, wxRadioBox doesn't generate them! bool enabled = !((wxRadioBox*)FindWindow(wxT("PwRadio")))->GetSelection(); Username->Enable(enabled); ((wxStaticText*)FindWindow(wxT("UsernameStatic")))->Enable(enabled); Password->Enable(enabled); ((wxStaticText*)FindWindow(wxT("PasswordStatic")))->Enable(enabled); } BEGIN_EVENT_TABLE(MountSambaDialog,MountPartitionDialog) EVT_COMBOBOX(-1, MountSambaDialog::OnSelectionChanged) EVT_UPDATE_UI(XRCID("Username"), MountSambaDialog::OnUpdateUI) END_EVENT_TABLE() bool MountNFSDialog::Init() { IPCombo = (wxComboBox*)FindWindow(wxT("IPCombo")); SharesCombo = (wxComboBox*)FindWindow(wxT("SharesCombo")); MountptCombo = (wxComboBox*)FindWindow(wxT("MountptCombo")); if (!MountptCombo) return false; // This is new in 4.0, so protect against a stale rc/ RwRadio = (wxRadioBox*)FindWindow(wxT("RwRadio")); MounttypeRadio = (wxRadioBox*)FindWindow(wxT("MounttypeRadio")); AlreadyMounted = (wxStaticText*)FindWindow(wxT("AlreadyMounted")); AlreadyMounted->Hide(); historypath = wxT("/History/MountNFS/"); LoadMountptHistory(); #ifndef __GNU_HURD__ // There's no showmount or equivalent in hurd atm, so the user has to enter hosts by hand while (SHOWMOUNTFPATH.IsEmpty() || !Configure::TestExistence(SHOWMOUNTFPATH)) { // Test again: the user might not yet have had nfs installed when 4Pane first looked if (Configure::TestExistence(wxT("/usr/sbin/showmount"))) { SHOWMOUNTFPATH = wxT("/usr/sbin/showmount"); wxConfigBase::Get()->Write(wxT("/Network/ShowmountFilepath"), SHOWMOUNTFPATH); break; } if (Configure::TestExistence(wxT("/sbin/showmount"))) { SHOWMOUNTFPATH = wxT("/sbin/showmount"); wxConfigBase::Get()->Write(wxT("/Network/ShowmountFilepath"), SHOWMOUNTFPATH); break; } wxMessageBox(_("I'm afraid I can't find the showmount utility. Please use Configure > Network to enter its filepath")); return false; } #endif return FindData(); // Fill the array with data } void MountNFSDialog::LoadExportsForThisServer(int sel) // Fill the relevant combo with available exports for the displayed server { if (sel == -1) return; // If no currently selected server, abort if (sel > (int)(NetworkArray.GetCount()-1)) return; // Shouldn't happen, of course struct NetworkStruct* ns = NetworkArray.Item(sel); SharesCombo->Clear(); SharesCombo->SetValue(wxEmptyString); // Clear data from previous servers wxArrayString exportsarray; GetExportsForServer(exportsarray, ns->ip); // Find the exports for this server for (size_t c=0; c < exportsarray.GetCount(); ++c) // Load them into the combo SharesCombo->Append(exportsarray[c]); #if (defined(__WXGTK20__) || defined(__WXX11__)) if (SharesCombo->GetCount()) SharesCombo->SetSelection(0); #endif RwRadio->SetSelection(ns->readonly); // If this item was extracted from /etc/fstab, there'll be valid data here if (ns->texture == wxT("hard")) MounttypeRadio->SetSelection(0); else if (ns->texture == wxT("soft")) MounttypeRadio->SetSelection(1); // If neither is specified, don't make any change GetMountptForShare(); // Finally display any relevant mountpt } void MountNFSDialog::GetMountptForShare() // Enter into MountptCombo any known mountpoint for the selection in SharesCombo { wxString share; if (SharesCombo->GetCount()) // Check first, as GTK-2.4.2 Asserts if we try to find a non-existent selection share = SharesCombo->GetValue(); if (share.IsEmpty()) // If no currently selected share, abort { InFstab = IsMounted = false; FstabMt.Empty(); AtMountPt.Empty(); AlreadyMounted->Hide(); return; } wxString device = IPCombo->GetValue() + wxT(':') + share; // Construct a 'device' name to search for eg 192.168.0.1:/exportdir struct fstab* fs = DeviceAndMountManager::ReadFstab(device); if (!fs) // Work around the usual terminal '/' issue { if (device.Right(1) == wxFILE_SEP_PATH) device = device.BeforeLast(wxFILE_SEP_PATH); else device << wxFILE_SEP_PATH; fs = DeviceAndMountManager::ReadFstab(device); } InFstab = (fs != NULL); // Store or null the data according to the result FstabMt = (InFstab ? wxString(fs->fs_file, wxConvUTF8) : wxT("")); mntent* mnt = DeviceAndMountManager::ReadMtab(device); // Now read mtab to see if the share's already mounted IsMounted = (mnt != NULL); AlreadyMounted->Show(IsMounted); GetSizer()->Layout(); // If it is mounted, expose the wxStaticTxt that says so (and Layout, else 2.8.0 displays it in top left corner!) AtMountPt = (IsMounted ? wxString(mnt->mnt_dir, wxConvUTF8) : wxT("")); // Store any mountpt, or delete any previous entry if (IsMounted) MountptCombo->SetValue(AtMountPt); else if (InFstab) MountptCombo->SetValue(FstabMt); } bool MountNFSDialog::GetExportsForServer(wxArrayString& exportsarray, wxString& server) // Return server's available exports { #ifdef __GNU_HURD__ return false; // There's no showmount or equivalent in hurd atm #endif if (SHOWMOUNTFPATH.IsEmpty()) { wxMessageBox(_("I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\nAlternatively there may be a PATH or permissions problem")); return false; } wxArrayString output, errors; // Call showmount to list the available Shares on this host wxExecute(SHOWMOUNTFPATH + wxT(" --no-headers -e ") + server, output, errors); for (size_t n=0; n < output.GetCount(); ++n) // The output is in 'output' { wxStringTokenizer tkn(output[n]); // Parse each entry to find the first token, which is the exportable dir wxString first = tkn.GetNextToken(); // (the rest is a list of permitted clients, & as we don't know who WE are . . . if (first.IsEmpty()) continue; exportsarray.Add(first); } return true; // with the exports list in exportsarray } bool MountNFSDialog::FindData() // Query the network to find NFS servers, & each server to find available Exports { wxString ip; #ifndef __GNU_HURD__ // which doesn't have showmount atm wxArrayString output, errors; ClearNetworkArray(); GetFstabShares(); wxExecute(SHOWMOUNTFPATH + wxT(" --no-headers"), output, errors); // See if there're any other ip addresses already known to NFS for (size_t n=0; n < output.GetCount(); ++n) // The output from showmount is in 'output' { wxStringTokenizer tkn(output[n]); // Parse it to find lines that begin with an IP address wxString first = tkn.GetNextToken(); if (!IsPlausibleIPaddress(first)) continue; if (NFS_SERVERS.Index(first) == wxNOT_FOUND) NFS_SERVERS.Add(first); } wxExecute(SHOWMOUNTFPATH + wxT(" --no-headers 127.0.0.1"), output, errors); for (size_t n=0; n < output.GetCount(); ++n) { wxStringTokenizer tkn(output[n]); wxString first = tkn.GetNextToken(); if (!IsPlausibleIPaddress(first)) continue; if (NFS_SERVERS.Index(first) == wxNOT_FOUND) NFS_SERVERS.Add(first); } if (!NFS_SERVERS.GetCount()) // If there weren't any answers, ask for advice if (wxMessageBox(_("I don't know of any NFS servers on your network.\nDo you want to continue, and write some in yourself?"), _("No current mounts found"), wxYES_NO) != wxYES) return false; #endif for (size_t n=0; n < NFS_SERVERS.GetCount(); ++n) // Add each server name to the structarray { bool flag(false); for (size_t a=0; a < NetworkArray.GetCount(); ++a) // but first check it wasn't already added in GetFstabShares() if (NetworkArray.Item(a)->ip == NFS_SERVERS[n]) { flag = true; break; } if (!flag) { struct NetworkStruct* ss = new struct NetworkStruct; ss->ip = NFS_SERVERS[n]; NetworkArray.Add(ss); } } IPCombo->Clear(); for (size_t n=0; n < NetworkArray.GetCount(); ++n) IPCombo->Append(NetworkArray.Item(n)->ip); if (NetworkArray.GetCount()) { #if (defined(__WXGTK20__) || defined(__WXX11__)) IPCombo->SetSelection(0); // Need actually to set the textbox in >2.7.0.1 #endif LoadExportsForThisServer(0); // If there were any servers found, load the exports for the 1st of them } return true; } void MountNFSDialog::GetFstabShares() { ArrayofPartitionStructs PartitionArray; wxString types(wxT("nfs,nfs4")); size_t count = MyFrame::mainframe->Layout->m_notebook->DeviceMan->DeviceAndMountManager::ReadFstab(PartitionArray, types); for (size_t n=0; n < count; ++n) { wxString ip = PartitionArray.Item(n)->device.BeforeFirst(wxT(':')); // if (!IsPlausibleIPaddress(ip)) continue; Don't check for plausibility here, to cater for using hostnames instead wxString expt = PartitionArray.Item(n)->device.AfterFirst(wxT(':')); if (expt.empty()) continue; if (NFS_SERVERS.Index(ip) == wxNOT_FOUND) NFS_SERVERS.Add(ip); // If this address isn't already in the array, add it struct NetworkStruct* ss = new struct NetworkStruct; ss->ip = ip; ss->shares.Add(expt); ss->mountpt = PartitionArray.Item(n)->mountpt; // Add these, but they'll probably be overwritten by LoadExportsForThisServer() wxArrayString optsarray = wxStringTokenize(PartitionArray.Item(n)->uuid, // Options were put here, for want of a better field wxT(","),wxTOKEN_STRTOK); for (size_t op=0; op < optsarray.GetCount(); ++op) // Process any we care about { wxString opt = optsarray.Item(op).Trim().Trim(false); if (opt == wxT("ro")) { ss->readonly = true; continue; } if (opt == wxT("rw")) { ss->readonly = false; continue; } // This is the default anyway if ((opt == wxT("soft")) || (opt == wxT("hard"))) { ss->texture = opt; continue; } } NetworkArray.Add(ss); } if (count) SaveIPAddresses(); } void MountNFSDialog::OnAddServerButton(wxCommandEvent& WXUNUSED(event)) // Manually add another server to ipcombo { wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("AddNFSServerDlg")); if (dlg.ShowModal() != wxID_OK) return; wxString newserver = ((wxTextCtrl*)dlg.FindWindow(wxT("NewServer")))->GetValue(); if (!IsPlausibleIPaddress(newserver)) return; if (NFS_SERVERS.Index(newserver) != wxNOT_FOUND) return; // Check it's not a duplicate NFS_SERVERS.Add(newserver); // Add it to the servers array, struct array & combo. Select it struct NetworkStruct* ss = new struct NetworkStruct; ss->ip = newserver; NetworkArray.Add(ss); #ifdef __GNU_HURD__ // There's no showmount or equivalent in hurd atm #else FindData(); // We've got a new potential server, so call FindData() again to see if it's connected #endif if (((wxCheckBox*)dlg.FindWindow(wxT("Save")))->IsChecked()) SaveIPAddresses(); } void MountNFSDialog::SaveIPAddresses() const { wxConfigBase *config = wxConfigBase::Get(); wxString key(wxT("/Network/IPAddresses/")); config->DeleteGroup(key); size_t count = NFS_SERVERS.GetCount(); // Find how many entries there now are config->Write(key+wxT("Count"), (long)count); for (size_t n=0; n < count; ++n) config->Write(key + CreateSubgroupName(count-1, count), NFS_SERVERS.Item(n)); config->Flush(); } void MountNFSDialog::OnSelectionChanged(wxCommandEvent& WXUNUSED(event)) { static bool flag=0; if (flag) return; // Avoid a 2.4.2 problem here with re-entrancy: flag = 1; // Multiple selection events occur from the combobox if the L mouse button is held down while selecting LoadExportsForThisServer(IPCombo->GetSelection()); // Load the new selection's exports flag = 0; } BEGIN_EVENT_TABLE(MountNFSDialog,MountPartitionDialog) EVT_BUTTON(XRCID("AddServer"), MountNFSDialog::OnAddServerButton) EVT_COMBOBOX(XRCID("IPCombo"), MountNFSDialog::OnSelectionChanged) EVT_COMBOBOX(XRCID("SharesCombo"), MountNFSDialog::OnGetMountptForShare) END_EVENT_TABLE() void UnMountPartitionDialog::Init(DeviceAndMountManager* dad) { parent = dad; PartitionsCombo = (wxComboBox*)FindWindow(wxT("PartitionsCombo")); FstabMountptTxt = (wxTextCtrl*)FindWindow(wxT("FstabMountptTxt")); // Find the textctrl #ifdef __GNU_HURD__ parent->FillGnuHurdMountsList(*parent->PartitionArray); #endif for (size_t n=0; n < parent->PartitionArray->GetCount(); ++n) { PartitionStruct* pstruct = parent->PartitionArray->Item(n); if (pstruct->IsMounted && !pstruct->mountpt.IsEmpty() // Ignore unmounted partitions && !(pstruct->mountpt == wxT("/"))) // Filter out root too; we don't want to be umounted ourselves { wxString devicestr(pstruct->device); if (!pstruct->label.empty()) devicestr << " " << pstruct->label; else if (!pstruct->uuid.empty()) { wxString UUID(pstruct->uuid); if (UUID.Len() > 16) UUID = pstruct->uuid.BeforeFirst('-') + "..." + pstruct->uuid.AfterLast('-'); // Truncate display of standard UUIDs devicestr << " " << UUID; } PartitionsCombo->Append(devicestr); } } #if (defined(__WXGTK20__) || defined(__WXX11__)) if (PartitionsCombo->GetCount()) PartitionsCombo->SetSelection(0); #endif #if (defined(__LINUX__)) DisplayMountptForPartition(true); // Show mountpt. True means use the actual mtpt, not the fstab suggestion #else DisplayMountptForPartition(false); // We just looked for the mount-point, so don't search for it again #endif } size_t UnMountSambaDialog::Init() { SearchForNetworkMounts(); PartitionsCombo = (wxComboBox*)FindWindow(wxT("PartitionsCombo")); FstabMountptTxt = (wxTextCtrl*)FindWindow(wxT("FstabMountptTxt")); // Find the textctrl for (size_t n=0; n < Mntarray.GetCount(); ++n) { PartitionStruct* mntstruct = Mntarray.Item(n); // PartitionStruct is here a misnomer PartitionsCombo->Append(mntstruct->device); // Append this share's name to the combobox } #if (defined(__WXGTK20__) || defined(__WXX11__)) if (PartitionsCombo->GetCount()) PartitionsCombo->SetSelection(0); #endif DisplayMountptForShare(); // Show corresponding mountpt return Mntarray.GetCount(); } void UnMountSambaDialog::SearchForNetworkMounts() // Scans mtab for established NFS & samba mounts { FILE* fmp = setmntent (_PATH_MOUNTED, "r"); // Get a file* to (probably) /etc/mtab if (fmp==NULL) return; while (1) // For every mtab entry { struct mntent* mnt = getmntent(fmp); // get a struct representing a mounted partition if (mnt == NULL) { endmntent(fmp); return; } // If it's null, we've finished mtab wxString type(mnt->mnt_type, wxConvUTF8); if (ParseNetworkFstype(type) != MT_invalid) { struct PartitionStruct* newmnt = new struct PartitionStruct; newmnt->device = wxString(mnt->mnt_fsname, wxConvUTF8); newmnt->mountpt = wxString(mnt->mnt_dir, wxConvUTF8); newmnt->type = type; Mntarray.Add(newmnt); } } } UnMountSambaDialog::MtType UnMountSambaDialog::ParseNetworkFstype(const wxString& type) const // Is this a mount that we're interested in: nfs, sshfs or samba { if (type == wxT("nfs") || (type.Left(3) == wxT("nfs") && wxIsdigit(type.GetChar(3)))) // If its type is "nfs" or "nfs4" (note we don't want the mountpt for nfsd) return MT_nfs; if (type.Contains(wxT("sshfs"))) return MT_sshfs; if (type == wxT("smbfs") || type == wxT("cifs")) return MT_samba; return MT_invalid; } void UnMountSambaDialog::DisplayMountptForShare() // Show mountpt corresponding to a share or export or sshfs mount { int sel = PartitionsCombo->GetSelection(); if (sel == -1) return; // Get the currently selected share/export. Abort if none if (sel > (int)(Mntarray.GetCount()-1)) return; // Shouldn't happen, of course FstabMountptTxt->Clear(); FstabMountptTxt->ChangeValue(Mntarray.Item(sel)->mountpt); // We have the correct struct, so shove its mountpt into the textctrl m_Mounttype = ParseNetworkFstype(Mntarray.Item(sel)->type); // Store which type of network mount for use when dismounting } BEGIN_EVENT_TABLE(UnMountSambaDialog,MountPartitionDialog) EVT_COMBOBOX(-1, UnMountSambaDialog::OnSelectionChanged) END_EVENT_TABLE() ./4pane-6.0/Bookmarks.h0000644000175000017500000002127113205575137013577 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Bookmarks.h // Purpose: Bookmarks // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef BOOKMARKSH #define BOOKMARKSH #include "MyTreeCtrl.h" enum { TreeCtrlIcon_Folder, TreeCtrlIcon_BM, TreeCtrlIcon_Sep }; // Used by MyBmTree struct Submenu; struct BookmarkStruct; // Advance declaration for: WX_DEFINE_ARRAY(struct Submenu*, ArrayOfSubmenus); // Define the array of structs WX_DEFINE_ARRAY(struct BookmarkStruct*, ArrayOfBookmarkStructs); // Define array of BookmarkStructs struct BookmarkStruct { wxString Path; // Exactly wxString Label; // Each bookmark's label eg /home/david/documents could be called Documents. These are what the menu displays unsigned int ID; // This bookmark's event.Id BookmarkStruct(){ Clear(); } BookmarkStruct(const BookmarkStruct& bm){ *this = bm; } BookmarkStruct& operator=(const BookmarkStruct& bs){ Path = bs.Path; Label = bs.Label; ID = bs.ID; return *this; } void Clear(){ Path.Clear(); Label.Clear(); ID = 0; } }; struct Submenu { wxString pathname; // Holds the (sub)menu "path" eg /Bookmarks/b/a. Used to store in config-file, which loads/stores alphabetically, so won't keep the same order if we use Label wxString Label; // The name that the outside world will label the menu/folder eg Projects. See above comment wxString FullLabel; // The "Path" of the menu/folder eg /Bookmarks/Programming/Projects. Needed for AddBookmark unsigned int ID; // Makes it easier to identify a submenu in a BMTree wxString displayorder; // Allows the menu to hold the user's choice of bookmark/subgroup order wxMenu* thismenu; // The menu that this struct's bookmarks will be displayed in. This struct's children will append their menus to this ArrayOfBookmarkStructs BMstruct; // Holds the path, label & id of each of this menu's bookmarks ArrayOfSubmenus children; // Child subgroups go here Submenu(){ ClearData(); } ~Submenu(){ ClearData(); } Submenu(const Submenu& sm){ *this = sm; } Submenu& operator=(const Submenu& sm){ pathname = sm.pathname; Label = sm.Label; FullLabel = sm.FullLabel; ID = sm.ID; displayorder = sm.displayorder; // Don't copy the menu: it'll leak for (size_t n=0; n < sm.BMstruct.GetCount(); ++n) BMstruct.Add(new BookmarkStruct(*sm.BMstruct.Item(n))); for (size_t n=0; n < sm.children.GetCount(); ++n) children.Add(new Submenu(*sm.children.Item(n))); return *this; } void ClearData(); // Deletes everything }; class MyTreeItemData : public wxTreeItemData { public: MyTreeItemData(){} MyTreeItemData(wxString Path, wxString Label, unsigned int ID) { data.Path = Path; data.Label = Label; data.ID = ID; } MyTreeItemData(const struct BookmarkStruct& param) { data = param; } MyTreeItemData& operator=(const MyTreeItemData& td) { data = td.data; return *this; } void Clear(){ data.Clear(); } wxString GetPath() { return data.Path; } wxString GetLabel() { return data.Label; } unsigned int GetID() { return data.ID; } void SetPath(wxString Path) { data.Path = Path; } void SetLabel(wxString Label) { data.Label = Label; } protected: struct BookmarkStruct data; }; class BMClipboard // Stores the TreeItemData & structs for pasting { public: BMClipboard(){} ~BMClipboard(){ Clear(); Menu.ClearData(); } void Clear() { data.Clear(); HasData = false; FolderHasChildren = false; for (int n = (int)BMarray.GetCount(); n > 0; --n ) { BookmarkStruct* item = BMarray.Item(n-1); delete item; BMarray.RemoveAt(n-1); } } MyTreeItemData data; struct Submenu Menu; ArrayOfBookmarkStructs BMarray; bool IsFolder; bool HasData; bool FolderHasChildren; }; class Bookmarks; class MyBookmarkDialog : public wxDialog { public: MyBookmarkDialog(Bookmarks* dad) : parent(dad){} protected: Bookmarks* parent; void OnButtonPressed(wxCommandEvent& event); void OnCut(wxCommandEvent& event); void OnPaste(wxCommandEvent& event); DECLARE_EVENT_TABLE() }; class MyBmTree : public wxTreeCtrl // Treectrl used in ManageBookmarks dialog. A much mutilated version of the treectrl sample { public: MyBmTree() {} virtual ~MyBmTree(){}; void Init(Bookmarks* dad); int FindItemIndex(wxTreeItemId itemID); // Returns where within its folder the item is to be found void LoadTree(struct Submenu& MenuStruct, bool LoadFoldersOnly = false); bool AddFolder(struct Submenu& SubMenu, wxTreeItemId parent, bool LoadFoldersOnly=false, int pos = -1); // Recursively loads tree with folders from SubMenu void RecreateTree(struct Submenu& MenuStruct); void DeleteBookmark(wxTreeItemId id); void OnBeginDrag(wxTreeEvent& event); void OnEndDrag(wxTreeEvent& event); protected: wxTreeItemId m_draggedItem; // item being dragged right now wxTreeItemId itemSrc; wxTreeItemId itemDst; wxTreeItemId itemParent; void OnCopy(); void OnCut(); void OnPaste(); void ShowContextMenu(wxContextMenuEvent& event); #ifdef __WXX11__ void OnRightUp(wxMouseEvent& event){ ShowContextMenu((wxContextMenuEvent&)event); } // EVT_CONTEXT_MENU doesn't seem to work in X11 #endif void OnMenuEvent(wxCommandEvent& event); void DoMenuUI(wxUpdateUIEvent& event); #if !defined(__WXGTK3__) void OnEraseBackground(wxEraseEvent& event); #endif void CreateAcceleratorTable(); Bookmarks* parent; private: DECLARE_DYNAMIC_CLASS(MyBmTree) DECLARE_EVENT_TABLE() }; class Bookmarks { public: Bookmarks(); ~Bookmarks(){ MenuStruct.ClearData(); } void LoadBookmarks(); void SaveBookmarks(); void AddBookmark(wxString& newpath); void OnChangeFolderButton(); void ManageBookmarks(); wxString RetrieveBookmark(unsigned int id); bool OnDeleteBookmark(wxTreeItemId item); void OnEditBookmark(); void OnNewSeparator(); void OnNewFolder(); void Move(wxTreeItemId itemSrc, wxTreeItemId itemDst); bool Cut(wxTreeItemId item); bool Paste(wxTreeItemId item, bool NoDupCheck=false, bool duplicating=false); bool Copy(wxTreeItemId item); static void SetMenuIndex(int index) { m_menuindex = index; } wxDialog* adddlg; // These 2 ptrs are used to access their dialogs from other methods MyBookmarkDialog* mydlg; BMClipboard bmclip; // Stores the TreeItemData & structs for pasting protected: wxConfigBase* config; MyBmTree* tree; // The treectrl used in ManageBookmarks bool m_altered; // Do we have anything to save? static int m_menuindex; // Passed to wxMenuBar::GetMenu so we can ID the menu without using its label unsigned int bookmarkID; // Actually it ID.s folders & separators too unsigned int GetNextID(){ if (bookmarkID == ID__LAST_BOOKMARK) bookmarkID=ID_FIRST_BOOKMARK; // Recycle return bookmarkID++; } // Return next vacant bookmarkID struct Submenu MenuStruct; // The top-level struct wxString LastSubmenuAddedto; // This is where the last add-bookmark occurred, so this is the current default for next time void SaveDefaultBookmarkDefault(); // Saves a stub of Bookmarks. Without, loading isn't right void LoadSubgroup(struct Submenu& SubMenuStruct); // Does the recursive loading void SaveSubgroup(struct Submenu& SubMenuStruct); // Does the recursive saving struct Submenu* FindSubmenuStruct(Submenu& SubMenu, wxString& folder); // This one uses recursion to match a submenu to the passed folder-name wxString FindPathForID(Submenu& SubMenu, unsigned int id); // & this to search each menu for a bookmark with the requested id void AdjustFolderID(struct Submenu& SubMenu); // Used for folder within clipboard. If we don't adjust IDs, they'll be duplication & crashes struct Submenu* FindBookmark(Submenu& SubMenu, unsigned int id, size_t& index); // Locates bmark id within SubMenu (or a child submenu) struct Submenu* FindSubmenu(Submenu& SubMenu, unsigned int id, size_t& index); // Locates child submenu id within SubMenu (or a child of SubMenu) void WhereToInsert(wxTreeItemId id, wxTreeItemId& folderID, Submenu** SubMenu, int& loc, int& pos, int& treepos, bool InsertingFolder, bool Duplicating=false); // Subfunction }; #endif // BOOKMARKSH ./4pane-6.0/Filetypes.h0000644000175000017500000004706113440442444013613 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Filetypes.h // Purpose: FileData class. Open/OpenWith. // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3. FileData class is wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef FILETYPESH #define FILETYPESH #include "wx/dir.h" #include "wx/toolbar.h" #include "wx/wx.h" #include "wx/config.h" #include "wx/longlong.h" #include #include #include #include #include "Externs.h" #include "ArchiveStream.h" class FileData : public DataBase // Does lstat, stores the data, has accessor methods etc etc. Base class is to allow DataBase* also to reference archivestream data { public: FileData(wxString Filename, bool defererence = false); // If dereference, use stat instead of lstat ~FileData(){ if (symlinkdestination != NULL) delete symlinkdestination; delete statstruct; } FileData& operator=(const FileData& fd) { result = fd.result; statstruct = fd.statstruct; Filepath = fd.Filepath; BrokenlinkName = fd.BrokenlinkName; symlinkdestination = fd.symlinkdestination; Type = fd.Type; IsFake = fd.IsFake; return *this; } bool IsValid(){ return result != -1; } wxString GetFilepath(){ return IsValid() ? Filepath : wxString(wxT("")); } wxString GetFilename(){ return IsValid() ? Filepath.AfterLast(wxFILE_SEP_PATH) : wxString(wxT("")); } wxString ReallyGetName(){ return !Filepath.AfterLast(wxFILE_SEP_PATH).empty() ? Filepath.AfterLast(wxFILE_SEP_PATH) : wxString(wxT("????????")); } wxString GetPath(); bool IsFileExecutable(); // See if the file is executable (by SOMEONE, not necessarily us) bool CanTHISUserRead(); bool CanTHISUserWrite(); bool CanTHISUserExecute(); bool CanTHISUserWriteExec(); bool CanTHISUserRename(); // See if the file's PARENT DIR has Write/Exec permissions for THIS USER (plus sticky-bit). NB assumes that the name change doesn't effectively move the file to a different device bool CanTHISUserRenameThusly(wxString& newname); // See above. Will this particular name work? bool CanTHISUserMove_By_RenamingThusly(wxString& newname); // Can we "Move" like this, by Renaming int CanTHISUserMove(); // Same as CanTHISUserRename(), plus do we have read permission for the file (so that it can be copied without a rename) bool CanTHISUserPotentiallyCopy(); // See if the file's PARENT DIR has Exec permissions for THIS USER bool CanTHISUserChmod(); // See if the file's permissions are changable by US bool CanTHISUserChown(uid_t newowner); // See if the file's owner is changeable by US bool CanTHISUserChangeGroup(gid_t newgroup); // See if the file's group is changeable by US uid_t OwnerID(){ return statstruct->st_uid; } // Owner ID gid_t GroupID(){ return statstruct->st_gid; } // Group ID wxString GetOwner(); // Returns owner's name as string wxString GetGroup(); // Returns group name as string time_t AccessTime(){ return statstruct->st_atime; } // Time last accessed time_t ModificationTime(){ return statstruct->st_mtime; } // Time last modified time_t ChangedTime(){ return statstruct->st_ctime; } // Time last Admin-changed static bool ModifyFileTimes(const wxString& fpath, const wxString& ComparisonFpath); // Sets the fpath's atime/mtime to that of ComparisonFpath bool ModifyFileTimes(const wxString& ComparisonFpath); // Ditto to set this particular FileData from another filepath bool ModifyFileTimes(time_t mt); // Ditto to set this particular FileData from a time_t wxULongLong Size(){ return statstruct->st_size; } // Size in bytes wxString GetParsedSize(); // Returns the size, but in bytes, KB or MB according to magnitude. (Uses global function) blksize_t GetBlocksize(){ return statstruct->st_blksize; } // Returns filesystem's blocksize blkcnt_t GetBlockNo(){ return statstruct->st_blocks; } // Returns no of allocated blocks for the file ino_t GetInodeNo(){ return statstruct->st_ino; } // Returns inode no dev_t GetDeviceID() { return statstruct->st_dev; } // Returns the device ie which disk/partition the file is on, as major*256 + minor format nlink_t GetHardLinkNo(){ return statstruct->st_nlink; } // Returns no of hard links bool IsRegularFile(){ if (! IsValid()) return false; return S_ISREG(statstruct->st_mode); } // Is Filepath a Regular File? bool IsDir(){ if (! IsValid()) return false; return S_ISDIR(statstruct->st_mode); } // Is Filepath a Dir? bool IsSymlink(){ if (! IsValid()) return false; return S_ISLNK(statstruct->st_mode); } // Is Filepath a Symlink? bool IsBrokenSymlink(); // Is Filepath a broken Symlink? bool IsCharDev(){ if (! IsValid()) return false; return S_ISCHR(statstruct->st_mode); } // Is Filepath a character device? bool IsBlkDev(){ if (! IsValid()) return false; return S_ISBLK(statstruct->st_mode); } // Is Filepath a block device? bool IsSocket(){ if (! IsValid()) return false; return S_ISSOCK(statstruct->st_mode); } // Is Filepath a Socket? bool IsFIFO(){ if (! IsValid()) return false; return S_ISFIFO(statstruct->st_mode); } // Is Filepath a FIFO? bool IsUserReadable(){ return !!(statstruct->st_mode & S_IRUSR); } // Permissions bool IsUserWriteable(){ return !!(statstruct->st_mode & S_IWUSR); } bool IsUserExecutable(){ return !!(statstruct->st_mode & S_IXUSR); } bool IsGroupReadable(){ return !!(statstruct->st_mode & S_IRGRP); } bool IsGroupWriteable(){ return !!(statstruct->st_mode & S_IWGRP); } bool IsGroupExecutable(){ return !!(statstruct->st_mode & S_IXGRP); } bool IsOtherReadable(){ return !!(statstruct->st_mode & S_IROTH); } bool IsOtherWriteable(){ return !!(statstruct->st_mode & S_IWOTH); } bool IsOtherExecutable(){ return !!(statstruct->st_mode & S_IXOTH); } bool IsSetuid(){ return !!(statstruct->st_mode & S_ISUID); } bool IsSetgid(){ return !!(statstruct->st_mode & S_ISGID); } bool IsSticky(){ return !!(statstruct->st_mode & S_ISVTX); } wxString PermissionsToText(); // Returns a string describing the filetype & permissions eg -rwxr--r-- size_t GetPermissions(){ return statstruct->st_mode & 07777; } // Returns Permissions in numerical form struct stat* GetStatstruct(){ return statstruct; } class FileData* GetSymlinkData(){ return symlinkdestination; } wxString GetSymlinkDestination(bool AllowRelative=false) { if (! GetSymlinkData()) return (BrokenlinkName.IsEmpty() ? GetFilepath() : BrokenlinkName); if (GetSymlinkData()->BrokenlinkName.IsEmpty() && ! GetSymlinkData()->GetFilepath().IsEmpty()) return (AllowRelative ? GetSymlinkData()->GetFilepath() : MakeAbsolute(GetSymlinkData()->GetFilepath(), GetPath())); else return GetSymlinkData()->BrokenlinkName; // If the symlink's broken, this is where the original target name is stored } wxString GetUltimateDestination(); // Returns the file at the end of a series of symlinks (or original filepath if not a link) static wxString GetUltimateDestination(const wxString& filepath); // Ditto for the passed filepath wxString MakeAbsolute(wxString fpath=wxEmptyString, wxString cwd=wxEmptyString); // Returns the absolute filepath version of the, presumably relative, given string, relative to cwd or the passed parameter bool IsSymlinktargetASymlink(); bool IsSymlinktargetADir(bool recursing = false); int DoChmod(mode_t newmode); // If appropriate, change the file's permissions to newmode int DoChangeOwner(uid_t newowner); // If appropriate, change the file's owner int DoChangeGroup(gid_t newgroup); // If appropriate, change the file's group wxString Filepath; wxString BrokenlinkName; // If the file is a symlink, & it's broken, the original target name is stored here protected: void SetType(); // Called in ctor to set DataBase::Type struct stat* statstruct; class FileData* symlinkdestination; // Another FileData instance if this one is a symlink int result; }; //-------------------------------------------------------------------------- extern bool SafelyCloneSymlink(const wxString& oldFP, const wxString& newFP, FileData& stat); // Encapsulates cloning a symlink even if broken //-------------------------------------------------------------------------- struct Fileype_Struct; struct FiletypeGroup; class FiletypeManager; // Forward declarations WX_DEFINE_ARRAY(struct Filetype_Struct*, ArrayOfFiletypeStructs); // Define the array of Filetype structs WX_DEFINE_ARRAY(struct FiletypeGroup*, ArrayOfFiletypeGroupStructs);// Define array of FiletypeGroup structs struct Filetype_Struct // Struct to hold the filetype data within OpenWith dialog { wxString AppName; // eg "kedit" wxString Ext; // eg "txt", the extension(s) to associate with an application wxString Filepath; // eg "/usr/local/bin/gs", the filepath as opposed to just the label wxString Command; // eg "kedit %s", the command-string to launch the application wxString WorkingDir; // Optional working dir to which to cd before launching the application Filetype_Struct& operator=(const Filetype_Struct& fs){ AppName = fs.AppName; Ext = fs.Ext; Filepath = fs.Filepath; Command = fs.Command; WorkingDir = fs.WorkingDir; return *this; } void DeDupExt(); void Clear(){ AppName.Clear(); Ext.Clear(); Filepath.Clear(); Command.Clear(); WorkingDir.Clear(); } }; struct FiletypeGroup // Struct to manage the data, including Filetype_Struct, during OpenWith dialog { ArrayOfFiletypeStructs FiletypeArray; // To hold structs, each with one application's data, belonging to this subgroup wxString Category; // eg Editors, or Graphics. Subgroup in config file ~FiletypeGroup(){ Clear(); } void Clear(){ for (int n = (int)FiletypeArray.GetCount(); n > 0; --n ) { Filetype_Struct* item = FiletypeArray.Item(n-1); delete item; FiletypeArray.RemoveAt(n-1); } Category.Clear(); } }; class MyMimeTreeItemData : public wxTreeItemData { public: MyMimeTreeItemData(wxString Label, unsigned int id, bool isapp, Filetype_Struct* ftstruct=NULL) { Name = Label; ID = id; IsApplication = isapp; FT = ftstruct;} //MyMimeTreeItemData& operator=(const MyMimeTreeItemData& td) { ID = td.ID; Name = td.Name; IsApplication = td.IsApplication; return *this; } void Clear(){ Name.Clear(); ID=0; IsApplication=false;} struct Filetype_Struct *FT; wxString Name; unsigned int ID; bool IsApplication; }; class MyFiletypeDialog : public wxDialog { public: MyFiletypeDialog(){} void Init(FiletypeManager* dad); wxButton* AddApplicBtn; wxButton* EditApplicBtn; wxButton* RemoveApplicBtn; wxButton* AddFolderBtn; wxButton* RemoveFolderBtn; wxButton* OKBtn; wxTextCtrl* text; wxCheckBox* isdefault; wxCheckBox* interminal; protected: FiletypeManager* parent; void TerminalBtnClicked(wxCommandEvent& event); void OnIsDefaultBtn(wxCommandEvent& event); void OnButtonPressed(wxCommandEvent& event); void DoUpdateUIOK(wxUpdateUIEvent &event); // Enable the OK button when the textctrl has text DECLARE_EVENT_TABLE() }; class MyApplicDialog : public wxDialog // This is the AddApplic & EditApplic dialog { public: MyApplicDialog(FiletypeManager* dad) : parent(dad) {} void Init(); void UpdateInterminalBtn(); // Called by parent when it alters textctrl, to see if checkbox should be set void WriteBackExtData(Filetype_Struct* ftype); // Writes the contents of the Ext textctrl back to ftype wxButton* AddFolderBtn; wxButton* browse; wxTextCtrl* label; wxTextCtrl* filepath; wxTextCtrl* ext; wxTextCtrl* command; wxTextCtrl* WorkingDir; wxCheckBox* isdefault; wxCheckBox* interminal; struct Filetype_Struct* ftype; // FiletypeManager::OnEditApplication() copies the applic data here protected: void OnBrowse(wxCommandEvent& event); void OnNewFolderButton(wxCommandEvent& event); void OnIsDefaultBtn(wxCommandEvent& event); FiletypeManager* parent; DECLARE_EVENT_TABLE() }; class MyFiletypeTree : public wxTreeCtrl // Treectrl used in ManageFiletypes dialog. A much mutilated version of the treectrl sample { public: MyFiletypeTree() {} MyFiletypeTree(wxWindow *parent, const wxWindowID id, const wxPoint& pos, const wxSize& size, long style) // NB: isn't called as using XRC : wxTreeCtrl(parent, id, pos, size, style) {} virtual ~MyFiletypeTree(){}; void Init(FiletypeManager* dad); void LoadTree(ArrayOfFiletypeGroupStructs& FiletypeGrp); wxString GetSelectedFolder(); // Returns either the selected subfolder, the subfolder containing the selected applic, or "" if no selection bool IsSelectionApplic(); // If there is a valid selection, which is an application rather than a folder, returns true Filetype_Struct* FTSelected; // Stores the applic data for the currently selected item protected: void OnSelection(wxTreeEvent &event); FiletypeManager* parent; private: DECLARE_DYNAMIC_CLASS(MyFiletypeTree) DECLARE_EVENT_TABLE() }; struct Applicstruct; struct FiletypeExts; WX_DEFINE_ARRAY(struct Applicstruct*, ArrayOfApplics); // Define the array of Applicstruct structs WX_DEFINE_ARRAY(struct FiletypeExts*, ArrayOfFiletypeExts); // Define the array of FiletypeExts structs struct Applicstruct // Struct to hold applics name & Command, to use for pre-OpenWith menu { wxString Label; // The name of the application eg kedit wxString Command; // eg "kedit %s", the command to launch the applic wxString WorkingDir; // Any working dir into which to cd first void Clear(){ Label.Clear(); Command.Clear(); WorkingDir.Clear(); } }; struct FiletypeExts // Struct to match Exts with default applics to use for Open() { wxString Ext; // eg "txt" ArrayOfApplics Applics; // The applications to offer to run this sort of ext struct Applicstruct Default; // The applicstruct containing info to launch a file with extension Ext ~FiletypeExts(){ Clear(); } void Clear(){ for (int n = (int)Applics.GetCount(); n > 0; --n ) { Applicstruct* item = Applics.Item(n-1); delete item; Applics.RemoveAt(n-1); } Ext.Clear(); Default.Clear(); } }; class FiletypeManager { public: FiletypeManager() { m_altered=false; force_kdesu=false; stat=NULL; from_config=false; ExtdataLoaded=false; } FiletypeManager(wxString& pathname) { Init(pathname); from_config=false; } ~FiletypeManager(); void Init(wxString& pathname); //~~~~~~~~~~~~~~~ The Which File-Ext bits ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bool Open(wxArrayString& commands); bool OpenUsingMimetype(const wxString& filepath); bool OpenUsingBuiltinMethod(const wxString& filepath, wxArrayString& commands, bool JustOpen); static void Openfunction(wxString& open, bool usingsu); // Submethod actually to launch applic+file. Shared by Open, Open-With, & from context submenu void SetKdesu(){ force_kdesu=true; } bool QueryCanOpen(char* buf); // See if we can open the file by double-clicking, ie executable or ext with default command bool QueryCanOpenArchiveFile(wxString& filepath); // A cutdown QueryCanOpen() for use within archives void LoadExtdata(); // Load/Save the Ext data void SaveExtdata(wxConfigBase* conf = NULL); bool OfferChoiceOfApplics(wxArrayString& CommandArray); // Loads Array with applics for this filetype, & CommandArray with launch-commands bool IsApplicDefaultForExt(const struct Filetype_Struct& ftype, const wxString& Ext); // See if the applic is the default for extension Ext bool AddDefaultApplication(struct Filetype_Struct& ftype, bool noconfirm=true); // Make applic default for a particular ext (or ext.s) void RemoveDefaultApplication(struct Filetype_Struct& ftype); // Kill the default application for a particular extension (or ext.s) void RemoveDefaultApplicationGivenExt(bool confirm=false); // Given an ext (in filepath), un-associate its default applic, if any wxArrayString Array; // This holds things like choices of ext.s; used by different methods, including OfferChoiceOfApplics() wxString filepath; // The one we're dealing with protected: wxString ParseCommand(const wxString& command = wxT("")); // Goes thru command, looking for %s to replace with filename. command may be in Array[0] bool DeduceExt(); // Which bit of a filepath should we call 'ext' for GetLaunchCommandFromExt() bool GetLaunchCommandFromExt(); void AddApplicationToExtdata(struct Filetype_Struct& ftype); // Add submenu application for a particular extension, adding ext if needed void RemoveApplicationFromExtdata(struct Filetype_Struct& ftype); // Remove application described by ftype from the Extdata structarray int GetDefaultApplicForExt(const wxString& Ext); // Given an ext, find its default applic, if any. Returns -1 if none void UpdateDefaultApplics(const struct Filetype_Struct& oldftype, const struct Filetype_Struct& newftype); // Update default data after Edit FileData *stat; bool force_kdesu; bool ExtdataLoaded; ArrayOfFiletypeExts Extdata; // The array of structs containing Ext-orientated data //~~~~~~~~~~~~~~~ The OpenWith Dialog bits ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ public: void OpenWith(); // Do 'Open with' dialog void LoadFiletypes(); // Load/Save the filetype dialogue data void SaveFiletypes(wxConfigBase* conf = NULL); bool OnNewFolder(); void OnRemoveFolder(); void OnAddApplication(); void OnDeleteApplication(); void OnEditApplication(); void OnNewFolderButton(); void OnBrowse(); // Called from MyFiletypeDialog when browse button is pressed. Calls Browse(); wxString Browse(); // This actually does the browsing. Also used from OnAddApplication() bool GetApplicExtsDefaults(const struct Filetype_Struct& ftype, wxTextCtrl* text); // Fill textctrl, & see if applic is default for any of its ext.s. Adds those in Bold bool AddExtToApplicInGroups(const struct Filetype_Struct& ftype); // Try to locate the applic matching ftype. If so, add ftype.Ext to it MyFiletypeTree* tree; // The treectrl used in OpenWith() MyFiletypeDialog* mydlg; // Ptr used to access dlg from treectrl bool m_altered; protected: void LoadSubgroup(struct FiletypeGroup* fgroup); void SaveSubgroup(struct FiletypeGroup* fgroup); wxComboBox* combo; // Shared between OnAddApplication() & OnNewFolderButton() wxConfigBase* config; ArrayOfFiletypeGroupStructs GroupArray; // The dialogue-type data bool from_config; // If we've come from config, only save amendments on final OK. Otherwise save as we go }; #endif // FILETYPESH ./4pane-6.0/configure0000755000175000017500000073001713566766543013427 0ustar daviddavid#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69 for 4Pane 6.0. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. # # # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # Use a proper internal environment variable to ensure we don't fall # into an infinite loop, continuously re-executing ourselves. if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then _as_can_reexec=no; export _as_can_reexec; # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 as_fn_exit 255 fi # We don't want this to propagate to other subprocesses. { _as_can_reexec=; unset _as_can_reexec;} if test "x$CONFIG_SHELL" = x; then as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which # is contrary to our usage. Disable this feature. alias -g '\${1+\"\$@\"}'='\"\$@\"' setopt NO_GLOB_SUBST else case \`(set -o) 2>/dev/null\` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi " as_required="as_fn_return () { (exit \$1); } as_fn_success () { as_fn_return 0; } as_fn_failure () { as_fn_return 1; } as_fn_ret_success () { return 0; } as_fn_ret_failure () { return 1; } exitcode=0 as_fn_success || { exitcode=1; echo as_fn_success failed.; } as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : else exitcode=1; echo positional parameters were not saved. fi test x\$exitcode = x0 || exit 1 test -x / || exit 1" as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes else as_have_required=no fi if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. as_found=: case $as_dir in #( /*) for as_base in sh bash ksh sh5; do # Try only shells that exist, to save several forks. as_shell=$as_dir/$as_base if { test -f "$as_shell" || test -f "$as_shell.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : CONFIG_SHELL=$as_shell as_have_required=yes if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : break 2 fi fi done;; esac as_found=false done $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : CONFIG_SHELL=$SHELL as_have_required=yes fi; } IFS=$as_save_IFS if test "x$CONFIG_SHELL" != x; then : export CONFIG_SHELL # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV case $- in # (((( *v*x* | *x*v* ) as_opts=-vx ;; *v* ) as_opts=-v ;; *x* ) as_opts=-x ;; * ) as_opts= ;; esac exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} # Admittedly, this is quite paranoid, since all the known shells bail # out after a failed `exec'. $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 exit 255 fi if test x$as_have_required = xno; then : $as_echo "$0: This script requires a shell more modern than all" $as_echo "$0: the shells that I found on your system." if test x${ZSH_VERSION+set} = xset ; then $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, $0: including any error possibly output before this $0: message. Then install a modern shell, or manually run $0: the script under such a shell if you do have one." fi exit 1 fi fi fi SHELL=${CONFIG_SHELL-/bin/sh} export SHELL # Unset more variables known to interfere with behavior of common tools. CLICOLOR_FORCE= GREP_OPTIONS= unset CLICOLOR_FORCE GREP_OPTIONS ## --------------------- ## ## M4sh Shell Functions. ## ## --------------------- ## # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits as_lineno_1=$LINENO as_lineno_1a=$LINENO as_lineno_2=$LINENO as_lineno_2a=$LINENO eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= ' <$as_myself | sed ' s/[$]LINENO.*/&-/ t lineno b :lineno N :loop s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # If we had to re-execute with $CONFIG_SHELL, we're ensured to have # already done that, so ensure we don't try to do so again and fall # in an infinite loop. This has already happened in practice. _as_can_reexec=no; export _as_can_reexec # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensitive to this). . "./$as_me.lineno" # Exit status is that of the last command. exit } ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" test -n "$DJDIR" || exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` # # Initializations. # ac_default_prefix=/usr/local ac_clean_files= ac_config_libobj_dir=. LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= # Identity of this package. PACKAGE_NAME='4Pane' PACKAGE_TARNAME='4pane' PACKAGE_VERSION='6.0' PACKAGE_STRING='4Pane 6.0' PACKAGE_BUGREPORT='' PACKAGE_URL='' ac_unique_file="MyDirs.cpp" # Factoring default headers for most tests. ac_includes_default="\ #include #ifdef HAVE_SYS_TYPES_H # include #endif #ifdef HAVE_SYS_STAT_H # include #endif #ifdef STDC_HEADERS # include # include #else # ifdef HAVE_STDLIB_H # include # endif #endif #ifdef HAVE_STRING_H # if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif #ifdef HAVE_STRINGS_H # include #endif #ifdef HAVE_INTTYPES_H # include #endif #ifdef HAVE_STDINT_H # include #endif #ifdef HAVE_UNISTD_H # include #endif" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS EXTRA_LDFLAGS EXTRA_CXXFLAGS EXTRA_CFLAGS EXTRA_CPPFLAGS AMUNINSTALL_install_docs_FALSE AMUNINSTALL_install_docs_TRUE AMINSTALL_install_docs_FALSE AMINSTALL_install_docs_TRUE AMUNINSTALL_install_rc_FALSE AMUNINSTALL_install_rc_TRUE AMINSTALL_install_rc_FALSE AMINSTALL_install_rc_TRUE AMUNINSTALL_locale_FALSE AMUNINSTALL_locale_TRUE AMINSTALL_locale_FALSE AMINSTALL_locale_TRUE AMUNINSTALL_desktop_FALSE AMUNINSTALL_desktop_TRUE AMINSTALL_desktop_FALSE AMINSTALL_desktop_TRUE AMUNINSTALL_symlink_FALSE AMUNINSTALL_symlink_TRUE AMINSTALL_symlink_FALSE AMINSTALL_symlink_TRUE AMUNINSTALL_install_app_FALSE AMUNINSTALL_install_app_TRUE AMINSTALL_install_app_FALSE AMINSTALL_install_app_TRUE XTRLIBS XZFLAGS AMBUILTIN_BZIP_FALSE AMBUILTIN_BZIP_TRUE BZIP2_FLAGS EGREP GREP CPP GTKPKG_LDFLAGS GTKPKG_CFLAGS PKG_CONFIG AM_BACKSLASH AM_DEFAULT_VERBOSITY AM_DEFAULT_V AM_V am__fastdepCXX_FALSE am__fastdepCXX_TRUE CXXDEPMODE am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE am__include DEPDIR am__untar am__tar AMTAR am__leading_dot SET_MAKE AWK mkdir_p MKDIR_P INSTALL_STRIP_PROGRAM STRIP install_sh MAKEINFO AUTOHEADER AUTOMAKE AUTOCONF ACLOCAL VERSION PACKAGE CYGPATH_W am__isrc WX_PORT WX_SHARED WX_DEBUG WX_UNICODE WX_VERSION_MICRO WX_VERSION_MINOR WX_VERSION_MAJOR WX_RESCOMP WX_VERSION WX_LIBS_STATIC WX_LIBS WX_CXXFLAGS_ONLY WX_CFLAGS_ONLY WX_CXXFLAGS WX_CFLAGS WX_CPPFLAGS WX_CONFIG_PATH CXXCPP ac_ct_CXX CXXFLAGS CXX OBJEXT EXEEXT ac_ct_CC CPPFLAGS LDFLAGS CFLAGS CC LN_S INSTALL_DATA INSTALL_SCRIPT INSTALL_PROGRAM target_alias host_alias build_alias LIBS ECHO_T ECHO_N ECHO_C DEFS mandir localedir libdir psdir pdfdir dvidir htmldir infodir docdir oldincludedir includedir runstatedir localstatedir sharedstatedir sysconfdir datadir datarootdir libexecdir sbindir bindir program_transform_name prefix exec_prefix PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR SHELL MSGFMT AMMSGFMT_AVAILABLE_FALSE AMMSGFMT_AVAILABLE_TRUE am__quote' ac_subst_files='' ac_user_opts=' enable_option_checking with_wxdir with_wx_config with_wx_prefix with_wx_exec_prefix enable_debug enable_unicode with_toolkit with_wxshared enable_dependency_tracking enable_silent_rules with_builtin_bzip2 enable_lzma_streams enable_install_app enable_symlink enable_desktop enable_locale enable_install_rc enable_install_docs ' ac_precious_vars='build_alias host_alias target_alias CC CFLAGS LDFLAGS LIBS CPPFLAGS CXX CXXFLAGS CCC CXXCPP CPP' # Initialize some variables set by options. ac_init_help= ac_init_version=false ac_unrecognized_opts= ac_unrecognized_sep= # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. # (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datarootdir='${prefix}/share' datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' infodir='${datarootdir}/info' htmldir='${docdir}' dvidir='${docdir}' pdfdir='${docdir}' psdir='${docdir}' libdir='${exec_prefix}/lib' localedir='${datarootdir}/locale' mandir='${datarootdir}/man' ac_prev= ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval $ac_prev=\$ac_option ac_prev= continue fi case $ac_option in *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; *=) ac_optarg= ;; *) ac_optarg=yes ;; esac # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_dashdash$ac_option in --) ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ | --dataroo | --dataro | --datar) ac_prev=datarootdir ;; -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) datarootdir=$ac_optarg ;; -disable-* | --disable-*) ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=no ;; -docdir | --docdir | --docdi | --doc | --do) ac_prev=docdir ;; -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) docdir=$ac_optarg ;; -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) ac_prev=dvidir ;; -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "enable_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval enable_$ac_useropt=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) ac_prev=htmldir ;; -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ | --ht=*) htmldir=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localedir | --localedir | --localedi | --localed | --locale) ac_prev=localedir ;; -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) localedir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) ac_prev=pdfdir ;; -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) pdfdir=$ac_optarg ;; -psdir | --psdir | --psdi | --psd | --ps) ac_prev=psdir ;; -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) psdir=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -runstatedir | --runstatedir | --runstatedi | --runstated \ | --runstate | --runstat | --runsta | --runst | --runs \ | --run | --ru | --r) ac_prev=runstatedir ;; -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ | --run=* | --ru=* | --r=*) runstatedir=$ac_optarg ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=\$ac_optarg ;; -without-* | --without-*) ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && as_fn_error $? "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in *" "with_$ac_useropt" "*) ;; *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" ac_unrecognized_sep=', ';; esac eval with_$ac_useropt=no ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) as_fn_error $? "unrecognized option: \`$ac_option' Try \`$0 --help' for more information" ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. case $ac_envvar in #( '' | [0-9]* | *[!_$as_cr_alnum]* ) as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` as_fn_error $? "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi # Check all directory arguments for consistency. for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. case $ac_val in */ ) ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` eval $ac_var=\$ac_val;; esac # Be sure to have absolute directory names. case $ac_val in [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || as_fn_error $? "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || as_fn_error $? "pwd does not report name of working directory" # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then the parent directory. ac_confdir=`$as_dirname -- "$as_myself" || $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_myself" : 'X\(//\)[^/]' \| \ X"$as_myself" : 'X\(//\)$' \| \ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_myself" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` srcdir=$ac_confdir if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then srcdir=. fi # Remove unnecessary trailing slashes from srcdir. # Double slashes in file names in object file debugging info # mess up M-x gdb in Emacs. case $srcdir in */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; esac for ac_var in $ac_precious_vars; do eval ac_env_${ac_var}_set=\${${ac_var}+set} eval ac_env_${ac_var}_value=\$${ac_var} eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} eval ac_cv_env_${ac_var}_value=\$${ac_var} done # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures 4Pane 6.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/4pane] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of 4Pane 6.0:";; esac cat <<\_ACEOF Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-debug Build in debug mode (default is auto) --enable-unicode Build in Unicode mode (default is auto) --enable-dependency-tracking do not reject slow dependency extractors --disable-dependency-tracking speeds up one-time build --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --enable-lzma_streams, whether to build with support for xz archive peeking (if yes, requires the xz/lzma headers to be installed) --enable-install_app --disable-install_app stops make install installing the app (default is enable) --enable-symlink --disable-symlink stops make install creating a 4Pane to 4pane symlink (default is enable) --enable-desktop --disable-desktop stops make install trying to create a 4Pane desktop shortcut (default is enable) --enable-locale --disable-locale stops make install trying to install 4Pane's locale files (default is enable) --enable-install_rc --disable-install_rc stops make install installing the resource files (default is enable) --enable-install_docs --disable-install_docs stops make install installing the manual files (default is enable) Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH --with-wx-config=CONFIG wx-config script to use (optional) --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional) --with-wx-exec-prefix=PREFIX Exec prefix where wxWidgets is installed (optional) --with-toolkit Build against a specific wxWidgets toolkit (default is auto) --with-wxshared Force building against a shared build of wxWidgets, even if --disable-shared is given (default is auto) --with-builtin_bzip2, whether to use built-in support for bzip2 archive peeking (if no, requires the bzip2 headers to be installed) Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory LIBS libraries to pass to the linker, e.g. -l CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CXX C++ compiler command CXXFLAGS C++ compiler flags CXXCPP C++ preprocessor CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to the package provider. _ACEOF ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d "$ac_dir" || { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || continue ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix cd "$ac_dir" || { ac_status=$?; continue; } # Check for guested configure. if test -f "$ac_srcdir/configure.gnu"; then echo && $SHELL "$ac_srcdir/configure.gnu" --help=recursive elif test -f "$ac_srcdir/configure"; then echo && $SHELL "$ac_srcdir/configure" --help=recursive else $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi || ac_status=$? cd "$ac_pwd" || { ac_status=$?; break; } done fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF 4Pane configure 6.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit fi ## ------------------------ ## ## Autoconf initialization. ## ## ------------------------ ## # ac_fn_c_try_compile LINENO # -------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile # ac_fn_cxx_try_compile LINENO # ---------------------------- # Try to compile conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack rm -f conftest.$ac_objext if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { test -z "$ac_cxx_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_compile # ac_fn_cxx_try_cpp LINENO # ------------------------ # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_cxx_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_cpp # ac_fn_c_try_cpp LINENO # ---------------------- # Try to preprocess conftest.$ac_ext, and return whether this succeeded. ac_fn_c_try_cpp () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_cpp conftest.$ac_ext" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err ac_status=$? if test -s conftest.err; then grep -v '^ *+' conftest.err >conftest.er1 cat conftest.er1 >&5 mv -f conftest.er1 conftest.err fi $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } > conftest.i && { test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || test ! -s conftest.err }; then : ac_retval=0 else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists, giving a warning if it cannot be compiled using # the include files in INCLUDES and setting the cache variable VAR # accordingly. ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } else # Is the header compilable? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 $as_echo_n "checking $2 usability... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_header_compiler=yes else ac_header_compiler=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 $as_echo "$ac_header_compiler" >&6; } # Is the header present? { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 $as_echo_n "checking $2 presence... " >&6; } cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <$2> _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : ac_header_preproc=yes else ac_header_preproc=no fi rm -f conftest.err conftest.i conftest.$ac_ext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 $as_echo "$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( yes:no: ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; no:yes:* ) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} ;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_mongrel # ac_fn_c_try_run LINENO # ---------------------- # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes # that executables *can* be run. ac_fn_c_try_run () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then : ac_retval=0 else $as_echo "$as_me: program exited with status $ac_status" >&5 $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_run # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES # ------------------------------------------------------- # Tests whether HEADER exists and can be compiled using the include files in # INCLUDES, setting the cache variable VAR accordingly. ac_fn_c_check_header_compile () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ $4 #include <$2> _ACEOF if ac_fn_c_try_compile "$LINENO"; then : eval "$3=yes" else eval "$3=no" fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by 4Pane $as_me 6.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ _ACEOF exec 5>>config.log { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. $as_echo "PATH: $as_dir" done IFS=$as_save_IFS } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done { ac_configure_args0=; unset ac_configure_args0;} { ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Use '\'' to represent an apostrophe within the trap. # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo $as_echo "## ---------------- ## ## Cache variables. ## ## ---------------- ##" echo # The following way of writing the cache mishandles newlines in values, ( for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( *${as_nl}ac_space=\ *) sed -n \ "s/'\''/'\''\\\\'\'''\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" ;; #( *) sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) echo $as_echo "## ----------------- ## ## Output variables. ## ## ----------------- ##" echo for ac_var in $ac_subst_vars do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then $as_echo "## ------------------- ## ## File substitutions. ## ## ------------------- ##" echo for ac_var in $ac_subst_files do eval ac_val=\$$ac_var case $ac_val in *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; esac $as_echo "$ac_var='\''$ac_val'\''" done | sort echo fi if test -s confdefs.h; then $as_echo "## ----------- ## ## confdefs.h. ## ## ----------- ##" echo cat confdefs.h echo fi test "$ac_signal" != 0 && $as_echo "$as_me: caught signal $ac_signal" $as_echo "$as_me: exit $exit_status" } >&5 rm -f core *.core core.conftest.* && rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h $as_echo "/* confdefs.h */" > confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_URL "$PACKAGE_URL" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. ac_site_file1=NONE ac_site_file2=NONE if test -n "$CONFIG_SITE"; then # We do not want a PATH search for config.site. case $CONFIG_SITE in #(( -*) ac_site_file1=./$CONFIG_SITE;; */*) ac_site_file1=$CONFIG_SITE;; *) ac_site_file1=./$CONFIG_SITE;; esac elif test "x$prefix" != xNONE; then ac_site_file1=$prefix/share/config.site ac_site_file2=$prefix/etc/config.site else ac_site_file1=$ac_default_prefix/share/config.site ac_site_file2=$ac_default_prefix/etc/config.site fi for ac_site_file in "$ac_site_file1" "$ac_site_file2" do test "x$ac_site_file" = xNONE && continue if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" \ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file See \`config.log' for more details" "$LINENO" 5; } fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special files # actually), so we avoid doing that. DJGPP emulates it as a regular file. if test /dev/null != "$cache_file" && test -f "$cache_file"; then { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; *) . "./$cache_file";; esac fi else { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val=\$ac_cv_env_${ac_var}_value eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then # differences in whitespace do not lead to failure. ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi ## -------------------- ## ## Main body of script. ## ## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_aux_dir= for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 fi # These three variables are undocumented and unsupported, # and are intended to be withdrawn in a future Autoconf release. # They can cause serious problems if a builder's source tree is in a directory # whose full name contains unusual characters. ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in #(( ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else rm -rf conftest.one conftest.two conftest.dir echo one > conftest.one echo two > conftest.two mkdir conftest.dir if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && test -s conftest.one && test -s conftest.two && test -s conftest.dir/conftest.one && test -s conftest.dir/conftest.two then ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi fi done done ;; esac done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. Don't cache a # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi _CFLAGS=$CFLAGS _CXXFLAGS=$CXXFLAGS ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CC" && break done if test "x$ac_ct_CC" = x; then CC="" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CC=$ac_ct_CC fi fi fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` # The possible output files: ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" ac_rmfiles= for ac_file in $ac_files do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; * ) ac_rmfiles="$ac_rmfiles $ac_file";; esac done rm -f $ac_rmfiles if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, # so that the user can short-circuit this test for compilers unknown to # Autoconf. for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi # We set ac_cv_exeext here because the later test for it is not # safe: cross compilers may not add the suffix if given an `-o' # argument, so we may need to know it at that point already. # Even if this section looks crufty: it has the advantage of # actually working. break;; * ) break;; esac done test "$ac_cv_exeext" = no && ac_cv_exeext= else ac_file='' fi if test -z "$ac_file"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables See \`config.log' for more details" "$LINENO" 5; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } ac_exeext=$ac_cv_exeext rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` break;; * ) break;; esac done else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include int main () { FILE *f = fopen ("conftest.out", "w"); return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files="$ac_clean_files conftest.out" # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } if test "$cross_compiling" != yes; then { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } if { ac_try='./conftest$ac_cv_exeext' { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details" "$LINENO" 5; } fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes else GCC= fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else CFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : else ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include struct stat; /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters inside strings and character constants. */ #define FOO(x) 'x' int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg fi rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done rm -f conftest.$ac_ext CC=$ac_save_CC fi # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac if test "x$ac_cv_prog_cc_c89" != xno; then : fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Expand $ac_aux_dir to an absolute path. am_aux_dir=`cd "$ac_aux_dir" && pwd` ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; } if ${am_cv_prog_cc_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # Following AC_PROG_CC_C_O, we do the test twice because some # compilers refuse to overwrite an existing .o file with -o, # though they will create one. am_cv_prog_cc_c_o=yes for am_i in 1 2; do if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } \ && test -f conftest2.$ac_objext; then : OK else am_cv_prog_cc_c_o=no break fi done rm -f core conftest* unset am_i fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 $as_echo "$am_cv_prog_cc_c_o" >&6; } if test "$am_cv_prog_cc_c_o" != yes; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu if test -z "$CXX"; then if test -n "$CCC"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then ac_cv_prog_CXX="$CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CXX="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$ac_ct_CXX" && break done if test "x$ac_ct_CXX" = x; then CXX="g++" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac CXX=$ac_ct_CXX fi fi fi fi # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 set X $ac_compile ac_compiler=$2 for ac_option in --version -v -V -qversion; do { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" $as_echo "$ac_try_echo"; } >&5 (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? if test -s conftest.err; then sed '10a\ ... rest of stderr output deleted ... 10q' conftest.err >conftest.er1 cat conftest.er1 >&5 fi rm -f conftest.er1 conftest.err $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } if ${ac_cv_cxx_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else ac_compiler_gnu=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes else GXX= fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } if ${ac_cv_prog_cxx_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else CXXFLAGS="" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : else ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int main () { ; return 0; } _ACEOF if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cxx_werror_flag=$ac_save_cxx_werror_flag fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS elif test $ac_cv_prog_cxx_g = yes; then if test "$GXX" = yes; then CXXFLAGS="-g -O2" else CXXFLAGS="-g" fi else if test "$GXX" = yes; then CXXFLAGS="-O2" else CXXFLAGS= fi fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu CFLAGS=$_CFLAGS CXXFLAGS=$_CXXFLAGS ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 $as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then if ${ac_cv_prog_CXXCPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded for CXXCPP in "$CXX -E" "/lib/cpp" do ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CXXCPP=$CXXCPP fi CXXCPP=$ac_cv_prog_CXXCPP else ac_cv_prog_CXXCPP=$CXXCPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 $as_echo "$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_cxx_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Check whether --with-wxdir was given. if test "${with_wxdir+set}" = set; then : withval=$with_wxdir; wx_config_name="$withval/wx-config" wx_config_args="--inplace" fi # Check whether --with-wx-config was given. if test "${with_wx_config+set}" = set; then : withval=$with_wx_config; wx_config_name="$withval" fi # Check whether --with-wx-prefix was given. if test "${with_wx_prefix+set}" = set; then : withval=$with_wx_prefix; wx_config_prefix="$withval" else wx_config_prefix="" fi # Check whether --with-wx-exec-prefix was given. if test "${with_wx_exec_prefix+set}" = set; then : withval=$with_wx_exec_prefix; wx_config_exec_prefix="$withval" else wx_config_exec_prefix="" fi # Check whether --enable-debug was given. if test "${enable_debug+set}" = set; then : enableval=$enable_debug; else enableval="auto" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-debug option" >&5 $as_echo_n "checking for the --enable-debug option... " >&6; } if test "$enableval" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } DEBUG=1 elif test "$enableval" = "no" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } DEBUG=0 elif test "$enableval" = "auto" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: will be automatically detected" >&5 $as_echo "will be automatically detected" >&6; } DEBUG="" else as_fn_error $? " Unrecognized option value (allowed values: yes, no, auto) " "$LINENO" 5 fi # Check whether --enable-unicode was given. if test "${enable_unicode+set}" = set; then : enableval=$enable_unicode; else enableval="auto" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-unicode option" >&5 $as_echo_n "checking for the --enable-unicode option... " >&6; } if test "$enableval" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } UNICODE=1 elif test "$enableval" = "no" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } UNICODE=0 elif test "$enableval" = "auto" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: will be automatically detected" >&5 $as_echo "will be automatically detected" >&6; } UNICODE="" else as_fn_error $? " Unrecognized option value (allowed values: yes, no, auto) " "$LINENO" 5 fi # Check whether --with-toolkit was given. if test "${with_toolkit+set}" = set; then : withval=$with_toolkit; else withval="auto" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --with-toolkit option" >&5 $as_echo_n "checking for the --with-toolkit option... " >&6; } if test "$withval" = "auto" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: will be automatically detected" >&5 $as_echo "will be automatically detected" >&6; } TOOLKIT="" else TOOLKIT="$withval" if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a "$TOOLKIT" != "gtk3" -a \ "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \ "$TOOLKIT" != "osx_carbon" -a "$TOOLKIT" != "osx_cocoa" -a \ "$TOOLKIT" != "dfb" -a "$TOOLKIT" != "x11" -a "$TOOLKIT" != "base"; then as_fn_error $? " Unrecognized option value (allowed values: auto, gtk1, gtk2, gtk3, msw, motif, osx_carbon, osx_cocoa, dfb, x11, base) " "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TOOLKIT" >&5 $as_echo "$TOOLKIT" >&6; } fi # Check whether --with-wxshared was given. if test "${with_wxshared+set}" = set; then : withval=$with_wxshared; else withval="auto" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --with-wxshared option" >&5 $as_echo_n "checking for the --with-wxshared option... " >&6; } if test "$withval" = "yes" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } WX_SHARED=1 elif test "1" = "1" -a "$withval" = "no" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } WX_SHARED=0 elif test "$withval" = "auto" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: will be automatically detected" >&5 $as_echo "will be automatically detected" >&6; } WX_SHARED="" else as_fn_error $? " Unrecognized option value (allowed values: yes, auto) " "$LINENO" 5 fi if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[dbg] DEBUG: $DEBUG, WX_DEBUG: $WX_DEBUG" echo "[dbg] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE" echo "[dbg] SHARED: $SHARED, WX_SHARED: $WX_SHARED" echo "[dbg] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT" echo "[dbg] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE" fi if test "$WX_SHARED" = "1" ; then WXCONFIG_FLAGS="--static=no " elif test "$WX_SHARED" = "0" ; then WXCONFIG_FLAGS="--static=yes " fi if test "$WX_DEBUG" = "1" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=yes " elif test "$WX_DEBUG" = "0" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=no " fi if test "$WX_UNICODE" = "1" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=yes " elif test "$WX_UNICODE" = "0" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=no " fi if test -n "$TOOLKIT" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT " fi if test -n "$WX_RELEASE" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE " fi WXCONFIG_FLAGS=${WXCONFIG_FLAGS% } if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[dbg] WXCONFIG_FLAGS: $WXCONFIG_FLAGS" fi if test x${WX_CONFIG_NAME+set} != xset ; then WX_CONFIG_NAME=wx-config fi if test "x$wx_config_name" != x ; then WX_CONFIG_NAME="$wx_config_name" fi if test x$wx_config_exec_prefix != x ; then wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix" WX_LOOKUP_PATH="$wx_config_exec_prefix/bin" fi if test x$wx_config_prefix != x ; then wx_config_args="$wx_config_args --prefix=$wx_config_prefix" WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin" fi if test "$cross_compiling" = "yes"; then wx_config_args="$wx_config_args --host=$host_alias" fi if test -x "$WX_CONFIG_NAME" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wx-config" >&5 $as_echo_n "checking for wx-config... " >&6; } WX_CONFIG_PATH="$WX_CONFIG_NAME" { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WX_CONFIG_PATH" >&5 $as_echo "$WX_CONFIG_PATH" >&6; } else # Extract the first word of "$WX_CONFIG_NAME", so it can be a program name with args. set dummy $WX_CONFIG_NAME; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_WX_CONFIG_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $WX_CONFIG_PATH in [\\/]* | ?:[\\/]*) ac_cv_path_WX_CONFIG_PATH="$WX_CONFIG_PATH" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_dummy=""$WX_LOOKUP_PATH:$PATH"" for as_dir in $as_dummy do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_WX_CONFIG_PATH="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_WX_CONFIG_PATH" && ac_cv_path_WX_CONFIG_PATH="no" ;; esac fi WX_CONFIG_PATH=$ac_cv_path_WX_CONFIG_PATH if test -n "$WX_CONFIG_PATH"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WX_CONFIG_PATH" >&5 $as_echo "$WX_CONFIG_PATH" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test "$WX_CONFIG_PATH" != "no" ; then WX_VERSION="" min_wx_version=3.0.0 if test -z "" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wxWidgets version >= $min_wx_version" >&5 $as_echo_n "checking for wxWidgets version >= $min_wx_version... " >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wxWidgets version >= $min_wx_version ()" >&5 $as_echo_n "checking for wxWidgets version >= $min_wx_version ()... " >&6; } fi WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $WXCONFIG_FLAGS" WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null` wx_config_major_version=`echo $WX_VERSION | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` wx_config_minor_version=`echo $WX_VERSION | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` wx_config_micro_version=`echo $WX_VERSION | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` wx_requested_major_version=`echo $min_wx_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` wx_requested_minor_version=`echo $min_wx_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` wx_requested_micro_version=`echo $min_wx_version | \ sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` wx_ver_ok="" if test "x$WX_VERSION" != x ; then if test $wx_config_major_version -gt $wx_requested_major_version; then wx_ver_ok=yes else if test $wx_config_major_version -eq $wx_requested_major_version; then if test $wx_config_minor_version -gt $wx_requested_minor_version; then wx_ver_ok=yes else if test $wx_config_minor_version -eq $wx_requested_minor_version; then if test $wx_config_micro_version -ge $wx_requested_micro_version; then wx_ver_ok=yes fi fi fi fi fi fi if test -n "$wx_ver_ok"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (version $WX_VERSION)" >&5 $as_echo "yes (version $WX_VERSION)" >&6; } WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs core,xrc,xml,adv,html` { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wxWidgets static library" >&5 $as_echo_n "checking for wxWidgets static library... " >&6; } WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs core,xrc,xml,adv,html 2>/dev/null` if test "x$WX_LIBS_STATIC" = "x"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } fi wx_has_cppflags="" if test $wx_config_major_version -gt 2; then wx_has_cppflags=yes else if test $wx_config_major_version -eq 2; then if test $wx_config_minor_version -gt 2; then wx_has_cppflags=yes else if test $wx_config_minor_version -eq 2; then if test $wx_config_micro_version -ge 6; then wx_has_cppflags=yes fi fi fi fi fi wx_has_rescomp="" if test $wx_config_major_version -gt 2; then wx_has_rescomp=yes else if test $wx_config_major_version -eq 2; then if test $wx_config_minor_version -ge 7; then wx_has_rescomp=yes fi fi fi if test "x$wx_has_rescomp" = x ; then WX_RESCOMP= else WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp` fi if test "x$wx_has_cppflags" = x ; then WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags core,xrc,xml,adv,html` WX_CPPFLAGS=$WX_CFLAGS WX_CXXFLAGS=$WX_CFLAGS WX_CFLAGS_ONLY=$WX_CFLAGS WX_CXXFLAGS_ONLY=$WX_CFLAGS else WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags core,xrc,xml,adv,html` WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags core,xrc,xml,adv,html` WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags core,xrc,xml,adv,html` WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"` WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"` fi wxWin=1 else if test "x$WX_VERSION" = x; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no (version $WX_VERSION is not new enough)" >&5 $as_echo "no (version $WX_VERSION is not new enough)" >&6; } fi WX_CFLAGS="" WX_CPPFLAGS="" WX_CXXFLAGS="" WX_LIBS="" WX_LIBS_STATIC="" WX_RESCOMP="" if test ! -z ""; then wx_error_message=" The configuration you asked for $PACKAGE_NAME requires a wxWidgets build with the following settings: but such build is not available. To see the wxWidgets builds available on this system, please use 'wx-config --list' command. To use the default build, returned by 'wx-config --selected-config', use the options with their 'auto' default values." fi wx_error_message=" The requested wxWidgets build couldn't be found. $wx_error_message If you still get this error, then check that 'wx-config' is in path, the directory where wxWidgets libraries are installed (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH or equivalent variable and wxWidgets version is 3.0.0 or above." wxWin=0 fi else WX_CFLAGS="" WX_CPPFLAGS="" WX_CXXFLAGS="" WX_LIBS="" WX_LIBS_STATIC="" WX_RESCOMP="" wxWin=0 fi WX_VERSION_MAJOR="$wx_config_major_version" WX_VERSION_MINOR="$wx_config_minor_version" WX_VERSION_MICRO="$wx_config_micro_version" WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR" if test $WX_RELEASE -lt 26 ; then as_fn_error $? " Cannot detect the wxWidgets configuration for the selected wxWidgets build since its version is $WX_VERSION < 2.6.0; please install a newer version of wxWidgets. " "$LINENO" 5 fi WX_SELECTEDCONFIG=$($WX_CONFIG_WITH_ARGS --selected_config) if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[dbg] Using wx-config --selected-config" echo "[dbg] WX_SELECTEDCONFIG: $WX_SELECTEDCONFIG" fi if test "$WX_SHARED" = "1"; then STATIC=0 elif test "$WX_SHARED" = "0"; then STATIC=1 fi if test -z "$UNICODE" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if wxWidgets was built with UNICODE enabled" >&5 $as_echo_n "checking if wxWidgets was built with UNICODE enabled... " >&6; } WX_UNICODE=$(expr "$WX_SELECTEDCONFIG" : ".*unicode.*") if test "$WX_UNICODE" != "0"; then WX_UNICODE=1 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else WX_UNICODE=0 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else WX_UNICODE=$UNICODE fi if test -z "$DEBUG" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if wxWidgets was built in DEBUG mode" >&5 $as_echo_n "checking if wxWidgets was built in DEBUG mode... " >&6; } WX_DEBUG=$(expr "$WX_SELECTEDCONFIG" : ".*debug.*") if test "$WX_DEBUG" != "0"; then WX_DEBUG=1 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else WX_DEBUG=0 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else WX_DEBUG=$DEBUG fi if test -z "$STATIC" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if wxWidgets was built in STATIC mode" >&5 $as_echo_n "checking if wxWidgets was built in STATIC mode... " >&6; } WX_STATIC=$(expr "$WX_SELECTEDCONFIG" : ".*static.*") if test "$WX_STATIC" != "0"; then WX_STATIC=1 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else WX_STATIC=0 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi else WX_STATIC=$STATIC fi if test "$WX_STATIC" != "0"; then WX_SHARED=0 else WX_SHARED=1 fi if test -z "$TOOLKIT" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking which wxWidgets toolkit was selected" >&5 $as_echo_n "checking which wxWidgets toolkit was selected... " >&6; } WX_GTKPORT1=$(expr "$WX_SELECTEDCONFIG" : ".*gtk1.*") WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*") WX_GTKPORT3=$(expr "$WX_SELECTEDCONFIG" : ".*gtk3.*") WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*") WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*") WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*") WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*") WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*") WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*") WX_BASEPORT=$(expr "$WX_SELECTEDCONFIG" : ".*base.*") WX_PORT="unknown" if test "$WX_GTKPORT1" != "0"; then WX_PORT="gtk1"; fi if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi if test "$WX_GTKPORT3" != "0"; then WX_PORT="gtk3"; fi if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi if test "$WX_BASEPORT" != "0"; then WX_PORT="base"; fi WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*") if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi if test "$WX_PORT" = "unknown" ; then as_fn_error $? " Cannot detect the currently installed wxWidgets port ! Please check your 'wx-config --cxxflags'... " "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $WX_PORT" >&5 $as_echo "$WX_PORT" >&6; } else WX_PORT=$TOOLKIT fi if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[dbg] Values of all WX_* options after final detection:" echo "[dbg] WX_DEBUG: $WX_DEBUG" echo "[dbg] WX_UNICODE: $WX_UNICODE" echo "[dbg] WX_SHARED: $WX_SHARED" echo "[dbg] WX_RELEASE: $WX_RELEASE" echo "[dbg] WX_PORT: $WX_PORT" fi if test "$WX_SHARED" = "0" -a "$SHARED" = "1"; then as_fn_error $? " Cannot build shared library against a static build of wxWidgets ! This error happens because the wxWidgets build which was selected has been detected as static while you asked to build $PACKAGE_NAME as shared library and this is not possible. Use the '--disable-shared' option to build $PACKAGE_NAME as static library or '--with-wxshared' to use wxWidgets as shared library. " "$LINENO" 5 fi if test -z "$UNICODE" ; then UNICODE=$WX_UNICODE fi if test -z "$SHARED" ; then SHARED=$WX_SHARED fi if test -z "$TOOLKIT" ; then TOOLKIT=$WX_PORT fi if test "$DEBUG" = "1"; then BUILD="debug" CXXFLAGS="-g -O0 $CXXFLAGS" CFLAGS="-g -O0 $CFLAGS" elif test "$DEBUG" = "0" || test -z "$DEBUG"; then BUILD="release" CXXFLAGS="-g -O2 $CXXFLAGS" CFLAGS="-g -O2 $CFLAGS" fi if test "$wxWin" = 1; then : else as_fn_error $? " wxWidgets must be installed on your system but wx-config script couldn't be found. Please check that wx-config is in your \$PATH and the wxWidgets version is 3.0.0 or above. " "$LINENO" 5 fi am__api_version='1.16' { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 $as_echo_n "checking whether build environment is sane... " >&6; } # Reject unsafe characters in $srcdir or the absolute working directory # name. Accept space and tab only in the latter. am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; esac # Do 'set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( am_has_slept=no for am_try in 1 2; do echo "timestamp, slept: $am_has_slept" > conftest.file set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t "$srcdir/configure" conftest.file` fi if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". as_fn_error $? "ls -t appears to fail. Make sure there is not a broken alias in your environment" "$LINENO" 5 fi if test "$2" = conftest.file || test $am_try -eq 2; then break fi # Just in case. sleep 1 am_has_slept=yes done test "$2" = conftest.file ) then # Ok. : else as_fn_error $? "newly created file is older than distributed files! Check your system clock" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } # If we didn't sleep, we still need to ensure time stamps of config.status and # generated files are strictly newer. am_sleep_pid= if grep 'slept: no' conftest.file >/dev/null 2>&1; then ( sleep 1 ) & am_sleep_pid=$! fi rm -f conftest.file test "$program_prefix" != NONE && program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. # By default was `s,x,x', remove it if useless. ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` if test x"${MISSING+set}" != xset; then case $am_aux_dir in *\ * | *\ *) MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; *) MISSING="\${SHELL} $am_aux_dir/missing" ;; esac fi # Use eval to expand $SHELL if eval "$MISSING --is-lightweight"; then am_missing_run="$MISSING " else am_missing_run= { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} fi if test x"${install_sh+set}" != xset; then case $am_aux_dir in *\ * | *\ *) install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; *) install_sh="\${SHELL} $am_aux_dir/install-sh" esac fi # Installed binaries are usually stripped using 'strip' when the user # run "make install-strip". However 'strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the 'STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 $as_echo "$STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 $as_echo "$ac_ct_STRIP" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi if test "x$ac_ct_STRIP" = x; then STRIP=":" else case $cross_compiling:$ac_tool_warned in yes:) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac STRIP=$ac_ct_STRIP fi else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in mkdir gmkdir; do for ac_exec_ext in '' $ac_executable_extensions; do as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( 'mkdir (GNU coreutils) '* | \ 'mkdir (coreutils) '* | \ 'mkdir (fileutils) '4.1*) ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext break 3;; esac done done done IFS=$as_save_IFS fi test -d ./--version && rmdir ./--version if test "${ac_cv_path_mkdir+set}" = set; then MKDIR_P="$ac_cv_path_mkdir -p" else # As a last resort, use the slow shell script. Don't cache a # value for MKDIR_P within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the value is a relative name. MKDIR_P="$ac_install_sh -d" fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 $as_echo "$MKDIR_P" >&6; } for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 $as_echo "$AWK" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi test -n "$AWK" && break done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF SHELL = /bin/sh all: @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. case `${MAKE-make} -f conftest.make 2>/dev/null` in *@@@%%%=?*=@@@%%%*) eval ac_cv_prog_make_${ac_make}_set=yes;; *) eval ac_cv_prog_make_${ac_make}_set=no;; esac rm -f conftest.make fi if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } SET_MAKE= else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 $as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; } cat > confinc.mk << 'END' am__doit: @echo this is the am__doit target >confinc.out .PHONY: am__doit END am__include="#" am__quote= # BSD make does it like this. echo '.include "confinc.mk" # ignored' > confmf.BSD # Other make implementations (GNU, Solaris 10, AIX) do it like this. echo 'include confinc.mk # ignored' > confmf.GNU _am_result=no for s in GNU BSD; do { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } case $?:`cat confinc.out 2>/dev/null` in #( '0:this is the am__doit target') : case $s in #( BSD) : am__include='.include' am__quote='"' ;; #( *) : am__include='include' am__quote='' ;; esac ;; #( *) : ;; esac if test "$am__include" != "#"; then _am_result="yes ($s style)" break fi done rm -f confinc.* confmf.* { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 $as_echo "${_am_result}" >&6; } # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : enableval=$enable_dependency_tracking; fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi # Check whether --enable-silent-rules was given. if test "${enable_silent_rules+set}" = set; then : enableval=$enable_silent_rules; fi case $enable_silent_rules in # ((( yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=1;; esac am_make=${MAKE-make} { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 $as_echo_n "checking whether $am_make supports nested variables... " >&6; } if ${am_cv_make_support_nested_variables+:} false; then : $as_echo_n "(cached) " >&6 else if $as_echo 'TRUE=$(BAR$(V)) BAR0=false BAR1=true V=1 am__doit: @$(TRUE) .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then am_cv_make_support_nested_variables=yes else am_cv_make_support_nested_variables=no fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 $as_echo "$am_cv_make_support_nested_variables" >&6; } if test $am_cv_make_support_nested_variables = yes; then AM_V='$(V)' AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' else AM_V=$AM_DEFAULT_VERBOSITY AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY fi AM_BACKSLASH='\' if test "`cd $srcdir && pwd`" != "`pwd`"; then # Use -I$(srcdir) only when $(srcdir) != ., so that make's output # is not polluted with repeated "-I." am__isrc=' -I$(srcdir)' # test to see if srcdir already configured if test -f $srcdir/config.status; then as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 fi fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='4pane' VERSION='6.0' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: # # mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. # Always define AMTAR for backward compatibility. Yes, it's still used # in the wild :-( We should find a proper way to deprecate it ... AMTAR='$${TAR-tar}' # We'll loop over all known methods to create a tar archive until one works. _am_tools='gnutar pax cpio none' am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi depcc="$CXX" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } if ${am_cv_CXX_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named 'D' -- because '-MD' means "put the output # in D". rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CXX_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false case " $depcc " in #( *\ -arch\ *\ -arch\ *) am__universal=true ;; esac for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with # Solaris 10 /bin/sh. echo '/* dummy */' > sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf # We check with '-c' and '-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle '-M -o', and we need to detect this. Also, some Intel # versions had trouble with output in subdirs. am__obj=sub/conftest.${OBJEXT-o} am__minus_obj="-o $am__obj" case $depmode in gcc) # This depmode causes a compiler race in universal mode. test "$am__universal" = false || continue ;; nosideeffect) # After this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested. if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok '-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. am__obj=conftest.${OBJEXT-o} am__minus_obj= ;; none) break ;; esac if depmode=$depmode \ source=sub/conftest.c object=$am__obj \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep $am__obj sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CXX_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CXX_dependencies_compiler_type=none fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= am__fastdepCXX_FALSE='#' else am__fastdepCXX_TRUE='#' am__fastdepCXX_FALSE= fi # POSIX will say in a future version that running "rm -f" with no argument # is OK; and we want to be able to make that assumption in our Makefile # recipes. So use an aggressive probe to check that the usage we want is # actually supported "in the wild" to an acceptable degree. # See automake bug#10828. # To make any issue more visible, cause the running configure to be aborted # by default if the 'rm' program in use doesn't match our expectations; the # user can still override this though. if rm -f && rm -fr && rm -rf; then : OK; else cat >&2 <<'END' Oops! Your 'rm' program seems unable to run without file operands specified on the command line, even when the '-f' option is present. This is contrary to the behaviour of most rm programs out there, and not conforming with the upcoming POSIX standard: Please tell bug-automake@gnu.org about your system, including the value of your $PATH and any error possibly output before this message. This can help us improve future automake versions. END if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then echo 'Configuration will proceed anyway, since you have set the' >&2 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 echo >&2 else cat >&2 <<'END' Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM to "yes", and re-run configure. END as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 fi fi if test "x$WX_PORT" = xgtk3; then : # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi > /dev/null if test x$PKG_CONFIG != xno; then : if pkg-config --atleast-pkgconfig-version 0.7 ; then if $PKG_CONFIG --exists gtk+-3.0; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gtk3 headers" >&5 $as_echo_n "checking for gtk3 headers... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } GTKPKG_CFLAGS=`$PKG_CONFIG --cflags gtk+-3.0` GTKPKG_LDFLAGS=`$PKG_CONFIG --libs gtk+-3.0` else as_fn_error $? "gtk headers not found. You probably need to install the devel package e.g. libgtk3.0-dev" "$LINENO" 5 fi fi else as_fn_error $? "pkgconfig is missing. Please install it" "$LINENO" 5 fi elif test "x$WX_PORT" = xgtk2; then : # Extract the first word of "pkg-config", so it can be a program name with args. set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in [\\/]* | ?:[\\/]*) ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done IFS=$as_save_IFS test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" ;; esac fi PKG_CONFIG=$ac_cv_path_PKG_CONFIG if test -n "$PKG_CONFIG"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 $as_echo "$PKG_CONFIG" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi > /dev/null if test x$PKG_CONFIG != xno; then : if pkg-config --atleast-pkgconfig-version 0.7 ; then if $PKG_CONFIG --exists gtk+-2.0; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gtk2 headers" >&5 $as_echo_n "checking for gtk2 headers... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } GTKPKG_CFLAGS=`$PKG_CONFIG --cflags gtk+-2.0` GTKPKG_LDFLAGS=`$PKG_CONFIG --libs gtk+-2.0` else as_fn_error $? "gtk headers not found. You probably need to install the devel package e.g. libgtk2.0-dev" "$LINENO" 5 fi fi else as_fn_error $? "pkgconfig is missing. Please install it" "$LINENO" 5 fi else as_fn_error $? " No gtk2 or gtk3 wxWidgets build found in your \$PATH. Please install one and try again. " "$LINENO" 5 fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : else # Broken: fails on valid input. continue fi rm -f conftest.err conftest.i conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.i conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.i conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then ac_path_GREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_GREP" || continue # Check for GNU ac_path_GREP and select it if it is found. # Check for GNU $ac_path_GREP case `"$ac_path_GREP" --version 2>&1` in *GNU*) ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_GREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 then ac_cv_path_EGREP="$GREP -E" else if test -z "$EGREP"; then ac_path_EGREP_found=false # Loop through the user's path and test for each of PROGNAME-LIST as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" as_fn_executable_p "$ac_path_EGREP" || continue # Check for GNU ac_path_EGREP and select it if it is found. # Check for GNU $ac_path_EGREP case `"$ac_path_EGREP" --version 2>&1` in *GNU*) ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; *) ac_count=0 $as_echo_n 0123456789 >"conftest.in" while : do cat "conftest.in" "conftest.in" >"conftest.tmp" mv "conftest.tmp" "conftest.in" cp "conftest.in" "conftest.nl" $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_max=$ac_count fi # 10*(2^10) chars as input seems more than enough test $ac_count -gt 10 && break done rm -f conftest.in conftest.tmp conftest.nl conftest.out;; esac $ac_path_EGREP_found && break 3 done done done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else ac_cv_header_stdc=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : : else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2; return 0; } _ACEOF if ac_fn_c_try_run "$LINENO"; then : else ac_cv_header_stdc=no fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext fi fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then $as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default " if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # Check whether --with-builtin_bzip2 was given. if test "${with_builtin_bzip2+set}" = set; then : withval=$with_builtin_bzip2; else withval=yes fi if test "x$withval" = "xno"; then : ac_fn_c_check_header_mongrel "$LINENO" "bzlib.h" "ac_cv_header_bzlib_h" "$ac_includes_default" if test "x$ac_cv_header_bzlib_h" = xyes; then : LIBBZ2="-lbz2" else as_fn_error $? "the bzip2 headers are missing. You need to install them, or else configure --with-builtin_bzip2=yes" "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-builtin_bzip2" >&5 $as_echo_n "checking for --with-builtin_bzip2... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } BZIP2_FLAGS=-DUSE_SYSTEM_BZIP2 if false; then AMBUILTIN_BZIP_TRUE= AMBUILTIN_BZIP_FALSE='#' else AMBUILTIN_BZIP_TRUE='#' AMBUILTIN_BZIP_FALSE= fi else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-builtin_bzip2" >&5 $as_echo_n "checking for --with-builtin_bzip2... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } if true; then AMBUILTIN_BZIP_TRUE= AMBUILTIN_BZIP_FALSE='#' else AMBUILTIN_BZIP_TRUE='#' AMBUILTIN_BZIP_FALSE= fi LIBBZ2="" fi # Check whether --enable-lzma_streams was given. if test "${enable_lzma_streams+set}" = set; then : enableval=$enable_lzma_streams; else enableval=yes fi if test "x$enableval" != "xno" && test "x$enableval" != "xdisable"; then : ac_fn_c_check_header_mongrel "$LINENO" "lzma.h" "ac_cv_header_lzma_h" "$ac_includes_default" if test "x$ac_cv_header_lzma_h" = xyes; then : LIBLZMA="-llzma" else as_fn_error $? "the lzma headers are missing. You need to install them, or else configure --disable-lzma_streams" "$LINENO" 5 fi else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-lzma_streams option" >&5 $as_echo_n "checking for the --enable-lzma_streams option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable" >&5 $as_echo "disable" >&6; } XZFLAGS=-DNO_LZMA_ARCHIVE_STREAMS LIBLZMA="" fi if test $WX_VERSION_MAJOR -lt 3; then : GLIB2="-lglib-2.0" elif test $WX_VERSION_MAJOR$WX_VERSION_MINOR$WX_VERSION_MICRO -lt 303; then : GLIB2="-lglib-2.0" elif test $WX_VERSION_MAJOR$WX_VERSION_MINOR$WX_VERSION_MICRO = 310; then : GLIB2="-lglib-2.0" else GLIB2= fi if test "x$WX_PORT" = x2; then : XTRLIBS="-lgtk-x11-2.0 -lgobject-2.0 -ldl -lglib-2.0 -lgio-2.0 -lutil $LIBBZ2 $LIBLZMA" elif test "x$WX_PORT" = x3; then : XTRLIBS="-lgtk-3 -lgobject-2.0 -ldl $GLIB2 -lgio-2.0 -lutil $LIBBZ2 $LIBLZMA" else XTRLIBS="-lutil -ldl $LIBBZ2 $LIBLZMA" fi if echo "$CXXFLAGS" | grep -q "O0"; then : : else CFLAGS="$CFLAGS -DNDEBUG" CXXFLAGS="$CXXFLAGS -DNDEBUG" fi msgfmt=`which msgfmt` if test -f "$msgfmt"; then : if true; then AMMSGFMT_AVAILABLE_TRUE= AMMSGFMT_AVAILABLE_FALSE='#' else AMMSGFMT_AVAILABLE_TRUE='#' AMMSGFMT_AVAILABLE_FALSE= fi MSGFMT="$msgfmt" else if false; then AMMSGFMT_AVAILABLE_TRUE= AMMSGFMT_AVAILABLE_FALSE='#' else AMMSGFMT_AVAILABLE_TRUE='#' AMMSGFMT_AVAILABLE_FALSE= fi { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: gettext not installed on your system so translations will not be compiled." >&5 $as_echo "$as_me: WARNING: gettext not installed on your system so translations will not be compiled." >&2;} fi # Check whether --enable-install_app was given. if test "${enable_install_app+set}" = set; then : enableval=$enable_install_app; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_app option" >&5 $as_echo_n "checking for the --enable-install_app option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } install_app=no if false; then AMINSTALL_install_app_TRUE= AMINSTALL_install_app_FALSE='#' else AMINSTALL_install_app_TRUE='#' AMINSTALL_install_app_FALSE= fi if false; then AMUNINSTALL_install_app_TRUE= AMUNINSTALL_install_app_FALSE='#' else AMUNINSTALL_install_app_TRUE='#' AMUNINSTALL_install_app_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_app option" >&5 $as_echo_n "checking for the --enable-install_app option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } install_app=install_only if true; then AMINSTALL_install_app_TRUE= AMINSTALL_install_app_FALSE='#' else AMINSTALL_install_app_TRUE='#' AMINSTALL_install_app_FALSE= fi if false; then AMUNINSTALL_install_app_TRUE= AMUNINSTALL_install_app_FALSE='#' else AMUNINSTALL_install_app_TRUE='#' AMUNINSTALL_install_app_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_app option" >&5 $as_echo_n "checking for the --enable-install_app option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } install_app=uninstall_only if false; then AMINSTALL_install_app_TRUE= AMINSTALL_install_app_FALSE='#' else AMINSTALL_install_app_TRUE='#' AMINSTALL_install_app_FALSE= fi if true; then AMUNINSTALL_install_app_TRUE= AMUNINSTALL_install_app_FALSE='#' else AMUNINSTALL_install_app_TRUE='#' AMUNINSTALL_install_app_FALSE= fi else install_app=yes if true; then AMINSTALL_install_app_TRUE= AMINSTALL_install_app_FALSE='#' else AMINSTALL_install_app_TRUE='#' AMINSTALL_install_app_FALSE= fi if true; then AMUNINSTALL_install_app_TRUE= AMUNINSTALL_install_app_FALSE='#' else AMUNINSTALL_install_app_TRUE='#' AMUNINSTALL_install_app_FALSE= fi fi # Check whether --enable-symlink was given. if test "${enable_symlink+set}" = set; then : enableval=$enable_symlink; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-symlink option" >&5 $as_echo_n "checking for the --enable-symlink option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } symlink=no if false; then AMINSTALL_symlink_TRUE= AMINSTALL_symlink_FALSE='#' else AMINSTALL_symlink_TRUE='#' AMINSTALL_symlink_FALSE= fi if false; then AMUNINSTALL_symlink_TRUE= AMUNINSTALL_symlink_FALSE='#' else AMUNINSTALL_symlink_TRUE='#' AMUNINSTALL_symlink_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-symlink option" >&5 $as_echo_n "checking for the --enable-symlink option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } symlink=install_only if true; then AMINSTALL_symlink_TRUE= AMINSTALL_symlink_FALSE='#' else AMINSTALL_symlink_TRUE='#' AMINSTALL_symlink_FALSE= fi if false; then AMUNINSTALL_symlink_TRUE= AMUNINSTALL_symlink_FALSE='#' else AMUNINSTALL_symlink_TRUE='#' AMUNINSTALL_symlink_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-symlink option" >&5 $as_echo_n "checking for the --enable-symlink option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } symlink=uninstall_only if false; then AMINSTALL_symlink_TRUE= AMINSTALL_symlink_FALSE='#' else AMINSTALL_symlink_TRUE='#' AMINSTALL_symlink_FALSE= fi if true; then AMUNINSTALL_symlink_TRUE= AMUNINSTALL_symlink_FALSE='#' else AMUNINSTALL_symlink_TRUE='#' AMUNINSTALL_symlink_FALSE= fi else symlink=yes if true; then AMINSTALL_symlink_TRUE= AMINSTALL_symlink_FALSE='#' else AMINSTALL_symlink_TRUE='#' AMINSTALL_symlink_FALSE= fi if true; then AMUNINSTALL_symlink_TRUE= AMUNINSTALL_symlink_FALSE='#' else AMUNINSTALL_symlink_TRUE='#' AMUNINSTALL_symlink_FALSE= fi fi # Check whether --enable-desktop was given. if test "${enable_desktop+set}" = set; then : enableval=$enable_desktop; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-desktop option" >&5 $as_echo_n "checking for the --enable-desktop option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } desktop=no if false; then AMINSTALL_desktop_TRUE= AMINSTALL_desktop_FALSE='#' else AMINSTALL_desktop_TRUE='#' AMINSTALL_desktop_FALSE= fi if false; then AMUNINSTALL_desktop_TRUE= AMUNINSTALL_desktop_FALSE='#' else AMUNINSTALL_desktop_TRUE='#' AMUNINSTALL_desktop_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-desktop option" >&5 $as_echo_n "checking for the --enable-desktop option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } desktop=install_only if true; then AMINSTALL_desktop_TRUE= AMINSTALL_desktop_FALSE='#' else AMINSTALL_desktop_TRUE='#' AMINSTALL_desktop_FALSE= fi if false; then AMUNINSTALL_desktop_TRUE= AMUNINSTALL_desktop_FALSE='#' else AMUNINSTALL_desktop_TRUE='#' AMUNINSTALL_desktop_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-desktop option" >&5 $as_echo_n "checking for the --enable-desktop option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } desktop=uninstall_only if false; then AMINSTALL_desktop_TRUE= AMINSTALL_desktop_FALSE='#' else AMINSTALL_desktop_TRUE='#' AMINSTALL_desktop_FALSE= fi if true; then AMUNINSTALL_desktop_TRUE= AMUNINSTALL_desktop_FALSE='#' else AMUNINSTALL_desktop_TRUE='#' AMUNINSTALL_desktop_FALSE= fi else desktop=yes if true; then AMINSTALL_desktop_TRUE= AMINSTALL_desktop_FALSE='#' else AMINSTALL_desktop_TRUE='#' AMINSTALL_desktop_FALSE= fi if true; then AMUNINSTALL_desktop_TRUE= AMUNINSTALL_desktop_FALSE='#' else AMUNINSTALL_desktop_TRUE='#' AMUNINSTALL_desktop_FALSE= fi fi # Check whether --enable-locale was given. if test "${enable_locale+set}" = set; then : enableval=$enable_locale; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-locale option" >&5 $as_echo_n "checking for the --enable-locale option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } locale=no if false; then AMINSTALL_locale_TRUE= AMINSTALL_locale_FALSE='#' else AMINSTALL_locale_TRUE='#' AMINSTALL_locale_FALSE= fi if false; then AMUNINSTALL_locale_TRUE= AMUNINSTALL_locale_FALSE='#' else AMUNINSTALL_locale_TRUE='#' AMUNINSTALL_locale_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-locale option" >&5 $as_echo_n "checking for the --enable-locale option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } locale=install_only if true; then AMINSTALL_locale_TRUE= AMINSTALL_locale_FALSE='#' else AMINSTALL_locale_TRUE='#' AMINSTALL_locale_FALSE= fi if false; then AMUNINSTALL_locale_TRUE= AMUNINSTALL_locale_FALSE='#' else AMUNINSTALL_locale_TRUE='#' AMUNINSTALL_locale_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-locale option" >&5 $as_echo_n "checking for the --enable-locale option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } locale=uninstall_only if false; then AMINSTALL_locale_TRUE= AMINSTALL_locale_FALSE='#' else AMINSTALL_locale_TRUE='#' AMINSTALL_locale_FALSE= fi if true; then AMUNINSTALL_locale_TRUE= AMUNINSTALL_locale_FALSE='#' else AMUNINSTALL_locale_TRUE='#' AMUNINSTALL_locale_FALSE= fi else locale=yes if true; then AMINSTALL_locale_TRUE= AMINSTALL_locale_FALSE='#' else AMINSTALL_locale_TRUE='#' AMINSTALL_locale_FALSE= fi if true; then AMUNINSTALL_locale_TRUE= AMUNINSTALL_locale_FALSE='#' else AMUNINSTALL_locale_TRUE='#' AMUNINSTALL_locale_FALSE= fi fi # Check whether --enable-install_rc was given. if test "${enable_install_rc+set}" = set; then : enableval=$enable_install_rc; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_rc option" >&5 $as_echo_n "checking for the --enable-install_rc option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } install_rc=no if false; then AMINSTALL_install_rc_TRUE= AMINSTALL_install_rc_FALSE='#' else AMINSTALL_install_rc_TRUE='#' AMINSTALL_install_rc_FALSE= fi if false; then AMUNINSTALL_install_rc_TRUE= AMUNINSTALL_install_rc_FALSE='#' else AMUNINSTALL_install_rc_TRUE='#' AMUNINSTALL_install_rc_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_rc option" >&5 $as_echo_n "checking for the --enable-install_rc option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } install_rc=install_only if true; then AMINSTALL_install_rc_TRUE= AMINSTALL_install_rc_FALSE='#' else AMINSTALL_install_rc_TRUE='#' AMINSTALL_install_rc_FALSE= fi if false; then AMUNINSTALL_install_rc_TRUE= AMUNINSTALL_install_rc_FALSE='#' else AMUNINSTALL_install_rc_TRUE='#' AMUNINSTALL_install_rc_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_rc option" >&5 $as_echo_n "checking for the --enable-install_rc option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } install_rc=uninstall_only if false; then AMINSTALL_install_rc_TRUE= AMINSTALL_install_rc_FALSE='#' else AMINSTALL_install_rc_TRUE='#' AMINSTALL_install_rc_FALSE= fi if true; then AMUNINSTALL_install_rc_TRUE= AMUNINSTALL_install_rc_FALSE='#' else AMUNINSTALL_install_rc_TRUE='#' AMUNINSTALL_install_rc_FALSE= fi else install_rc=yes if true; then AMINSTALL_install_rc_TRUE= AMINSTALL_install_rc_FALSE='#' else AMINSTALL_install_rc_TRUE='#' AMINSTALL_install_rc_FALSE= fi if true; then AMUNINSTALL_install_rc_TRUE= AMUNINSTALL_install_rc_FALSE='#' else AMUNINSTALL_install_rc_TRUE='#' AMUNINSTALL_install_rc_FALSE= fi fi # Check whether --enable-install_docs was given. if test "${enable_install_docs+set}" = set; then : enableval=$enable_install_docs; else enableval="enable" fi if test "$enableval" = "no" || test "$enableval" = "disable" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_docs option" >&5 $as_echo_n "checking for the --enable-install_docs option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable both install and uninstall" >&5 $as_echo "disable both install and uninstall" >&6; } install_docs=no if false; then AMINSTALL_install_docs_TRUE= AMINSTALL_install_docs_FALSE='#' else AMINSTALL_install_docs_TRUE='#' AMINSTALL_install_docs_FALSE= fi if false; then AMUNINSTALL_install_docs_TRUE= AMUNINSTALL_install_docs_FALSE='#' else AMUNINSTALL_install_docs_TRUE='#' AMUNINSTALL_install_docs_FALSE= fi elif test "$enableval" = "install_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_docs option" >&5 $as_echo_n "checking for the --enable-install_docs option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable uninstall only" >&5 $as_echo "disable uninstall only" >&6; } install_docs=install_only if true; then AMINSTALL_install_docs_TRUE= AMINSTALL_install_docs_FALSE='#' else AMINSTALL_install_docs_TRUE='#' AMINSTALL_install_docs_FALSE= fi if false; then AMUNINSTALL_install_docs_TRUE= AMUNINSTALL_install_docs_FALSE='#' else AMUNINSTALL_install_docs_TRUE='#' AMUNINSTALL_install_docs_FALSE= fi elif test "$enableval" = "uninstall_only" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for the --enable-install_docs option" >&5 $as_echo_n "checking for the --enable-install_docs option... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: disable install only" >&5 $as_echo "disable install only" >&6; } install_docs=uninstall_only if false; then AMINSTALL_install_docs_TRUE= AMINSTALL_install_docs_FALSE='#' else AMINSTALL_install_docs_TRUE='#' AMINSTALL_install_docs_FALSE= fi if true; then AMUNINSTALL_install_docs_TRUE= AMUNINSTALL_install_docs_FALSE='#' else AMUNINSTALL_install_docs_TRUE='#' AMUNINSTALL_install_docs_FALSE= fi else install_docs=yes if true; then AMINSTALL_install_docs_TRUE= AMINSTALL_install_docs_FALSE='#' else AMINSTALL_install_docs_TRUE='#' AMINSTALL_install_docs_FALSE= fi if true; then AMUNINSTALL_install_docs_TRUE= AMUNINSTALL_install_docs_FALSE='#' else AMUNINSTALL_install_docs_TRUE='#' AMUNINSTALL_install_docs_FALSE= fi fi ac_config_files="$ac_config_files Makefile locale/Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. ( for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do eval ac_val=\$$ac_var case $ac_val in #( *${as_nl}*) case $ac_var in #( *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes: double-quote # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; esac | sort ) | sed ' /^ac_cv_env_/b end t clear :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then if test "x$cache_file" != "x/dev/null"; then { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} if test ! -f "$cache_file" || test -h "$cache_file"; then cat confcache >"$cache_file" else case $cache_file in #( */* | ?:*) mv -f confcache "$cache_file"$$ && mv -f "$cache_file"$$ "$cache_file" ;; #( *) mv -f confcache "$cache_file" ;; esac fi fi else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. # # If the first sed substitution is executed (which looks for macros that # take arguments), then branch to the quote section. Otherwise, # look for a macro that doesn't take arguments. ac_script=' :mline /\\$/{ N s,\\\n,, b mline } t clear :clear s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g t quote s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g t quote b any :quote s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g s/\[/\\&/g s/\]/\\&/g s/\$/$$/g H :any ${ g s/^\n// s/\n/ /g p } ' DEFS=`sed -n "$ac_script" confdefs.h` ac_libobjs= ac_ltlibobjs= U= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -z "${AMMSGFMT_AVAILABLE_TRUE}" && test -z "${AMMSGFMT_AVAILABLE_FALSE}"; then as_fn_error $? "conditional \"AMMSGFMT_AVAILABLE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMMSGFMT_AVAILABLE_TRUE}" && test -z "${AMMSGFMT_AVAILABLE_FALSE}"; then as_fn_error $? "conditional \"AMMSGFMT_AVAILABLE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 $as_echo_n "checking that generated files are newer than configure... " >&6; } if test -n "$am_sleep_pid"; then # Hide warnings about reused PIDs. wait $am_sleep_pid 2>/dev/null fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 $as_echo "done" >&6; } if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -n "$EXEEXT"; then am__EXEEXT_TRUE= am__EXEEXT_FALSE='#' else am__EXEEXT_TRUE='#' am__EXEEXT_FALSE= fi if test -z "${AMBUILTIN_BZIP_TRUE}" && test -z "${AMBUILTIN_BZIP_FALSE}"; then as_fn_error $? "conditional \"AMBUILTIN_BZIP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMBUILTIN_BZIP_TRUE}" && test -z "${AMBUILTIN_BZIP_FALSE}"; then as_fn_error $? "conditional \"AMBUILTIN_BZIP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_app_TRUE}" && test -z "${AMINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_app_TRUE}" && test -z "${AMUNINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_app_TRUE}" && test -z "${AMINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_app_TRUE}" && test -z "${AMUNINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_app_TRUE}" && test -z "${AMINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_app_TRUE}" && test -z "${AMUNINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_app_TRUE}" && test -z "${AMINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_app_TRUE}" && test -z "${AMUNINSTALL_install_app_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_app\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_symlink_TRUE}" && test -z "${AMINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_symlink_TRUE}" && test -z "${AMUNINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_symlink_TRUE}" && test -z "${AMINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_symlink_TRUE}" && test -z "${AMUNINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_symlink_TRUE}" && test -z "${AMINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_symlink_TRUE}" && test -z "${AMUNINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_symlink_TRUE}" && test -z "${AMINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_symlink_TRUE}" && test -z "${AMUNINSTALL_symlink_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_symlink\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_desktop_TRUE}" && test -z "${AMINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_desktop_TRUE}" && test -z "${AMUNINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_desktop_TRUE}" && test -z "${AMINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_desktop_TRUE}" && test -z "${AMUNINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_desktop_TRUE}" && test -z "${AMINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_desktop_TRUE}" && test -z "${AMUNINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_desktop_TRUE}" && test -z "${AMINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_desktop_TRUE}" && test -z "${AMUNINSTALL_desktop_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_desktop\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_locale_TRUE}" && test -z "${AMINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_locale_TRUE}" && test -z "${AMUNINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_locale_TRUE}" && test -z "${AMINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_locale_TRUE}" && test -z "${AMUNINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_locale_TRUE}" && test -z "${AMINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_locale_TRUE}" && test -z "${AMUNINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_locale_TRUE}" && test -z "${AMINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_locale_TRUE}" && test -z "${AMUNINSTALL_locale_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_locale\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_rc_TRUE}" && test -z "${AMINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_rc_TRUE}" && test -z "${AMUNINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_rc_TRUE}" && test -z "${AMINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_rc_TRUE}" && test -z "${AMUNINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_rc_TRUE}" && test -z "${AMINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_rc_TRUE}" && test -z "${AMUNINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_rc_TRUE}" && test -z "${AMINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_rc_TRUE}" && test -z "${AMUNINSTALL_install_rc_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_rc\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_docs_TRUE}" && test -z "${AMINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_docs_TRUE}" && test -z "${AMUNINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_docs_TRUE}" && test -z "${AMINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_docs_TRUE}" && test -z "${AMUNINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_docs_TRUE}" && test -z "${AMINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_docs_TRUE}" && test -z "${AMUNINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMINSTALL_install_docs_TRUE}" && test -z "${AMINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi if test -z "${AMUNINSTALL_install_docs_TRUE}" && test -z "${AMUNINSTALL_install_docs_FALSE}"; then as_fn_error $? "conditional \"AMUNINSTALL_install_docs\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} as_write_fail=0 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} export SHELL _ASEOF cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 ## -------------------- ## ## M4sh Initialization. ## ## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else case `(set -o) 2>/dev/null` in #( *posix*) : set -o posix ;; #( *) : ;; esac fi as_nl=' ' export as_nl # Printing a long string crashes Solaris 7 /usr/bin/printf. as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo # Prefer a ksh shell builtin over an external printf program on Solaris, # but without wasting forks for bash or zsh. if test -z "$BASH_VERSION$ZSH_VERSION" \ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='print -r --' as_echo_n='print -rn --' elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' as_echo_n='/usr/ucb/echo -n' else as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' export as_echo_n_body as_echo_n='sh -c $as_echo_n_body as_echo' fi export as_echo_body as_echo='sh -c $as_echo_body as_echo' fi # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then PATH_SEPARATOR=: (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || PATH_SEPARATOR=';' } fi # IFS # We need space, tab and new line, in precisely that order. Quoting is # there to prevent editors from complaining about space-tab. # (If _AS_PATH_WALK were called with IFS unset, it would disable word # splitting by setting IFS to empty value.) IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done IFS=$as_save_IFS ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 exit 1 fi # Unset variables that we do not need and which cause bugs (e.g. in # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" # suppresses any "Segmentation fault" message there. '((' could # trigger a bug in pdksh 5.2.14. for as_var in BASH_ENV ENV MAIL MAILPATH do eval test x\${$as_var+set} = xset \ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. LC_ALL=C export LC_ALL LANGUAGE=C export LANGUAGE # CDPATH. (unset CDPATH) >/dev/null 2>&1 && unset CDPATH # as_fn_error STATUS ERROR [LINENO LOG_FD] # ---------------------------------------- # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are # provided, also output the error to LOG_FD, referencing LINENO. Then exit the # script with STATUS, using 1 if that was 0. as_fn_error () { as_status=$1; test $as_status -eq 0 && as_status=1 if test "$4"; then as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 fi $as_echo "$as_me: error: $2" >&2 as_fn_exit $as_status } # as_fn_error # as_fn_set_status STATUS # ----------------------- # Set $? to STATUS, without forking. as_fn_set_status () { return $1 } # as_fn_set_status # as_fn_exit STATUS # ----------------- # Exit the shell with STATUS, even in a "trap 0" or "set -e" context. as_fn_exit () { set +e as_fn_set_status $1 exit $1 } # as_fn_exit # as_fn_unset VAR # --------------- # Portably unset VAR. as_fn_unset () { { eval $1=; unset $1;} } as_unset=as_fn_unset # as_fn_append VAR VALUE # ---------------------- # Append the text in VALUE to the end of the definition contained in VAR. Take # advantage of any shell optimizations that allow amortized linear growth over # repeated appends, instead of the typical quadratic growth present in naive # implementations. if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : eval 'as_fn_append () { eval $1+=\$2 }' else as_fn_append () { eval $1=\$$1\$2 } fi # as_fn_append # as_fn_arith ARG... # ------------------ # Perform arithmetic evaluation on the ARGs, and store the result in the # global $as_val. Take advantage of shells that can avoid forks. The arguments # must be portable across $(()) and expr. if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : eval 'as_fn_arith () { as_val=$(( $* )) }' else as_fn_arith () { as_val=`expr "$@" || test $? -eq 1` } fi # as_fn_arith if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then as_dirname=dirname else as_dirname=false fi as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= case `echo -n x` in #((((( -n*) case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. xy) ECHO_C='\c';; *) echo `echo ksh88 bug on AIX 6.1` > /dev/null ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then rm -f conf$$.dir/conf$$.file else rm -f conf$$.dir mkdir conf$$.dir 2>/dev/null fi if (echo >conf$$.file) 2>/dev/null; then if ln -s conf$$.file conf$$ 2>/dev/null; then as_ln_s='ln -s' # ... but there are two gotchas: # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. # In both cases, we have to default to `cp -pR'. ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -pR' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -pR' fi else as_ln_s='cp -pR' fi rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null # as_fn_mkdir_p # ------------- # Create "$as_dir" as a directory, including parents if necessary. as_fn_mkdir_p () { case $as_dir in #( -*) as_dir=./$as_dir;; esac test -d "$as_dir" || eval $as_mkdir_p || { as_dirs= while :; do case $as_dir in #( *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( *) as_qdir=$as_dir;; esac as_dirs="'$as_qdir' $as_dirs" as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` test -d "$as_dir" && break done test -z "$as_dirs" || eval "mkdir $as_dirs" } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" } # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false fi # as_fn_executable_p FILE # ----------------------- # Test if FILE is an executable regular file. as_fn_executable_p () { test -f "$1" && test -x "$1" } # as_fn_executable_p as_test_x='test -x' as_executable_p=as_fn_executable_p # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" exec 6>&1 ## ----------------------------------- ## ## Main body of $CONFIG_STATUS script. ## ## ----------------------------------- ## _ASEOF test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" This file was extended by 4Pane $as_me 6.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ on `(hostname || uname -n) 2>/dev/null | sed 1q` " _ACEOF case $ac_config_files in *" "*) set x $ac_config_files; shift; ac_config_files=$*;; esac cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. config_files="$ac_config_files" config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ \`$as_me' instantiates files and other configuration actions from templates according to the current configuration. Unless the files and actions are specified as TAGs, all are instantiated by default. Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit --config print configuration, then exit -q, --quiet, --silent do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE Configuration files: $config_files Configuration commands: $config_commands Report bugs to the package provider." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ 4Pane config.status 6.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Copyright (C) 2012 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." ac_pwd='$ac_pwd' srcdir='$srcdir' INSTALL='$INSTALL' MKDIR_P='$MKDIR_P' AWK='$AWK' test -n "\$AWK" || AWK=awk _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # The default lists apply if the user does not specify any file. ac_need_defaults=: while test $# != 0 do case $1 in --*=?*) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; --*=) ac_option=`expr "X$1" : 'X\([^=]*\)='` ac_optarg= ac_shift=: ;; *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; esac case $ac_option in # Handling of the options. -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) $as_echo "$ac_cs_version"; exit ;; --config | --confi | --conf | --con | --co | --c ) $as_echo "$ac_cs_config"; exit ;; --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; '') as_fn_error $? "missing file argument" ;; esac as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --he | --h | --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) as_fn_error $? "unrecognized option: \`$1' Try \`$0 --help' for more information." ;; *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 if \$ac_cs_recheck; then set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion shift \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 CONFIG_SHELL='$SHELL' export CONFIG_SHELL exec "\$@" fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX $as_echo "$ac_log" } >&5 _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # Handling of arguments. for ac_config_target in $ac_config_targets do case $ac_config_target in "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "locale/Makefile") CONFIG_FILES="$CONFIG_FILES locale/Makefile" ;; *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Hook for its removal unless debugging. # Note that there is a small window in which the directory will not be cleaned: # after its creation but before its name has been assigned to `$tmp'. $debug || { tmp= ac_tmp= trap 'exit_status=$? : "${ac_tmp:=$tmp}" { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. # This happens for instance with `./config.status config.h'. if test -n "$CONFIG_FILES"; then ac_cr=`echo X | tr X '\015'` # On cygwin, bash can eat \r inside `` if the user requested igncr. # But we know of no other shell where ac_cr would be empty at this # point, so we can use a bashism as a fallback. if test "x$ac_cr" = x; then eval ac_cr=\$\'\\r\' fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then ac_cs_awk_cr='\\r' else ac_cs_awk_cr=$ac_cr fi echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF { echo "cat >conf$$subs.awk <<_ACEOF" && echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h s/^/S["/; s/!.*/"]=/ p g s/^[^!]*!// :repl t repl s/'"$ac_delim"'$// t delim :nl h s/\(.\{148\}\)..*/\1/ t more1 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ p n b repl :more1 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t nl :delim h s/\(.\{148\}\)..*/\1/ t more2 s/["\\]/\\&/g; s/^/"/; s/$/"/ p b :more2 s/["\\]/\\&/g; s/^/"/; s/$/"\\/ p g s/.\{148\}// t delim ' >$CONFIG_STATUS || ac_write_fail=1 rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" } { line = $ 0 nfields = split(line, field, "@") substed = 0 len = length(field[1]) for (i = 2; i < nfields; i++) { key = field[i] keylen = length(key) if (S_is_set[key]) { value = S[key] line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) len += length(value) + length(field[++i]) substed = 1 } else len += 1 + keylen } print line } _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove sole $(srcdir), # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ h s/// s/^/:/ s/[ ]*$/:/ s/:\$(srcdir):/:/g s/:\${srcdir}:/:/g s/:@srcdir@:/:/g s/^:*// s/:*$// x s/\(=[ ]*\).*/\1/ G s/\n// s/^[^=]*=[ ]*$// }' fi cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 fi # test -n "$CONFIG_FILES" eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS" shift for ac_tag do case $ac_tag in :[FHLC]) ac_mode=$ac_tag; continue;; esac case $ac_mode$ac_tag in :[FHL]*:*);; :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac ac_save_IFS=$IFS IFS=: set x $ac_tag IFS=$ac_save_IFS shift ac_file=$1 shift case $ac_mode in :L) ac_source=$1;; :[FH]) ac_file_inputs= for ac_f do case $ac_f in -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. test -f "$ac_f" || case $ac_f in [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ configure_input='Generated from '` $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. case $configure_input in #( *\&* | *\|* | *\\* ) ac_sed_conf_input=`$as_echo "$configure_input" | sed 's/[\\\\&|]/\\\\&/g'`;; #( *) ac_sed_conf_input=$configure_input;; esac case $ac_tag in *:-:* | *:-) cat >"$ac_tmp/stdin" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` # A ".." for each directory in $ac_dir_suffix. ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` case $ac_top_builddir_sub in "") ac_top_builddir_sub=. ac_top_build_prefix= ;; *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; esac ;; esac ac_abs_top_builddir=$ac_pwd ac_abs_builddir=$ac_pwd$ac_dir_suffix # for backward compatibility: ac_top_builddir=$ac_top_build_prefix case $srcdir in .) # We are building in place. ac_srcdir=. ac_top_srcdir=$ac_top_builddir_sub ac_abs_top_srcdir=$ac_pwd ;; [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ac_abs_top_srcdir=$srcdir ;; *) # Relative name. ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_build_prefix$srcdir ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix case $ac_mode in :F) # # CONFIG_FILE # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ac_MKDIR_P=$MKDIR_P case $MKDIR_P in [\\/$]* | ?:[\\/]* ) ;; */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= ac_sed_dataroot=' /datarootdir/ { p q } /@datadir@/p /@docdir@/p /@infodir@/p /@localedir@/p /@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_datarootdir_hack=' s&@datadir@&$datadir&g s&@docdir@&$docdir&g s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF # Neutralize VPATH when `$srcdir' = `.'. # Shell code in configure.ac might set extrasub. # FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_sed_extra="$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s|@configure_input@|$ac_sed_conf_input|;t t s&@top_builddir@&$ac_top_builddir_sub&;t t s&@top_build_prefix@&$ac_top_build_prefix&;t t s&@srcdir@&$ac_srcdir&;t t s&@abs_srcdir@&$ac_abs_srcdir&;t t s&@top_srcdir@&$ac_top_srcdir&;t t s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t s&@builddir@&$ac_builddir&;t t s&@abs_builddir@&$ac_abs_builddir&;t t s&@abs_top_builddir@&$ac_abs_top_builddir&;t t s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ "$ac_tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} rm -f "$ac_tmp/stdin" case $ac_file in -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac case $ac_file$ac_mode in "depfiles":C) test x"$AMDEP_TRUE" != x"" || { # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. # TODO: see whether this extra hack can be removed once we start # requiring Autoconf 2.70 or later. case $CONFIG_FILES in #( *\'*) : eval set x "$CONFIG_FILES" ;; #( *) : set x $CONFIG_FILES ;; #( *) : ;; esac shift # Used to flag and report bootstrapping failures. am_rc=0 for am_mf do # Strip MF so we end up with the name of the file. am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile which includes # dependency-tracking related rules and includes. # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ || continue am_dirpart=`$as_dirname -- "$am_mf" || $as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$am_mf" : 'X\(//\)[^/]' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X"$am_mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q } /^X\(\/\/\)[^/].*/{ s//\1/ q } /^X\(\/\/\)$/{ s//\1/ q } /^X\(\/\).*/{ s//\1/ q } s/.*/./; q'` am_filepart=`$as_basename -- "$am_mf" || $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ X"$am_mf" : 'X\(//\)$' \| \ X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || $as_echo X/"$am_mf" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } /^X\/\(\/\/\)$/{ s//\1/ q } /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` { echo "$as_me:$LINENO: cd "$am_dirpart" \ && sed -e '/# am--include-marker/d' "$am_filepart" \ | $MAKE -f - am--depfiles" >&5 (cd "$am_dirpart" \ && sed -e '/# am--include-marker/d' "$am_filepart" \ | $MAKE -f - am--depfiles) >&5 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } || am_rc=$? done if test $am_rc -ne 0; then { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "Something went wrong bootstrapping makefile fragments for automatic dependency tracking. Try re-running configure with the '--disable-dependency-tracking' option to at least be able to build the package (albeit without support for automatic dependency tracking). See \`config.log' for more details" "$LINENO" 5; } fi { am_dirpart=; unset am_dirpart;} { am_filepart=; unset am_filepart;} { am_mf=; unset am_mf;} { am_rc=; unset am_rc;} rm -f conftest-deps.mk } ;; esac done # for ac_tag as_fn_exit 0 _ACEOF ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || as_fn_exit 1 fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi ./4pane-6.0/Archive.h0000666000175000017500000001703313455327440013234 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Archive.h // Purpose: Non-virtual archive stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef ARCHIVEH #define ARCHIVEH #include "wx/xrc/xmlres.h" enum returntype { cancel, valid, retry }; class Archive; class DecompressOrExtractDlg : public wxDialog // Simple dialog to allow choice between Archive & Compressed in ExtractOrVerify { protected: void OnDecompressButton(wxCommandEvent& event){ EndModal(XRCID("Compressed")); } void OnExtractButton(wxCommandEvent& event){ EndModal(XRCID("Archive")); } DECLARE_EVENT_TABLE() }; class MyListBox : public wxListBox // A control in the Create dialog. Subclassed so permit user to delete unwanted entries { public: MyListBox(){} void Add(wxString newfile); // Appends to the list only if not already present protected: void OnKey(wxKeyEvent& event); private: DECLARE_DYNAMIC_CLASS(MyListBox) DECLARE_EVENT_TABLE() }; class ArchiveDialogBase : public wxDialog { public: ArchiveDialogBase(Archive* parent = NULL) : m_parent(parent) {} void Init(); static bool IsAnArchive(const wxString& filename, bool append = false); // Decide if filename is an archive suitable for extracting and/or appending to static wxString FindUncompressedName(const wxString& archivename, enum ziptype ztype); // What'd a compressed archive be called if uncompressed? protected: void OnAddFile(wxCommandEvent& event); // Add the contents of combo to the listbox void OnFileBrowse(wxCommandEvent& event); wxComboBox* combo; MyListBox* list; Archive* m_parent; private: DECLARE_EVENT_TABLE() }; class MakeArchiveDialog : public ArchiveDialogBase { public: MakeArchiveDialog(){} MakeArchiveDialog(Archive* parent, bool newarch); enum returntype GetCommand(); // Parse entered options into a command protected: void OnCreateInBrowse(wxCommandEvent& event); void OnCheckBox(wxCommandEvent& event); void OnUpdateUI(wxUpdateUIEvent& event); enum returntype GetNewCommand(); // Parse entered options into command for a new archive enum returntype GetAppendCommand(); // Parse entered options into command to append to an archive void OnOK(wxCommandEvent& event); wxString MakeTarCommand(const wxString& archivename); //Submethod of GetNewCommand/GetAppendCommand wxString AppendCompressedTar(const wxString& archivename, enum ziptype ztype ); // Handles the uncompress, append, recompress contruction wxString AddSortedFiles(bool prependingpaths = true); // Returns files sorted by dir, each dir preceded by a -C unless prependingpaths is false wxRadioBox* m_compressorradio; wxComboBox* createincombo; bool OKEnabled; // Flags whether the OK button should be enabled bool NewArchive; private: DECLARE_EVENT_TABLE() }; class CompressDialog : public ArchiveDialogBase { public: CompressDialog(){} CompressDialog(Archive* parent); enum returntype GetCommand(); // Parse entered options into a command protected: void OnUpdateUI(wxUpdateUIEvent& event); void AddRecursively(const wxString& dir, wxArrayString& filearray, bool recurse); // Put files from this dir, & optionally all its subdirs, into filearray private: DECLARE_EVENT_TABLE() }; class DecompressDialog : public ArchiveDialogBase { public: DecompressDialog(){} DecompressDialog(Archive* parent); enum returntype GetCommand(); // Parse entered options into a command protected: bool SortFiles(const wxArrayString& selected, wxArrayString& gz, wxArrayString& bz, wxArrayString& xz, wxArrayString& sevenz, wxArrayString& lzo, bool recurse, bool archivestoo = false); // Sort selected files into .bz, .gz & rubbish. Recurses into dirs if recurse void OnUpdateUI(wxUpdateUIEvent& event); private: DECLARE_EVENT_TABLE() }; class VerifyCompressedDialog : public DecompressDialog // Note whence this class derives. Means it can use SortFiles { public: VerifyCompressedDialog(){} VerifyCompressedDialog(Archive* parent); enum returntype GetCommand(); // Parse entered options into a command }; class ExtractArchiveDlg : public wxDialog { public: ExtractArchiveDlg(){} ExtractArchiveDlg(Archive* parent); void Init(); enum returntype GetCommand(); // Parse entered options into a command protected: void OnUpdateUI(wxUpdateUIEvent& event); void OnCreateInBrowse(wxCommandEvent& event); // Browse for the dir into which to extract the archive virtual void OnOK(wxCommandEvent& event); void OnFileBrowse(wxCommandEvent& event); wxTextCtrl* text; wxComboBox* CreateInCombo; Archive* m_parent; private: DECLARE_EVENT_TABLE() }; class VerifyArchiveDlg : public ExtractArchiveDlg { public: VerifyArchiveDlg(){} VerifyArchiveDlg(Archive* parent); enum returntype GetCommand(); // Parse entered options into a command protected: virtual void OnOK(wxCommandEvent& event); }; class MyGenericDirCtrl; class Archive // which, unsurprisingly, deals with archives and (de)compressing. Ordinary, not streams { enum ExtractCompressVerify_type { ecv_compress, ecv_decompress, ecv_verifycompressed, ecv_makearchive, ecv_addtoarchive, ecv_extractarchive, ecv_verifyarchive, ecv_invalid }; public: Archive(MyGenericDirCtrl* current) : active(current) { LoadPrefs(); IsThisCompressorAvailable(zt_7z); /* Do this here to set m_7zString*/ } ~Archive(){ SavePrefs(); } void CreateOrAppend(bool NewArchive){ DoExtractCompressVerify(NewArchive ? ecv_makearchive : ecv_addtoarchive); } void Compress(){ DoExtractCompressVerify(ecv_compress); } void ExtractOrVerify(bool extract=true); // Extracts or verifies either archives or compressed files, depending on which are selected static enum ziptype Categorise(const wxString& filetype); // Returns the type of file in filetype ie .gz, .tar etc static enum GDC_images GetIconForArchiveType(const wxString& filename, bool IsFakeFS); // Returns the correct treectrl icon for this type of archive/package/compressed thing static enum GDC_images GetIconForArchiveType(ziptype zt, bool IsFakeFS); static bool IsThisCompressorAvailable(enum ziptype type); wxString command; // The command to be executed wxArrayString FilepathArray; // Holds the files to be archived wxArrayString ArchiveHistory; // Stores the archive filepath history MyGenericDirCtrl* active; wxArrayString Updatedir; // Holds dirs that will need to be refreshed afterwards unsigned int Slidervalue; // Store values, loaded from config, representing last-used choices for dialogs unsigned int m_Compressionchoice; bool Recurse; bool DecompressRecurse; bool Force; bool DecompressForce; bool DecompressArchivesToo; bool ArchiveExtractForce; bool DerefSymlinks; bool m_Verify; bool DeleteSource; unsigned int ArchiveCompress; const wxString& GetSevenZString() const { return m_7zString; } protected: void DoExtractCompressVerify(enum ExtractCompressVerify_type type); void LoadHistory(); // Load the relevant history for combobox void SaveHistory(); void LoadPrefs(); // Load the last-used values for checkboxes etc void SavePrefs(); void UpdatePanes(); // Work out which dirs are most likely to have been altered, & update them static wxString m_7zString; wxConfigBase* config; }; #endif //ARCHIVEH ./4pane-6.0/missing0000755000175000017500000001533613367740426013106 0ustar daviddavid#! /bin/sh # Common wrapper for a few potentially missing GNU programs. scriptversion=2018-03-07.03; # UTC # Copyright (C) 1996-2018 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try '$0 --help' for more information" exit 1 fi case $1 in --is-lightweight) # Used by our autoconf macros to check whether the available missing # script is modern enough. exit 0 ;; --run) # Back-compat with the calling convention used by older automake. shift ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due to PROGRAM being missing or too old. Options: -h, --help display this help and exit -v, --version output version information and exit Supported PROGRAM values: aclocal autoconf autoheader autom4te automake makeinfo bison yacc flex lex help2man Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and 'g' are ignored when checking the name. Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: unknown '$1' option" echo 1>&2 "Try '$0 --help' for more information" exit 1 ;; esac # Run the given program, remember its exit status. "$@"; st=$? # If it succeeded, we are done. test $st -eq 0 && exit 0 # Also exit now if we it failed (or wasn't found), and '--version' was # passed; such an option is passed most likely to detect whether the # program is present and works. case $2 in --version|--help) exit $st;; esac # Exit code 63 means version mismatch. This often happens when the user # tries to use an ancient version of a tool on a file that requires a # minimum version. if test $st -eq 63; then msg="probably too old" elif test $st -eq 127; then # Program was missing. msg="missing on your system" else # Program was found and executed, but failed. Give up. exit $st fi perl_URL=https://www.perl.org/ flex_URL=https://github.com/westes/flex gnu_software_URL=https://www.gnu.org/software program_details () { case $1 in aclocal|automake) echo "The '$1' program is part of the GNU Automake package:" echo "<$gnu_software_URL/automake>" echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/autoconf>" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; autoconf|autom4te|autoheader) echo "The '$1' program is part of the GNU Autoconf package:" echo "<$gnu_software_URL/autoconf/>" echo "It also requires GNU m4 and Perl in order to run:" echo "<$gnu_software_URL/m4/>" echo "<$perl_URL>" ;; esac } give_advice () { # Normalize program name to check for. normalized_program=`echo "$1" | sed ' s/^gnu-//; t s/^gnu//; t s/^g//; t'` printf '%s\n' "'$1' is $msg." configure_deps="'configure.ac' or m4 files included by 'configure.ac'" case $normalized_program in autoconf*) echo "You should only need it if you modified 'configure.ac'," echo "or m4 files included by it." program_details 'autoconf' ;; autoheader*) echo "You should only need it if you modified 'acconfig.h' or" echo "$configure_deps." program_details 'autoheader' ;; automake*) echo "You should only need it if you modified 'Makefile.am' or" echo "$configure_deps." program_details 'automake' ;; aclocal*) echo "You should only need it if you modified 'acinclude.m4' or" echo "$configure_deps." program_details 'aclocal' ;; autom4te*) echo "You might have modified some maintainer files that require" echo "the 'autom4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) echo "You should only need it if you modified a '.y' file." echo "You may want to install the GNU Bison package:" echo "<$gnu_software_URL/bison/>" ;; lex*|flex*) echo "You should only need it if you modified a '.l' file." echo "You may want to install the Fast Lexical Analyzer package:" echo "<$flex_URL>" ;; help2man*) echo "You should only need it if you modified a dependency" \ "of a man page." echo "You may want to install the GNU Help2man package:" echo "<$gnu_software_URL/help2man/>" ;; makeinfo*) echo "You should only need it if you modified a '.texi' file, or" echo "any other file indirectly affecting the aspect of the manual." echo "You might want to install the Texinfo package:" echo "<$gnu_software_URL/texinfo/>" echo "The spurious makeinfo call might also be the consequence of" echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" echo "want to install GNU make:" echo "<$gnu_software_URL/make/>" ;; *) echo "You might have modified some files without having the proper" echo "tools for further handling them. Check the 'README' file, it" echo "often tells you about the needed prerequisites for installing" echo "this package. You may also peek at any GNU archive site, in" echo "case some other package contains this missing '$1' program." ;; esac } give_advice "$1" | sed -e '1s/^/WARNING: /' \ -e '2,$s/^/ /' >&2 # Propagate the correct exit status (expected to be 127 for a program # not found, 63 for a program that failed due to version mismatch). exit $st # Local variables: # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: ./4pane-6.0/MyDragImage.cpp0000644000175000017500000003003013566743466014335 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyDragImage.cpp // Purpose: Pseudo D'n'D // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/scrolwin.h" #include "wx/menu.h" #include "wx/dirctrl.h" #if defined __WXGTK__ #include #endif #include "MyDragImage.h" #include "MyTreeCtrl.h" #include "MyDirs.h" #include "MyGenericDirCtrl.h" #include "MyFrame.h" const size_t NO_OF_COPIER_IMAGES = 44; MyDragImage::MyDragImage() : m_PreviousWin(NULL), WindowToScroll(NULL) { slide = 0; dragtype = myDragMove; m_standardcursor = MyFrame::mainframe->GetStandardCursor(); if (!m_standardcursor.IsOk()) m_standardcursor = wxCursor(*wxSTANDARD_CURSOR); // In the unlikely event of it being invalid... m_textctlcursor = MyFrame::mainframe->GetTextCrlCursor(); if (!m_textctlcursor.IsOk()) m_textctlcursor = wxCursor(wxCURSOR_IBEAM); wxImage di_img = wxGetApp().CorrectForDarkTheme(BITMAPSDIR+wxT("dragicon.png")); drag_icon.CopyFromBitmap(wxBitmap(di_img)); hardlink_icon.LoadFile(BITMAPSDIR+wxT("hardlink.png"), wxBITMAP_TYPE_PNG); softlink_icon.LoadFile(BITMAPSDIR+wxT("softlink.png"), wxBITMAP_TYPE_PNG); copier_icon = new wxIcon[NO_OF_COPIER_IMAGES]; for (uint n = 0; n < NO_OF_COPIER_IMAGES; ++n) { wxString iconfile; iconfile.Printf(wxT("%sphotocopier_%u.png"), BITMAPSDIR.c_str(), n); copier_icon[n].LoadFile(iconfile, wxBITMAP_TYPE_PNG); } m_icon = drag_icon; currentcursor = dndStdCursor; slidetimer = new MyDragImageSlideTimer; slidetimer->Init(this); // Set up the timer that incs slide-show scrolltimer = new MyDragImageScrollTimer; scrolltimer->Init(this); // Set up the timer that scrolls a pane's tree } MyDragImage::~MyDragImage() { slidetimer->Stop(); delete slidetimer; scrolltimer->Stop(); delete scrolltimer; delete[] copier_icon; } void MyDragImage::IncSlide() // For animation, inc and redraw the image { m_icon = copier_icon[slide]; // Change the icon RedrawImage(pt - m_offset, pt - m_offset, true, true); // We must redraw here, otherwise there's no update when the mouse isn't moving if (++slide >= NO_OF_COPIER_IMAGES) slide = 0; // Inc ready for next time } void MyDragImage::SetImageType(enum myDragResult type) // Are we (currently) copying, softlinking etc? Sets the image appropriately { if (type == dragtype) return; // No change needed slidetimer->Stop(); // Stop the timer, in case we're animating slide = 0; // & reset the slide number if (m_isShown) Hide(); // The 'if' is in case entry is pre wxGenericDragImage::BeginDrag() dragtype = type; // Set the new drag type switch (dragtype) { case myDragMove: m_icon = drag_icon; break; case myDragHardLink: m_icon = hardlink_icon; break; case myDragSoftLink: m_icon = softlink_icon; break; case myDragCopy: m_icon = copier_icon[slide++]; slidetimer->Start(150, wxTIMER_CONTINUOUS); break; default: return; } if (m_windowDC) Show(); // The 'if' is in case entry is pre wxGenericDragImage::BeginDrag() } void MyDragImage::DoPageScroll(wxMouseEvent& event) { wxPoint pt; wxWindow *win = wxFindWindowAtPointer(pt); // Find window under mouse if (win == NULL) { return; } if (win->GetName() != wxT("MyTreeCtrl")) return; // We only want to scroll treectrls pt = win->ScreenToClient(pt); int ht = win->GetClientSize().GetHeight(); bool goingdown = pt.y > ht / 2; // If the click is in the top half of the pane, do a page-up; otherwise page-down Hide(); // We must Hide while scrolling, otherwise the tree moves relative to the image, which leaves ghost images wxScrollWinEvent scrollevent(goingdown ? wxEVT_SCROLLWIN_PAGEDOWN : wxEVT_SCROLLWIN_PAGEUP, win->GetId(), 0); win->GetEventHandler()->ProcessEvent(scrollevent); win->Refresh(); win->Update(); Show(); } void MyDragImage::DoLineScroll(wxMouseEvent& event) { wxPoint pt; wxWindow *win = wxFindWindowAtPointer(pt); // Find window under mouse if (win == NULL) return; if (win->GetName() != wxT("MyTreeCtrl")) return; // We only want to scroll treectrls Hide(); // We must Hide while scrolling, otherwise the tree moves relative to the image, which leaves ghost images bool goingdown = event.GetWheelRotation() < 0; // Which way are we scrolling int lines = event.GetLinesPerAction(); // Unfortunately, in wxGTK-2.4.2 this is always zero, so: if (!lines) lines = LINES_PER_MOUSEWHEEL_SCROLL; for (int n=0; n < lines; ++n) // Send a scroll event for every line to be scrolled { wxScrollWinEvent scrollevent(goingdown ? wxEVT_SCROLLWIN_LINEDOWN : wxEVT_SCROLLWIN_LINEUP, win->GetId(), 0); win->GetEventHandler()->ProcessEvent(scrollevent); } win->Refresh(); win->Update(); Show(); } void MyDragImage::OnLeavingPane(wxWindow* lastwin) // Called when leaving a pane, in case we're lurking at the edge in order to scroll { static size_t delay = 500; if (lastwin == NULL) return; WindowToScroll = lastwin; scrollno = 0; wxPoint mousePt = WindowToScroll->ScreenToClient(wxGetMousePosition()); // Find where the mouse is in relation to the (exited) pane WindowToScroll->GetSize(&width, &height); // Store window dimensions if (mousePt.x < 0 || mousePt.x > width) // If we are outside the width of the pane, to the left or the right, abort { WindowToScroll = NULL; return; } if (mousePt.y <= 0) // We're above the pane { scrolltimer->Stop(); // In case we're whipping from 1 pane to another scrolltimer->Start(delay, wxTIMER_ONE_SHOT); // Start the timer, with an initial longish pause exitlocation = 0; // Pretend the mouse is exactly on the top edge } else if (mousePt.y >= height) // We're below { scrolltimer->Stop(); scrolltimer->Start(delay, wxTIMER_ONE_SHOT); exitlocation = height; // Pretend the mouse is exactly on the bottom edge } SetCursor(dndScrollCursor); } void MyDragImage::QueryScroll() // Called by the scroll timer. Scrolls if appropriate, faster each time, then redoes the timer { static size_t experimentalerror = 20; // This allows a bit of leeway either side of the pane's edge if (WindowToScroll == NULL) return; wxPoint mousePt = WindowToScroll->ScreenToClient(wxGetMousePosition()); if (mousePt.x < 0 || mousePt.x > width) // If we're now outside the width of the pane, to the left or the right, abort { WindowToScroll = NULL; SetCursor(dndStdCursor); return; } // See if we're still on the fringe of the pane, within experimental error int top = exitlocation - experimentalerror; int bottom = exitlocation + experimentalerror; if (mousePt.y < top || mousePt.y > bottom) // If we're now outside the 'keep going' zone, abort { WindowToScroll = NULL; SetCursor(dndStdCursor); return; } Hide(); if (++scrollno < 30) // If <30, scroll n lines at a time, inc.ing n every 3rd beat { wxScrollWinEvent scrollevent(exitlocation ? wxEVT_SCROLLWIN_LINEDOWN : wxEVT_SCROLLWIN_LINEUP, WindowToScroll->GetId(), 0); for (size_t n=0; n < scrollno/3; ++n) WindowToScroll->GetEventHandler()->ProcessEvent(scrollevent); } else // If already >=30, scroll a page at a time { wxScrollWinEvent scrollevent(exitlocation ? wxEVT_SCROLLWIN_PAGEDOWN : wxEVT_SCROLLWIN_PAGEUP, WindowToScroll->GetId(), 0); WindowToScroll->GetEventHandler()->ProcessEvent(scrollevent); } WindowToScroll->Refresh(); WindowToScroll->Update(); Show(); if (scrolltimer != NULL) scrolltimer->Start(200, wxTIMER_ONE_SHOT); // Re-set the timer for another go. Check for null because we've just Yielded, and might have been destroyed } void MyDragImage::SetCorrectCursorForWindow(wxWindow* win) const { wxCHECK_RET(win, wxT("Invalid window")); if (dynamic_cast(win)) win->SetCursor(m_textctlcursor); else win->SetCursor(m_standardcursor); } #if wxVERSION_NUMBER <= 3000 void MyDragImage::SetCursor(enum DnDCursortype cursortype) // Sets either Standard, Selected or Scroll cursor { if (currentcursor == cursortype) return; bool needsrecapture = false; if (MyFrame::mainframe->HasCapture()) { MyFrame::mainframe->ReleaseMouse(); // If we don't release the mouse, the change doesn't take effect needsrecapture = true; } switch(cursortype) { case dndSelectedCursor: MyFrame::mainframe->SetCursor(MyFrame::mainframe->DnDSelectedCursor); currentcursor = dndSelectedCursor; break; case dndUnselect: if (currentcursor != dndSelectedCursor) break; // The idea is to ->std if selected, otherwise ignore case dndStdCursor: MyFrame::mainframe->SetCursor(MyFrame::mainframe->DnDStdCursor); currentcursor = dndStdCursor; break; case dndScrollCursor: MyFrame::mainframe->SetCursor(*wxCROSS_CURSOR); currentcursor = dndScrollCursor; break; default: ; } if (needsrecapture) MyFrame::mainframe->CaptureMouse(); } #else // !wxVERSION_NUMBER <= 3000 // wxGTK's cursor management changed considerably soon after the 3.0.0 release. Now it's the child window, not the frame, that's relevant void MyDragImage::SetCursor(enum DnDCursortype cursortype) // Sets either Standard, Selected or Scroll cursor { if (m_PreviousWin && cursortype == dndOriginalCursor) { SetCorrectCursorForWindow(m_PreviousWin); return; } // Ended DnD, so revert the current window's original cursor wxPoint pt; wxWindow* currentwin = wxFindWindowAtPointer(pt); // Don't 'optimise' here by returning if currentwin == m_PreviousWin and their cursor enum types are the same; the actual cursor may have changed e.g. over a pane divider if (currentwin && m_PreviousWin && currentwin != m_PreviousWin) SetCorrectCursorForWindow(m_PreviousWin); // We're leaving a window, so revert to its original cursor; if we don't here, no one else will #if GTK_CHECK_VERSION(3,0,0) && !GTK_CHECK_VERSION(3,10,0) wxString prevwinname; if (m_PreviousWin) prevwinname = m_PreviousWin->GetName(); // See below #endif m_PreviousWin = currentwin; if (!currentwin) currentwin = MyFrame::mainframe; wxWindow* capturewin = wxWindow::GetCapture(); bool needsrecapture = false, needsrefresh = false; if (capturewin) { capturewin->ReleaseMouse(); // If we don't release the mouse, the change doesn't take effect needsrecapture = true; } switch(cursortype) { case dndSelectedCursor: currentwin->SetCursor(MyFrame::mainframe->DnDSelectedCursor); currentcursor = dndSelectedCursor; needsrefresh = true; break; case dndUnselect: if (currentcursor != dndSelectedCursor) break; // The idea is to ->std if selected, otherwise ignore case dndStdCursor: currentwin->SetCursor(MyFrame::mainframe->DnDStdCursor); currentcursor = dndStdCursor; needsrefresh = true; break; case dndScrollCursor: currentwin->SetCursor(*wxCROSS_CURSOR); currentcursor = dndScrollCursor; needsrefresh = true; break; default: break; // We dealt with dndOriginalCursor earlier } #if GTK_CHECK_VERSION(3,0,0) && !GTK_CHECK_VERSION(3,10,0) // Debian's gtk3 manages to crash inside cairo_fill when we leave an editor/device button. So don't refresh then, even though it means editors never get dndSelectedCursor if (needsrecapture && needsrefresh && (currentwin->GetName() == "MyTreeCtrl" || currentwin->GetName() == "MyFrame" || currentwin->GetName() == "TerminalEm") && (prevwinname == "MyTreeCtrl" || prevwinname == "MyFrame" || prevwinname == "TerminalEm")) #else if (needsrefresh) #endif { currentwin->Refresh(); wxYieldIfNeeded(); } if (needsrecapture) capturewin->CaptureMouse(); } #endif // !wxVERSION_NUMBER <= 3000 ./4pane-6.0/MyFiles.h0000644000175000017500000001221113440767736013222 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyFiles.h // Purpose: File-view // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MYFILESH #define MYFILESH #include "wx/filename.h" #include "wx/dir.h" #include "wx/toolbar.h" #include "wx/wx.h" #include "wx/notebook.h" #include "wx/listctrl.h" #include "Externs.h" #include "MyGenericDirCtrl.h" //-------------------------------------------------------------------------- #include #include #include WX_DECLARE_OBJARRAY(class DataBase, FileDataObjArray); // Declare the array of FileData objects (or the FakeFiledata alternative for archives), to hold the result of each file's wxStat class TreeListHeaderWindow; class FileGenericDirCtrl : public MyGenericDirCtrl // The class that displays & manipulates files { public: FileGenericDirCtrl(wxWindow* parent, const wxWindowID id, const wxString& START_DIR , const wxPoint& pos, const wxSize& size, long style = wxSUNKEN_BORDER, bool full_tree=false, const wxString& name = wxT("FileGenericDirCtrl")); ~FileGenericDirCtrl(){ CombinedFileDataArray.Clear(); FileDataArray.Clear(); } void CreateColumns(bool left); // Called after ctor to create the columns. left says use tabdata's Lwidthcol void OnColumnSelectMenu(wxCommandEvent& event); void OnSize(wxSizeEvent& event){ DoSize(); event.Skip(); } void DoSize(); virtual void UpdateStatusbarInfo(const wxString& selected); // Feeds the other overload with a wxArrayString if called with a single selection void UpdateStatusbarInfo(const wxArrayString& selections); // Writes selections' name & size in the statusbar void ReloadTree(wxString path, wxArrayInt& IDs); void OnOpen(wxCommandEvent& event); // From DClick, Context menu or OpenWithKdesu, passes on to DoOpen void DoOpen(wxString& filepath); // From Context menu or DClick in pane or TerminalEm virtual void NewFile(wxCommandEvent& event); // Create a new File or Dir TreeListHeaderWindow* GetHeaderWindow(){ return headerwindow; } enum columntype GetSelectedColumn(); void SetSelectedColumn(enum columntype col); bool GetSortorder(){ return reverseorder; } void SetSortorder(bool Sortorder){ reverseorder = Sortorder; } bool GetIsDecimalSort(){ return m_decimalsort; } void SetIsDecimalSort(bool decimalsort){ m_decimalsort = decimalsort; } void SortStats(FileDataObjArray& array); // Sorts the FileData array according to column selection void UpdateFileDataArray(const wxString& filepath); // Update an CombinedFileDataArray entry from filepath void UpdateFileDataArray(DataBase* fd); // Update an CombinedFileDataArray entry from fd void DeleteFromFileDataArray(const wxString& filepath); // Remove filepath from CombinedFileDataArray and update CumFilesize etc void ShowContextMenu(wxContextMenuEvent& event); // Right-Click menu void RecreateAcceleratorTable(); // When shortcuts are reconfigured, calls CreateAcceleratorTable() void OnToggleHidden(wxCommandEvent& event); // Toggles whether hidden dirs & files are visible void OnToggleDecimalAwareSort(wxCommandEvent& event); // Toggles decimal-aware sort order void SelectFirstItem(); // Selects the first item in the tree. Used during navigation via keyboard bool UpdateTreeFileModify(const wxString& filepath); // Called when a wxFSW_EVENT_MODIFY arrives bool UpdateTreeFileAttrib(const wxString& filepath); // Called when a wxFSW_EVENT_ATTRIB arrives size_t NoOfDirs; // These 3 vars are filled during MyGenericDirCtrl::ExpandDir. Data is displayed in statusbar size_t NoOfFiles; wxULongLong CumFilesize; wxULongLong SelectedCumSize; FileDataObjArray CombinedFileDataArray; // Array of FileData objects, which store etc the wxStat data. Stores dirs & files FileDataObjArray FileDataArray; // Temporary version just for files wxArrayString CommandArray; // Used to store an applic's launch-command, found by FiletypeManager which then loses scope protected: void CreateAcceleratorTable(); void OpenWithSubmenu(wxCommandEvent& event); // Events from the submenu of the context menu end up here void OnSelectAll(wxCommandEvent& event) { GetTreeCtrl()->GetEventHandler()->ProcessEvent(event); } void OnArchiveAppend(wxCommandEvent& event); void OnArchiveTest(wxCommandEvent& event); void OnOpenWith(wxCommandEvent& event); void OpenWithKdesu(wxCommandEvent& event); void HeaderWindowClicked(wxListEvent& event); // A L or R click occurred on the header window bool reverseorder; // Is the selected column reverse-sorted? bool m_decimalsort; // Should we sort filenames in a decimal-aware manner i.e. foo1, foo2 above foo11? TreeListHeaderWindow* headerwindow; private: DECLARE_EVENT_TABLE() }; #endif // MYFILESH ./4pane-6.0/Tools.h0000666000175000017500000005226013455327440012754 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Tools.h // Purpose: Find/Grep/Locate, Terminal Emulator // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef TOOLSH #define TOOLSH #include "wx/wx.h" #include "wx/notebook.h" #include "wx/config.h" #include "wx/process.h" #include "wx/txtstrm.h" class LayoutWindows; class MyBottomPanel; class TerminalEm; class MyPipedProcess; class ExecInPty; class Tools; class MyGenericDirCtrl; class MyFindDialog : public wxDialog // The dialog that holds the Find notebook. Needed for the OnClearButton method { public: MyFindDialog(){} void Init(Tools* dad, const wxString& command){ parent = dad; commandstart = command; } protected: void OnClearButtonPressed(wxCommandEvent& event); void OnQuickGrep(wxCommandEvent& event){ EndModal(event.GetId()); } wxString commandstart; // May be "find" or "grep" Tools* parent; private: DECLARE_EVENT_TABLE() }; class QuickFindDlg; class MyFindNotebook : public wxNotebook { friend class QuickFindDlg; enum pagename { Path, Options, Operators, Name, Time, Size, Owner, Actions, NotSelected = -1 }; public: MyFindNotebook(){ currentpage = Path; DataToAdd = false; } ~MyFindNotebook(){ Disconnect(wxID_ANY, wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING); } // to avoid repeated "Are you sure?" messages if the dlg is cancelled void Init(Tools* dad, wxComboBox* searchcombo); protected: void GetXRCIDsIntoArrays(); // For ease of use void LoadCombosHistory(); // Load the comboboxes history from (parent's) arrays void SaveCombosHistory(int which); // Save this combobox's history into (parent's) array void OnCheckBox(wxCommandEvent& event); void OnCheckBoxPath(wxCommandEvent& event); wxString OnAddCommandOptions(); // Depending on which Options checkboxes were checked, return an appropriate string wxString OnAddCommandOperators(); // Ditto wxString OnAddCommandName(); wxString OnAddCommandTime(); wxString OnAddCommandSize(); wxString OnAddCommandOwner(); wxString OnAddCommandAction(); void OnAddCommand(wxCommandEvent& event); void CalculatePermissions(); // Parses the arrays of checkboxes, putting the result as octal string in textctrl void OnPageChanging(wxNotebookEvent& event); void OnPageChange(wxNotebookEvent& event); void OnSetFocusEvent(wxCommandEvent& event); // Does a SetFocus, delayed by wxPostEvent void ClearPage(enum pagename page, int exceptthisitem = -1); void OnUpdateUI(wxUpdateUIEvent& event); void AddCommandUpdateUI(); void AddString(wxString& addition); enum { MyFindGrepEvent_PathCombo, MyFindGrepEvent_name }; wxArrayInt PathArray; wxArrayInt OptionsArray; static const wxChar* OptionsStrings[]; wxArrayInt OperatorArray; static const wxChar* OperatorStrings[]; static const wxChar* NameStrings4[]; // The version <5.0 name-order static const wxChar* NameStrings5[]; wxArrayInt TimeArray; wxArrayInt ActionArray; static const wxChar* ActionStrings[]; wxArrayInt SizeArray; static const wxChar* SizeStrings[]; wxArrayInt OwnerArray; static const wxChar* OwnerStrings[]; static const wxChar* OwnerPermissionStrings[]; static unsigned int OwnerPermissionOctal[]; static const wxChar* OwnerStaticStrings[]; Tools* parent; enum pagename currentpage; bool DataToAdd; // Is there data on the current page that hasn't yet been added to the final command? wxComboBox* combo; // Parent dlg's command combobox private: DECLARE_DYNAMIC_CLASS(MyFindNotebook) DECLARE_EVENT_TABLE() }; class QuickFindDlg : public wxDialog // Does a simpler find than the full version { public: QuickFindDlg(){} ~QuickFindDlg(){} void Init(Tools* dad); protected: void OnButton(wxCommandEvent& event); void OnCheck(wxCommandEvent& event); void OnKeyDown(wxKeyEvent &event){ if (event.GetKeyCode() == wxID_CANCEL) EndModal(wxID_CANCEL); } // For some reason this doesn't happen otherwise :/ void OnUpdateUI(wxUpdateUIEvent& event); void LoadCheckboxState(); void SaveCheckboxState(); void LoadCombosHistory(); void SaveCombosHistory(int which); wxComboBox *SearchPattern, *PathFind; wxCheckBox *IgnoreCase, *PathCurrentDir, *PathHome, *PathRoot; wxRadioButton *RBName, *RBPath, *RBRegex; Tools* parent; private: DECLARE_DYNAMIC_CLASS(QuickFindDlg) DECLARE_EVENT_TABLE() }; class MyGrepNotebook : public wxNotebook { enum pagename { Main, Dir, File, Output, Pattern, Path, NotSelected = -1 }; public: MyGrepNotebook(){ currentpage = Main; } ~MyGrepNotebook(){ Disconnect(wxID_ANY, wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING); } // to avoid repeated "Are you sure?" messages if the dlg is cancelled void Init(Tools* dad, wxComboBox* searchcombo); protected: void GetXRCIDsIntoArrays(); // For ease of use void LoadCombosHistory(); // Load the comboboxes history from (parent's) arrays void SaveCombosHistory(int which); // Save this combobox's history into (parent's) array void OnCheckBox(wxCommandEvent& event); void OnCheckBoxPath(wxCommandEvent& event); wxString OnAddCommandMain(); // Depending on which Options checkboxes were checked, return an appropriate string wxString OnAddCommandFile(); // Ditto wxString OnAddCommandOutput(); wxString OnAddCommandPattern(); void OnAddCommand(wxCommandEvent& event); void OnRegexCrib(wxCommandEvent& event); void OnPageChanging(wxNotebookEvent& event); void OnPageChange(wxNotebookEvent& event); void OnPatternPage(wxCommandEvent& event); // Does a SetFocus, delayed by wxPostEvent void ClearPage(enum pagename page, int exceptthisitem = -1); void OnUpdateUI(wxUpdateUIEvent& event); void AddCommandUpdateUI(); void AddString(wxString& addition); wxArrayInt MainArray; static const wxChar* MainStrings[]; wxArrayInt FileArray; wxArrayInt OutputArray; static const wxChar* OutputStrings[]; wxArrayInt PatternArray; static const wxChar* PatternStrings[]; wxArrayInt PathArray; Tools* parent; enum pagename currentpage; bool DataToAdd; // Is there data on the current page that hasn't yet been added to the final command? wxComboBox* combo; // Parent dlg's command combobox private: DECLARE_DYNAMIC_CLASS(MyGrepNotebook) DECLARE_EVENT_TABLE() }; class QuickGrepDlg : public wxDialog // Does a simpler grep than the full version { public: QuickGrepDlg(){} ~QuickGrepDlg(){} void Init(Tools* dad); protected: void OnButton(wxCommandEvent& event); void OnCheck(wxCommandEvent& event); void OnKeyDown(wxKeyEvent &event){ if (event.GetKeyCode() == wxID_CANCEL) EndModal(wxID_CANCEL); } // For some reason this doesn't happen otherwise :/ void OnUpdateUI(wxUpdateUIEvent& event); void AddWildcardIfNeeded(const bool dir_recurse, wxString& path) const; // Adds a * to the path if appropriate void LoadCheckboxState(); // Load the last-used which-boxes-were-checked state, + directories radio void SaveCheckboxState(); void LoadCombosHistory(); // Load the relevant history-arrays into comboboxes void SaveCombosHistory(int which); // Save the relevant command history into their arrays wxComboBox *SearchPattern, *PathGrep; wxCheckBox *WholeWord, *IgnoreCase, *PrefixLineno, *Binaries, *Devices, *PathCurrentDir, *PathHome, *PathRoot; wxRadioBox* DirectoriesRadio; Tools* parent; private: DECLARE_DYNAMIC_CLASS(QuickGrepDlg) DECLARE_EVENT_TABLE() }; class Tools { public: Tools(LayoutWindows* layout); ~Tools(); void Init(enum toolchoice toolindex); void Close(); void Clear(); void Locate(); int FindOrGrep(const wxString commandstart); void DoGrep(); // Does the preferred grep variety: Quick or Full void DoFind(); // Similarly void CommandLine(); wxArrayString History; // Stores the command history wxArrayString* historylist[8]; // Lists the Find/Grep wxArrayStrings static const wxChar* FindSubpathArray[]; // Lists the corresponding combobox names enum toolchoice WhichTool; // Passed by caller, so we know which tool we're supposed to be using TerminalEm* text; // To hold caller's derived textctrl, where the output goes wxComboBox* combo; // Holds the command history, & receives input for current command protected: void LoadHistory(); // Load the relevant history into the stringarray & combobox void LoadSubHistories(); // Load histories for Find & Grep comboboxes void SaveHistory(); // Save the relevant command history void SaveSubHistories(); // Save histories for Find & Grep comboboxes MyBottomPanel* bottom; LayoutWindows* Layout; wxArrayString ToolNamesArray; wxArrayString ToolTipsArray; wxArrayString Paths; // These 4 store the Find histories wxArrayString Name; wxArrayString NewerFile; wxArrayString ExecCmd; wxArrayString ExcludePattern; // These 4 store the Grep histories wxArrayString IncludePattern; wxArrayString Pattern; wxArrayString PathGrep; wxConfigBase* config; }; class MyBottomPanel : public wxPanel { public: MyBottomPanel(){} void Init(Tools* tools){ tool = tools; } Tools* tool; protected: void OnButtonPressed(wxCommandEvent& event); private: DECLARE_DYNAMIC_CLASS(MyBottomPanel) DECLARE_EVENT_TABLE() }; class MyPipedProcess : public wxProcess // Adapted from the exec sample { public: MyPipedProcess(TerminalEm* dad, bool displaymessage) : wxProcess(wxPROCESS_REDIRECT), text(dad), DisplayMessage(displaymessage) { matches = false; } void SendOutput(); // Sends user input from the terminal to a running process bool HasInput(); void OnKillProcess(); long m_pid; // Stores the process's pid, in case we want to kill it wxString InputString; // This is where parent will temp store any user-input to be passed interactively to the command protected: void OnTerminate(int pid, int status); bool matches; TerminalEm* text; bool DisplayMessage; }; #if defined(__WXX11__) #include #endif class TextCtrlBase : public wxTextCtrl // Needed in gtk2 to cure event-hijacking problems { public: TextCtrlBase(){ Init(); } TextCtrlBase(wxWindow* parent, wxWindowID id, const wxString& value = wxT(""), bool multline = true, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxT("TextCtrlBase")) : wxTextCtrl(parent, id, value, pos, size, style, validator , name) { Init(); Connect(GetId(), wxEVT_COMMAND_TEXT_ENTER, (wxObjectEventFunction)&TextCtrlBase::OnTextFilepathEnter, NULL, this); } // Only the toolbar textctrl uses this ctor... void Init(); void CreateAcceleratorTable(); #if defined(__WXGTK20__) || defined(__WXX11__) void OnShortcut(wxCommandEvent& event, bool ChildIsTerminalEm = true); #endif protected: void OnTextFilepathEnter(wxCommandEvent& event); void OnFocus(wxFocusEvent& event); #if defined(__WXX11__) void SetupX(); virtual void Copy(); // These are not currently implemented in the X11 wxTextCtrl virtual void Cut(); virtual void Paste(); void DoThePaste(wxString& str); void OnMiddleClick(wxMouseEvent& event); void OnLeftUp(wxMouseEvent& event); void DoPrimarySelection(bool select); void OnCtrlA(); Atom CLIPBOARD, TARGETS, SELECTION_PROPty; static wxString Selection; // The 'Clipboard', shared amoungst all instances static bool OwnCLIPBOARD; // Do we (one of the TextCtrlBases) own it? bool OwnPRIMARY; // Does *this* instance own PRIMARY? public: bool OnXevent(XEvent& xevent); DECLARE_EVENT_TABLE() #endif DECLARE_DYNAMIC_CLASS(TextCtrlBase) }; class TerminalEm : public TextCtrlBase // Derive from this so that (in gtk2) we can get access to misdirected shortcuts { // This is based on a comp.soft-sys.wxwindows.users post by Werner Smekal on 24/1/04, though much altered and expanded public: TerminalEm(){}; TerminalEm(wxWindow* parent, wxWindowID id, const wxString& value = wxT(""), bool multline = true, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxT("TerminalEm")) : TextCtrlBase(parent, id, value, multline, pos, size, style, validator, name), multiline(multline) { Init(); } ~TerminalEm(); void Init(); // Do the ctor work here, as otherwise wouldn't be done under xrc void SetOutput(TerminalEm* TE){ display=TE; } // For singleline command-line version, tells it where its output should go void RunCommand(wxString& command, bool external = true); // Do the Process/Execute things to run the command void HistoryAdd(wxString& command); void AddInput(wxString input); // Displays input received from the running Process void OnProcessTerminated(MyPipedProcess* process = NULL); void AddAsyncProcess(MyPipedProcess* process = NULL); void RemoveAsyncProcess(MyPipedProcess* process = NULL); void OnCancel(); void OnClear(); void OnChangeDir(const wxString& newdir, bool ReusePrompt);// Change the cwd, this being the only way to cd in the terminal/commandline void WritePrompt(); void OnEndDrag(); // Drops filenames into the prompt-line void OnKey(wxKeyEvent& event); bool multiline; // Is this the single-line version for command-entry only, or multiline to display results protected: void LoadHistory(); void SaveHistory(); wxString GetPreviousCommand(); wxString GetNextCommand(); int CheckForSu(const wxString& command); // su fails and probably hangs, so check and abort here. su -c and sudo need different treatment bool CheckForCD(wxString command); // cd refuses to work, so fake it here void ClearHistory(); inline void FixInsertionPoint(); void OnMouseDClick(wxMouseEvent& event); void OnSetFocus(wxFocusEvent& event); void ShowContextMenu(wxContextMenuEvent& event); #ifdef __WXX11__ void OnRightUp(wxMouseEvent& event); // EVT_CONTEXT_MENU doesn't seem to work in X11 #endif wxString ExtendSelection(long f = -1, long t = -1); // Extend selected text to encompass the whole contiguous word void OnOpenOrGoTo(wxCommandEvent& event); // Called by Context Menu void DoOpenOrGoTo(bool GoTo, const wxString& selection = wxT("")); // Used by OnMouseDClick() & Context Menu void OnTimer(wxTimerEvent& event); void OnIdle(wxIdleEvent& event); MyPipedProcess* m_running; ExecInPty* m_ExecInPty; wxTimer m_timerIdleWakeUp; // The idle event wake up timer static wxArrayString History; // We want only 1 history, shared between instances static int HistoryCount; static bool historyloaded; // & we want only to load it once! static int QuerySuperuser; // Helps determine the command prompt. See Init() int CommandStart; wxString UnenteredCommand; // This is for an entry that has been typed in, but before a the command-history is invoked wxString PromptFormat; // User-definable prompt appearance definition TerminalEm* display; // Where to output. If multiline, it's 'this', otherwise it's set by SetOutput() wxString originaldir; bool busy; // Set by OnKey when it's processing a command to prevent an undesirable cd bool promptdir; // If set, the cwd features in the prompt, so redo the prompt with changes of selection private: DECLARE_DYNAMIC_CLASS(TerminalEm) DECLARE_EVENT_TABLE() }; class MyBriefLogStatusTimer : public wxTimer // Used by BriefLogStatus. Notify() clears the zero field of the statusbar when the timer 'fires' { public: void Init(wxFrame* frme, wxString& olddisplay, int pne = 0){ frame = frme; pane = pne; originaldisplay = olddisplay; } protected: void Notify() { if (originaldisplay.IsEmpty()) originaldisplay = wxT(" "); // If empty, replace with a space, as "" doesn't erase frame->SetStatusText(originaldisplay, pane); } wxString originaldisplay; wxFrame* frame; int pane; }; class BriefLogStatus // Prints a LogStatus message that displays only for a defined time { public: BriefLogStatus(wxString Message, int secondsdisplayed = -1, int whichstatuspane = 1); static void DeleteTimer() { delete BriefLogStatusTimer; BriefLogStatusTimer = NULL; } protected: static MyBriefLogStatusTimer* BriefLogStatusTimer; }; // ------------------------------------------------------------------------------------------------------------------------------ class MyProcess : public wxProcess { public: MyProcess(const wxString& cmd, const wxString& toolname, bool terminal, bool RefreshPane, bool RefreshOpposite) : wxProcess(), m_cmd(cmd), m_toolname(toolname), m_UseTerminal(terminal), m_RefreshPane(RefreshPane), m_RefreshOpposite(RefreshOpposite) {} virtual void OnTerminate(int pid, int status); protected: wxString m_cmd; wxString m_toolname; bool m_UseTerminal; bool m_RefreshPane; bool m_RefreshOpposite; }; struct UserDefinedTool; struct UDToolFolder; WX_DEFINE_ARRAY(struct UserDefinedTool*, ArrayOfUserDefinedTools); WX_DEFINE_ARRAY(struct UDToolFolder*, ArrayOfToolFolders); struct UserDefinedTool { wxString Filepath; // The launch path bool AsRoot; // Run it as root bool InTerminal; // Run it in a terminal? bool TerminalPersists; // The terminal doesn't self-close bool RefreshPane; // Refresh current pane when the tool finishes bool RefreshOpposite; // Refresh the opposite pane too wxString Label; // What the menu displays size_t ID; // The tool's event.Id }; struct UDToolFolder { UDToolFolder(){ Entries=0; Subs=0; } wxString Label; // What the menu displays size_t Entries; // How many entries does this menu have. Tools, not submenus size_t Subs; // How many submenus does this menu have }; class LaunchMiscTools // Class to display in a menu, manage and launch misc external programs eg du, df, KDiff { public: LaunchMiscTools(){ EventId = SHCUT_TOOLS_LAUNCH; LastCommandNo = (size_t)-1; } ~LaunchMiscTools(){ ClearData(); } void LoadMenu(wxMenu* tools = NULL); // Load arrays & menu from config, If null, load to the menubar menu void LoadArrays(); void SaveMenu(); // Save arrays, delete menu void Save(wxString name, wxConfigBase* config); // Does the recursive Save (also from Export()) void Export(wxConfigBase* config); // Exports the data to a conf file void DeleteMenu(size_t which, size_t &entries); // Remove from the arrays this menu & all progeny bool AddTool(int folder, wxString& command, bool asroot, bool interminal, bool terminalpersists, bool refreshpane, bool refreshopp, wxString& label); bool DeleteTool(int sel); void Run(size_t index); // To run an entry void RepeatLastCommand(); ArrayOfUserDefinedTools* GetToolarray(){ return &ToolArray; } ArrayOfToolFolders* GetFolderArray(){ return &FolderArray; } size_t GetLastCommand(){ return LastCommandNo; } static void SetMenuIndex(int index) { m_menuindex = index; } protected: void Load(wxString name); // Load (sub)menu 'name' from config void ClearData(); void AddToolToArray(wxString& command, bool asroot, bool interminal, bool terminalpersists, bool refreshpane, bool refreshopp, wxString& label, int insertbeforeitem = -1); void FillMenu(wxMenu* parentmenu); // Recursively append entries and submenus to parentmenu wxString ParseCommand(wxString& command); // Goes thru command, looking for parameters to replace bool SetCorrectPaneptrs(const wxChar* &pc, MyGenericDirCtrl* &first, MyGenericDirCtrl* &second); // Helper for ParseCommand(). Copes with modifiers ArrayOfUserDefinedTools ToolArray; ArrayOfToolFolders FolderArray; int EventId; // Holds the first spare ID, from SHCUT_TOOLS_LAUNCH to SHCUT_TOOLS_LAUNCH_LAST-1 static int m_menuindex; // Passed to wxMenuBar::GetMenu so we can ID the menu without using its label size_t EntriesIndex; size_t FolderIndex; size_t LastCommandNo; // Holds the last tool used, so it can be repeated MyGenericDirCtrl *active, *leftfv, *rightfv, *leftdv, *rightdv; }; #if defined(__WXGTK20__) class EventDistributor : public wxEvtHandler // Needed in gtk2 to cure event-hijacking problems { void CheckEvent(wxCommandEvent& event); DECLARE_EVENT_TABLE() }; #endif #endif //TOOLSH ./4pane-6.0/MyFrame.h0000666000175000017500000005403313525055056013213 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyFrame.h // Purpose: App, Frame and Layout stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MYFRAMEH #define MYFRAMEH #include "wx/wx.h" #include "wx/config.h" #include "wx/splitter.h" #include "wx/sizer.h" #include "wx/xrc/xmlres.h" #include "wx/toolbar.h" #include "wx/html/helpctrl.h" #include "wx/dynlib.h" #include "MyNotebook.h" #include "Externs.h" #include "Tools.h" #include "MyDragImage.h" #include "MyDirs.h" #if wxVERSION_NUMBER < 2900 DECLARE_EVENT_TYPE(myEVT_BriefMessageBox, wxID_ANY) #else wxDECLARE_EVENT(myEVT_BriefMessageBox, wxCommandEvent); #endif class MyFrame; class wxGenericDirCtrl; class MyGenericDirCtrl; class DirGenericDirCtrl; class FileGenericDirCtrl; class Tools; class MyTab; class AcceleratorList; class FocusController // Holds the current and last-focused windows, and most recently focused pane { public: FocusController() { m_CurrentFocus = NULL; m_PreviousFocus = NULL; } wxWindow* GetCurrentFocus() const { return m_CurrentFocus; } wxWindow* GetPreviousFocus() const { return m_PreviousFocus; } void SetCurrentFocus(wxWindow* win); void SetPreviousFocus(wxWindow* win) { m_PreviousFocus = win; } void Invalidate(wxWindow* win); // This wxWindow is no longer shown, so don't try to focus it protected: wxWindow* m_CurrentFocus; wxWindow* m_PreviousFocus; }; class MyApp : public wxApp { public: MyApp() : wxApp(), frame(NULL), m_WaylandSession(false) {} void RestartApplic(); const wxColour* GetBackgroundColourUnSelected() const { return &m_BackgroundColourUnSelected; } const wxColour* GetBackgroundColourSelected(bool fileview = false) const; void SetPaneHighlightColours(); // Set colours to denote selected/unselectness in the panes wxColour AdjustColourFromOffset(const wxColour& col, int offset) const; // Utility function. Intelligently applies the given offset to col wxImage CorrectForDarkTheme(const wxString& filepath) const; // Utility function. Loads an b/w image and inverts the cols if using a dark theme wxDynamicLibrary* GetLiblzma() { return m_liblzma; } FocusController& GetFocusController() { return m_FocusCtrlr; } const wxString GetConfigFilepath() const { return m_ConfigFilepath; } const wxString GetHOME() const { return m_home; } const wxString GetXDGconfigdir() const { return m_XDGconfigdir; } const wxString GetXDGcachedir() const { return m_XDGcachedir; } const wxString GetXDGdatadir() const { return m_XDGdatadir; } bool GetIsWaylandSession() const { return m_WaylandSession; } wxString StdDataDir; wxString StdDocsDir; wxString startdir0, startdir1; void SetEscapeKeycode(int code) { m_EscapeCode = code; } void SetEscapeKeyFlags(int flags) { m_EscapeFlags = flags; } int GetEscapeKeycode() const { return m_EscapeCode; } int GetEscapeKeyFlags() const { return m_EscapeFlags; } void* GetRsvgHandle() const { return m_dlRsvgHandle; } void SetRsvgHandle(void* handle) { m_dlRsvgHandle = handle; } private: virtual bool OnInit(); int OnExit(); int ParseCmdline(); int FilterEvent(wxEvent& event); void SetWaylandSession(bool session_type) { m_WaylandSession = session_type; } #if defined(__WXX11__) && wxVERSION_NUMBER < 2800 bool ProcessXEvent(WXEvent* _event); // Grab selection XEvents #endif #if wxVERSION_NUMBER < 2600 wxString AbsoluteFilepath; #endif wxColour m_BackgroundColourUnSelected; // Holds the appropriate colour for when a pane has focus wxColour m_DvBackgroundColourSelected; // and unfocused, dirview wxColour m_FvBackgroundColourSelected; // and unfocused, fileview MyFrame* frame; wxLocale m_locale; wxDynamicLibrary* m_liblzma; FocusController m_FocusCtrlr; wxString m_XDGconfigdir; wxString m_XDGcachedir; wxString m_XDGdatadir; wxString m_ConfigFilepath; wxString m_home; // In case we want to pass as a parameter an alternative $HOME, e.g. in a liveCD situation int m_EscapeCode; int m_EscapeFlags; bool m_WaylandSession; void* m_dlRsvgHandle; }; DECLARE_APP(MyApp) class MyPanel : public wxPanel // This is mostly because it's good practice to put a panel into a splitter window; and we may need an event table there { public: MyPanel( wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxT("")) : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL, wxT("")) {} }; class DirSplitterWindow : public wxSplitterWindow //Splitter-Window type specifically for the directories. Is inserted into a higher-level split { public: DirSplitterWindow(wxSplitterWindow* parent, bool right); MyPanel *DirPanel, *FilePanel; wxBoxSizer *DirSizer, *FileSizer, *DirToolbarSizer; DirGenericDirCtrl *m_left; FileGenericDirCtrl *m_right; bool isright; // Is this the left hand conjoint twins or the right void Setup(MyTab* parent_tab, bool hasfocus, const wxString& start_dir = wxT(""), bool full_tree = false, bool showfiles = false, bool showhiddendirs = true, bool showhiddenfiles = true, const wxString& path = wxT("")); void SetDirviewFocus(wxFocusEvent& event); // (Un)Highlights the m_highlight_panel colour to indicate whether the dirview has focus wxWindow* GetDirToolbarPanel() { return m_highlight_panel; } // Returns the panel to which to add the dirview's toolbar protected: void OnFullTree(wxCommandEvent& event); // Various toolbar methods, all passed to dirview void OnDirUp(wxCommandEvent& event); void OnDirBack(wxCommandEvent& event); void OnDirForward(wxCommandEvent& event); void OnDirDropdown(wxCommandEvent& event); void OnDirCtrlTBButton(wxCommandEvent& event); void DoToolbarUI(wxUpdateUIEvent& event); void OnSashPosChanging(wxSplitterEvent& event); void OnDClick(wxSplitterEvent& event){ event.Veto(); } // On sash DClick, to prevent the default unsplitting void SetFocusOpposite(wxCommandEvent& event); // Key-navigate to opposite pane wxSplitterWindow* m_parent; wxPanel* m_highlight_panel; DECLARE_EVENT_TABLE() }; class MyTab; class Tabdata // Class to manage the appearance of a tab { public: wxString startdirleft; // Left(Top) pane starting dir and path wxString pathleft; wxString startdirright; // Ditto Right(Bottom) wxString pathright; bool fulltreeleft; // & their fulltree status bool fulltreeright; bool LeftTopIsActive; // Which twin-pane was selected at the time of a SaveDefaults() of an unsplit tab. Needed so that reloading gives the same unhidden pane split_type splittype; // How is the pane split int verticalsplitpos; // If it's vertical, this is the main sash pos int horizontalsplitpos; // Horizontal ditto bool TLFileonly; // Does this fileview display dirs & files, or just files? bool BRFileonly; bool showhiddenTLdir; // Does each pane show Hidden? bool showhiddenTLfile; bool showhiddenBRdir; bool showhiddenBRfile; int leftverticalsashpos; // If it's vertical, this is where to position the dirview/fileview sash int tophorizontalsashpos; // etc int rightverticalsashpos; int bottomhorizontalsashpos; int unsplitsashpos; int Lwidthcol[8]; // How wide is each Fileview column? bool LColShown[8]; // and is it to be initially visible? int Rwidthcol[8]; // Ditto for RightBottom fileview bool RColShown[8]; int Lselectedcol; int Rselectedcol; bool Lreversesort; bool Rreversesort; bool Ldecimalsort; bool Rdecimalsort; wxString tabname; // Label on the tab Tabdata(MyTab* parent) : m_parent(parent) {} Tabdata(const Tabdata& oldtabdata); int Load(MyNotebook* NB, int tabno = 0, int TemplateNo = -1); // Load the current defaults for this tab, or those of the requested template void Save(int tabno = 0, int TemplateNo = -1); // Save the data for this tab. If TemplateNo==-1, it's a normal save ); protected: MyTab* m_parent; }; class MyTab : public wxPanel // Represents each page of the notebook. Derived so as to parent the GenericDirCtrls { public: MyTab(MyNotebook* parent, wxWindowID id = -1, int pageno = 0, int TemplateNo = -1, const wxString& name = wxT(""), const wxString& startdir0=wxT(""), const wxString& startdir1=wxT("")); MyTab(Tabdata* tabdatatocopy, MyNotebook* dad, wxWindowID id = -1, int TemplateNo = -1, const wxString& name = wxT("")); ~MyTab(){ delete tabdata; } void Create(const wxString& startdir0 = wxT(""), const wxString& startdir1 = wxT("")); void PerformSplit(split_type splittype, bool newtab = false); // Splits a tab into left/right or top/bottom or unsplit. If newtab, initialises one pane void StoreData(int tabno); // Refreshes the tabdata ready for saving void SwitchOffHighlights(); bool LeftTopIsActive(){ return (LeftRightDirview == LeftorTopDirCtrl); } // Returns true if the active twinpane is the left (or top) one void SetActivePaneFromConfig(); // On loading, sets which should become the active twinpane split_type GetSplitStatus() { return splitstatus; } void SetActivePane(MyGenericDirCtrl* active); MyGenericDirCtrl* GetActivePane() const { return LastKnownActivePane; } MyGenericDirCtrl* GetActiveDirview() const { return LeftRightDirview; } class Tabdata* tabdata; int tabdatanumber; // Stores the type of tabdata that this tab gets loaded with, so that notebook can save it later DirSplitterWindow* m_splitterLeftTop, *m_splitterRightBottom; MyGenericDirCtrl* LeftorTopDirCtrl; // These point to the actual Dirviews, for ease of extracting current rootdir, path etc MyGenericDirCtrl* LeftorTopFileCtrl; // & Fileviews, for the column widths MyGenericDirCtrl* RightorBottomDirCtrl; MyGenericDirCtrl* RightorBottomFileCtrl; protected: wxSplitterWindow* m_splitterQuad; MyGenericDirCtrl* LeftRightDirview; // Holds the dirview of which of the 2 ctrls was last 'active', Left/Top or Right/Bottom MyGenericDirCtrl* LastKnownActivePane; // Holds which pane was last active split_type splitstatus; // Vertical/Horiz/Unsplit status, just to simplify Viewmenu UpdateUI void OnIdle(wxIdleEvent& event); #if wxVERSION_NUMBER > 2603 && ! (defined(__WXGTK20__) || defined(__WXX11__)) bool NeedsLayout; #endif }; class TabTemplateOverwriteDlg : public wxDialog // Simple dialog to allow choice between Overwrite & SaveAs in MyNotebook::SaveAsTemplate() { protected: void OnOverwriteButton(wxCommandEvent& WXUNUSED(event)){ EndModal(XRCID("Overwrite")); } void OnSaveAsButton(wxCommandEvent& WXUNUSED(event)){ EndModal(XRCID("SaveAs")); } DECLARE_EVENT_TABLE() }; class LayoutWindows { public: LayoutWindows(MyFrame* parent); ~LayoutWindows(); void Setup(); // Does the splitting work void OnCommandLine(); void ShowHideCommandLine(); // If it's showing, hide it; & vice versa void DoTool(enum toolchoice whichtool, bool FromSetup = false); // Invoke the requested tool in the bottom panel void CloseBottom(); // Called to return from DoTool() bool ShowBottom(bool FromSetup = false); // If bottompanel isn't visible, show it void UnShowBottom(); // If bottompanel is visible, unsplit it void OnChangeDir(const wxString& newdir, bool ReusePrompt = true); // Change terminal/commandline prompt, and perhaps titlebar, when cd entered or the dirview selection changes void OnUnsplit(wxSplitterEvent& event); TerminalEm* GetTerminalEm() { if (tool) return tool->text; return NULL; } wxSplitterWindow* m_splitterMain; MyNotebook* m_notebook; wxPanel* bottompanel; // The pane for the bottom section, for displaying grep etc TerminalEm* commandline; bool EmulatorShowing; bool CommandlineShowing; wxPanel* commandlinepane; protected: Tools* tool; MyFrame* m_frame; }; class MyFrame : public wxFrame { public: MyFrame(wxSize size); virtual ~MyFrame(); void OnActivate(wxActivateEvent& event); // Menu commands void OnUndo(wxCommandEvent& event); void OnUndoSidebar(wxCommandEvent& event); void OnRedo(wxCommandEvent& event); void OnRedoSidebar(wxCommandEvent& event); void OnArchiveAppend(wxCommandEvent& event); void OnArchiveTest(wxCommandEvent& event); void SplitHorizontal(wxCommandEvent& event); void SplitVertical(wxCommandEvent& event); void Unsplit(wxCommandEvent& event); void OnTabTemplateLoadMenu(wxCommandEvent& event); void OnQuit(wxCommandEvent& event); void OnHelpF1(wxKeyEvent& event); void OnHelpContents(wxCommandEvent& event); void OnHelpFAQs(wxCommandEvent& event); void OnHelpAbout(wxCommandEvent& event); wxHtmlHelpController* Help; AcceleratorList* AccelList; wxBoxSizer* sizerMain; wxBoxSizer* sizerControls; // The sizer within the 'toolbar' panelette main sizer. Holds the device bitmapbuttons, so DeviceAndMountManager needs to access it wxBoxSizer* EditorsSizer; wxBoxSizer* FixedDevicesSizer; void OnUpdateTrees(const wxString& path, const wxArrayInt& IDs, const wxString& newstartdir = wxT(""), bool FromArcStream = false); // Tells all panes that branch needs updating. IDs hold which panes MUST be done void UpdateTrees(); // At the end of a cluster of actions, tells all treectrls actually to do the updating they've stored void OnUnmountDevice(wxString& path); // When we've successfully umounted eg a floppy, reset treectrl(s) displaying it to HOME void SetSensibleFocus(); // Ensures that keyboard focus is held by a valid window, usually the active pane MyGenericDirCtrl* GetActivePane(); // Returns the most-recently-active pane in the visible tab MyTab* GetActiveTab(); // Returns the currently-active tab, if there is one void RefreshAllTabs(wxFont* font, bool ReloadDirviewTBs=false); // Refreshes all panes on all tabs, optionally with a new font, or mini-toolbars void LoadToolbarButtons(); // Encapsulates loading tools onto the toolbar void TextFilepathEnter(); // The Filepath textctrl has the focus and Enter has been added, so GoTo its contents void OnBeginDrag(wxWindow* dragorigin); // DnD void DoMutex(wxMouseEvent& event); void OnESC_Pressed(); // Cancel DnD if ESC pressed void OnMouseMove(wxMouseEvent& event); void OnEndDrag(wxMouseEvent& event); void OnMouseWheel(wxMouseEvent& event); // If we use the mousewheel to scroll during DnD void OnDnDRightclick(wxMouseEvent& event); // If we use the Rt mousebutton to scroll a page during DnD bool m_dragMode; bool SelectionAvailable; // Flags whether it's safe to ask m_notebook for active pane bool m_CtrlPressed; // Stores the pattern of metakeys during DnD bool m_ShPressed; bool m_AltPressed; enum myDragResult ParseMetakeys(); // & this deduces the intended result bool ESC_Pressed; // Makes DnD abort void DoOnProcessCancelled(); // Cancels any active thread static MyFrame* mainframe; // To facilitate access to the frame from deep inside wxToolBar *toolbar; wxBitmapButton* largesidebar1; // The UnRedo buttons sidebars (those things that allow you to choose any of the previous entries) wxBitmapButton* largesidebar2; int buttonsbeforesidebar; // Used to help locate the position for the sidebar pop-up menus int separatorsbeforesidebar; wxPanel *panelette; // The 2nd half of the "toolbar" TextCtrlBase *m_tbText; // The toolbar textctrl, for duplicating the selected filepath void DisplayEditorsInToolbar(); // These are stored in a separate sizer within the panelette sizer, for ease of recreation LayoutWindows* Layout; int PropertiesPage; // When showing the Properties notebook, which page should we start with? class Configure* configure; // Pointer to my configure class, not wxConfigBase wxBoxSizer *sizerTB; wxMutex m_TreeDragMutex; wxCursor& GetStandardCursor() { return m_StandardCursor; } wxCursor& GetTextCrlCursor() { return m_TextCrlCursor; } wxCursor DnDStdCursor; wxCursor DnDSelectedCursor; protected: void CreateAcceleratorTable(); void ReconfigureShortcuts(wxNotifyEvent& event); // Reconfigure all shortcuts after user has changed some void CreateMenuBar( wxMenuBar* MenuBar ); void RecreateMenuBar(); void AddControls(); // Just to encapsulate adding textctrl & an editor button or 2 to the "toolbar", now actually a panel void OnAppendTab(wxCommandEvent& event){ Layout->m_notebook->OnAppendTab(event); } // These are just switchboards for Menu & Toolbar events void OnInsTab(wxCommandEvent& event){ Layout->m_notebook->OnInsTab(event); } void OnDelTab(wxCommandEvent& event){ Layout->m_notebook->OnDelTab(event); } void OnPreview(wxCommandEvent& event); void OnPreviewUI(wxUpdateUIEvent& event); void OnDuplicateTab(wxCommandEvent& event){ Layout->m_notebook->OnDuplicateTab(event); } void OnRenTab(wxCommandEvent& event){ Layout->m_notebook->OnRenTab(event); } #if defined __WXGTK__ void OnAlwaysShowTab(wxCommandEvent& event){ Layout->m_notebook->OnAlwaysShowTab(event); } void OnSameTabSize(wxCommandEvent& event){ Layout->m_notebook->OnSameTabSize(event); } #endif void OnReplicate(wxCommandEvent& event); // Find the active MyGenericDirCtrl & pass request to it void OnSwapPanes(wxCommandEvent& event); // Ditto void OnSaveTabs(wxCommandEvent& event); void OnSaveAsTemplate(wxCommandEvent& WXUNUSED(event)){ Layout->m_notebook->SaveAsTemplate(); } void OnDeleteTemplate(wxCommandEvent& WXUNUSED(event)){ Layout->m_notebook->DeleteTemplate(); } void OnCut(wxCommandEvent& event); void OnCopy(wxCommandEvent& event); void OnPaste(wxCommandEvent& event); void OnProcessCancelled(wxCommandEvent& event); void OnProcessCancelledUI(wxUpdateUIEvent& event); void OnNew(wxCommandEvent& event); void OnHardLink(wxCommandEvent& event); void OnSoftLink(wxCommandEvent& event); void OnTrash(wxCommandEvent& event); void OnDelete(wxCommandEvent& event); void OnReallyDelete(wxCommandEvent& event); void OnRename(wxCommandEvent& event); void OnRefresh(wxCommandEvent& event); void OnDup(wxCommandEvent& event); void OnProperties(wxCommandEvent& event); void OnFilter(wxCommandEvent& event); void OnToggleHidden(wxCommandEvent& event); void OnViewColMenu(wxCommandEvent& event); void OnArchiveExtract(wxCommandEvent& event); void OnArchiveCreate(wxCommandEvent& event); void OnArchiveCompress(wxCommandEvent& event); void OnTermEm(wxCommandEvent& event); void OnToolsLaunch(wxCommandEvent& event); void OnToolsRepeat(wxCommandEvent& event); void DoRepeatCommandUI(wxUpdateUIEvent& event); // UI for SHCUT_TOOLS_REPEAT menu entry void OnEmptyTrash(wxCommandEvent& event); void OnMountPartition(wxCommandEvent& event); void OnUnMountPartition(wxCommandEvent& event); void OnMountIso(wxCommandEvent& event); void OnMountNfs(wxCommandEvent& event); void OnMountSshfs(wxCommandEvent& event); void OnMountSamba(wxCommandEvent& event); void OnUnMountNetwork(wxCommandEvent& event); void OnCommandLine(wxCommandEvent& event); void OnLaunchTerminal(wxCommandEvent& event); void OnLocate(wxCommandEvent& event); void OnFind(wxCommandEvent& event); void OnGrep(wxCommandEvent& event); void OnAddToBookmarks(wxCommandEvent& event); void OnManageBookmarks(wxCommandEvent& event); void OnBookmark(wxCommandEvent& event); void ToggleFileviewSizetype(wxCommandEvent& event); void ToggleRetainRelSymlinkTarget(wxCommandEvent& event); void ToggleRetainMtimeOnPaste(wxCommandEvent& event); void OnConfigure(wxCommandEvent& event); void OnConfigureShortcuts(wxCommandEvent& event); void OnShowBriefMessageBox(wxCommandEvent& event); void SetFocusViaKeyboard(wxCommandEvent& event); void OnPasteThreadProgress(wxCommandEvent& event); // A PasteThread is reporting some bytes written void OnPasteThreadFinished(PasteThreadEvent& event); // Called when a PasteThread completes #ifdef __WXX11__ void OnIdle( wxIdleEvent& event ); // One-off to make the toolbar textctrl show the initial selection properly #endif #if wxVERSION_NUMBER >= 2800 void OnMouseCaptureLost(wxMouseCaptureLostEvent& event) {OnEndDrag((wxMouseEvent&)event); } // If the mouse escapes, try and do something sensible #endif void OnTextFilepathEnter(wxCommandEvent& WXUNUSED(event)){ TextFilepathEnter(); } void DoMiscUI(wxUpdateUIEvent& event); // UpdateUI for misc items void DoQueryEmptyUI(wxUpdateUIEvent& event); // This is for the items which are UIed depending on whether there's a selection void DoNoPanesUI(wxUpdateUIEvent& event); // UI for when there aren't any tabs void DoMiscTabUI(wxUpdateUIEvent& event); // UI for the tab-head items void OnDirSkeletonUI(wxUpdateUIEvent& event); // UI for SHCUT_PASTE_DIR_SKELETON void DoSplitPaneUI(wxUpdateUIEvent& event); // UI for the Split/Unsplit menu void DoTabTemplateUI(wxUpdateUIEvent& event); // UI for Tab menu void DoColViewUI(wxUpdateUIEvent& event); // DnD wxWindow* lastwin; // Stores the window we've just been dragging over (in case it's changed) wxMutex m_DragMutex; bool m_LeftUp; // If there's a LeftUp event but the mutex is locked bool m_finished; // Flags that EndDrag has been done MyDragImage *m_dragImage; wxCursor m_StandardCursor; // Stores the cursor that 4Pane started with (in case of DnD accidents) wxCursor m_TextCrlCursor; // Ditto for textctrls wxCursor oldCursor; // Stores original version private: DECLARE_EVENT_TABLE() }; // ---------------------------------------------------------------------------- // constants // ---------------------------------------------------------------------------- // ID for the menu commands enum { SPLIT_QUIT, SPLIT_HORIZONTAL, SPLIT_VERTICAL, SPLIT_UNSPLIT, SPLIT_LIVE, SPLIT_SETPOSITION, SPLIT_SETMINSIZE }; #endif // MYFRAMEH ./4pane-6.0/Misc.cpp0000666000175000017500000015017113535524376013110 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Misc.cpp // Purpose: Misc stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 12 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/artprov.h" #include "wx/dirctrl.h" #include "wx/stdpaths.h" #include "wx/longlong.h" #include "wx/mstream.h" #include "wx/xrc/xmlres.h" #include "wx/confbase.h" #if wxVERSION_NUMBER >= 3000 #include #endif #include "Externs.h" #include "Misc.h" #include "Filetypes.h" #include "Redo.h" #include "MyGenericDirCtrl.h" #include "MyFrame.h" const int DEFAULT_BRIEFMESSAGEBOX_TIME = 2; BriefMessageBox::BriefMessageBox(wxString Message, double secondsdisplayed /*= -1*/, wxString Caption /*= wxEmptyString*/) : wxDialog(NULL, -1, Caption) { wxStaticBox* staticbox = new wxStaticBox(this, -1, wxT("")); // Start by doing sizer things, so that there's somewhere to put the message wxStaticBoxSizer *textsizer = new wxStaticBoxSizer(staticbox, wxHORIZONTAL); textsizer->Add(CreateTextSizer(Message), 1, wxCENTRE | wxALL, 10); wxBoxSizer *mainsizer = new wxBoxSizer(wxHORIZONTAL); mainsizer->Add(textsizer, 1, wxCENTER | wxALL, 20); SetSizer(mainsizer); mainsizer->Fit(this); Centre(wxBOTH | wxCENTER_FRAME); BriefTimer.Setup(this); // Let the timer know who's boss double length; if (secondsdisplayed <= 0) // Minus number means default, and zero would mean infinite which we don't want here length = DEFAULT_BRIEFMESSAGEBOX_TIME; else length = secondsdisplayed; BriefTimer.Start((int)(length * 1000), wxTIMER_ONE_SHOT); // Start timer as one-shot. *1000 gives seconds ShowModal(); // Display the message } #if wxVERSION_NUMBER >= 3000 bool HtmlHelpController::Display(const wxString& x) { if (m_helpDialog && m_helpDialog->IsShown()) return false; // Someone pressed the F1 key twice! CreateHelpWindow(); if (m_helpDialog) // Which it now should be. This is our first opportunity to grab the close event m_helpDialog->Bind(wxEVT_CLOSE_WINDOW, &HtmlHelpController::OnCloseWindow, this); bool success = m_helpWindow->Display(x); MakeModalIfNeeded(); return success; } void HtmlHelpController::OnCloseWindow(wxCloseEvent& evt) { // Catching this event (and not skipping) prevents the baseclass OnCloseWindow() from being called // That means that m_helpDialog isn't nulled without the dialog first being destroyed // That will then happen in ~wxHtmlHelpController() as m_helpDialog will still be non-null if (m_helpDialog) m_helpDialog->EndModal(wxID_OK); } #endif wxString ParseSize(wxULongLong bytes, bool longer) // Returns a string filled with the size, but in bytes, KB, MB or GB according to magnitude { wxString text; if (bytes < 1024) { text = bytes.ToString() + wxT('B'); return text; } double display_number; wxChar units; if (bytes < 1048576) { display_number = bytes.ToDouble() / 1024; units = wxT('K'); } else if (bytes < 1073741824) { display_number = bytes.ToDouble() / 1048576; units = wxT('M'); } else { display_number = bytes.ToDouble() / 1073741824; units = wxT('G'); } if (longer) text.Printf(wxT("%.2f%cB"), display_number, units); // Show 2 decimal places in the statusbar, where there's more room else text.Printf(wxT("%.1f%c"), display_number, units); return text; } wxString DoEscape(wxString& filepath, const wxString& target) // Escapes e.g. spaces or quotes within e.g. filepaths { wxString replacement =(wxT('\\')); replacement << target; size_t index, nStart = 0; while (1) { index = filepath.find(target, nStart); // This std::string find starts at nStart, so we can reset this after each Find if (index == wxString::npos) break; // npos means no more found if (filepath.GetChar(index-1) != wxT('\\')) // If it's not already escaped, do it, and change nStart accordingly. +2, one for the \ one for the space { filepath.replace(index, 1, replacement); nStart = index+2; } else nStart = index+1; // Already escaped so just inc over the it } return filepath; } wxString EscapeQuote(wxString& filepath) // Often, we use single quotes around a filepath to avoid problems with spaces etc. { // However this CAUSES a problem with apostrophes! This function goes thru filepath, Escaping any we find return DoEscape(filepath, wxT("\'")); } wxString EscapeQuoteStr(const wxString& filepath) { wxString fp(filepath); return EscapeQuote(fp); } wxString EscapeSpace(wxString& filepath) // Escapes spaces within e.g. filepaths { return DoEscape(filepath, wxT(" ")); } wxString EscapeSpaceStr(const wxString& filepath) { wxString fp(filepath); return EscapeSpace(fp); } wxString StrWithSep(const wxString& path) // Returns path with a '/' if necessary { if (path.empty()) return path; wxString str(path); if (path.Last() != wxFILE_SEP_PATH) str << wxFILE_SEP_PATH; return str; } wxString StripSep(const wxString& path) // Returns path without any terminal '/' (modulo root) { if (path.empty()) return path; wxString str(path); while ((str.Last() == wxFILE_SEP_PATH) && (str != wxT("/"))) str.RemoveLast(); return str; } bool IsDescendentOf(const wxString& dir, const wxString& child) { wxCHECK_MSG(dir != child, false, wxT("We shouldn't be able to get here if the strings are equal")); if (StripSep(dir).Len() > StripSep(child).Len()) return false; if (!child.StartsWith(dir)) return false; // OK, there are 2 possibilities: 1) /path/to/foo and /path/to/foo/bar (is a child) 2) /path/to/foo and /path/to/foobar (isn't) wxFileName fndir(StrWithSep(dir)); wxFileName fnchild(StrWithSep(child)); wxArrayString parentdirs(fndir.GetDirs()); wxArrayString childdirs(fnchild.GetDirs()); if (parentdirs.Item(fndir.GetDirCount()-1) != childdirs.Item(fndir.GetDirCount()-1)) return false; // /path/to/foo and /path/to/foobar wxCHECK_MSG(fndir.GetDirCount() != fnchild.GetDirCount(), false, wxT("We shouldn't be able to get here if the strings are equal")); // Let's be paranoid and check again return true; // /path/to/foo and /path/to/foo/bar } wxString TruncatePathtoFitBox(wxString filepath, wxWindow* box) // Returns a string small enough to be displayed in box, with ../ prepend if needed { if (filepath.IsEmpty() || box==NULL) return wxEmptyString; int x, y, clx, cly; box->GetClientSize(&clx, &cly); box->GetTextExtent(filepath, &x, &y); if (x > clx) // If the textextent is greater than the clientsize, { wxString dots(wxT(".../")); int dx, dy; box->GetTextExtent(dots, &dx, &dy); // make a string with .../ in it, and get *its* textextent too filepath = filepath.AfterFirst(wxFILE_SEP_PATH); // We know it'll begin with / do { if (filepath.Find(wxFILE_SEP_PATH) == wxNOT_FOUND) return filepath; // Better an overlong string than an empty one filepath = filepath.AfterFirst(wxFILE_SEP_PATH); // Now go thru the path, progressively chopping off its head until it plus dots will fit box->GetTextExtent(filepath, &x, &y); } while ((x+dx) > clx); return (dots + filepath); // Return the truncated filepath, preceeded by ../ } return filepath; // Return the untruncated version, as it fitted anyway } wxWindow* InsertEllipsizingStaticText(wxString filepath, wxWindow* original, int insertAt/* = -1*/) // Insert a self-truncating wxStaticText { if (filepath.empty() || !original) return (wxWindow*)NULL; // Since wx3.0 a wxStaticText can self-truncate. However wxCrafter can't currently set that styleflag, and it can't be applied retrospectively // So hide the XRC-loaded control and use a new one. Not the most elegant solution, but it works wxStaticText* ElipsizePathStatic = new wxStaticText(original->GetParent(), wxID_ANY, filepath, wxDefaultPosition, wxDefaultSize, wxST_ELLIPSIZE_START); wxSizer* psizer = original->GetContainingSizer(); if (psizer) { if (insertAt > -1) psizer->Insert(insertAt, ElipsizePathStatic, 0, wxEXPAND); else psizer->Add(ElipsizePathStatic, 0, wxEXPAND); psizer->Layout(); } original->Hide(); return ElipsizePathStatic; } void QueryWrapWithShell(wxString& command) // Wraps command with sh -c if appropriate { if (command.Contains(wxT("sh -c"))) return; // We don't need two of them const wxChar* relevantchars = wxT("~|><*?;"); if ((command.find_first_of(relevantchars) == wxString::npos) && !command.Contains(wxT("&&"))) return; // If the command contains none of these chars (nor the string "&&") we don't need a wrapper EscapeQuote(command); // We're going to wrap with sh -c ' ' to avoid clashes with double-quotes, so escape any single-quotes first command = wxT("sh -c \'") + command; command << wxT('\''); } void QuoteExcludingWildcards(wxString& command) // Wraps command with " " if appropriate, excluding any terminal globs. Needed for grep { if (command.IsEmpty()) return; if (command.find_first_of(wxT('\"')) != wxString::npos) return; // If there's a double-quote in the command, leave well alone: surrounding by " " will be guaranteed to fail const wxChar* relevantchars = wxT("' "); if (command.find_first_of(relevantchars) == wxString::npos) return; // If there isn't a single-quote or space, nothing needs be done wxString path(command.BeforeLast(wxFILE_SEP_PATH)); if (path.IsEmpty()) return; // If there isn't a '/', we're buggered anyway so ignore wxString name(command.AfterLast(wxFILE_SEP_PATH)); path << wxFILE_SEP_PATH; const wxChar* globs = wxT("?*"); // Now see if there's a wildcard in *name* (if it were in path (?allowed), quoting would tame its wildness) if (name.find_first_of(globs) != wxString::npos) // If one is found, double-quote path, but not name { command = wxT("\\\"") + path; command << wxT("\\\"") << name; } else { command = wxT("\\\"") + command; command << wxT("\\\""); } // Otherwise escape-quote the lot } wxString MakeTempDir(const wxString& fname/*= wxT("")*/) // Makes a unique dir, in /tmp/ unless we were passed a filepath { wxString tempdir, name(fname); if (name.empty() || (name.GetChar(0) != wxFILE_SEP_PATH)) { // If we're about to try to create in /tmp/, make sure there's an existing /tmp/4Pane as mkdtemp isn't recursive wxString tmp = wxStandardPaths::Get().GetTempDir(); if (!tmp.empty() && !wxDirExists(tmp + wxT("/4Pane/"))) wxMkdir(tmp + wxT("/4Pane/")); } if (name.empty()) name = wxStandardPaths::Get().GetTempDir() + wxT("/4Pane/4Pane."); else if (name.GetChar(0) != wxFILE_SEP_PATH) name = wxStandardPaths::Get().GetTempDir() + wxT("/4Pane/") + name; name << wxT("XXXXXX"); #if wxVERSION_NUMBER < 2900 tempdir = wxString(mkdtemp(const_cast((const char*)name.mb_str(wxConvUTF8))), wxConvUTF8); #else tempdir = wxString(mkdtemp(name.char_str()), wxConvUTF8); #endif if (tempdir.empty()) wxLogWarning(_("Failed to create a temporary directory")); else tempdir << wxT('/'); return tempdir; } // Returns a stock icon if available and so configured, otherwise the 4Pane builtin one wxBitmap GetBestBitmap(const wxArtID& artid, const wxArtClient& client, const wxBitmap& fallback_xpm) { wxBitmap bm; if (USE_STOCK_ICONS) { bm = wxArtProvider::GetBitmap(artid, client); if (bm.IsOk()) return bm; } bm = fallback_xpm; return bm; } wxString GetCwd() // Protects the wx function with wxLogNull { wxLogNull avoid_Failed_to_get_cwd_warning; return wxGetCwd(); } bool SetWorkingDirectory(const wxString& dir) // Protects the wx function with wxLogNull { wxLogNull avoid_Cant_set_cwd_warning; return wxSetWorkingDirectory(dir); } bool LoadPreviousSize(wxWindow* tlwin, const wxString& name) // Retrieve and apply any previously-saved size for the top-level window { if (!tlwin || name.empty()) return false; wxString address = wxT("/ToplevelWindowSize/") + name; long height = wxConfigBase::Get()->Read(address + wxT("/ht"), -1l); // Restore any saved size long width = wxConfigBase::Get()->Read(address + wxT("/wd"), -1l); if (height != -1 && width != -1) { tlwin->SetSize(width, height); return true; } return false; } void SaveCurrentSize(wxWindow* tlwin, const wxString& name) // The 'save' for LoadPreviousSize() { if (!tlwin || name.empty()) return; wxString address = wxT("/ToplevelWindowSize/") + name; wxSize sz = tlwin->GetSize(); wxConfigBase::Get()->Write(address + wxT("/ht"), sz.GetHeight()); wxConfigBase::Get()->Write(address + wxT("/wd"), sz.GetWidth()); } // The next 2 functions are compatability ones: a change in wx3.1.2 gave e.g. wxFONTWEIGHT_NORMAL a value of 400; previously it was 90 #if wxVERSION_NUMBER > 3101 wxFontWeight LoadFontWeight(const wxString& configpath) #else int LoadFontWeight(const wxString& configpath) #endif { int wt = wxConfigBase::Get()->Read(configpath + "weight", (long)-1); // See if there's a Read(configpath + "weight_wx3.2", (long)-1); // and a >wx3.1.1 one #if wxVERSION_NUMBER > 3101 if (wt32 == -1) { switch(wt) { case 91: wt32 = wxFONTWEIGHT_LIGHT; break; case 92: wt32 = wxFONTWEIGHT_BOLD; break; default: wt32 = wxFONTWEIGHT_NORMAL; } wxConfigBase::Get()->Write(configpath + "weight_wx3.2", (long)wt32); } return (wxFontWeight)wt32; #else // < wx3.1.2 if ((wt == -1) || (wt < 90) || (wt > 92)) // Either no previous value, or a value set by an unfixed >wx3.1.1 instance { switch(wt32) { case 300: wt = wxFONTWEIGHT_LIGHT; break; case 700: wt = wxFONTWEIGHT_BOLD; break; default: wt = wxFONTWEIGHT_NORMAL; } wxConfigBase::Get()->Write(configpath + "weight", (long)wt); } return wt; #endif } void SaveFontWeight(const wxString& configpath, int fontweight) { int wt, wt32; #if wxVERSION_NUMBER > 3101 wxConfigBase::Get()->Write(configpath + "weight_wx3.2", (long)fontweight); if (wxConfigBase::Get()->Exists(configpath + "weight")) { switch(fontweight) // There's a pre-wx3.1.2 entry in the config, so update that too { case 300: wt = 91; break; case 700: wt = 92; break; default: wt = 90; } wxConfigBase::Get()->Write(configpath + "weight", (long)wt); } #else wxConfigBase::Get()->Write(configpath + "weight", (long)fontweight); switch(fontweight) // Future-proof by saving in >3.1.1 format too { case 91: wt32 = 300; break; case 92: wt32 = 700; break; default: wt32 = 400; } wxConfigBase::Get()->Write(configpath + "weight_wx3.2", (long)wt32); #endif } #include #include "wx/tokenzr.h" bool GetFloat(wxString& datastr, double* fl, size_t skip) // Parses datastr to find a float. Skip means skip over the first n of them { wxString str; wxStringTokenizer tknr(datastr); size_t count = tknr.CountTokens(); for (size_t c=0; c < count; ++c) { wxString token = tknr.GetNextToken(); size_t index = token.find_first_of(wxT("0123456789")); // We need to cope with "foo bar 1.2.3" if (index == wxString::npos) continue; if (skip) { --skip; continue; } // Skip allows us to cope with "Foo i386 version 2.3" str = token.Mid(index); break; } if (str.IsEmpty()) return false; // We're digitless wxStringTokenizer tkn(str, wxT(".")); // We need to cope with "1.2.3" wxString token = tkn.GetNextToken(); if (token.ToDouble(fl) && tkn.HasMoreTokens()) // Because of the above, the first token really ought to be a digit or 3 { token += wxT('.') + tkn.GetNextToken(); // We've got the 1, so add '.' plus the next digit, and ignore any others token.ToDouble(fl); } return true; } bool KernelLaterThan(wxString minimum) // Tests whether the active kernel is >= the parameter { struct utsname krnl; if (uname(&krnl) == -1) return false; // If -1 the function call failed wxString kernel(krnl.release, wxConvLocal); wxStringTokenizer knl(kernel, wxT(".")); wxStringTokenizer mnl(minimum, wxT(".")); // Tokenise both int knlcount = knl.CountTokens(), minimalcount = mnl.CountTokens(); // Count tokens; we may need later to check for equality while (knl.HasMoreTokens() && mnl.HasMoreTokens()) { wxString kerneltkn = knl.GetNextToken(), minimaltkn = mnl.GetNextToken(); // Get first token of each & compare long kernellong, minimallong; if (!kerneltkn.ToLong(&kernellong) || !minimaltkn.ToLong(&minimallong)) return false; // If either conversion to numeral failed, abort if (kernellong == minimallong) continue; // If this number==, check the next pair of tokens return kernellong > minimallong; // We have an inequality. Return 0 or 1, depending on which is larger } // If we're here, 1 or both strings has run out. We may be in a 2.4.10 versus 2.4.10 situation, or a 2.4.10 versus 2.4 situation return knlcount >= minimalcount; // If the kernel has >= numbers, it passes } wxColour GetSaneColour(wxWindow* win, bool bg, wxSystemColour type) // Returns a valid colour that's fit-for-purpose. Works around theme issues with early gtk3 versions { #if wxVERSION_NUMBER < 3000 || !defined(__WXGTK3__) wxUnusedVar(win); return wxSystemSettings::GetColour(type); #else // The problem this code tries to fix is exemplified by gtk+ 3.4.2 in debian wheezy. This gives wxTreeCtrls a grey background by default, // and always seems to return black from GetDefaultAttributes() and wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW) and similar. // This no longer happens in fedora 20's gtk+ 3.10. if (type == wxSYS_COLOUR_WINDOW) // All the current callers are treectrls, which in wx3 use wxSYS_COLOUR_LISTBOX (doing it here avoids lots of #ifs) type = wxSYS_COLOUR_LISTBOX; wxColour col, deflt = wxSystemSettings::GetColour(type); if (win) { wxVisualAttributes va = win->GetDefaultAttributes(); col = bg ? va.colBg : va.colFg; } if (!col.IsOk()) col = deflt; if (col.Red() + col.Blue() + col.Green() == 0) col = (type == wxSYS_COLOUR_BTNFACE) ? *wxLIGHT_GREY : *wxWHITE; // This won't be right for a dark theme, but how to detect one if wxSystemSettings gives wrong answers? return col; #endif } void UnexecuteImages(const wxString& filepath) // See if it's an image or text file; if so, ensure it's not executable { FileData fd(filepath); wxCHECK_RET(fd.IsValid(), wxT("Passed an invalid file")); if (fd.IsRegularFile()) { // See if it's likely to be an image or a text file; just quick'n'simple, it's not important enough for mimetypes or wxImage::CanRead wxString ext = filepath.AfterLast(wxT('.')).Lower(); if (!(ext==wxT("png") || ext==wxT("jpg") || ext==wxT("jpeg") || ext==wxT("bmp") || ext==wxT("tiff") || ext==wxT("txt"))) return; static const mode_t mask = ~(S_IXUSR | S_IXGRP | S_IXOTH) & 07777; fd.DoChmod(fd.GetPermissions() & mask); // No need to check if there's a change; it happens inside the call } else if (fd.IsDir()) { wxDir dir(filepath); // Use wxDir to deal sequentially with each child file & subdir if (!dir.IsOpened()) return; if (!dir.HasSubDirs() && !dir.HasFiles()) return; // If the dir as no progeny, we're OK wxString filename; bool cont = dir.GetFirst(&filename, wxEmptyString, wxDIR_FILES | wxDIR_DIRS |wxDIR_HIDDEN); while (cont) { wxString file = wxFILE_SEP_PATH + filename; FileData stat(filepath + file); if (stat.IsRegularFile() || stat.IsDir()) // If it's a normal file or a dir, recurse to process. If not, we don't care UnexecuteImages(filepath + file); cont = dir.GetNext(&filename); } } } void KeepShellscriptsExecutable(const wxString& filepath, size_t perms) // If foo.sh is rwx, it makes sense to keep it that way in the copy { FileData fd(filepath); wxCHECK_RET(fd.IsValid(), wxT("Passed an invalid file")); if (!(perms & S_IXUSR)) return; // Nothing to do; the original file wasn't exec if (fd.IsRegularFile()) { if (!(filepath.AfterLast(wxT('.')).Lower() == wxT("sh"))) return; // We don't want to impose exec permissions on all files just because they came from a FAT partition fd.DoChmod(perms); // No need to check if there's a change; it happens inside the call } // Don't descend into a passed dir; for a Move we'd have no way to check what the originals' permissions were } bool IsThreadlessMovePossible(const wxString& origin, const wxString& destination) // Can origin be moved to dest using rename, rather than copy/delete? { FileData orig(origin), dest(destination); wxCHECK_MSG(orig.IsValid() && dest.IsValid(), false, wxT("Passed invalid strings")); if (orig.GetDeviceID() != dest.GetDeviceID()) return false; // Can't rename between different filesystems // See if we're moving a symlink with a relative target, which we don't want it to retain. If so, we'll need to use Paste() if (!RETAIN_REL_TARGET && ContainsRelativeSymlinks(orig.GetFilepath())) return false; return true; } wxString LocateLibrary(const wxString& lib) // Search ldconfig output to find a lib's filepath. 'lib' can/will be a partial name e.g. 'rsvg' { wxCHECK_MSG(!lib.empty(), "", "Empty parameter"); wxArrayString output, errors; long ans = wxExecute("sh -c \"/sbin/ldconfig -p | grep " + lib + '\"', output,errors); if (ans != 0 || output.IsEmpty()) return ""; wxString fpath = output.Item(0).AfterLast(' '); FileData stat(fpath); if (stat.IsValid()) return fpath; return ""; } //----------------------------------------------------------------------------------------------------------------------- IMPLEMENT_DYNAMIC_CLASS(FileDirDlg, wxDialog) FileDirDlg::FileDirDlg(wxWindow* parent, int style/*FD_MULTIPLE | FD_SHOWHIDDEN*/, wxString defaultpath/*=wxEmptyString*/, wxString label/*=_("File and Dir Select Dialog")*/) : wxDialog(parent, wxNewId(), label) { SHCUT_HOME = wxNewId(); wxBoxSizer* mainsizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer* sizer1 = new wxBoxSizer(wxHORIZONTAL); wxBitmap bmp = wxArtProvider::GetBitmap(wxART_GO_HOME); wxBitmapButton* Home = new wxBitmapButton(this, SHCUT_HOME, bmp); sizer1->Add(0,0, 4); sizer1->Add(Home, 0, wxRIGHT, 30); sizer1->Add(0,0, 1); mainsizer->Add(sizer1, 0, wxTOP|wxBOTTOM|wxEXPAND, 10); wxStaticBoxSizer* sizer2 = new wxStaticBoxSizer(new wxStaticBox(this, -1, wxEmptyString), wxVERTICAL); if (defaultpath.IsEmpty()) defaultpath = GetCwd(); int GDC_style = wxDIRCTRL_3D_INTERNAL; #if wxVERSION_NUMBER > 2900 if (style & FD_MULTIPLE) GDC_style |= wxDIRCTRL_MULTIPLE; #endif GDC = new wxGenericDirCtrl(this, wxID_ANY, defaultpath, wxDefaultPosition, wxDefaultSize, GDC_style); #if wxVERSION_NUMBER < 2901 int treestyle = GDC->GetTreeCtrl()->GetWindowStyle(); if (style & FD_MULTIPLE) treestyle |= wxTR_MULTIPLE; GDC->GetTreeCtrl()->SetWindowStyle(treestyle); #endif GDC->ShowHidden(style & FD_SHOWHIDDEN); #if wxVERSION_NUMBER > 2402 && wxVERSION_NUMBER < 2600 #ifdef __UNIX__ GDC->SetFilter(wxT("*")); #else GDC->SetFilter(wxT("*.*")); #endif #endif sizer2->Add(GDC, 1, wxEXPAND); mainsizer->Add(sizer2, 1, wxLEFT|wxRIGHT|wxEXPAND, 15); wxBoxSizer* sizer3 = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer* sizer4 = new wxBoxSizer(wxVERTICAL); Text = new wxTextCtrl(this, wxID_ANY); wxCheckBox* ShowHidden = new wxCheckBox(this, wxID_ANY, _("Show Hidden")); ShowHidden->SetValue(style & FD_SHOWHIDDEN); sizer4->Add(Text, 0, wxTOP|wxBOTTOM|wxEXPAND, 3); sizer4->Add(ShowHidden, 0, wxALIGN_CENTRE); wxBoxSizer* sizer5 = new wxBoxSizer(wxVERTICAL); wxButton* OK = new wxButton(this, wxID_OK); wxButton* CANCEL = new wxButton(this, wxID_CANCEL); sizer5->Add(OK); sizer5->Add(CANCEL, 0, wxTOP, 5); sizer3->Add(sizer4, 1); sizer3->Add(sizer5, 0, wxLEFT, 15); mainsizer->Add(sizer3, 0, wxALL|wxEXPAND, 15); SetSizer(mainsizer); mainsizer->Layout(); wxSize size = wxGetDisplaySize(); SetSize(size.x / 2, size.y / 2); filesonly = style & FD_RETURN_FILESONLY; // Use Connect() here instead of an event table entry, as otherwise an event is fired before the dialog is created and GDC and Text initialised Connect(wxID_ANY, wxEVT_COMMAND_TREE_SEL_CHANGED, (wxObjectEventFunction)&FileDirDlg::OnSelChanged); Connect(wxID_ANY, wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&FileDirDlg::OnHidden); Connect(SHCUT_HOME, wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&FileDirDlg::OnHidden); #if !defined(__WXGTK3__) GDC->GetTreeCtrl()->Connect(wxID_ANY,wxEVT_ERASE_BACKGROUND, (wxObjectEventFunction)&FileDirDlg::OnEraseBackground); #endif } void FileDirDlg::OnHome(wxCommandEvent& WXUNUSED(event)) { wxString home = wxGetHomeDir(); GDC->SetPath(home); } void FileDirDlg::OnHidden(wxCommandEvent& event) { GDC->ShowHidden(event.IsChecked()); } void FileDirDlg::OnSelChanged(wxTreeEvent& WXUNUSED(event)) { #if wxVERSION_NUMBER > 2900 if (GDC->HasFlag(wxDIRCTRL_MULTIPLE)) // From 2.9.0 GetPath() etc assert if wxTR_MULTIPLE { wxArrayString filepaths; size_t count = GetPaths(filepaths); // GetPaths() handles filepath internally if (count) filepath = filepaths[0]; } else { #endif if (filesonly) filepath = GDC->GetFilePath(); // If we don't want dirs, use GetFilePath() which ignores them else filepath = GDC->GetPath(); // Otherwise GetPath() which returns anything #if wxVERSION_NUMBER > 2900 } #endif Text->SetValue(filepath); } size_t FileDirDlg::GetPaths(wxArrayString& filepaths) // Get multiple filepaths { size_t count; wxArrayTreeItemIds selectedIds; count = GDC->GetTreeCtrl()->GetSelections(selectedIds); for (size_t c=0; c < count; ++c) { wxDirItemData* data = (wxDirItemData*) GDC->GetTreeCtrl()->GetItemData(selectedIds[c]); if (filesonly && wxDirExists(data->m_path)) continue; // If we only want files, skip dirs filepaths.Add(data->m_path); } return filepaths.GetCount(); } #if !defined(__WXGTK3__) void FileDirDlg::OnEraseBackground(wxEraseEvent& event) // This is only needed in gtk2 under kde and brain-dead theme-manager, but can cause a blackout in some gtk3(themes?) { wxClientDC* clientDC = NULL; // We may or may not get a valid dc from the event, so be prepared if (!event.GetDC()) clientDC = new wxClientDC(GDC->GetTreeCtrl()); wxDC* dc = clientDC ? clientDC : event.GetDC(); wxColour colBg = GetBackgroundColour(); // Use the chosen background if there is one if (!colBg.Ok()) colBg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW); #if wxVERSION_NUMBER < 2900 dc->SetBackground(wxBrush(colBg, wxSOLID)); #else dc->SetBackground(wxBrush(colBg, wxBRUSHSTYLE_SOLID)); #endif dc->Clear(); if (clientDC) delete clientDC; } #endif //----------------------------------------------------------------------------------------------------------------------- #include #include #include #include "wx/cmdline.h" #include "wx/apptrait.h" // helper class for storing arguments as char** array suitable for passing to // execvp(), whatever form they were passed to us class ArgsArray { public: ArgsArray(const wxArrayString& args) { Init(args.size()); for ( int i = 0; i < m_argc; i++ ) { #if wxVERSION_NUMBER < 2900 m_argv[i] = new char[args[i].length() + 1]; strcpy(m_argv[i], (const char*)args[i].mb_str()); #else m_argv[i] = wxStrdup(args[i]); #endif } } #if wxUSE_UNICODE ArgsArray(wchar_t **wargv) { int argc = 0; while ( wargv[argc] ) argc++; Init(argc); for ( int i = 0; i < m_argc; i++ ) { #if wxVERSION_NUMBER > 2802 m_argv[i] = wxSafeConvertWX2MB(wargv[i]).release(); #else m_argv[i] = wxConvertWX2MB(wargv[i]).release(); #endif } } #endif // wxUSE_UNICODE ~ArgsArray() { for ( int i = 0; i < m_argc; i++ ) { free(m_argv[i]); } delete [] m_argv; } operator char**() const { return m_argv; } private: void Init(int argc) { m_argc = argc; m_argv = new char *[m_argc + 1]; m_argv[m_argc] = NULL; } int m_argc; char **m_argv; //wxDECLARE_NO_COPY_CLASS(ArgsArray); }; int ReadLine(int fd, wxString& line) { wxMemoryBuffer buf; while (true) { char c; int nread = read(fd, &c, 1); // Get a char from the input if (nread == -1) { if (buf.GetDataLen()) // There may be a problem: salvage the data we've already read { wxString ln((const char*)buf.GetData(), wxConvUTF8, buf.GetDataLen()); if (ln.Len()) line = ln; } if ((errno == EAGAIN) || (errno == 0)) return 2; // No more data is available atm. That may be because a line doesn't end in \n e.g. 'Password: ' if (errno == EIO) return -2; // This is the errno we get when the slave has died, presumably successfully wxLogDebug(wxT("Error %d while trying to read input"), errno); return -1; } if (nread == 0) return 0; // We've got ahead of the available data if (c == wxT('\n')) { wxString ln((const char*)buf.GetData(), wxConvUTF8, buf.GetDataLen()); // Convert the line to utf8 line = ln; return true; } buf.AppendByte(c); // Otherwise just append the char and ask for more please } } long ExecInPty::ExecuteInPty(const wxString& cmd) { if (cmd.empty()) return ERROR_RETURN_CODE; if (wxGetOsDescription().Contains(wxT("kFreeBSD"))) // The kFreeBSD forkpty hangs { if (GetCallerTextCtrl()) InformCallerOnTerminate(); return ERROR_RETURN_CODE; } #if wxVERSION_NUMBER < 2900 ArgsArray argv(wxCmdLineParser::ConvertStringToArgs(cmd)); #else ArgsArray argv(wxCmdLineParser::ConvertStringToArgs(cmd, wxCMD_LINE_SPLIT_UNIX)); #endif GetOutputArray().Clear(); GetErrorsArray().Clear(); static size_t count; count = 0; // Set it here, not above: otherwise it'll retain its value for subsequent calls int fd; pid_t pid = forkpty(&fd, NULL, NULL, NULL); if (pid == -1) return CloseWithError(0, wxT("Failed to create a separate process")); if (pid == 0) // The child process { setsid(); struct termios tos; // Turn off echo tcgetattr(STDIN_FILENO, &tos); tos.c_lflag &= ~(ECHO | ECHOE | ECHOK | ECHONL); tos.c_oflag &= ~(ONLCR); tcsetattr (STDIN_FILENO, TCSANOW, &tos); if (int ret = execvp(*argv, argv) == -1) return CloseWithError(fd, wxString::Format(wxT("program exited with code %i\n"), ret)); } // The parent process int fl; if ((fl = fcntl(fd, F_GETFL, 0)) == -1) fl = 0; fcntl(fd, F_SETFL, fl | O_NONBLOCK); // Make non-blocking int status, ret = 1; fd_set fd_in, fd_out; do { struct timeval tv; tv.tv_sec = 0; tv.tv_usec = 20000; FD_ZERO(&fd_in); FD_ZERO(&fd_out); FD_SET(fd, &fd_in); FD_SET(fd, &fd_out); int rc = select(fd + 1, &fd_in, &fd_out, NULL, &tv); if (rc == -1) return CloseWithError(fd, wxString::Format(wxT("Error %d on select()"), errno)); if (!rc) continue; if (FD_ISSET(fd, &fd_in)) { wxString line; ret = ReadLine(fd, line); if (!ret) continue; // We've temporarily read all the data, but there should be more. Reselect if (ret == -1) { if (line.Len()) GetOutputArray().Add(line); // There's a problem, but salvage any data we've already read GetErrorsArray() = GetOutputArray(); return CloseWithError(fd, wxT("")); } // If we're here, ret was >0. 1 means there's a full line; 2 that we got EAGAIN, which may mean it's waiting for a password if (FD_ISSET(fd, &fd_out) && line.Lower().Contains(wxT("password")) && !line.Lower().Contains(wxT("incorrect"))) { wxString pw(PasswordManager::Get().GetPassword(cmd)); if (pw.empty()) return CloseWithError(fd, wxT(""), CANCEL_RETURN_CODE); // Presumably the user cancelled pw << wxT('\n'); if (write(fd, pw.mb_str(wxConvUTF8), pw.Len()) == -1) return CloseWithError(fd, wxT("Writing the string failed")); } else // Either a single 'su' failure (you only get 1 chance) or 3 'sudo' ones if ((line.Lower().Contains(wxT("authentication failure"))) || (line.Lower().Contains(wxT("incorrect password")))) { PasswordManager::Get().ForgetPassword(); // Forget the failed attempt, or it'll automatically be offered again and again and... GetOutputArray().Add(line); // Store the 'fail' line so that it's available to show the user } else if (line.Lower().Contains(wxT("try again"))) // The first or second sudo failure PasswordManager::Get().ForgetPassword(); else { if (!(GetOutputArray().IsEmpty() && (line == wxT("\r")))) // When a password is accepted, su emits a \r for some reason GetOutputArray().Add(line); } continue; } if (FD_ISSET(fd, &fd_out)) { if (!GetCallerTextCtrl()) { // Though there shouldn't be any input required for these commands (apart from the password, handled above) // for some reason we do land here several times per command. So we can't just abort, and 'continue' seems to work // Nevertheless limit the number of tries, just in case someone does try an input-requiring command if (++count < 1000) { wxMilliSleep(10); if (!(count % 10)) wxYieldIfNeeded(); #ifdef __GNU_HURD__ if (!(count % 30)) break; // In hurd (currently) we often linger here until 1000, and so return -1. idk why, but avoid the situation #endif continue; } return CloseWithError(fd, wxT("Expecting input that we can't provide. Bail out to avoid a hang")); } if (!m_inputArray.empty()) { wxString line = m_inputArray.Item(0); m_inputArray.RemoveAt(0); line << wxT('\n'); // as this will have been swallowed by the textctrl if (write(fd, line.mb_str(wxConvUTF8), line.Len()) == -1) return CloseWithError(fd, wxT("Writing the string failed")); count = 0; // reset the anti-hang device wxYieldIfNeeded(); } else { if (++count < 10000) { wxMilliSleep(10); if (!(count % 10)) wxYieldIfNeeded(); continue; } return CloseWithError(fd, wxT("\nTimed out\n")); // If we're here, bail out to avoid hanging } } } while (ret >= 0); while (!GetOutputArray().IsEmpty()) // Remove any terminal emptyish lines { wxString last(GetOutputArray().Last()); if (last.empty() || (last == wxT("\n")) || (last == wxT("\r"))) GetOutputArray().RemoveAt(GetOutputArray().GetCount()-1); else break; } waitpid(pid, &status, 0); close(fd); if (WIFEXITED(status)) { int retcode = WEXITSTATUS(status); if (retcode > 0) { GetErrorsArray() = GetOutputArray(); GetOutputArray().Clear(); } // If there's been a problem, it makes more sense for the output to be here if (GetCallerTextCtrl()) InformCallerOnTerminate(); // Let the terminalem know we're finished return retcode; } return ERROR_RETURN_CODE; // For want of something more sensible. We should seldom reach here anyway; only from signals, I think } #include "Tools.h" void ExecInPty::WriteOutputToTextctrl() { TerminalEm* term = wxDynamicCast(m_caller, TerminalEm); wxCHECK_RET(term, wxT("Non-terminalem caller?!")); for (size_t n=0; n < GetOutputArray().GetCount(); ++n) { wxString line = GetOutputArray().Item(n); if (!line.empty() && (line.Last() != wxT('\n')) && (line.Last() != wxT('\r'))) // Ensure the line is terminated line << wxT("\n"); term->AddInput(line); } for (size_t n=0; n < GetErrorsArray().GetCount(); ++n) // Rarely there may be some { wxString line = GetErrorsArray().Item(n); if (!line.empty() && (line.Last() != wxT('\n')) && (line.Last() != wxT('\r'))) // Ensure the line is terminated line << wxT("\n"); term->AddInput(line); } GetOutputArray().Clear(); GetErrorsArray().Clear(); } void ExecInPty::InformCallerOnTerminate() // Let the terminalem know we're finished { TerminalEm* term = wxDynamicCast(m_caller, TerminalEm); wxCHECK_RET(term, wxT("Non-terminalem caller?!")); WriteOutputToTextctrl(); // Show any remaining output term->OnProcessTerminated(); } int ExecInPty::CloseWithError(int fd, const wxString& msg, int errorcode/*=ERROR_RETURN_CODE*/) // Close on error or empty password { if (fd) close(fd); // We'd be passed 0 if the fork failed if (m_caller) { TerminalEm* term = wxDynamicCast(m_caller, TerminalEm); wxCHECK_MSG(term, errorcode, wxT("Non-terminalem caller?!")); WriteOutputToTextctrl(); // Show any remaining output if (!msg.empty()) *m_caller << msg; term->OnProcessTerminated(); } else wxLogDebug(msg); return errorcode; } // Convenient ways to call the ExecInPty class long ExecuteInPty(const wxString& cmd, wxArrayString& output, wxArrayString& errors) { ExecInPty eip; long ret = eip.ExecuteInPty(cmd); output = eip.GetOutputArray(); errors = eip.GetErrorsArray(); return ret; } long ExecuteInPty(const wxString& cmd) // For when the caller doesn't care about the output { wxArrayString output, errors; return ExecuteInPty(cmd, output, errors); } //------------------------------------------------------------------------------------------------------------------------------------------- PasswordManager* PasswordManager::ms_instance = NULL; const wxString PasswordManager::GetPassword(const wxString& cmd, wxWindow* caller/*=NULL*/) // Returns the password, first asking the user for it if need be { if (cmd.empty()) return cmd; if (!caller) caller = wxTheApp->GetTopWindow(); bool StorePassword = STORE_PASSWD; wxString pw(GetPasswd()); if (!pw.empty()) // We have it stored, so just return it { if (RENEW_PASSWD_TTL) m_timer.Start(PASSWD_STORE_TIME * 60 * 1000, true); // after first resetting its lifespan if desired return pw; } wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, caller, wxT("SuDlg")); LoadPreviousSize(&dlg, wxT("SuDlg")); wxTextCtrl* CommandTxt = XRCCTRL(dlg, "CommandTxt", wxTextCtrl); wxCHECK_MSG(CommandTxt, wxT(""), wxT("Failed to load the command textctrl")); CommandTxt->ChangeValue(cmd); XRCCTRL(dlg, "StorePwCheck", wxCheckBox)->SetValue(StorePassword); int ans = dlg.ShowModal(); SaveCurrentSize(&dlg, wxT("SuDlg")); if (ans == wxID_OK) { StorePassword = XRCCTRL(dlg, "StorePwCheck", wxCheckBox)->IsChecked(); if (StorePassword != STORE_PASSWD) { STORE_PASSWD = StorePassword; wxConfigBase::Get()->Write(wxT("/Misc/Store_Password"), STORE_PASSWD); } if (!StorePassword && m_timer.IsRunning()) m_timer.Stop(); // in case it was just changed pw = XRCCTRL(dlg, "PasswordTxt", wxTextCtrl)->GetValue(); if (StorePassword && (PASSWD_STORE_TIME > 0)) // Store it, if we're supposed to SetPasswd(pw); // SetPasswd() ignores empty strings, so no need to check here } return pw; // which might be empty, if the user aborted or supplied an empty password } wxString docrypt(const wxString& password, const wxString& key) { wxString result; for (size_t n=0; n < password.Len(); ++n) result << (wxChar)(((wxChar)password.GetChar(n) ^ (wxChar)key.GetChar(n))); return result; } void PasswordManager::SetPasswd(const wxString& password) // Encrypts and stores the password { if (password.empty()) return; wxString key; // A gesture towards encryption. Create a random key the same length as the password for (size_t n=0; n < password.Len(); ++n) key << wxString::Format(wxT("%c"), (char)(rand() % 50)); m_key = key; m_password = docrypt(password, m_key); // Store it, and if (STORE_PASSWD && (PASSWD_STORE_TIME > 0)) // start the countdown to its deletion m_timer.Start(PASSWD_STORE_TIME * 60 * 1000, true); } wxString PasswordManager::GetPasswd() const // Decrypts and returns the password { return docrypt(m_password, m_key); } //------------------------------------------------------------------------------------------------------------------------------------------- PasteThreadStatuswriter::PasteThreadStatuswriter() : m_cumsize(0), m_expectedsize(0) { m_timer.SetOwner(this); Connect(wxEVT_TIMER, wxTimerEventHandler(PasteThreadStatuswriter::OnTimer), NULL, this); } void PasteThreadStatuswriter::PrintCumulativeSize() { static int count = 0; static wxString throbbers[] = { wxT("*......"), wxT(".*....."), wxT("..*...."), wxT("...*..."), wxT("....*.."), wxT(".....*."), wxT("......*") }; wxString message(wxT("Pasting ")); message << throbbers[++count % 7]; MyFrame::mainframe->SetStatusText(message + wxString::Format(wxT(" %s of %s"), ParseSize(m_cumsize, true), ParseSize(m_expectedsize, true)), 1); } ThreadsManager* ThreadsManager::ms_instance = NULL; ThreadsManager::~ThreadsManager() { for (size_t n=0; n < m_sblocks.size(); ++n) delete m_sblocks.at(n); m_sblocks.clear(); } ThreadSuperBlock* ThreadsManager::StartSuperblock(const wxString& type) { ThreadSuperBlock* tsb; if (type.Lower() == wxT("paste")) tsb = new PasteThreadSuperBlock(m_nextfree); else if (type.Lower() == wxT("move")) { tsb = new PasteThreadSuperBlock(m_nextfree); tsb->SetCollectorIsMoves(true); } else tsb = new ThreadSuperBlock(m_nextfree); m_sblocks.push_back(tsb); return tsb; } ThreadBlock* ThreadsManager::AddBlock(size_t count, const wxString& type, int& firstthread, ThreadSuperBlock* tsb) { ThreadBlock* block = NULL; wxCHECK_MSG(!type.empty(), block, wxT("A NULL type of block")); wxCHECK_MSG(count > 0, block, wxT("An empty block")); if (!tsb) // NULL means this will be a solitary block; but we still need a superblock to store it in tsb = StartSuperblock(type); if (type.Lower() == wxT("paste")) { ThreadData* td = new ThreadData[count]; block = new ThreadBlock(count, m_nextfree, td, tsb); tsb->StoreBlock(block); } // ...space for different thread types... else wxCHECK_MSG(false, block, wxT("Trying to add a block of unknown type")); // We really shouldn't get here firstthread = (int)m_nextfree; m_nextfree += count; return block; } void ThreadsManager::AbortThreadSuperblock(ThreadSuperBlock* tsb) { wxCHECK_RET(tsb, wxT("Passed a NULL superblock")); for (size_t n=m_sblocks.size(); n > 0; --n) { if (m_sblocks.at(n-1) == tsb) { delete tsb; m_sblocks.erase(m_sblocks.begin() + n-1); return; } } wxCHECK_RET(false, wxT("Couldn't find a matching tsb")); } bool ThreadsManager::IsActive() const { // Return true if there is a superblock, and it's incomplete. We're unlikely to be called in the gap between a block's creation and starting, but if we are it'll return true. for (size_t n=0; n < m_sblocks.size(); ++n) if (!m_sblocks.at(n)->IsCompleted()) return true; return false; } bool ThreadsManager::PasteIsActive() const { // Return true if there is an incomplete paste superblock for (size_t n=0; n < m_sblocks.size(); ++n) if (!m_sblocks.at(n)->IsCompleted() && dynamic_cast(m_sblocks.at(n))) return true; return false; } void ThreadsManager::CancelThread(int threadtype) const { // See if there's an active thread of the requested type for (size_t n=0; n < m_sblocks.size(); ++n) if (!m_sblocks.at(n)->IsCompleted()) { if (/*(threadtype & ThT_text && dynamic_cast(m_sblocks.at(n)) *** future-proofing) || */(threadtype & ThT_paste && dynamic_cast(m_sblocks.at(n)))) m_sblocks.at(n)->AbortThreads(); } } void ThreadsManager::SetThreadPointer(unsigned int ID, wxThread* thread) { int i = GetSuperBlockForID(ID); wxCHECK_RET(i != wxNOT_FOUND, wxT("Unexpected thread ID")); ThreadSuperBlock* tsb = m_sblocks.at(i); tsb->SetThreadPointer(ID, thread); } void ThreadsManager::OnThreadProgress(unsigned int ID, unsigned int size) { int i = GetSuperBlockForID(ID); wxCHECK_RET(i != wxNOT_FOUND, wxT("Unexpected thread ID")); PasteThreadSuperBlock* ptsb = dynamic_cast(m_sblocks.at(i)); wxCHECK_RET(ptsb, wxT("Got a paste progress event sent to a non-paste superblock")); ptsb->ReportProgress(size); } void ThreadsManager::OnThreadCompleted(unsigned int ID, const wxArrayString& array, const wxArrayString& successes) { int i = GetSuperBlockForID(ID); wxCHECK_RET(i != wxNOT_FOUND, wxT("Unexpected thread ID")); ThreadSuperBlock* tsb = m_sblocks.at(i); tsb->CompleteThread(ID, successes, array); if (tsb->IsCompleted()) { m_sblocks.erase(m_sblocks.begin()+i); delete tsb; } } int ThreadsManager::GetSuperBlockForID(unsigned int containedID) const { for (size_t n=0; n < m_sblocks.size(); ++n) if (m_sblocks.at(n)->Contains(containedID)) return (int)n; return wxNOT_FOUND; } //static size_t ThreadsManager::GetCPUCount() { static int cpus = 0; // Make the currently-reasonable assumption that the number won't change dynamically if (cpus < 1) { cpus = wxThread::GetCPUCount(); if (cpus < 2) cpus = 1; else --cpus; // Leave one free for non-thread use } return (size_t)cpus; } PasteThreadSuperBlock::~PasteThreadSuperBlock() { for (size_t n=0; n < m_UnRedos.size(); ++n) delete m_UnRedos.at(n).first; m_UnRedos.clear(); m_StatusWriter.PasteFinished(); } ThreadSuperBlock::~ThreadSuperBlock() { for (size_t n=0; n < m_blocks.size(); ++n) delete m_blocks.at(n); m_blocks.clear(); } void ThreadSuperBlock::StoreBlock(ThreadBlock* block) { m_FirstThreadID = wxMin(m_FirstThreadID, block->GetFirstID()); m_count += block->GetCount(); m_blocks.push_back(block); } bool ThreadSuperBlock::Contains(unsigned int ID) const { return (ID >= m_FirstThreadID) && (ID < m_FirstThreadID+m_count); } int ThreadSuperBlock::GetBlockForID(unsigned int containedID) const { for (size_t n=0; n < m_blocks.size(); ++n) if (m_blocks.at(n)->Contains(containedID)) return (int)n; return wxNOT_FOUND; } bool ThreadSuperBlock::IsCompleted() const { for (size_t n=0; n < m_blocks.size(); ++n) if (!m_blocks.at(n)->IsCompleted()) return false; return true; } void ThreadSuperBlock::CompleteThread(unsigned int ID, const wxArrayString& successes, const wxArrayString& array) { int i = GetBlockForID(ID); wxCHECK_RET(i != wxNOT_FOUND, wxT("Unexpected thread ID")); PasteThreadSuperBlock* ptsb = dynamic_cast(this); if (ptsb) for (size_t n=0; n < successes.GetCount(); ++n) ptsb->GetSuccessfullyPastedFilepaths().Add(successes.Item(n)); m_blocks.at(i)->CompleteThread(ID, successes, array); if (IsCompleted()) OnCompleted(); } void ThreadSuperBlock::AbortThreads() const { for (size_t n=0; n < m_blocks.size(); ++n) if (!m_blocks.at(n)->IsCompleted()) m_blocks.at(n)->AbortThreads(); } void ThreadSuperBlock::SetThreadPointer(unsigned int ID, wxThread* thread) { int i = GetBlockForID(ID); wxCHECK_RET(i != wxNOT_FOUND, wxT("Unexpected thread ID")); m_blocks.at(i)->SetThreadPointer(ID, thread); } void PasteThreadSuperBlock::SetTrashdir(const wxString& trashdir) { wxCHECK_RET(m_trashdir.empty(), wxT("Trying to set an already-set trashdir")); m_trashdir = trashdir; } void PasteThreadSuperBlock::OnCompleted() { // First deal with setting any modification times. This is needed when pasting a dir with contents, retaining the original mtimes; // We can't set the time when creating the dir, as it'll be modified later when contents are added. So do it now the dust has settled while (m_ChangeMtimes.size()) { wxString filepath = m_ChangeMtimes.back().first; time_t mt = m_ChangeMtimes.back().second; FileData fd(filepath); if (fd.IsValid()) fd.ModifyFileTimes(mt); m_ChangeMtimes.pop_back(); } while (m_UnRedos.size()) { UnRedo* entry = m_UnRedos.front().first; if (m_SuccessfullyPastedFilepaths.Index(m_UnRedos.front().second) == wxNOT_FOUND) { m_UnRedos.pop_front(); continue; } // The corresponding thread must have failed or been cancelled if (dynamic_cast(entry) || dynamic_cast(entry)) UnRedoManager::AddEntry(entry); else { wxASSERT(false); } m_UnRedos.pop_front(); } for (size_t n=0; n < m_DeleteAfter.GetCount(); ++n) // A Moved dir's contents will have been deleted, but the dir itself will need deleting here { FileData fd(m_DeleteAfter.Item(n)); if (fd.IsValid()) { wxFileName fn(m_DeleteAfter.Item(n)); MyGenericDirCtrl::ReallyDelete(&fn); } } if (m_DestID && GetUnRedoType() == URT_notunredo) // Use an ID and FindWindow() here, not a ptr which might have become stale e.g. on a tab deletion { MyGenericDirCtrl* destctrl = wxDynamicCast(MyFrame::mainframe->FindWindow(m_DestID), MyGenericDirCtrl); if (destctrl) { destctrl->GetTreeCtrl()->UnselectAll(); // Unselect to avoid ambiguity due to multiple selections if (USE_FSWATCHER) // If so use SelectPath(). We don't need the extra overhead of SetPath() { wxTreeItemId id = destctrl->FindIdForPath(m_DestPath); if (id.IsOk()) destctrl->GetTreeCtrl()->SelectItem(id); } else if (!m_DestPath.empty()) destctrl->SetPath(m_DestPath); // Needed when moving onto the 'root' dir, otherwise the selection won't alter & so the fileview won't be updated } } if (m_DestID && !USE_FSWATCHER) { wxArrayInt IDs; IDs.Add(m_DestID); MyFrame::mainframe->OnUpdateTrees(m_DestPath, IDs); } if (UnRedoManager::ClusterIsOpen) UnRedoManager::EndCluster(); // This may call UpdateTrees() internally else MyFrame::mainframe->UpdateTrees(); if (m_messagetype != _("cut")) UnRedoManager::CloseSuperCluster(); // Close any supercluster; we want Cut/Paste/Paste to be undone in 2 stages, not 1 wxString msg; if (m_failures) // If there were individual failures e.g. files inside dirs didn't paste, report the individual numbers msg << wxString::Format(_("%zu items "), m_successes) << m_messagetype << wxString::Format(wxT(" successfully, %zu failed"), m_failures); else // Otherwise provide the complete list, so a 1000-file dir will report 1000 items { msg << wxString::Format(_("%zu items "), m_overallsuccesses) << m_messagetype; if (m_overallfailures) msg << wxString::Format(wxT(" successfully, %zu failed"), m_overallfailures); } if (GetUnRedoType() != URT_notunredo) UnRedoManager::GetImplementer().OnItemCompleted(GetUnRedoId()); else BriefLogStatus bls(msg); } bool ThreadBlock::Contains(unsigned int ID) const { return (ID >= m_firstID) && (ID < m_firstID+m_count); } void ThreadBlock::AbortThreads() const { for (size_t n=0; n < m_count; ++n) { wxThread* thread = m_data[n].thread; if (thread) thread->Delete(); } } bool ThreadBlock::IsCompleted() const { for (size_t n=0; n < m_count; ++n) if (!m_data[n].completed) return false; return true; } void ThreadBlock::CompleteThread(unsigned int ID, const wxArrayString& successes, const wxArrayString& array) { wxCHECK_RET(Contains(ID), wxT("Unexpected thread ID")); int scount = successes.GetCount(); if (scount > 0) m_successes += scount; else ++m_failures; m_data[ID - m_firstID].completed = true; if (IsCompleted()) // See if this was the last (or only) thread to complete. If so, take any appropriate action OnBlockCompleted(); } void ThreadBlock::OnBlockCompleted() { m_parent->AddSuccesses(m_successes); m_parent->AddFailures(m_failures); } void ThreadBlock::SetThreadPointer(unsigned int ID, wxThread* thread) { wxCHECK_RET(Contains(ID) && int(ID - m_firstID) >= 0, wxT("Passed an out-of-range ID")); m_data[ID - m_firstID].thread = thread; } wxThread* ThreadBlock::GetThreadPointer(unsigned int ID) const { wxCHECK_MSG(Contains(ID), NULL, wxT("Passed an out-of-range ID")); return m_data[ID].thread; } ThreadData::~ThreadData() { wxCriticalSectionLocker locker(ThreadsManager::Get().GetPasteCriticalSection()); if (thread) thread->Kill(); } ./4pane-6.0/Archive.cpp0000644000175000017500000023535113566743310013571 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Archive.cpp // Purpose: Non-virtual archive stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/wx.h" #include "wx/xrc/xmlres.h" #include "wx/config.h" #include "wx/tarstrm.h" #include "MyGenericDirCtrl.h" #include "Externs.h" #include "ExecuteInDialog.h" #include "Misc.h" #include "Tools.h" #include "Filetypes.h" #include "MyDirs.h" #include "MyFrame.h" #include "Configure.h" #include "Archive.h" void MyListBox::Add(wxString newfile) // Appends to the list only if not already present { if (newfile.IsEmpty()) return; if (FindString(newfile) == wxNOT_FOUND) Append(newfile); } void MyListBox::OnKey(wxKeyEvent& event) // If Delete key pressed while file(s) highlit, delete them { if (event.GetKeyCode() == WXK_DELETE) { wxArrayInt selections; int count = GetSelections(selections); if (!count) return; for (int n=count; n > 0; --n) Delete(selections[n-1]); } else event.Skip(); } IMPLEMENT_DYNAMIC_CLASS(MyListBox,wxListBox) BEGIN_EVENT_TABLE(MyListBox,wxListBox) EVT_CHAR(MyListBox::OnKey) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- BEGIN_EVENT_TABLE(DecompressOrExtractDlg,wxDialog) EVT_BUTTON(XRCID("Compressed"),DecompressOrExtractDlg::OnDecompressButton) EVT_BUTTON(XRCID("Archive"),DecompressOrExtractDlg::OnExtractButton) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- void ArchiveDialogBase::Init() { combo = (wxComboBox*)FindWindow(wxT("Combo")); list = (MyListBox*)FindWindow(wxT("CurrentFiles")); m_parent->FilepathArray.Clear(); // Empty the array first: some paths to this method will have called GetMultiplePaths() already m_parent->active->GetMultiplePaths(m_parent->FilepathArray); // Load the selected files into the stringarray // The next line means that a in combo's textctrl is equivalent to pressing the AddFile button Connect(XRCID("Combo"), wxEVT_COMMAND_TEXT_ENTER, wxTextEventHandler(ArchiveDialogBase::OnAddFile), NULL, this); } //static wxString ArchiveDialogBase::FindUncompressedName(const wxString& archivename, enum ziptype ztype) // What'd a compressed archive be called if uncompressed? { wxString UncompressedName; int c; if (archivename.IsEmpty() || (ztype >= zt_firstarchive && ztype < zt_firstcompressedarchive)) return wxEmptyString; if ((c = archivename.Find(wxT(".tar."))) != -1) // If this is a tar.?z(2) archive UncompressedName = archivename.Left(c + 4); // remove the .?z(2), keeping the .tar else { if (archivename.Right(3) == wxT(".7z")) return wxT(""); // A standard (non-tar) 7z is an archive, but not as we know it else { if (archivename.Right(4) == wxT(".rar")) return wxT(""); // Ditto for rar else // Otherwise it must have a .t?z ext UncompressedName = archivename.BeforeLast(wxT('.')) + wxT(".tar"); // Replace this with tar } } return UncompressedName; } //static bool ArchiveDialogBase::IsAnArchive(const wxString& filename, bool append/*=false*/) // Decide if the file is an archive suitable for extracting +/- appending to { wxString ext = filename.AfterLast('.'); ext.MakeLower(); // See if the last .ext is relevant if (ext==wxT("tar") || ext==wxT("tgz") || ext==wxT("tbz2") || ext==wxT("tbz") || ext==wxT("lzma") || ext==wxT("tlz") || ext==wxT("a") || ext==wxT("ar") || ext==wxT("cpio") || ext==wxT("rpm") || ext==wxT("deb") || (ext=="rar" && !append) // We can extract a .rar using the (free-ish) 'unrar' but can't append to one || ext==wxT("7z") // All 7z's are archives || ext==wxT("zip") || ext==wxT("htb")) return true; return (filename.Contains(wxT(".tar."))); // Otherwise see if there's a less-terminal tar ext } void ArchiveDialogBase::OnAddFile(wxCommandEvent& WXUNUSED(event)) // Add the contents of combo to the listbox { for (size_t n=0; n < combo->GetCount(); ++n) // First go thru the combobox proper list->Add(combo->GetString(n)); // 'Add' checks for duplicates wxString newfile = combo->GetValue(); // Now deal with the textctrl bit, in case an entry was written in if (!newfile.IsEmpty()) { wxString tempfile = newfile; if (newfile.Left(2) == wxT("./")) // If asking for the 'current' dir, get it from active pane tempfile = m_parent->active->GetActiveDirPath() + newfile.Mid(1); else if (newfile.GetChar(0) != wxT('/')) // If relative address for this file, similarly { tempfile = m_parent->active->GetActiveDirPath() + wxT('/'); tempfile += newfile; } if (!(wxFileExists(tempfile) || wxDirExists(tempfile))) // Since this entry was user-inserted, not from Browsing, check for rubbish { wxMessageDialog dialog(this, _("I can't seem to find this file or directory.\nTry using the Browse button."), _("Oops!"), wxOK |wxICON_ERROR); dialog.ShowModal(); combo->SetValue(wxT("")); } else list->Add(newfile); } combo->Clear(); combo->SetValue(wxT("")); } void ArchiveDialogBase::OnFileBrowse(wxCommandEvent& WXUNUSED(event)) // Browse for files to add to listbox { FileDirDlg fdlg(this, FD_MULTIPLE | FD_SHOWHIDDEN, m_parent->active->GetActiveDirPath(), _("Choose file(s) and/or directories")); if (fdlg.ShowModal() != wxID_OK) return; wxArrayString filenames; fdlg.GetPaths(filenames); // Get the selection(s) into an array for (size_t n=0; n < filenames.GetCount(); ++n) // Store the answers in the combobox. The AddFile button will pass them to the listbox if (filenames[n].AfterLast(wxFILE_SEP_PATH) != wxT("..") && filenames[n].AfterLast(wxFILE_SEP_PATH) != wxT(".")) combo->Append(filenames[n]); #if (defined(__WXGTK20__) || defined(__WXX11__)) // In gtk2 we need explicitly to set the value #if wxVERSION_NUMBER > 2902 if (!combo->IsListEmpty()) combo->SetSelection(0); #else if (!combo->IsEmpty()) combo->SetSelection(0); #endif #endif } BEGIN_EVENT_TABLE(ArchiveDialogBase,wxDialog) EVT_BUTTON(XRCID("AddFile"), ArchiveDialogBase::OnAddFile) EVT_BUTTON(XRCID("Browse"), ArchiveDialogBase::OnFileBrowse) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- MakeArchiveDialog::MakeArchiveDialog(Archive* parent, bool newarch) : ArchiveDialogBase(parent) { NewArchive = newarch; bool foundarchive = false, loaded = false; if (NewArchive) loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("MakeArchiveDlg")); else loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("AppendArchiveDlg")); wxCHECK_RET(loaded, wxT("Failed to load dialog from xrc")); Init(); createincombo = (wxComboBox*)FindWindow(wxT("CreateInCombo")); // Set checkboxes to last-used values ((wxCheckBox*)FindWindow(wxT("DeReference")))->SetValue(m_parent->DerefSymlinks); ((wxCheckBox*)FindWindow(wxT("Verify")))->SetValue(m_parent->m_Verify); ((wxCheckBox*)FindWindow(wxT("DeleteSources")))->SetValue(m_parent->DeleteSource); if (NewArchive) { m_compressorradio = (wxRadioBox*)FindWindow(wxT("CompressRadio")); int compressors[] = { zt_bzip, zt_gzip, zt_xz, zt_lzma, zt_7z, zt_lzop }; for (size_t n=0; n < sizeof(compressors)/sizeof(int); ++n) m_compressorradio->Enable(n, m_parent->IsThisCompressorAvailable((ziptype)compressors[n])); // Disable any unavailable compression types // If the last-used compressor is still available, make it the default. Otherwise, set no compression m_compressorradio->SetSelection(m_compressorradio->IsItemEnabled(m_parent->ArchiveCompress) ? m_parent->ArchiveCompress : 6); } for (size_t n=0; n < m_parent->ArchiveHistory.GetCount(); ++n) // Load the archive path history into the combo createincombo->Append(m_parent->ArchiveHistory[n]); if (NewArchive) createincombo->SetValue(wxT("./")); // If creating, give archive-path a default value of ./ else createincombo->SetValue(wxT("")); size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) // & the listbox if (!(m_parent->FilepathArray[n]==m_parent->active->GetActiveDirectory() && count==1)) // We don't want rootdir in the list just because it's automatically highlit { if (!(NewArchive || foundarchive)) // If we're appending, see if we can spot an archive name to append to (if we haven't found one already) { if (IsAnArchive(m_parent->FilepathArray[n], true)) // See if the file is an archive suitable for appending to { createincombo->SetValue(m_parent->FilepathArray[n]); // If so, put it in the archive filepath combobox foundarchive = true; } else list->Append(m_parent->FilepathArray[n]); // Otherwise put in the files-to-be-added listbox as usual } else list->Append(m_parent->FilepathArray[n]); } } void MakeArchiveDialog::OnCheckBox(wxCommandEvent& event) // Make sure there's only one type of archiving checked at a time { int id = event.GetId(); if (id == XRCID("UseTar")) ((wxCheckBox*)FindWindow(wxT("UseZip")))->SetValue(!((wxCheckBox*)(event.GetEventObject()))->IsChecked()); if (id == XRCID("UseZip")) ((wxCheckBox*)FindWindow(wxT("UseTar")))->SetValue(!((wxCheckBox*)(event.GetEventObject()))->IsChecked()); } void MakeArchiveDialog::OnUpdateUI(wxUpdateUIEvent& event) { if (event.GetId() == XRCID("UseTar")) // If Tar button, do UI for its subordinates { bool enabled = ((wxCheckBox*)event.GetEventObject())->GetValue(); bool tar7z = (m_compressorradio && m_compressorradio->GetSelection() == 4); // We won't be here if it's a real foo.7z ((wxCheckBox*)FindWindow(wxT("DeleteSources")))->Enable(enabled && !tar7z); ((wxCheckBox*)FindWindow(wxT("DeReference")))->Enable(enabled); ((wxCheckBox*)FindWindow(wxT("Verify")))->Enable(enabled && !tar7z); m_compressorradio->Enable(enabled); ((wxStaticText*)FindWindow(wxT("CreateInFolder")))->Enable(enabled); ((wxBitmapButton*)FindWindow(wxT("CreateInBrowse")))->Enable(enabled); if (createincombo) createincombo->Enable(enabled); } if (event.GetId() == XRCID("wxID_OK")) // Enable the OK button if archive-name present && >0 files { if (NewArchive) OKEnabled = !((wxTextCtrl*)(FindWindow(wxT("ArchiveName"))))->GetValue().empty(); else OKEnabled = !createincombo->GetValue().empty(); event.Enable(list->GetCount() && OKEnabled); } } void MakeArchiveDialog::OnOK(wxCommandEvent &event) { if (!OKEnabled) return; // If insufficient data to allow wxID_OK, ignore the keypress // If there is a new entry in the create-in comb, add it to the history if it's unique wxString string = createincombo->GetValue(); // Get the visible string if (!(string.IsEmpty() || string==wxT("./"))) { int index = m_parent->ArchiveHistory.Index(string, false);// See if this entry already exists in the history array if (index != wxNOT_FOUND) m_parent->ArchiveHistory.RemoveAt(index); // If so, remove it. We'll add it back into position zero m_parent->ArchiveHistory.Insert(string, 0); // Either way, insert into position zero } EndModal(wxID_OK); } void MakeArchiveDialog::OnCreateInBrowse(wxCommandEvent& WXUNUSED(event)) // Browse for the dir to store the new archive, or the filepath of existing one { wxString filepath; if (NewArchive) { #if defined(__WXGTK20__) int style = wxDD_DEFAULT_STYLE | wxDD_DIR_MUST_EXIST; // the gtk2 dirdlg uses different flags :/ #else int style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER; #endif wxDirDialog ddlg(this, _("Choose the Directory in which to store the Archive"), m_parent->active->GetActiveDirPath(), style); if (ddlg.ShowModal() != wxID_OK) return; filepath = ddlg.GetPath(); } else { wxFileDialog fdlg(this, _("Browse for the Archive to which to Append"), m_parent->active->GetActiveDirPath(), wxT(""), wxT("*"), wxFD_OPEN); if (fdlg.ShowModal() != wxID_OK) return; filepath = fdlg.GetPath(); } if (!filepath.IsEmpty()) createincombo->SetValue(filepath); } enum returntype MakeArchiveDialog::GetCommand() { if (!list->GetCount()) return cancel; // Shouldn't happen, as Return would be disabled m_parent->FilepathArray.Clear(); // In case files were added/deleted during the dialog, clear the old data for (size_t n=0; n < list->GetCount(); ++n) m_parent->FilepathArray.Insert(list->GetString(n), 0); if (NewArchive) return GetNewCommand(); // Are we creating or appending? else return GetAppendCommand(); } enum returntype MakeArchiveDialog::GetNewCommand() // Parse entered options into command for a new archive { wxString command, archivefilename; archivefilename = ((wxTextCtrl*)FindWindow(wxT("ArchiveName")))->GetValue(); // Now get the archive file name // See which checkboxes are set. if (((wxCheckBox*)FindWindow(wxT("UseZip")))->GetValue()) // If zip is, that'll be the only thing to look up { wxString oldcwd = GetCwd(); // Save the current cwd wxString cwd = m_parent->active->GetActiveDirPath(); SetWorkingDirectory(cwd); // & then set it to the currently-selected path (this solves various zip problems) m_parent->Updatedir.Add(cwd); // We'll want to update this dir once we're finished command = wxT("echo Creating an archive using zip; "); wxString changedir; changedir.Printf(wxT("cd \\\"%s\\\" && "), cwd.c_str()); command << changedir <FilepathArray.GetCount(); ++c) { wxString relativefilepath, filepath = m_parent->FilepathArray[c]; if (filepath.StartsWith(cwd+wxT('/'), &relativefilepath)) // If path found, wString::StartsWith puts the rest of the string in relativefilepath filepath = relativefilepath; // If successful, this means filepath contains the (file)path relative to cwd command << wxT(" \\\"") << filepath << wxT("\\\""); // Add the filepath, cropped or otherwise, to the command } SetWorkingDirectory(oldcwd); } else // If not zip, it must be tar. Start by finding the archive filepath { wxString archivename = createincombo->GetValue(); // Get first the selected path for the archive if (archivename == wxT("./")) // If asking for the 'current' dir, get it from active pane archivename = m_parent->active->GetActiveDirPath(); if (archivename.Last() != wxT('/')) archivename += wxT('/'); if (!wxDirExists(archivename)) { wxMessageDialog dialog(this, _("The directory in which you want to create the archive doesn't seem to exist.\nUse the current directory?"), wxT(""), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return retry; archivename = m_parent->active->GetActiveDirPath(); } m_parent->Updatedir.Add(archivename); // We'll want to update this dir once we're finished. Grab the chance to save it archivename << archivefilename; archivename << wxT(".tar"); // Add the ext to archive name command = wxT("echo Creating an archive using tar; tar"); command << MakeTarCommand(archivename); // Now sort out the compression command, if any switch(m_parent->ArchiveCompress = m_compressorradio->GetSelection()) { case 0: command << wxT("&& echo Compressing with bzip2 && bzip2 -z \\\"") << archivename << wxT("\\\""); break; case 1: command << wxT("&& echo Compressing with gzip && gzip \\\"") << archivename << wxT("\\\""); break; case 2: command << wxT("&& echo Compressing with xz && xz -z \\\"") << archivename << wxT("\\\""); break; case 3: command << wxT("&& echo Compressing with lzma && xz -z --format=lzma \\\"") << archivename << wxT("\\\""); break; case 4: command << wxT("&& echo Compressing with 7z && cat \\\"") << archivename // 7z is pathetic re the commandline, so use 'cat' << wxT("\\\" | \\\"") << m_parent->GetSevenZString() << wxT("\\\" a -si \\\"") // a -si means create from stdin << archivename << wxT(".7z\\\" && rm -f \\\"") << archivename << wxT("\\\""); break; // 7z doesn't delete the tarball, so do it ourselves case 5: command << wxT("&& echo Compressing with lzop && lzop -U \\\"") << archivename << wxT("\\\""); break; } } m_parent->command = command; // Pass the command string to parent's version return valid; } enum returntype MakeArchiveDialog::GetAppendCommand() // Parse entered options into command to append to an archive { wxString command; // Start by finding the archive filepath wxString archivename = createincombo->GetValue(); if (!wxFileExists(archivename)) { wxMessageDialog dialog(this, _("The archive to which you want to append doesn't seem to exist.\nTry again?"), wxT(""), wxYES_NO | wxICON_QUESTION); return (dialog.ShowModal()==wxID_YES ? retry : cancel); } switch(m_parent->Categorise(archivename)) { case zt_zip: case zt_htb: { wxString oldcwd = GetCwd(); wxString cwd = m_parent->active->GetActiveDirPath(); SetWorkingDirectory(cwd); // & then set it to the currently-selected path (this solves various zip problems) command = wxT("echo Appending to a zip archive; "); wxString changedir; changedir.Printf(wxT("cd \\\"%s\\\" && "), cwd.c_str()); command << changedir << wxT("zip -urv"); // Update, recursive, verbose if ((m_parent->DeleteSource = ((wxCheckBox*)FindWindow(wxT("DeleteSources")))->GetValue())) // Do we want to delete the source files? command << wxT('m'); if ((m_parent->m_Verify = ((wxCheckBox*)FindWindow(wxT("Verify")))->GetValue())) // Do we want to verify the archive? command << wxT('T'); if (!(m_parent->DerefSymlinks = ((wxCheckBox*)FindWindow(wxT("DeReference")))->GetValue())) // Do we want to save symlink itself, not the target? command << wxT('y'); wxString relativefilepath; // Zip wants its archive to be relative to the cwd. archivename is probably an absolute filepath if (archivename.StartsWith(cwd+wxT('/'), &relativefilepath)) archivename = relativefilepath; // If successful, this means filepath contains the (file)path relative to cwd command << wxT(" \\\"") << archivename << wxT("\\\""); // Add the files. First amputate the cwd path, as unzip assumes we stored paths relative to this, & reconstitutes /home/me/foo as /home/me/home/me/foo for (size_t c=0; c < m_parent->FilepathArray.GetCount(); ++c) { wxString relativefilepath, filepath = m_parent->FilepathArray[c]; if (filepath.StartsWith(cwd+wxT('/'), &relativefilepath)) filepath = relativefilepath; // If successful, this means filepath contains the (file)path relative to cwd command << wxT(" \\\"") << filepath << wxT("\\\""); // Add the filepath, cropped or otherwise, to the command } SetWorkingDirectory(oldcwd); break; } case zt_7z: { wxString decompresscmd = AppendCompressedTar(archivename, zt_7z); if (decompresscmd.empty()) { wxMessageBox(_("Can't find a 7z binary on your system"), _("Oops"), wxOK, this); return cancel; } command << wxT("echo Appending to a standard 7z archive; ") << decompresscmd; break; } case zt_taronly: command = wxT("echo Appending to a tarball; tar"); command << MakeTarCommand(archivename); break; case zt_targz: command = wxT("echo Appending to a tarball compressed with gzip; "); command << AppendCompressedTar(archivename, zt_gzip); break; case zt_tarbz: command = wxT("echo Appending to a tarball compressed with xz; "); command << AppendCompressedTar(archivename, zt_bzip); break; case zt_tarxz: command = wxT("echo Appending to a tarball compressed with xz; "); command << AppendCompressedTar(archivename, zt_xz); break; case zt_tarlzma: command = wxT("echo Appending to a tarball compressed with lzma; "); command << AppendCompressedTar(archivename, zt_lzma); break; case zt_tar7z: {command = wxT("echo Appending to a tarball compressed with 7z; "); wxString decompresscmd = AppendCompressedTar(archivename, zt_tar7z); if (decompresscmd.empty()) { wxMessageBox(_("Can't find a 7z binary on your system"), _("Oops"), wxOK, this); return cancel; } command << decompresscmd; break;} case zt_tarlzop: command = wxT("echo Appending to a tarball compressed with lzop; "); command << AppendCompressedTar(archivename, zt_lzop); break; default: wxMessageBox(_("Can't find a valid archive to which to append"), _("Oops"), wxOK, this); return cancel; // if archive doesn't seem to be an archive, or one that can't be handled } m_parent->command = command; // Pass the command string to parent's version return valid; } wxString MakeArchiveDialog::AppendCompressedTar(const wxString& archivefpath, enum ziptype ztype) // Handles the uncompress, append, recompress contruction { wxString command, UncompressedName, Recompress; if (ztype != zt_7z) { UncompressedName = FindUncompressedName(archivefpath, ztype); // eg .tbz2 or .tar.gz -> .tar if (UncompressedName.IsEmpty()) return UncompressedName; } switch(ztype) { case zt_gzip: command << wxT("gunzip -v \\\"") << archivefpath << wxT("\\\""); Recompress << wxT(" ; echo Recompressing with gzip && gzip \\\"") << UncompressedName << wxT("\\\""); break; case zt_bzip : command = wxT("bunzip2 -v \\\"") + archivefpath; command += wxT("\\\""); Recompress << wxT(" ; echo Recompressing with bzip2 && bzip2 -z \\\"") << UncompressedName << wxT("\\\""); break; case zt_xz : command = wxT("xz -dv \\\"") + archivefpath; command += wxT("\\\""); Recompress << wxT(" ; echo Recompressing with xz && xz -z \\\"") << UncompressedName << wxT("\\\""); break; case zt_lzma : command = wxT("xz -dv \\\"") + archivefpath; command += wxT("\\\""); Recompress << wxT(" ; echo Recompressing with xz && xz -z --format=lzma \\\"") << UncompressedName << wxT("\\\""); break; case zt_7z : {wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) return wxT(""); // NB a 'standard' 7z archive // 7z is sufficiently different (!) that we deal with it here wxString oldcwd = GetCwd(); wxString archivename(archivefpath.AfterLast(wxFILE_SEP_PATH)); // 7z really hates dealing with filepaths, so keep things relative command = wxT("cd \\\""); command << archivefpath.BeforeLast(wxFILE_SEP_PATH) << wxT("\\\" && "); command << sevenzbinary << wxT(" a \\\"") << archivename; command << wxT("\\\" ") << AddSortedFiles(false) << wxT(" && cd \\\"") << oldcwd << wxT("\\\""); return command;} case zt_tar7z : {wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) return wxT(""); // NB a tarball compressed with 7z // 7z is sufficiently different (!) that we deal with it here wxString oldcwd = GetCwd(); wxString archivename(archivefpath.AfterLast(wxFILE_SEP_PATH)); // 7z really hates dealing with filepaths, so keep things relative command = wxT("cd \\\""); command << archivefpath.BeforeLast(wxFILE_SEP_PATH) << wxT("\\\" && "); command << sevenzbinary << wxT(" e \\\"") << archivename; command << wxT("\\\" && tar") << MakeTarCommand(UncompressedName) << wxT(" && rm -f \\\"") << archivefpath; command << wxT("\\\" && echo Recompressing with 7z && cat \\\"") << UncompressedName << wxT("\\\" | ") << sevenzbinary << wxT(" a -si \\\"") << archivename << wxT("\\\"") // a -si means create from stdin << wxT(" && rm -f \\\"") << UncompressedName << wxT("\\\" && cd \\\"") << oldcwd << wxT("\\\""); return command;} case zt_lzop : command = wxT("lzop -dUv \\\"") + archivefpath; command += wxT("\\\""); Recompress << wxT(" ; echo Recompressing with lzop && lzop -Uv \\\"") << UncompressedName << wxT("\\\""); break; default: return command; } command << wxT(" && tar"); command << MakeTarCommand(UncompressedName); command << Recompress; return command; } wxString MakeArchiveDialog::MakeTarCommand(const wxString& archivename) { wxString command; if (NewArchive) command << wxT(" -cv"); // -c designates new archive, -v is verbose else command << wxT(" -rv"); // -r is append if ((m_parent->DerefSymlinks = ((wxCheckBox*)FindWindow(wxT("DeReference")))->GetValue())) // Do we want to save symlink target, not the link itself? command << wxT('h'); command << wxT("f \\\"") << archivename << wxT("\\\""); if ((m_parent->DeleteSource = ((wxCheckBox*)FindWindow(wxT("DeleteSources")))->GetValue())) // Do we want to delete the source files? command << wxT(" --remove-files "); command << AddSortedFiles(); // Add the files, sorted by dir, each dir preceded by a -C if ((m_parent->m_Verify = ((wxCheckBox*)FindWindow(wxT("Verify")))->GetValue())) // Verify the archive? NB we do this here, not using the 'W' flag. { // That's because it would fail if the source files had just been deleted wxString str; str.Printf(wxT("&& echo Verifying %s && "), archivename.AfterLast(wxT('/')).c_str()); command << str << wxT("tar -tvf \\\"") << archivename + wxT("\\\""); } return command; } wxString MakeArchiveDialog::AddSortedFiles(bool prependingpaths /*= true*/) // Returns files sorted by dir, each dir preceded by a -C { wxString command, lastpath; wxArrayString filepaths, files; if (!m_parent->FilepathArray.GetCount()) return command; m_parent->FilepathArray.Sort(); // This should get them into dir order for (size_t c=0; c < m_parent->FilepathArray.GetCount(); ++c) // It's easier if we separate the 'local' files from the filepaths if (m_parent->FilepathArray[c].Left(2) == wxT("./")) // Initial './', so this should be a file in the cwd. Remove its ./ files.Add(m_parent->FilepathArray[c].Mid(2)); else if (m_parent->FilepathArray[c].GetChar(0) != wxT('/')) files.Add(m_parent->FilepathArray[c]); // No initial '/', so this should be a file in the cwd else filepaths.Add(m_parent->FilepathArray[c]); // Otherwise put it in the filepaths array if (files.GetCount() && prependingpaths) // Because the cwd probably isn't the active dir, we need to use the latter explicitly { command = wxT(" -C \\\""); command << m_parent->active->GetActiveDirPath() << wxT("\\\""); } for (size_t c=0; c < files.GetCount(); ++c) { command << wxT(" \\\"") << files[c] << wxT("\\\""); } // Add each 'local' file to the command size_t n=0; if (filepaths.GetCount()) do // Now do the absolute filepaths, path by path { lastpath = filepaths[n].BeforeLast('/'); // Start with the path, making a new -C entry if (prependingpaths) command << wxT(" -C \\\"") << lastpath << wxT("/\\\""); do { command << wxT(" \\\"") << filepaths[n++].AfterLast('/') << wxT("\\\""); // Add each file for this path if (n >= filepaths.GetCount()) return command; // Return if we're finished } while (filepaths[n].BeforeLast('/') == lastpath); // Continue while the path is unchanged } while (1); // The path changed, so loop to cd return command; } BEGIN_EVENT_TABLE(MakeArchiveDialog,ArchiveDialogBase) EVT_CHECKBOX(wxID_ANY, MakeArchiveDialog::OnCheckBox) EVT_BUTTON(XRCID("CreateInBrowse"), MakeArchiveDialog::OnCreateInBrowse) EVT_BUTTON(wxID_OK, MakeArchiveDialog::OnOK) EVT_UPDATE_UI(wxID_ANY, MakeArchiveDialog::OnUpdateUI) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- CompressDialog::CompressDialog(Archive* parent) : ArchiveDialogBase(parent) { bool loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("CompressDlg")); wxCHECK_RET(loaded, wxT("Failed to load ExtractCompressedDlg from xrc")); Init(); size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) // Put the highlit files into the listbox if (!((m_parent->FilepathArray[n]==m_parent->active->GetActiveDirectory()) && (count==1))) // We don't want rootdir in the list just because it's automatically highlit list->Append(m_parent->FilepathArray[n]); wxRadioBox* radio = (wxRadioBox*)FindWindow(wxT("CompressRadio")); int compressors[] = { zt_bzip, zt_gzip, zt_xz, zt_lzma, zt_lzop, zt_compress }; for (size_t n=0; n < sizeof(compressors)/sizeof(int); ++n) radio->Enable(n, m_parent->IsThisCompressorAvailable((ziptype)compressors[n])); // Disable any unavailable compression types // Set checkboxes etc to last-used values ((wxSlider*)FindWindow(wxT("Slider")))->SetValue(m_parent->Slidervalue); ((wxCheckBox*)FindWindow(wxT("Recurse")))->SetValue(m_parent->Recurse); ((wxCheckBox*)FindWindow(wxT("Force")))->SetValue(m_parent->Force); if (radio->IsItemEnabled(m_parent->m_Compressionchoice)) radio->SetSelection(m_parent->m_Compressionchoice); // If the last-used compressor is still available, make it the default } void CompressDialog::OnUpdateUI(wxUpdateUIEvent& event) { if (event.GetId() == XRCID("Slider")) // I'm using the slider UI event, as the radiobox didn't seem to generate one!? { int selection = ((wxRadioBox*)FindWindow(wxT("CompressRadio")))->GetSelection(); bool enabled = (selection > 0) && (selection < 6) && (selection != 4); // Disable the slider if the selected compressor is 0 (bzip2), 4 (7z) or 6 (compress) ((wxStaticText*)FindWindow(wxT("FasterStatic")))->Enable(enabled); ((wxSlider*)FindWindow(wxT("Slider")))->Enable(enabled); ((wxStaticText*)FindWindow(wxT("SmallerStatic")))->Enable(enabled); } if (event.GetId() == XRCID("wxID_OK")) // Enable the OK button if >0 files in listbox ((wxButton*)event.GetEventObject())->Enable(list->GetCount()); } enum returntype CompressDialog::GetCommand() // Parse entered options into a command { enum { cdgc_bzip, cdgc_gzip, cdgc_xz, cdgc_lzma, cdgc_lzop, cdgc_compress }; wxString command, files, verifystring; bool data = 0; // Flags that we've got >0 files to compress if (!list->GetCount()) return cancel; m_parent->FilepathArray.Clear(); // In case files were added/deleted during the dialog, clear the old data for (size_t n=0; n < list->GetCount(); ++n) m_parent->FilepathArray.Insert(list->GetString(n), 0); if (m_parent->FilepathArray.GetCount() == 0) return cancel; wxString squash = wxString::Format(wxT("%u"), m_parent->Slidervalue = ((wxSlider*)FindWindow(wxT("Slider")))->GetValue()); unsigned int whichcompressor = ((wxRadioBox*)FindWindow(wxT("CompressRadio")))->GetSelection(); // Which compressor are we using? m_parent->m_Compressionchoice = whichcompressor; command = wxT("echo Compressing "); switch(whichcompressor) { case cdgc_bzip: command << wxT("using bzip2; bzip2 -zv"); break; // Compress, verbose. No point adding squash as bzip2 always does 9 case cdgc_gzip: command << wxT("using gzip; gzip -v") << squash; break; case cdgc_xz: command << wxT("using xz; xz -v") << squash; break; case cdgc_lzma: command << wxT("using lzma; xz --format=lzma -v") << squash; break; // lzma, but still use xz to do the work case cdgc_lzop: command << wxT("using lzop; lzop -Uv") << squash; break; // lzop retains original files unless the -U option is given case cdgc_compress: command << wxT("using \'compress\'; compress -v"); break; // For historical interest, 'compress' } wxCheckBox* fcb = (wxCheckBox*)FindWindow(wxT("Force")); m_parent->Force = fcb && fcb->IsEnabled() && fcb->IsChecked(); if (m_parent->Force) command << wxT('f'); // Force overwrite if requested wxCheckBox* rcb = (wxCheckBox*)FindWindow(wxT("Recurse")); bool recurse = rcb && rcb->IsEnabled() && rcb->IsChecked(); m_parent->Recurse = recurse; for (size_t n=0; n < m_parent->FilepathArray.GetCount(); ++n) // Now add the requested files { FileData fd(m_parent->FilepathArray[n]); if (fd.IsDir()) // If this 'file' is a directory, we have to be clever { wxArrayString filearray; // Grab files from this dir, & optionally all its subdirs. NB We had to do it like this for bz2 as bzip2 has no recurse flag, but my gzip's recursion is buggy anyway AddRecursively(m_parent->FilepathArray[n], filearray, recurse); for (size_t c=0; c < filearray.GetCount(); ++c) // Then add them 1 by 1 to the files string { files << wxT(" \\\"") << filearray[c] << wxT("\\\""); data = 1; } } else // If the file IS a file, or if a dir using gzip -r, add it to the string. NB we quote using escaped "", in case a filepath contains a ' { files << wxT(" \\\"") << m_parent->FilepathArray[n] << wxT("\\\""); data = 1; } } if (!data) return cancel; // Lest there were no actual files to compress m_parent->command = command + files; // Join the command strings in parent's version return valid; } void CompressDialog::AddRecursively(const wxString& dir, wxArrayString& filearray, bool recurse) // Put files from this dir, & optionally all its subdirs, into filearray { wxArrayString localarray; // First get all the files (optionally also in subdirs) from the passed dir into a local array int flags = wxDIR_FILES | wxDIR_HIDDEN; if (recurse) { flags |= wxDIR_DIRS; #if wxVERSION_NUMBER > 2904 flags |= wxDIR_NO_FOLLOW; #endif } wxDir::GetAllFiles(dir, &localarray, wxEmptyString, flags); for (size_t c=0; c < localarray.GetCount(); ++c) { FileData fd(localarray[c]); if (fd.IsDir()) { if (recurse) AddRecursively(localarray[c], localarray, recurse); } // recursing into dirs (which will append their contents) else filearray.Add(localarray[c]); } } BEGIN_EVENT_TABLE(CompressDialog,ArchiveDialogBase) EVT_UPDATE_UI(wxID_ANY, CompressDialog::OnUpdateUI) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- DecompressDialog::DecompressDialog(Archive* parent) : ArchiveDialogBase(parent) { bool loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("ExtractCompressedDlg")); wxCHECK_RET(loaded, wxT("Failed to load ExtractCompressedDlg from xrc")); Init(); size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) { FileData fd(m_parent->FilepathArray[n]); if (fd.IsDir()) list->Append(m_parent->FilepathArray[n]); // If someone selected a dir(s), presumably he wants its files decompressed else { enum ziptype ztype = m_parent->Categorise(m_parent->FilepathArray[n]); if ((ztype <= zt_compress) // If this is a compressed file, || (ztype >= zt_firstcompressedarchive && ztype != zt_invalid)) //or a compressed archive, list->Append(m_parent->FilepathArray[n]); // put it in the to-be-decompressed listbox } } // Set checkboxes etc to last-used values ((wxCheckBox*)FindWindow(wxT("Recurse")))->SetValue(m_parent->DecompressRecurse); ((wxCheckBox*)FindWindow(wxT("Force")))->SetValue(m_parent->DecompressForce); ((wxCheckBox*)FindWindow(wxT("ArchivesToo")))->SetValue(m_parent->DecompressArchivesToo); } void DecompressDialog::OnUpdateUI(wxUpdateUIEvent& event) { if (event.GetId() == XRCID("wxID_OK")) // Enable the OK button if >0 files in listbox ((wxButton*)event.GetEventObject())->Enable(list->GetCount()); } enum returntype DecompressDialog::GetCommand() // Parse entered options into a command { wxString command; wxArrayString gz, bz, xz, sevenz, rar, lzo; if (!list->GetCount()) return cancel; // Shouldn't happen, as Return would be disabled m_parent->FilepathArray.Clear(); for (size_t n=0; n < list->GetCount(); ++n) m_parent->FilepathArray.Insert(list->GetString(n), 0); bool recurse = ((wxCheckBox*)FindWindow(wxT("Recurse")))->IsChecked(); m_parent->DecompressRecurse = recurse; bool force = ((wxCheckBox*)FindWindow(wxT("Force")))->IsChecked(); m_parent->DecompressForce = force; m_parent->DecompressArchivesToo = ((wxCheckBox*)FindWindow(wxT("ArchivesToo")))->IsChecked(); // We may have 5 sorts of file in the array: gz, bz2 etc, and ordinary files added in error. Oh, and dirs. Because of possible recursion, do in a submethod // NB we don't use sevenz (as foo.7z is an archive, not a 'compressed file'; but it's needed as a SortFiles() parameter if (!SortFiles(m_parent->FilepathArray, gz, bz, xz, sevenz, lzo, recurse, m_parent->DecompressArchivesToo)) { wxMessageDialog dialog(this, _("No relevant compressed files were selected.\nTry again?"), // If there weren't any compressed files selected... wxT(""), wxYES_NO | wxICON_QUESTION); return (dialog.ShowModal() == wxID_YES ? retry : cancel); } wxCHECK_MSG(sevenz.IsEmpty(), cancel, wxT("Impossible result: 7z files shouldn't be found here")); if (!gz.IsEmpty()) // Create a gunzip command, adding relevant files { command << wxT("gunzip -v"); // Verbose if (force) command << wxT('f'); for (size_t c=0; c < gz.GetCount(); ++c) { command << wxT(" \\\"") << gz[c] << wxT("\\\""); } } if (!bz.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("bunzip2 -v"); if (force) command << wxT('f'); for (size_t c=0; c < bz.GetCount(); ++c) { command << wxT(" \\\"") << bz[c] << wxT("\\\""); } } if (!xz.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("xz -dv"); if (force) command << wxT('f'); for (size_t c=0; c < xz.GetCount(); ++c) { command << wxT(" \\\"") << xz[c] << wxT("\\\""); } } if (!lzo.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("lzop -dUv"); // -U says _not_ to keep the original compressed files if (force) command << wxT('f'); for (size_t c=0; c < lzo.GetCount(); ++c) { command << wxT(" \\\"") << lzo[c] << wxT("\\\""); } } if (!command.empty()) { m_parent->command = wxT("echo Decompressing; ") + command; return valid; } else return cancel; } bool DecompressDialog::SortFiles(const wxArrayString& selected, wxArrayString& gz, wxArrayString& bz, wxArrayString& xz, wxArrayString& sevenz, wxArrayString& lzo, bool recurse, bool archivestoo /*=false */) // Sort selected files into .bz, .gz & rubbish { for (size_t n=0; n < selected.GetCount(); ++n) { FileData fd(selected[n]); if (fd.IsDir()) // If this is a directory, include its files. If 'recurse' do so recursively { int flags = wxDIR_FILES | wxDIR_HIDDEN; if (recurse) { flags |= wxDIR_DIRS; #if wxVERSION_NUMBER > 2904 flags |= wxDIR_NO_FOLLOW; #endif } wxArrayString filearray; // Put files from this dir, & optionally all its subdirs, into filearray wxDir::GetAllFiles(selected[n], &filearray, wxEmptyString, flags); SortFiles(filearray, gz, bz, xz, sevenz, lzo, true, archivestoo); // Now sort by recursion continue; // We've processed this item. Loop here to avoid falling thru to the next bit } switch(m_parent->Categorise(selected[n])) // This method returns different answers depending on whether .gz, .tar.bz2 etc { case zt_targz: case zt_taZ: if (!archivestoo) break; // If we don't want to decompress any compressed archives, break. Otherwise fall into gzip case zt_compress: // gzip does this case zt_gzip: gz.Add(selected[n]); break; case zt_tarbz: if (!archivestoo) break; case zt_bzip: bz.Add(selected[n]); break; case zt_tarxz: case zt_tarlzma: if (!archivestoo) break; case zt_xz: case zt_lzma: xz.Add(selected[n]); break; case zt_tar7z: if (!archivestoo) break; case zt_7z: sevenz.Add(selected[n]); break; case zt_tarlzop: if (!archivestoo) break; case zt_lzop: lzo.Add(selected[n]); break; default: break; // because the file is not compressed } } return !(gz.IsEmpty() && bz.IsEmpty() && xz.IsEmpty() && sevenz.IsEmpty() && lzo.IsEmpty()); } BEGIN_EVENT_TABLE(DecompressDialog,ArchiveDialogBase) EVT_UPDATE_UI(wxID_ANY, DecompressDialog::OnUpdateUI) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- ExtractArchiveDlg::ExtractArchiveDlg(Archive* parent) : m_parent(parent) { wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("ExtractArchiveDlg")); Init(); } void ExtractArchiveDlg::Init() { text = (wxTextCtrl*)FindWindow(wxT("text")); CreateInCombo = (wxComboBox*)FindWindow(wxT("CreateInCombo")); for (size_t n=0; n < m_parent->ArchiveHistory.GetCount(); ++n) // Load the archive path history into the combo CreateInCombo->Append(m_parent->ArchiveHistory[n]); CreateInCombo->SetValue(wxT("./")); // Give archive-path a default value of ./ m_parent->active->GetMultiplePaths(m_parent->FilepathArray); // Load the selected files into the stringarray size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) if (ArchiveDialogBase::IsAnArchive(m_parent->FilepathArray[n])) { text->ChangeValue(m_parent->FilepathArray[n]); break; } // Put 1st archive we find into the textctrl, then stop looking // Set checkbox to last-used value ((wxCheckBox*)FindWindow(wxT("Force")))->SetValue(m_parent->ArchiveExtractForce); } void ExtractArchiveDlg::OnFileBrowse(wxCommandEvent& WXUNUSED(event)) // Browse for archive { wxFileDialog fdlg(this,_("Browse for the Archive to Verify"), m_parent->active->GetActiveDirPath(), wxT(""), wxT("*"), wxFD_OPEN); if (fdlg.ShowModal() != wxID_OK) return; wxString filepath = fdlg.GetPath(); if (!filepath.IsEmpty()) text->ChangeValue(filepath); } void ExtractArchiveDlg::OnCreateInBrowse(wxCommandEvent& WXUNUSED(event)) // Browse for the dir into which to extract the archive { #if defined(__WXGTK20__) int style = wxDD_DEFAULT_STYLE | wxDD_DIR_MUST_EXIST; // the gtk2 dirdlg uses different flags :/ #else int style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER; #endif wxDirDialog ddlg(this,_("Choose the Directory in which to Extract the archive"), m_parent->active->GetActiveDirPath(), style); if (ddlg.ShowModal() != wxID_OK) return; wxString filepath = ddlg.GetPath(); if (!filepath.IsEmpty()) CreateInCombo->SetValue(filepath); } void ExtractArchiveDlg::OnUpdateUI(wxUpdateUIEvent& event) { event.Enable(!text->GetValue().IsEmpty()); // Enable the OK button if there's an archive name in textctrl // While we're here, set and disable the 'Overwrite' checkbox if it's a 7z or ar archive (as the Linux version probably can't be told not to) bool mustoverwrite = text->GetValue().Right(3) == wxT(".7z") || text->GetValue().Right(2) == wxT(".a") || text->GetValue().Right(3) == wxT(".ar"); wxCheckBox* overwrite = (wxCheckBox*)FindWindow(wxT("Force")); if (overwrite) // It'll be NULL if this is the Verify dialog { overwrite->Enable(!mustoverwrite); if (mustoverwrite) overwrite->SetValue(true); } } void ExtractArchiveDlg::OnOK(wxCommandEvent &event) { if (!((wxButton*)event.GetEventObject())->IsEnabled()) return; // If insufficient data to allow wxID_OK, ignore the keypress // If there is a new entry in the create-in comb, add it to the history if it's unique wxString string = CreateInCombo->GetValue(); if (!(string.IsEmpty() || string==wxT("./")) ) { int index = m_parent->ArchiveHistory.Index(string, false); // See if this entry already exists in the history array if (index != wxNOT_FOUND) m_parent->ArchiveHistory.RemoveAt(index); // If so, remove it. We'll add it back into position zero m_parent->ArchiveHistory.Insert(string, 0); // Either way, insert into position zero } EndModal(wxID_OK); } class ExtractDeb // Helper class for the deb section of ExtractArchiveDlg::GetCommand. Nowadays the .deb constituents may be either tar.gz or tar.xz, and we can't rely on tar -x to cope { public: ExtractDeb(const wxString& deb, const wxString& cdir, bool force) : archive(deb), createindir(cdir) { wxCHECK_RET(!archive.empty() && !createindir.empty(), wxT("You must pass a filename and dest dir")); archiveprefix = wxT("ar -p \\\""); archivepostfix = wxT("\\\" "); tarprefix = wxT(" | tar -"); tarpostfix = wxT("xv -C \\\""); overwrite = force ? wxT("\\\" --overwrite") : wxT("\\\" --skip-old-files"); wxArrayString output, errors; long ans = wxExecute(wxString(wxT("ar -t ")) + deb, output,errors); wxCHECK_RET(!ans, wxT("Trying to run 'ar' unaccountably failed")); for (size_t n=0; n < output.GetCount(); ++n) { if (output[n].StartsWith(wxT("control"))) { control = output[n]; continue; } if (output[n].StartsWith(wxT("data"))) { data = output[n]; continue; } binary = output[n]; } } const wxString GetControl() { return archiveprefix + archive + archivepostfix + control + tarprefix + GetCompression(control) + tarpostfix + createindir + overwrite; } const wxString GetData() { return archiveprefix + archive + archivepostfix + data + tarprefix + GetCompression(data) + tarpostfix + createindir + overwrite; } const wxString GetBinary() { return wxString(wxT("ar -p \\\"")) + archive + archivepostfix + binary + wxT(" > \\\"") + createindir + wxT('/') + binary + wxT("\\\" "); } protected: wxString GetCompression(const wxString& file) { wxString comp; if (file.Right(2) == wxT("gz")) comp = wxT("z"); else { if (file.Right(2) == wxT("xz")) comp = wxT("J"); } return comp; // If !gz && !xz we'll just have to hope that this version of tar can autodetect } wxString archiveprefix, archivepostfix, tarprefix, tarpostfix; wxString archive; wxString createindir; wxString control; wxString data; wxString binary; // This is debian-binary which, despite the name, is a text file that currrently says '2.0' wxString overwrite; }; enum returntype ExtractArchiveDlg::GetCommand() { wxString command, decompresscommand; wxString rpm2cpio(wxT("rpm2cpio ")); wxString createindir = CreateInCombo->GetValue(); // Get first the selected path for the archive if (createindir == wxT("./")) createindir = m_parent->active->GetActiveDirPath(); if (!wxDirExists(createindir)) if (!wxFileName::Mkdir(createindir, 0777, wxPATH_MKDIR_FULL)) { wxMessageDialog dialog(this, _("Failed to create the desired destination directory.\nTry again?"), wxT(""), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() == wxID_YES) return retry; else return cancel; } m_parent->Updatedir.Add(createindir); // We'll want to update this dir once we're finished. Grab the chance to save it bool force = ((wxCheckBox*)FindWindow(wxT("Force")))->GetValue(); m_parent->ArchiveExtractForce = force; wxString archive = text->GetValue(); // Get the archive filepath wxString archivename(archive.AfterLast(wxFILE_SEP_PATH)), archivepath(archive.BeforeLast(wxFILE_SEP_PATH)); if (createindir.IsEmpty() || (createindir == wxT("./"))) createindir = archivepath; // Needed for cpio etc enum ziptype ztype = m_parent->Categorise(archive); // Is it a bird, is it a plane . . .? switch(ztype) { case zt_htb: // htb's are effectively zips case zt_zip:command.Printf(wxT("echo Unzipping %s;"), archivename.c_str()); command << wxT("unzip "); command << (force ? wxT("-o") : wxT("-n")); command << wxT(" \\\"") << archive << wxT("\\\""); // Add the archive filepath if (!createindir.IsEmpty()) // Extract to the destination path, if one was requested { wxString destdir; destdir.Printf(wxT(" -d \\\"%s\\\" "), createindir.c_str()); command << destdir; } break; case zt_7z: // All 7z's are archives. This is for any 'standard', non-tar ones {wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) return cancel; wxString oldcwd = GetCwd(); // 7z really hates dealing with filepaths, so keep things relative command.Printf(wxT("echo Extracting %s;"), archivename.c_str()); command << wxT("cd \\\"") << archivepath << wxT("\\\" && ") << sevenzbinary << wxT(" x -y \\\"") << archivename << wxT("\\\""); // 'x' is extract retaining filepaths, -y == yes-to-everything i.e. Overwrite if (!createindir.IsEmpty()) command << wxT(" -o\\\"") << createindir << wxT("\\\""); command << wxT(" && cd \\\"") << oldcwd << wxT("\\\""); break;} case zt_tar7z: // 7z is very different! {wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) return cancel; wxString oldcwd = GetCwd(); // 7z really hates dealing with filepaths, so keep things relative decompresscommand << wxT("cd \\\"") << archivepath << wxT("\\\" && ") << sevenzbinary << wxT(" e -y \\\"") << archivename << wxT("\\\" && cd \\\"") << oldcwd << wxT("\\\" && "); }// Fall through towards zt_taronly for the proper extraction case zt_targz: case zt_tarbz: case zt_tarlzma: case zt_tarxz: case zt_tarlzop: case zt_taZ: // Variously-commpressed tarballs. We used to specify the correct option e.g. -j. Since v1.15 in 12/04 tar can work it out for itself case zt_taronly: command.Printf(wxT("echo Extracting %s;"), archivename.c_str()); command << decompresscommand; // Only relevant for tar.7z if (!createindir.IsEmpty()) // cd to the destination path, if one was requested { wxString changedir; changedir.Printf(wxT("(cd \\\"%s\\\" && "), createindir.c_str()); command << changedir; } command << wxT("tar "); if (force) command << wxT("--overwrite "); command << wxT(" -xv"); if (!force) command << wxT('k'); if (ztype == zt_tar7z) { wxString uncompressedfilepath(ArchiveDialogBase::FindUncompressedName(archive, ztype)); command << wxT("f \\\"") << uncompressedfilepath // Add the extracted tarball filepath << wxT("\\\" && rm -f \\\"") << uncompressedfilepath << wxT("\\\""); // and delete it after } else command << wxT("f \\\"") << archive << wxT("\\\""); // Add the archive filepath if (!createindir.IsEmpty()) command << wxT(')'); // Revert any cd break; case zt_cpio: command.Printf(wxT("echo Extracting %s; "), archivename.c_str()); command << wxT("(cd \\\"") << createindir << wxT("\\\" && cpio -idv "); if (force) command << wxT("--unconditional "); command << wxT("-I \\\"") << archive << wxT("\\\")"); break; case zt_rpm: // Unavoidable code duplication :( if (!Configure::TestExistence(wxT("rpm2cpio"))) { wxMessageBox(_("Can't find rpm2cpio on your system..."), _("Oops"), wxOK, this); return cancel; } if (createindir.IsEmpty() || (createindir == wxT("./"))) createindir = archivepath; // cpio defaults to the 4Pane filepath :/ command.Printf(wxT("echo Extracting %s; "), archivename.c_str()); command << wxT("(cd \\\"") << createindir << wxT("\\\" && rpm2cpio \\\"") << archive << wxT("\\\" | cpio -idv "); if (force) command << wxT("--unconditional "); command << wxT(')'); break; case zt_ar: if (!Configure::TestExistence(wxT("ar"))) { wxMessageBox(_("Can't find ar on your system..."), _("Oops"), wxOK, this); return cancel; } command << wxString::Format(wxT("echo Extracting %s && "), archivename.c_str()) << wxT("(cd \\\"") << createindir << wxT("\\\" && ar xv \\\"") << archive << wxT("\\\")"); break; case zt_deb:{if (!Configure::TestExistence(wxT("ar"))) { wxMessageBox(_("Can't find ar on your system..."), _("Oops"), wxOK, this); return cancel; } ExtractDeb helper(archive, createindir, force); command << wxString::Format(wxT("echo Extracting %s && "), archivename.c_str()) << helper.GetBinary(); command << wxT(" && ") << helper.GetControl(); command << wxT(" && ") << helper.GetData(); break; } case zt_rar: if (!Configure::TestExistence("unrar")) { wxMessageBox(_("Can't find unrar on your system..."), _("Oops"), wxOK, this); return cancel; } command << wxString::Format("echo Extracting %s && ", archivename) << "(cd \\\"" << createindir << "\\\" && unrar x \\\"" << archive << "\\\")"; break; default: wxMessageDialog dialog(this, _("Can't find a valid archive to extract.\nTry again?"), wxT(""), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() == wxID_YES) return retry; else return cancel; } m_parent->command = command; return valid; } BEGIN_EVENT_TABLE(ExtractArchiveDlg,wxDialog) EVT_BUTTON(XRCID("Browse"), ExtractArchiveDlg::OnFileBrowse) EVT_BUTTON(XRCID("CreateInBrowse"), ExtractArchiveDlg::OnCreateInBrowse) EVT_BUTTON(wxID_OK, ExtractArchiveDlg::OnOK) EVT_TEXT_ENTER(wxID_ANY, ExtractArchiveDlg::OnOK) EVT_UPDATE_UI(wxID_OK, ExtractArchiveDlg::OnUpdateUI) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- VerifyCompressedDialog::VerifyCompressedDialog(Archive* parent) : DecompressDialog() { m_parent = parent; bool loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe, wxT("VerifyCompressedDlg")); wxCHECK_RET(loaded, wxT("Failed to load VerifyCompressedDlg from xrc")); Init(); combo = (wxComboBox*)FindWindow(wxT("Combo")); list = (MyListBox*)FindWindow(wxT("CurrentFiles")); size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) { enum ziptype ztype = m_parent->Categorise(m_parent->FilepathArray[n]); if (ztype <= zt_lastcompressed) list->Append(m_parent->FilepathArray[n]); // If this is a compressed file put it in the files-to-be-verified listbox } } enum returntype VerifyCompressedDialog::GetCommand() // Parse entered options into a command { wxString command; wxArrayString gz, bz, xz, sevenz, lzo; if (!list->GetCount()) return cancel; // Shouldn't happen, as Return would be disabled m_parent->FilepathArray.Clear(); // In case files were added/deleted during the dialog, clear the old data for (size_t n=0; n < list->GetCount(); ++n) m_parent->FilepathArray.Insert(list->GetString(n), 0); // We may have 5 sorts of file in the array: bz2, gz (and Z), xz (and lzma), lzo, and ordinary files added in error if (!SortFiles(m_parent->FilepathArray, gz, bz, xz, sevenz, lzo, false)) // If there weren't any compressed files selected... { wxMessageDialog dialog(this, _("No relevant compressed files were selected.\nTry again?"), wxT(""), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() == wxID_YES) return retry; else return cancel; } if (!gz.IsEmpty()) // Create a gunzip command, adding relevant files { command << wxT("gunzip -tv"); // Test, Verbose for (size_t c=0; c < gz.GetCount(); ++c) command << wxT(" \\\"") << gz[c] << wxT("\\\""); } if (!bz.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("bunzip2 -tv"); for (size_t c=0; c < bz.GetCount(); ++c) command << wxT(" \\\"") << bz[c] << wxT("\\\""); } if (!xz.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("xz -tv"); for (size_t c=0; c < xz.GetCount(); ++c) command << wxT(" \\\"") << xz[c] << wxT("\\\""); } if (!lzo.IsEmpty()) { if (!command.empty()) command << wxT(" && "); command << wxT("lzop -tv"); for (size_t c=0; c < lzo.GetCount(); ++c) command << wxT(" \\\"") << lzo[c] << wxT("\\\""); } if (!command.empty()) { m_parent->command = wxT("echo Verifying; ") + command; return valid; } else return cancel; } //----------------------------------------------------------------------------------------------------------------------- VerifyArchiveDlg::VerifyArchiveDlg(Archive* parent) : ExtractArchiveDlg() { m_parent = parent; bool loaded = wxXmlResource::Get()->LoadDialog(this, MyFrame::mainframe,wxT("VerifyArchiveDlg")); wxCHECK_RET(loaded, wxT("Failed to load VerifyCompressedDlg from xrc")); text = (wxTextCtrl*)FindWindow(wxT("text")); m_parent->active->GetMultiplePaths(m_parent->FilepathArray); // Load the selected files into the stringarray size_t count = m_parent->FilepathArray.GetCount(); for (size_t n=0; n < count; ++n) if (ArchiveDialogBase::IsAnArchive(m_parent->FilepathArray[n])) { text->AppendText(m_parent->FilepathArray[n]); break; } // Put 1st archive we find into the textctrl, then stop looking } void VerifyArchiveDlg::OnOK(wxCommandEvent& event) { if (!((wxButton*)event.GetEventObject())->IsEnabled()) return; // If insufficient data to allow wxID_OK, ignore the keypress EndModal(wxID_OK); } enum returntype VerifyArchiveDlg::GetCommand() { wxString command; wxString archivefilepath = text->GetValue(); // Get the archive filepath wxString archivename = archivefilepath.AfterLast(wxT('/')), archivepath(archivefilepath.BeforeLast(wxFILE_SEP_PATH)); switch(m_parent->Categorise(archivefilepath)) { case zt_htb: case zt_zip: command.Printf(wxT("echo Verifying %s;"), archivename.c_str()); command << wxT("unzip -t"); command << wxT(" \\\"") << archivefilepath << wxT("\\\""); // Add the archive filepath break; case zt_7z: // All 7z's are archives. This is for any 'standard', non-tar ones {wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) { wxMessageBox(_("Can't find a 7z binary on your system"), _("Oops"), wxOK, this); return cancel; } // 7z can actually cope with filepaths for verification! command.Printf(wxT("echo Verifying %s; "), archivename.c_str()); command << sevenzbinary << wxT(" t \\\"") << archivefilepath << wxT("\\\""); break;}// 't' is 'verify' case zt_tar7z: // Here we need to decompress first to get to the tarball {wxString uncompressedfilepath(ArchiveDialogBase::FindUncompressedName(archivefilepath, zt_tar7z)); wxString sevenzbinary(m_parent->GetSevenZString()); if (sevenzbinary.empty()) { wxMessageBox(_("Can't find a 7z binary on your system"), _("Oops"), wxOK, this); return cancel; } wxString oldcwd = GetCwd(); // 7z really hates dealing with filepaths, so keep things relative command << wxString::Format(wxT("echo Verifying %s && cd \\\""), archivename.c_str()) << archivepath << wxT("\\\" && ") << sevenzbinary << wxT(" e \\\"") << archivename << wxT("\\\" && tar -tvf \\\"") << uncompressedfilepath << wxT("\\\" && rm -f \\\"") << uncompressedfilepath << wxT("\\\" && cd \\\"") << oldcwd << wxT("\\\""); break;} case zt_targz: case zt_tarbz: case zt_tarlzma: case zt_tarxz: case zt_tarlzop: case zt_taZ: // tar can now list compressed archives on the fly :) case zt_taronly: command << wxString::Format(wxT("echo Verifying %s && "), archivename.c_str()) << wxT("tar -tvf \\\"") << archivefilepath << wxT("\\\""); break; case zt_rpm: if (!Configure::TestExistence(wxT("rpm2cpio"))) { wxMessageBox(_("Can't find rpm2cpio on your system..."), _("Oops"), wxOK, this); return cancel; } command.Printf(wxT("echo Verifying %s; "), archivename.c_str()); command << wxT("rpm2cpio \\\"") << archivefilepath << wxT("\\\" | cpio -t"); break; case zt_cpio: command.Printf(wxT("echo Verifying %s; "), archivename.c_str()); command << wxT("cpio -t ") << wxT("-I \\\"") << archivefilepath << wxT("\\\""); break; case zt_ar: command << wxString::Format(wxT("echo Verifying %s && "), archivename.c_str()) << wxT("ar tv \\\"") << archivefilepath << wxT("\\\""); break; case zt_rar: if (!Configure::TestExistence("unrar")) { wxMessageBox(_("Can't find unrar on your system..."), _("Oops"), wxOK, this); return cancel; } command << wxString::Format("echo Verifying %s && ", archivename.c_str()) << "unrar t \\\"" << archivefilepath << "\\\""; break; case zt_deb: command << wxString::Format(wxT("echo Verifying %s && "), archivename.c_str()) << wxT("ar p \\\"") << archivefilepath << wxT("\\\" control.tar.gz | tar -ztv && ") << wxT("ar p \\\"") << archivefilepath << wxT("\\\" data.tar.gz | tar -ztv"); break; default: wxMessageDialog dialog(this, _("Can't find a valid archive to verify.\nTry again?"), wxT(""), wxYES_NO | wxICON_QUESTION); return (dialog.ShowModal() == wxID_YES) ? retry : cancel; } m_parent->command = command; // Pass the command string to parent's version return valid; } //----------------------------------------------------------------------------------------------------------------------- wxString Archive::m_7zString; void Archive::ExtractOrVerify(bool extract /*=true*/) // Extracts or verifies either archives or compressed files, depending on which are selected { // Are we decompressing or extracting? If there is even 1 compressed non-archive file selected, Decompress // If there are only archives (+/- rubbish), then select the 1st archive (there should only be one anyway) to extract active->GetMultiplePaths(FilepathArray); bool archivefound = false; if (!FilepathArray.IsEmpty()) { for (size_t n=0; n < FilepathArray.GetCount(); ++n) { enum ziptype ztype = Categorise(FilepathArray[n]); if (ztype <= zt_lastcompressed) // We've found a compressed non-archive so Decompress/Verify this/these { if (extract) return DoExtractCompressVerify(ecv_decompress); else return DoExtractCompressVerify(ecv_verifycompressed); } else if (ztype != zt_invalid) archivefound = true; } if (archivefound) // We found no compressed non-archives, & >0 archives, so extract/verify this { if (extract) return DoExtractCompressVerify(ecv_extractarchive); else return DoExtractCompressVerify(ecv_verifyarchive); } } // If we're here, either there were no files selected, or they were all rubbish. Ask for directions DecompressOrExtractDlg dlg; if (extract) wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("DecompressOrExtractDlg")); else wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe, wxT("VerifyWhichDlg")); // VerifyWhichDlg is derived from the above; only labels are different int ans = dlg.ShowModal(); if (ans==XRCID("Archive")) { if (extract) return DoExtractCompressVerify(ecv_extractarchive); else return DoExtractCompressVerify(ecv_verifyarchive); } if (ans==XRCID("Compressed")) { if (extract) return DoExtractCompressVerify(ecv_decompress); else return DoExtractCompressVerify(ecv_verifycompressed); } delete this; // If neither choice was taken, abort } void Archive::DoExtractCompressVerify(enum ExtractCompressVerify_type type) { enum returntype ans; wxString successmsg, failuremsg; wxDialog* dlg = NULL; switch(type) { case ecv_compress: {dlg = new CompressDialog(this); successmsg = _("File(s) compressed"); failuremsg = _("Compression failed"); break;} case ecv_decompress: {dlg = new DecompressDialog(this); successmsg = _("File(s) decompressed"); failuremsg = _("Decompression failed"); break;} case ecv_verifycompressed: {dlg = new VerifyCompressedDialog(this); successmsg = _("File(s) verified"); failuremsg = _("Verification failed"); break;} case ecv_makearchive: {dlg = new MakeArchiveDialog(this, true); LoadHistory(); successmsg = _("Archive created"); failuremsg = _("Archive creation failed"); break;} case ecv_addtoarchive: {dlg = new MakeArchiveDialog(this, false); LoadHistory(); successmsg = _("File(s) added to Archive"); failuremsg = _("Archive addition failed"); break;} case ecv_extractarchive: {dlg = new ExtractArchiveDlg(this); LoadHistory(); successmsg = _("Archive extracted"); failuremsg = _("Extraction failed"); break;} case ecv_verifyarchive: {dlg = new VerifyArchiveDlg(this); successmsg = _("Archive verified"); failuremsg = _("Verification failed"); break;} default: return; } do { command.Clear(); // Make sure there's no stale data if (dlg->ShowModal() != wxID_OK) { ans = cancel; break; } switch(type) { case ecv_compress: ans = static_cast(dlg)->GetCommand(); break; case ecv_decompress: ans = static_cast(dlg)->GetCommand(); break; case ecv_verifycompressed: ans = static_cast(dlg)->GetCommand(); break; case ecv_makearchive: case ecv_addtoarchive: ans = static_cast(dlg)->GetCommand(); break; case ecv_extractarchive: ans = static_cast(dlg)->GetCommand(); break; case ecv_verifyarchive: ans = static_cast(dlg)->GetCommand(); break; default: return; } if (ans == retry) continue; break; } while (1); if (ans == cancel) return; command = wxT("sh -c \"") + command; command += wxT('\"'); // Since command is multiple (if only with echos) we need to execute it thru a shell // We now have the command. Do the dialog that runs it and displays the results wxBusyCursor busy; CommandDisplay OutputDlg; wxXmlResource::Get()->LoadDialog(&OutputDlg, MyFrame::mainframe, wxT("OutputDlg")); LoadPreviousSize(&OutputDlg, wxT("OutputDlg")); OutputDlg.Init(command); OutputDlg.ShowModal(); SaveCurrentSize(&OutputDlg, wxT("OutputDlg")); if (!OutputDlg.exitstatus) BriefLogStatus bls(successmsg); else BriefLogStatus bls(_("Verification failed")); if ((type != ecv_verifycompressed) && (type != ecv_verifyarchive)) UpdatePanes(); dlg->Destroy(); delete this; } //static enum ziptype Archive::Categorise(const wxString& ftype) // Returns the type of file in filetype ie .gz, .tar etc { wxCHECK_MSG(!ftype.empty(), zt_invalid, wxT("An empty type...")); if (ftype.Last() == wxFILE_SEP_PATH) return zt_invalid; wxString endExt, prevExt, filetype = ftype.AfterLast(wxFILE_SEP_PATH); // We're only interested in the current filename, not a dir with a '.' halfway up the path endExt = filetype.AfterLast(wxT('.')); if (endExt == filetype) return zt_invalid; // Check there IS an ext (AfterLast() returns whole string if the char isn't found) prevExt = (filetype.BeforeLast(wxT('.'))).AfterLast(wxT('.')); // Get any previous ext, in case of foo.tar.gz if (endExt==wxT("htb")) return zt_htb; if (endExt==wxT("zip")) return zt_zip; if (endExt==wxT("tar")) return zt_taronly; if (endExt==wxT("cpio")) return zt_cpio; if (endExt==wxT("rpm")) return zt_rpm; // which we're treating as an archive if (endExt==wxT("deb") || endExt==wxT("ddeb")) return zt_deb; // ditto (and debian now labels debug debs 'ddeb') if (endExt==wxT("ar") || endExt==wxT("a")) return zt_ar; if (endExt=="rar") return zt_rar; if (endExt==wxT("tgz") || (prevExt==wxT("tar") && endExt==wxT("gz"))) return zt_targz; if (endExt==wxT("tbz2") || endExt==wxT("tbz")) return zt_tarbz; if (endExt==wxT("txz")) return zt_tarxz; if (endExt==wxT("tlz")) return zt_tarlzma; if (endExt==wxT("taZ")) return zt_taZ; if (prevExt==wxT("tar") && (endExt==wxT("bz2") || endExt==wxT("bz"))) return zt_tarbz; if (prevExt==wxT("tar") && endExt==wxT("lzma")) return zt_tarlzma; if (prevExt==wxT("tar") && endExt==wxT("xz")) return zt_tarxz; if (prevExt==wxT("tar") && endExt==wxT("7z")) return zt_tar7z; if (prevExt==wxT("tar") && endExt==wxT("lzo")) return zt_tarlzop; if (prevExt==wxT("tar") && endExt==wxT("Z")) return zt_taZ; if (endExt==wxT("gz")) return zt_gzip; // Since we've already tested for e.g. foo.tar.gz, it's safe to test for foo.gz if (endExt==wxT("bz2")) return zt_bzip; if (endExt==wxT("lzma")) return zt_lzma; if (endExt==wxT("xz")) return zt_xz; if (endExt==wxT("7z")) return zt_7z; if (endExt==wxT("lzo")) return zt_lzop; if (endExt==wxT("Z")) return zt_compress; return zt_invalid; } //static enum GDC_images Archive::GetIconForArchiveType(const wxString& filename, bool IsFakeFS) { ziptype zt = Categorise(filename); wxCHECK_MSG(zt != zt_invalid, GDC_file, wxT("Wrongly trying to find a archive icon")); return GetIconForArchiveType(zt, IsFakeFS); } //static enum GDC_images Archive::GetIconForArchiveType(ziptype zt, bool IsFakeFS) { if (zt <= zt_lastcompressed) return IsFakeFS ? GDC_ghostcompressedfile : GDC_compressedfile; if ((zt == zt_taronly) || (zt == zt_ar) || (zt == zt_cpio)) return IsFakeFS ? GDC_ghosttarball : GDC_tarball; // These are uncompressed archives if ((zt > zt_cpio /*OK as we already checked for zt_ar*/) && (zt <= zt_lastcompressedarchive)) return IsFakeFS ? GDC_ghostcompressedtar : GDC_compressedtar; wxCHECK_MSG(false, GDC_file, wxT("How did we get here?")); } //static bool Archive::IsThisCompressorAvailable(enum ziptype type) { wxCHECK_MSG((type <= zt_lastcompressed) || (type ==zt_7z), false, wxT("'type' is not a compressor")); if (type == zt_7z) // Do this first, as it's more complicated. There are 3 possible packages { m_7zString = wxT("7z"); if (Configure::TestExistence(m_7zString)) return true; m_7zString = wxT("7za"); if (Configure::TestExistence(m_7zString)) return true; m_7zString = wxT("7zr"); if (Configure::TestExistence(m_7zString)) return true; m_7zString.Clear(); return false; } // Now the rest: const int values[] = { zt_gzip, zt_bzip, zt_xz, zt_lzma, zt_lzop, zt_compress }; // Protect against future changes in ziptype order const wxString strings[] = { wxString(wxT("gzip")), wxString(wxT("bzip2")), wxString(wxT("xz")), wxString(wxT("xz")) /*we use xz for lzma*/, wxString(wxT("lzop")), wxString(wxT("compress")) }; wxString compressor; for (size_t n=0; n < sizeof(values)/sizeof(int); ++n) if (values[n] == type) compressor = strings[n]; wxCHECK_MSG(!compressor.empty(), false, wxT("'type' not found in string array")); return Configure::TestExistence(compressor); } void Archive::LoadHistory() // Load the combobox history into the stringarray { config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } config->SetPath(wxT("/History/Archive/ArchiveFilePaths/")); size_t count = config->GetNumberOfEntries(); if (!count) { config->SetPath(wxT("/")); return; } ArchiveHistory.Clear(); wxString item, key, histprefix(wxT("hist_")); for (size_t n=0; n < count; ++n) // Create the key for every item, from hist_a to hist_('a'+count-1) { key.Printf(wxT("%c"), wxT('a') + (wxChar)n); config->Read(histprefix+key, &item); if (item.IsEmpty()) continue; ArchiveHistory.Add(item); } config->SetPath(wxT("/")); } void Archive::LoadPrefs() // Load the last-used values for checkboxes etc { config = wxConfigBase::Get(); // Find the config data if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } config->SetPath(wxT("/History/Archive/LastUsedValues/")); wxString key, str; long lng; // Compress dialog key = wxT("Slidervalue"); config->Read(key, &lng, (long)6); Slidervalue = (unsigned int)lng; key = wxT("Compressionchoice"); config->Read(key, &lng, (long)1); m_Compressionchoice = (unsigned int)lng; key = wxT("Recurse"); config->Read(key, &Recurse, 1); key = wxT("Force"); config->Read(key, &Force, 0); // Decompress dialog key = wxT("DecompressRecurse"); config->Read(key, &DecompressRecurse, 1); key = wxT("DecompressForce"); config->Read(key, &DecompressForce, 0); key = wxT("DecompressArchivesToo"); config->Read(key, &DecompressArchivesToo, 0); key = wxT("ArchiveExtractForce"); config->Read(key, &ArchiveExtractForce, 0); // Archive Extract dialog // CreateAppend dialogs key = wxT("DerefSymlinks"); config->Read(key, &DerefSymlinks, 0); key = wxT("Verify"); config->Read(key, &m_Verify, 0); key = wxT("DeleteSource"); config->Read(key, &DeleteSource, 0); key = wxT("ArchiveCompress"); config->Read(key, &lng, (long)1); ArchiveCompress = (unsigned int)lng; config->SetPath(wxT("/")); } void Archive::SaveHistory() // Save the Archive filepath history { config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } config->DeleteGroup(wxT("/History/Archive/ArchiveFilePaths")); // Delete current info, otherwise we'll end up with duplicates or worse config->SetPath(wxT("/History/Archive/ArchiveFilePaths/")); size_t count = wxMin(ArchiveHistory.GetCount(), MAX_COMMAND_HISTORY); // Count the entries to be saved: not TOO many if (!count) { config->SetPath(wxT("/")); return; } wxString item, key, histprefix(wxT("hist_")); // Create the key for every item, from hist_a to hist_('a'+count-1) for (size_t n=0; n < count; ++n) // The newest command is stored at the beginning of the array { key.Printf(wxT("%c"), wxT('a') + (wxChar)n); config->Write(histprefix+key, ArchiveHistory[n]); } config->Flush(); config->SetPath(wxT("/")); } void Archive::SavePrefs() // Save the last-used values for checkboxes etc { config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } wxString path(wxT("/History/Archive/LastUsedValues/")); // Compress dialog config->Write(path+wxT("Slidervalue"), (long)Slidervalue); config->Write(path+wxT("Compressionchoice"), (long)m_Compressionchoice); config->Write(path+wxT("Recurse"), Recurse); config->Write(path+wxT("Force"), Force); // Decompress dialog config->Write(path+wxT("DecompressRecurse"), DecompressRecurse); config->Write(path+wxT("DecompressForce"), DecompressForce); config->Write(path+wxT("DecompressArchivesToo"), DecompressArchivesToo); // Archive Extract dialog config->Write(path+wxT("ArchiveExtractForce"), ArchiveExtractForce); // CreateAppend dialogs config->Write(path+wxT("DerefSymlinks"), DerefSymlinks); config->Write(path+wxT("Verify"), m_Verify); config->Write(path+wxT("DeleteSource"), DeleteSource); config->Write(path+wxT("ArchiveCompress"), (long)ArchiveCompress); config->Flush(); } void Archive::UpdatePanes() // Work out which dirs are most likely to have been altered, & update them { // Updatedir may already have an entry, for the current dir for (size_t n=0; n < FilepathArray.Count(); ++n) // Go thru the items that were in the listbox, adding their dirs to the array { wxString path = FilepathArray[n]; FileData fd(path); if (fd.IsRegularFile() || fd.IsSymlink()) path = path.BeforeLast(wxFILE_SEP_PATH); // We only want paths, not filepaths Updatedir.Add(path); // Store it } if (Updatedir.IsEmpty()) return; MyGenericDirCtrl::Clustering = true; wxArrayInt IDs; for (size_t n=0; n < Updatedir.Count(); ++n) // Go thru Updatedir, adding each item to the OnUpdateTrees() store MyFrame::mainframe->OnUpdateTrees(Updatedir[n], IDs); MyFrame::mainframe->UpdateTrees(); // Now flag actually to do the update } ./4pane-6.0/MyTreeCtrl.cpp0000666000175000017500000023304113566743443014247 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyTreeCtrl.cpp // Purpose: Tree and Treelistctrl. // Derived: The listctrl parts adapted from wxTreeListCtrl (c) Alberto Griggio, Otto Wyss // See: http://wxcode.sourceforge.net/components/treelistctrl/ // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/log.h" #include "wx/dirctrl.h" #include "wx/dragimag.h" #include "wx/renderer.h" #include "wx/filename.h" #ifdef __WXGTK__ #include #endif #include "MyGenericDirCtrl.h" #include "Dup.h" #include "MyFiles.h" #include "MyDirs.h" #include "MyFrame.h" #include "Filetypes.h" #include "Redo.h" #include "Devices.h" #include "MyTreeCtrl.h" #include "Accelerators.h" #include "bitmaps/include/columnheaderdown.xpm" // // Icons for the fileview columns, selected & selected-reverse-sort #include "bitmaps/include/columnheaderup.xpm" #if wxVERSION_NUMBER < 2900 // to avoid compiler warnings: only defined in 2.9 #define wxUSE_NEW_DC 0 #endif class WXDLLEXPORT wxGenericTreeItem; WX_DEFINE_EXPORTED_ARRAY(wxGenericTreeItem *, wxArrayGenericTreeItems); enum { ColDownIcon = 0, ColUpIcon }; // These are the indices of the Down/Up column icons within HeaderimageList class WXDLLEXPORT wxGenericTreeItem { public: // ctors & dtor wxGenericTreeItem() { m_data = NULL; } wxGenericTreeItem(wxGenericTreeItem *parent, const wxString& text, int image, int selImage, wxTreeItemData *data); ~wxGenericTreeItem(); // trivial accessors wxArrayGenericTreeItems& GetChildren() { return m_children; } const wxString& GetText() const { return m_text; } int GetImage(wxTreeItemIcon which = wxTreeItemIcon_Normal) const { return m_images[which]; } wxTreeItemData *GetData() const { return m_data; } // returns the current image for the item (depending on its // selected/expanded/whatever state) int GetCurrentImage() const; void SetText(const wxString &text); void SetImage(int image, wxTreeItemIcon which) { m_images[which] = image; } void SetData(wxTreeItemData *data) { m_data = data; } void SetHasPlus(bool has = true) { m_hasPlus = has; } void SetBold(bool bold) { m_isBold = bold; } int GetX() const { return m_x; } int GetY() const { return m_y; } void SetX(int x) { m_x = x; } void SetY(int y) { m_y = y; } int GetHeight() const { return m_height; } int GetWidth() const { return m_width; } void SetHeight(int h) { m_height = h; } void SetWidth(int w) { m_width = w; } wxGenericTreeItem *GetParent() const { return m_parent; } // operations // deletes all children notifying the treectrl about it if !NULL pointer given void DeleteChildren(wxGenericTreeCtrl *tree = NULL); // get count of all children (and grand children if 'recursively') size_t GetChildrenCount(bool recursively = true) const; void Insert(wxGenericTreeItem *child, size_t index) { m_children.Insert(child, index); } void GetSize(int &x, int &y, const wxGenericTreeCtrl*); // return the item at given position (or NULL if no item), onButton is // true if the point belongs to the item's button, otherwise it lies // on the button's label wxGenericTreeItem *HitTest(const wxPoint& point, const wxGenericTreeCtrl *, int &flags, int level); void Expand() { m_isCollapsed = false; } void Collapse() { m_isCollapsed = true; } void SetHilight(bool set = true) { m_hasHilight = set; } // status inquiries bool HasChildren() const { return !m_children.IsEmpty(); } bool IsSelected() const { return m_hasHilight != 0; } bool IsExpanded() const { return !m_isCollapsed; } bool HasPlus() const { return m_hasPlus || HasChildren(); } bool IsBold() const { return m_isBold != 0; } // attributes // get them - may be NULL wxTreeItemAttr *GetAttributes() const { return m_attr; } // get them ensuring that the pointer is not NULL wxTreeItemAttr& Attr() { if (!m_attr) { m_attr = new wxTreeItemAttr; m_ownsAttr = true; } return *m_attr; } // set them void SetAttributes(wxTreeItemAttr *attr) { if (m_ownsAttr) delete m_attr; m_attr = attr; m_ownsAttr = false; } // set them and delete when done void AssignAttributes(wxTreeItemAttr *attr) { SetAttributes(attr); m_ownsAttr = true; } private: // since there can be very many of these, we save size by chosing // the smallest representation for the elements and by ordering // the members to avoid padding. wxString m_text; // label to be rendered for item wxTreeItemData *m_data; // user-provided data #if wxVERSION_NUMBER >= 2900 int m_state; // item state New in 2.9, and causes a crash if it's not there. Presumably because the object size is changed #endif #if wxVERSION_NUMBER >= 2811 // Ditto new in 2.8.11 int m_widthText; int m_heightText; #endif wxArrayGenericTreeItems m_children; // list of children wxGenericTreeItem *m_parent; // parent of this item wxTreeItemAttr *m_attr; // attributes??? // tree ctrl images for the normal, selected, expanded and // expanded+selected states int m_images[wxTreeItemIcon_Max]; wxCoord m_x; // (virtual) offset from top wxCoord m_y; // (virtual) offset from left int m_width; // width of this item int m_height; // height of this item // use bitfields to save size int m_isCollapsed :1; int m_hasHilight :1; // same as focused int m_hasPlus :1; // used for item which doesn't have // children but has a [+] button int m_isBold :1; // render the label in bold font int m_ownsAttr :1; // delete attribute when done }; //----------------------------------------------------------------------------- // Originally wxTreeListHeaderWindow from wxTreeListCtrl //----------------------------------------------------------------------------- #include WX_DEFINE_OBJARRAY(wxArrayTreeListColumnInfo); IMPLEMENT_DYNAMIC_CLASS(TreeListHeaderWindow,wxWindow); TreeListHeaderWindow::TreeListHeaderWindow() { Init(); m_owner = (MyTreeCtrl*) NULL; m_resizeCursor = (wxCursor*) NULL; } TreeListHeaderWindow::TreeListHeaderWindow(wxWindow *win, wxWindowID id, MyTreeCtrl* owner, const wxPoint& pos, const wxSize& size, long style, const wxString &name) : wxWindow(win, id, pos, size, style, name) { Init(); m_owner = owner; m_resizeCursor = new wxCursor(wxCURSOR_SIZEWE); p_BackgroundColour = wxGetApp().GetBackgroundColourUnSelected(); // // } TreeListHeaderWindow::~TreeListHeaderWindow() { delete m_resizeCursor; } void TreeListHeaderWindow::Init() { m_currentCursor = (wxCursor*) NULL; m_isDragging = false; m_dirty = false; m_total_col_width = 0; // // (Originally this wasn't given a default) selectedcolumn = filename; // // The next 2 should be set by config but let's give them sensible defaults anyway reversesort = false; } #if !defined(__WXX11__) #if wxVERSION_NUMBER >= 2900 && !defined(__WXGTK20__) #include "wx/gtk1/dcclient.h" #else #if wxVERSION_NUMBER < 2900 #include "wx/gtk/dc.h" #endif #endif #endif #if wxVERSION_NUMBER < 2900 void TreeListHeaderWindow::DoDrawRect(wxDC *dc, int x, int y, int w, int h) { #ifdef __WXGTK__ GtkStateType state = m_parent->IsEnabled() ? GTK_STATE_NORMAL : GTK_STATE_INSENSITIVE; x = dc->LogicalToDeviceX(x); #if wxVERSION_NUMBER >= 2701 // // The old-style way of doing things stopped working for gtk1.2 in 2.7.1 and above // // as GTK_PIZZA(m_wxwindow)->bin_window returns rubbish, leading to a segfault // // This was taken from wxRendererGTK::DrawHeaderButton in renderer.cpp, and works for both gtk.s // // The wxUSE_NEW_DC is new in 2.9, only for gtk2 atm GdkWindow* gdk_window = NULL; #if wxUSE_NEW_DC && defined(__WXGTK20__) wxDCImpl *impl = dc->GetImpl(); wxGTKDCImpl *gtk_impl = wxDynamicCast(impl, wxGTKDCImpl); if (gtk_impl) gdk_window = gtk_impl->GetGDKWindow(); #else // !(wxUSE_NEW_DC && defined(__WXGTK20__)) #if wxVERSION_NUMBER >= 2900 // This is for gtk1.2 in 2.9 wxWindowDCImpl * const impl = wxDynamicCast(dc->GetImpl(), wxWindowDCImpl); wxCHECK_RET(impl, "must have a window DC"); gdk_window = impl->GetGDKWindow(); #else gdk_window = dc->GetGDKWindow(); #endif //wxVERSION_NUMBER >= 2900 #endif //wxUSE_NEW_DC && defined(__WXGTK20__) wxASSERT_MSG(gdk_window, wxT("cannot use wxRendererNative on wxDC of this type")); gtk_paint_box (m_wxwindow->style, gdk_window, state, GTK_SHADOW_OUT, (GdkRectangle*) NULL, m_wxwindow, "button", x-1, y-1, w+2, h+2); #else //!wxVERSION_NUMBER >= 2701 gtk_paint_box (m_wxwindow->style, GTK_PIZZA(m_wxwindow)->bin_window, state, GTK_SHADOW_OUT, (GdkRectangle*) NULL, m_wxwindow, "button", x-1, y-1, w+2, h+2); #endif // wxVERSION_NUMBER >= 2701 #elif defined(__WXMAC__) const int m_corner = 1; dc->SetBrush(*wxTRANSPARENT_BRUSH); dc->SetPen(wxPen(wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNSHADOW), 1, wxSOLID)); dc->DrawLine(x+w-m_corner+1, y, x+w, y+h); // right (outer) dc->DrawRectangle(x, y+h, w+1, 1); // bottom (outer) wxPen pen(wxColour(0x88 , 0x88 , 0x88), 1, wxSOLID); dc->SetPen(pen); dc->DrawLine(x+w-m_corner, y, x+w-1, y+h); // right (inner) dc->DrawRectangle(x+1, y+h-1, w-2, 1); // bottom (inner) dc->SetPen(*wxWHITE_PEN); dc->DrawRectangle(x, y, w-m_corner+1, 1); // top (outer) dc->DrawRectangle(x, y, 1, h); // left (outer) dc->DrawLine(x, y+h-1, x+1, y+h-1); dc->DrawLine(x+w-1, y, x+w-1, y+1); #else // !GTK, !Mac const int m_corner = 1; dc->SetBrush(*wxTRANSPARENT_BRUSH); dc->SetPen(*wxBLACK_PEN); dc->DrawLine(x+w-m_corner+1, y, x+w, y+h); // right (outer) dc->DrawRectangle(x, y+h, w+1, 1); // bottom (outer) wxPen pen(wxSystemSettings::GetColour( wxSYS_COLOUR_BTNSHADOW), 1, wxSOLID); dc->SetPen(pen); dc->DrawLine(x+w-m_corner, y, x+w-1, y+h); // right (inner) dc->DrawRectangle(x+1, y+h-1, w-2, 1); // bottom (inner) dc->SetPen(*wxWHITE_PEN); dc->DrawRectangle(x, y, w-m_corner+1, 1); // top (outer) dc->DrawRectangle(x, y, 1, h); // left (outer) dc->DrawLine(x, y+h-1, x+1, y+h-1); dc->DrawLine(x+w-1, y, x+w-1, y+1); #endif } #endif // wxVERSION_NUMBER < 2900 // shift the DC origin to match the position of the main window horz // scrollbar: this allows us to always use logical coords void TreeListHeaderWindow::AdjustDC(wxDC& dc) { int xpix; m_owner->GetScrollPixelsPerUnit(&xpix, NULL); int x; m_owner->GetViewStart(&x, NULL); // account for the horz scrollbar offset dc.SetDeviceOrigin(-x * xpix, 0); } void TreeListHeaderWindow::OnPaint(wxPaintEvent &WXUNUSED(event)) { static const int HEADER_OFFSET_X = 1, HEADER_OFFSET_Y = 1; #ifdef __WXGTK__ wxClientDC dc(this); #else wxPaintDC dc(this); #endif PrepareDC(dc); AdjustDC(dc); // //dc.BeginDrawing(); dc.SetFont(GetFont()); // width and height of the entire header window int w, h; GetClientSize(&w, &h); m_owner->CalcUnscrolledPosition(w, 0, &w, NULL); dc.SetBackgroundMode(wxTRANSPARENT); // do *not* use the listctrl colour for headers - one day we will have a // function to set it separately //dc.SetTextForeground(*wxBLACK); dc.SetTextForeground(wxSystemSettings:: GetColour(wxSYS_COLOUR_WINDOWTEXT)); // // SetBackgroundColour(*p_BackgroundColour); // // int x = HEADER_OFFSET_X; int numColumns = GetColumnCount(); for (int i = 0; i < numColumns && x < w; i++) { wxTreeListColumnInfo& column = GetColumn(i); int wCol = column.GetWidth(); // the width of the rect to draw: make it smaller to fit entirely // inside the column rect int cw = wCol - 2; dc.SetPen(*wxWHITE_PEN); #if wxVERSION_NUMBER >= 2900 wxRendererNative& renderer = wxRendererNative::Get(); renderer.DrawHeaderButton(this, dc, wxRect(x, HEADER_OFFSET_Y, cw, h-2)); #else DoDrawRect(&dc, x, HEADER_OFFSET_Y, cw, h-2); #endif // if we have an image, draw it on the right of the label // // except that I want it in the middle --- see below int image = column.GetImage(); //item.m_image; int ix = -2, iy = 0; wxImageList* imageList = m_owner->HeaderimageList; // // m_owner->GetImageList(); I've had to make my own list, as my bitmaps are 16*10, not 16*16 if(image != -1) { if(imageList) { imageList->GetSize(image, ix, iy); } //else: ignore the column image } // extra margins around the text label static const int EXTRA_WIDTH = 3; static const int EXTRA_HEIGHT = 4; int text_width = 0; int text_x = x; // // int image_offset = cw - ix - 1; int image_offset = (cw - ix)/2; // // The way to get a central image switch(column.GetAlignment()) { case wxTL_ALIGN_LEFT: text_x += EXTRA_WIDTH; cw -= ix + 2; break; case wxTL_ALIGN_RIGHT: dc.GetTextExtent(column.GetText(), &text_width, NULL); text_x += cw - text_width - EXTRA_WIDTH; image_offset = 0; break; case wxTL_ALIGN_CENTER: dc.GetTextExtent(column.GetText(), &text_width, NULL); text_x += (cw - text_width)/2 + ix + 2; image_offset = (cw - text_width - ix - 2)/2; break; } // draw the image if(image != -1 && imageList) { imageList->Draw(image, dc, x + image_offset/*cw - ix - 1*/, HEADER_OFFSET_Y + (h - 4 - iy)/2, wxIMAGELIST_DRAW_TRANSPARENT); } // draw the text clipping it so that it doesn't overwrite the column // boundary wxDCClipper clipper(dc, x, HEADER_OFFSET_Y, cw, h - 4); dc.DrawText(column.GetText(), text_x, HEADER_OFFSET_Y + EXTRA_HEIGHT); x += wCol; } // //dc.EndDrawing(); } void TreeListHeaderWindow::DrawCurrent() { int x1 = m_currentX; int y1 = 0; ClientToScreen(&x1, &y1); int x2 = m_currentX-1; #ifdef __WXMSW__ ++x2; // but why ? #endif int y2 = 0; m_owner->GetClientSize(NULL, &y2); m_owner->ClientToScreen(&x2, &y2); wxScreenDC dc; dc.SetLogicalFunction(wxINVERT); #if wxVERSION_NUMBER < 2900 dc.SetPen(wxPen(*wxBLACK, 2, wxSOLID)); #else dc.SetPen(wxPen(*wxBLACK, 2, wxPENSTYLE_SOLID)); #endif dc.SetBrush(*wxTRANSPARENT_BRUSH); AdjustDC(dc); dc.DrawLine(x1, y1, x2, y2); dc.SetLogicalFunction(wxCOPY); dc.SetPen(wxNullPen); dc.SetBrush(wxNullBrush); } void TreeListHeaderWindow::OnMouse(wxMouseEvent &event) { // we want to work with logical coords int x; m_owner->CalcUnscrolledPosition(event.GetX(), 0, &x, NULL); int y = event.GetY(); if (m_isDragging) { SendListEvent(wxEVT_COMMAND_LIST_COL_DRAGGING, event.GetPosition()); // we don't draw the line beyond our window, but we allow dragging it // there int w = 0; GetClientSize(&w, NULL); m_owner->CalcUnscrolledPosition(w, 0, &w, NULL); w -= 6; // erase the line if it was drawn if (m_currentX < w) DrawCurrent(); if (event.ButtonUp()) { ReleaseMouse(); m_isDragging = false; m_dirty = true; size_t newwidth = wxMax((m_currentX - m_minX), 10); // // Find the new width --- may be negative, so don't let it get too small int widthchange = newwidth - GetColumnWidth(m_column); if (m_column == GetLastVisibleCol() && newwidth-current > 0) // // If we're trying to drag-bigger the last visible column, { newwidth += widthchange * 2; // // double the increment as the tiny drag-onto-able space makes it so slow otherwise m_columns[m_column].SetDesiredWidth(newwidth); // // and make it stick } SetColumnWidth(m_column, newwidth); SizeColumns(); // // Refresh(); SendListEvent(wxEVT_COMMAND_LIST_COL_END_DRAG, event.GetPosition()); } else { if (x > m_minX + 7) m_currentX = x; else m_currentX = m_minX + 7; // draw in the new location if (m_currentX < w) DrawCurrent(); } } else // not dragging { #if wxVERSION_NUMBER > 2503 // // As ContextMenu events don't seem to get to the headerwindow otherwise if (event.RightUp()) { int xpos = 0, clm = 0; // find the column where this event occured for (size_t col = 0; col < GetColumnCount(); ++col) { if (IsHidden(col)) continue; xpos += GetColumnWidth(col); clm = col; if (x < xpos) break; // inside the column } wxContextMenuEvent conevent(wxEVT_CONTEXT_MENU, clm, ClientToScreen(event.GetPosition())); return ShowContextMenu(conevent); } #endif m_minX = 0; bool hit_border = false; // end of the current column int xpos = 0; // find the column where this event occured int countCol = GetColumnCount(); for (int col = 0; col < countCol; col++) { if (IsHidden(col)) continue; // // I've 'hidden' some cols by giving them widths of zero. This takes it into account xpos += GetColumnWidth(col); m_column = col; if ((abs(x-xpos) < 3) && (y < (HEADER_HEIGHT-1))) // // I've changed "y <" comparator to HEADER_HEIGHT-1: originally the figure 22 was given { // near the column border hit_border = true; break; } if (x < xpos) { // inside the column break; } m_minX = xpos; } if (event.LeftDown() /*|| event.RightUp()*/) // // I've grabbed RtUp earlier to fire the context menu. What it was doing here anyway? { if (hit_border/* && event.LeftDown()*/) // // See above comment { m_isDragging = true; m_currentX = x; DrawCurrent(); CaptureMouse(); SendListEvent(wxEVT_COMMAND_LIST_COL_BEGIN_DRAG, event.GetPosition()); } else // click on a column { SendListEvent(event.LeftDown() ? wxEVT_COMMAND_LIST_COL_CLICK : wxEVT_COMMAND_LIST_COL_RIGHT_CLICK, event.GetPosition()); } } else if (event.Moving()) { bool setCursor; if (hit_border) { setCursor = m_currentCursor == wxSTANDARD_CURSOR; m_currentCursor = m_resizeCursor; } else { setCursor = m_currentCursor != wxSTANDARD_CURSOR; m_currentCursor = (wxCursor*)wxSTANDARD_CURSOR; } if (setCursor) SetCursor(*m_currentCursor); } } } int TreeListHeaderWindow::GetNextVisibleCol(int currentcolumn) // // Finds the next column with non-zero width { int colcount = GetColumnCount(); if (!colcount || currentcolumn==(colcount-1)) return -1; for (int col=currentcolumn+1; col < colcount; ++col) if (!IsHidden(col)) return col; return -1; } int TreeListHeaderWindow::GetLastVisibleCol() // // Finds the last column with non-zero width. 0 flags failure (but shouldn't happen!) { int colcount = GetColumnCount(); if (!colcount) return 0; // Shouldn't happen as col 0 will always exist & be visible for (int col=colcount; col > 0; --col) if (!IsHidden(col-1)) return col-1; return 0; } int TreeListHeaderWindow::GetTotalPreferredWidth() // // Omits the extra amount added to the last column to fill the whole client-size { int lastvisiblecol = GetLastVisibleCol();// if (!lastvisiblecol) return GetWidth(); return GetWidth() - (GetColumnWidth(lastvisiblecol) - GetColumnDesiredWidth(lastvisiblecol)); } void TreeListHeaderWindow::OnSetFocus(wxFocusEvent &WXUNUSED(event)) { m_owner->SetFocus(); } void TreeListHeaderWindow::ShowIsFocused(bool focus) { p_BackgroundColour = (focus ? wxGetApp().GetBackgroundColourSelected(true) : wxGetApp().GetBackgroundColourUnSelected()); Refresh(); } void TreeListHeaderWindow::SendListEvent(wxEventType type, wxPoint pos, int column/*=-1*/) // // I've added int column, as otherwise we have a problem when the event refers to hiding a col { wxWindow *parent = GetParent(); wxListEvent le(type, parent->GetId()); le.SetEventObject(parent); le.m_pointDrag = pos; // the position should be relative to the parent window, not // this one for compatibility with MSW and common sense: the // user code doesn't know anything at all about this header // window, so why should it get positions relative to it? le.m_pointDrag.y -= GetSize().y; if (column == -1) // // le.m_col = m_column; else le.m_col = -1; // // Otherwise pass an intentionally invalid column. This tells FileGenericDirCtrl::HeaderWindowClicked() not to (re)reverse the column parent->GetEventHandler()->ProcessEvent(le); } void TreeListHeaderWindow::AddColumn(const wxTreeListColumnInfo& col) { m_columns.Add(col); m_total_col_width += col.GetWidth(); //m_owner->GetHeaderWindow()->Refresh(); //m_dirty = true; //SizeColumns(); // // m_owner->AdjustMyScrollbars(); m_owner->m_dirty = true; Refresh(); } void TreeListHeaderWindow::SetColumnWidth(size_t column, size_t width) { if(column < GetColumnCount()) { m_total_col_width -= m_columns[column].GetWidth(); m_columns[column].SetWidth(width); m_total_col_width += width; // // m_owner->AdjustMyScrollbars(); (Don't bother: this is always done afterwards by the calling functions) m_owner->m_dirty = true; //m_dirty = true; Refresh(); } } void TreeListHeaderWindow::InsertColumn(size_t before, const wxTreeListColumnInfo& col) { wxCHECK_RET(before < GetColumnCount(), _("Invalid column index")); m_columns.Insert(col, before); m_total_col_width += col.GetWidth(); //m_dirty = true; //m_owner->GetHeaderWindow()->Refresh(); SizeColumns(); // // // //m_owner->AdjustMyScrollbars(); m_owner->m_dirty = true; Refresh(); } void TreeListHeaderWindow::RemoveColumn(size_t column) { wxCHECK_RET(column < GetColumnCount(), _("Invalid column")); m_total_col_width -= m_columns[column].GetWidth(); m_columns.RemoveAt(column); //m_dirty = true; SizeColumns(); // // // //m_owner->AdjustMyScrollbars(); m_owner->m_dirty = true; Refresh(); } void TreeListHeaderWindow::SetColumn(size_t column, const wxTreeListColumnInfo& info) { wxCHECK_RET(column < GetColumnCount(), _("Invalid column")); size_t w = m_columns[column].GetWidth(); m_columns[column] = info; //m_owner->GetHeaderWindow()->Refresh(); //m_dirty = true; if(w != info.GetWidth()) { m_total_col_width += info.GetWidth() - w; SizeColumns(); // // // //m_owner->AdjustMyScrollbars(); m_owner->m_dirty = true; } Refresh(); } void TreeListHeaderWindow::ToggleColumn(int col) // // If it's hidden, show it & vice versa { if (IsHidden(col)) ShowColumn(col); else ShowColumn(col, false); } void TreeListHeaderWindow::ShowColumn(int col, bool show /*=true*/) // // Show (or hide) the relevant column { if (IsHidden(col) == !show) return; // If it's already doing what we want, wave goodbye int width; if (show) { int last = GetLastVisibleCol(); if (col > last) // If the newly-shown column will become the last visible, { if (GetColumnDesiredWidth(last) > 0) // we must adjust the current last col first, otherwise it'll never revert to its preferred width SetColumnWidth(last, GetColumnDesiredWidth(last)); else SetColumnWidth(last, m_owner->GetCharWidth() * DEFAULT_COLUMN_WIDTHS[last]); } width = GetColumnDesiredWidth(col); // We need to know how big to make it if (width <= 0) width = m_owner->GetCharWidth() * DEFAULT_COLUMN_WIDTHS[col]; // If there's no valid size, use default, adjusted for fontsize } else { width = 0; // Hiding means zero width if (GetSelectedColumn() == col) { SelectColumn(0); // If this col is currently selected, select col 0 instead SendListEvent(wxEVT_COMMAND_LIST_COL_CLICK, wxPoint(0,0), -2); // This tells the fileview not to re-order the files by col, as we just did } } SetColumnWidth(col, width); // This also sets/resets the ishidden flag if (show) SizeColumns(); else ((FileGenericDirCtrl*)m_owner->GetParent())->DoSize(); m_dirty = true; // We'll need to refresh the column display, as some names may be differently clipped } void TreeListHeaderWindow::SetSelectedColumn(size_t col) // // Sets the selected column, the one that controls Sorting { GetColumn(GetSelectedColumn()).SetImage(-1); // Turn off the image from the previously-selected column selectedcolumn = (enum columntype)col; } void TreeListHeaderWindow::SelectColumn(int col) { ShowColumn(col); // Better make sure it's visible! SetSortOrder(0); // In case we were previously reverse-sorting, set to normal SetSelectedColumn(col); GetColumn(col).SetImage(ColDownIcon); Refresh(); } bool TreeListHeaderWindow::SetSortOrder(int order /*=-1*/) // // Set whether we're reverse-sorting. If no parameter, negates sort-order { switch(order) { case 0: reversesort = false; return reversesort; // If 0, set order to normal case 1: reversesort = true; return reversesort; // If 1, set order to reverse default: reversesort = !reversesort; return reversesort; // Otherwise reverse the current order } } void TreeListHeaderWindow::SetSelectedColumnImage(bool order) // // Sets the correct up/down image according to sort-order parameter { GetColumn(GetSelectedColumn()).SetImage(ColDownIcon + order); Refresh(); } void TreeListHeaderWindow::ReverseSelectedColumn() { SetSelectedColumnImage(SetSortOrder()); // Calling SetSortOrder() to get the parameter has the effect of toggling reverse } void TreeListHeaderWindow::SizeColumns() // // Resize the last visible col to occupy any spare space { size_t colcount = GetColumnCount(); if (!colcount) return; int width, h; GetClientSize(&width, &h); int diff = width - m_total_col_width; // Is the new width > or < than the previous value? if (diff == 0) return; // If ISQ, not much to do int lastvisiblecol = GetLastVisibleCol(); if (diff < 0) // If negative, reduce the last col's width towards its preferred value if currently higher { int spare = GetColumnWidth(lastvisiblecol) - GetColumnDesiredWidth(lastvisiblecol); if (spare > 0) SetColumnWidth(lastvisiblecol, GetColumnWidth(lastvisiblecol) - wxMin(abs(diff), spare)); } else SetColumnWidth(lastvisiblecol, GetColumnWidth(lastvisiblecol) + diff); // Otherwise just dump the spare space onto the last visible col, to avoid a silly-looking blank m_owner->AdjustMyScrollbars(); Refresh(); } void TreeListHeaderWindow::ShowContextMenu(wxContextMenuEvent& event) // // Menu to choose which columns to display { int columns[] = { SHCUT_SHOW_COL_EXT, SHCUT_SHOW_COL_SIZE, SHCUT_SHOW_COL_TIME, SHCUT_SHOW_COL_PERMS, SHCUT_SHOW_COL_OWNER, SHCUT_SHOW_COL_GROUP, SHCUT_SHOW_COL_LINK, wxID_SEPARATOR, SHCUT_SHOW_COL_ALL, SHCUT_SHOW_COL_CLEAR }; wxMenu colmenu; colmenu.SetClientData((wxClientData*)this); // In >wx2.8 we must store ourself in the menu, otherwise MyFrame::DoColViewUI can't work out who we are for (size_t n=0; n < 10; ++n) { MyFrame::mainframe->AccelList->AddToMenu(colmenu, columns[n], wxEmptyString, (n < 7 ? wxITEM_CHECK : wxITEM_NORMAL)); #ifdef __WXX11__ if (n < 7) colmenu.Check(columns[n], !IsHidden(n+1)); // The usual updateui way of doing this doesn't work in X11 #endif } if (event.GetId() == 1) // If the right-click was over the 'ext' menu, add a submenu { int extsubmenu[] = { SHCUT_EXT_FIRSTDOT, SHCUT_EXT_MIDDOT, SHCUT_EXT_LASTDOT }; wxMenu* submenu = new wxMenu(_("An extension starts at the filename's...")); for (size_t n=0; n < 3; ++n) MyFrame::mainframe->AccelList->AddToMenu(*submenu, extsubmenu[n], wxEmptyString, wxITEM_RADIO); MyFrame::mainframe->AccelList->AddToMenu(colmenu, wxID_SEPARATOR); colmenu.AppendSubMenu(submenu, _("Extension definition...")); submenu->FindItem(extsubmenu[EXTENSION_START])->Check(); } colmenu.SetTitle(wxT("Columns to Display")); wxPoint pt = event.GetPosition(); ScreenToClient(&pt.x, &pt.y); #ifdef __WXX11__ m_owner->PopupMenu(&colmenu, pt.x, 0); // In X11 a headerwindow doesn't seem to be able to maintain a popup window, so use the treectrl #else PopupMenu(&colmenu, pt.x, pt.y); #endif } void TreeListHeaderWindow::OnExtSortMethodChanged(wxCommandEvent& event) // From the ext-column submenu of the context menu { switch(event.GetId() - SHCUT_EXT_FIRSTDOT) { case 0: EXTENSION_START = 0; break; case 1: EXTENSION_START = 1; break; case 2: EXTENSION_START = 2; break; } wxConfigBase::Get()->Write(wxT("/Misc/Display/EXTENSION_START"), (long)EXTENSION_START); MyFrame::mainframe->RefreshAllTabs(NULL); // This makes all the fileviews update } void TreeListHeaderWindow::OnColumnSelectMenu(wxCommandEvent& event) { bool flag; // First deal with ShowAll and Clear if ((flag = (event.GetId() == SHCUT_SHOW_COL_ALL)) || (event.GetId() == SHCUT_SHOW_COL_CLEAR)) { for (size_t col = 1; col < TOTAL_NO_OF_FILEVIEWCOLUMNS; ++col) ShowColumn(col, flag); return; } // Otherwise it's a straight-forward column-toggle size_t col = event.GetId() - SHCUT_SHOW_COL_EXT + 1; // +1 because Name column is always visible if (col > TOTAL_NO_OF_FILEVIEWCOLUMNS) return; // Sanity check ToggleColumn(col); } BEGIN_EVENT_TABLE(TreeListHeaderWindow,wxWindow) EVT_PAINT (TreeListHeaderWindow::OnPaint) EVT_MOUSE_EVENTS (TreeListHeaderWindow::OnMouse) EVT_SET_FOCUS (TreeListHeaderWindow::OnSetFocus) EVT_MENU_RANGE(SHCUT_SHOW_COL_EXT, SHCUT_SHOW_COL_CLEAR, TreeListHeaderWindow::OnColumnSelectMenu) EVT_MENU_RANGE(SHCUT_EXT_FIRSTDOT, SHCUT_EXT_LASTDOT, TreeListHeaderWindow::OnExtSortMethodChanged) EVT_CONTEXT_MENU(TreeListHeaderWindow::ShowContextMenu) END_EVENT_TABLE() //--------------------------------------------------------------------------------------------------------------------------------------------------------------------- MyTreeCtrl::MyTreeCtrl(wxWindow *parentwin, wxWindowID id , const wxPoint& pos, const wxSize& size, long style, const wxValidator &validator, const wxString& name) : wxTreeCtrl(parentwin, id, pos, size, style, validator, name), m_dirty(false) { headerwindow = NULL; // To flag to premature OnIdle events that there's nothing safe to do HeaderimageList = new wxImageList(16, 10, true); // This holds the down & up symbols for the header of the selected fileview column HeaderimageList->Add(wxIcon(columnheaderdown_xpm)); HeaderimageList->Add(wxIcon(columnheaderup_xpm)); // >2.6.3 the gtk2 default was changed to no lines, and hard-coded into create! So we need to do this here, not by adjusting style if (SHOW_TREE_LINES) SetWindowStyle(GetWindowStyle() & ~wxTR_NO_LINES); else SetWindowStyle(GetWindowStyle() | wxTR_NO_LINES); parent = (MyGenericDirCtrl*)parentwin; IgnoreRtUp = false; dragging = false; startpt.x = startpt.y = 0; CreateAcceleratorTable(); } void MyTreeCtrl::CreateAcceleratorTable() { wxAcceleratorEntry entries[1]; MyFrame::mainframe->AccelList->FillEntry(entries[0], SHCUT_SELECTALL); // AcceleratorList supplies the keycode etc wxAcceleratorTable accel(1, entries); SetAcceleratorTable(accel); } void MyTreeCtrl::RecreateAcceleratorTable() { // It would be nice to be able to empty the old accelerator table before replacing it, but trying caused segfaulting! CreateAcceleratorTable(); // Make a new one, with up-to-date data } void MyTreeCtrl::OnCtrlA(wxCommandEvent& event) // Does Select All on Ctrl-A { if (parent->fileview==ISLEFT) return; // I can't make it work properly for dir-views, & I'm not sure it's a good idea anyway --- select & delete whole filesystem? if (!m_current) return; // Don't ask me why, but if there isn't a current selection, SelectItemRange segfaults wxTreeItemIdValue cookie; wxTreeItemId firstItem = GetFirstChild(GetRootItem(), cookie); // Use FirstChild as 1st item if (!firstItem.IsOk()) return; wxGenericTreeItem* first = (wxGenericTreeItem*)firstItem.m_pItem; wxTreeItemId lastItem = GetLastChild(GetRootItem()); // & LastChild as last if (!lastItem.IsOk()) return; wxGenericTreeItem* last = (wxGenericTreeItem*)lastItem.m_pItem; SelectItemRange(first, last); wxArrayString selections; static_cast(parent)->GetMultiplePaths(selections); static_cast(parent)->UpdateStatusbarInfo(selections); // Update the statusbar info } void MyTreeCtrl::OnReceivingFocus(wxFocusEvent& event) // This tells grandparent window which of the 2 twin-ctrls is the one to consider active { if (!MyFrame::mainframe->SelectionAvailable) return; // If we're constructing/destructing, do nothing lest we break a non-existent window parent->ParentTab->SetActivePane(parent); // This also stores the pane in FocusController wxString selected = parent->GetPath(); wxArrayString selections; static_cast(parent)->GetMultiplePaths(selections); parent->DisplaySelectionInTBTextCtrl(selected); // Take the opportunity also to display current selection in textctrl MyFrame::mainframe->Layout->OnChangeDir(selected); // & the Terminal etc if necessary static_cast(parent)->m_StatusbarInfoValid = false; if (parent->fileview == ISLEFT) // & in the statusbar ((DirGenericDirCtrl*)parent)->UpdateStatusbarInfo(selections); else ((FileGenericDirCtrl*)parent)->UpdateStatusbarInfo(selections); ((DirGenericDirCtrl*)parent)->CopyToClipboard(selections, true); // FWIW, copy the filepath(s) to the primary selection too if (headerwindow) { parent->ParentTab->SwitchOffHighlights(); // Start with a blank canvas headerwindow->ShowIsFocused(true); } HelpContext = HCunknown; event.Skip(); } void MyTreeCtrl::OnLosingFocus(wxFocusEvent& event) // Unhighlights the headerwindow { if (headerwindow) headerwindow->ShowIsFocused(false); } void MyTreeCtrl::AdjustForNumlock(wxKeyEvent& event) // The fix for the X11 Numlock problem { event.m_metaDown = false; // Makes it look as if numlock is off, so Accelerators are properly recognised if (event.GetKeyCode() == WXK_ESCAPE) // This is used in DnD, to abort it if ESC pressed MyFrame::mainframe->OnESC_Pressed(); event.Skip(); } bool MyTreeCtrl::QueryIgnoreRtUp() { if (IgnoreRtUp) { IgnoreRtUp = false; return true; } // If we've been Rt-dragging, and now stopped, ignore the event so that we don't have a spurious context menu else return false; // Otherwise proceed as normal } void MyTreeCtrl::OnMiddleDown(wxMouseEvent& event) // Allows middle-button paste { event.Skip(); int flags; wxTreeItemId item = HitTest(event.GetPosition(), flags); // Find out if we're on a tree item if (item.IsOk()) SelectItem(item); // If so, select it so that any paste gets deposited there, not in any currently selected folder. That's _probably_ what's expected wxCommandEvent cevent; parent->OnShortcutPaste(cevent); } void MyTreeCtrl::OnLtDown(wxMouseEvent& event) // Start DnD pre-processing if we're near a selection { event.Skip(); // First allow base-class to process it int flags; wxTreeItemId item = HitTest(event.GetPosition(), flags); // Find out if we're on a tree item if (item.IsOk()) OnBeginDrag(event); // If so, if it's a selection start drag-processing // If we're NOT near a selection, ignore } void MyTreeCtrl::OnMouseMovement(wxMouseEvent& event) { if (!event.Dragging()) { if (dragging) ResetPreDnD(); // If we had been seeing whether or not to drag, & now here's a non-drag event, cancel start-up if (SHOWPREVIEW) { if (parent->fileview==ISRIGHT) { int flags; wxTreeItemId item = HitTest(event.GetPosition(), flags); if (item.IsOk()) { wxDirItemData* data = (wxDirItemData*)GetItemData(item); PreviewManager::ProcessMouseMove(item, flags, data->m_path, event); } } else PreviewManager::Clear(); } event.Skip(); return; } else PreviewManager::Clear(); // If we're dragging but with the Rt button, do a multiple select if wxTR_MULTIPLE is true if (event.RightIsDown() && !event.LeftIsDown()) { if (!HasFlag(wxTR_MULTIPLE)) return; // Can't have multiple items selected so abort int flags; wxArrayTreeItemIds selection; wxTreeItemId item = HitTest(event.GetPosition(), flags); // Find out if we're on the level of a tree item bool alreadyaselection = GetSelections(selection); // & whether or not the tree already has >0 items selected if (item.IsOk() && !IsSelected(item)) // if we're on an item, & it isn't already selected { if (!alreadyaselection) // If there is currently no selection, select it SelectItem(item); else DoSelectItem(item, false, true); // Otherwise extend the current selection IgnoreRtUp = true; } return; } if (dragging) OnBeginDrag(event); // Otherwise, if pre-drag has been initiated, go to OnBeginDrag to continue it } #if wxVERSION_NUMBER >2503 void MyTreeCtrl::OnRtUp(wxMouseEvent& event) // In >wxGTK-2.5.3 the wxTreeCtrl has started to interfere with Context Events. This is a workaround { wxContextMenuEvent conevent(wxEVT_CONTEXT_MENU, wxID_ANY, ClientToScreen(event.GetPosition())); if (parent->fileview == ISLEFT) // Send the event to the correct type of parent ((DirGenericDirCtrl*)parent)->ShowContextMenu(conevent); else ((FileGenericDirCtrl*)parent)->ShowContextMenu(conevent); } #endif void MyTreeCtrl::OnBeginDrag(wxMouseEvent& event) { // I've taken over the detection of dragging from wxTreeCtrl, which tends to be trigger-happy: the slightest movement // with a mouse-key down sometimes will trigger it. So I've added a distance requirement. Note that this is asymmetrical, the x axis requirement being less. // This is because of the edge effect: if the initial click is too near the edge of a pane & the mouse is then moved edgewards, it may go into the adjacent pane // before the drag commences, whereupon it picks up the selection in THAT pane, not the original. // I've also added a time element // There was also a problem with selections: when a LClick arrives here it hasn't had time to establish a Selection, so we have to assume it will, & check later that is was valid static wxDateTime dragstarttime; static wxTreeItemId dragitem; // We need this static, so that we can check that the item that starts the process is actually selected by the time dragging is triggered static MyTreeCtrl* originaltree; if (startpt.x == 0 && startpt.y == 0) // 0,0 means not yet set, so this is what we do the first time thru { int flags; dragitem = HitTest(event.GetPosition(), flags); // Find out if we're near a tree item (& not in the space to the right of it) if (!dragitem.IsOk() || flags & wxTREE_HITTEST_ONITEMRIGHT) return; // Abort if we're not actually over the selected item. Otherwise we'll start dragging an old selection even if we're now miles away if (dragitem == GetRootItem()) return; // Or if it's root // It's a valid LClick, so get things ready for the next time through startpt.x = event.GetPosition().x; startpt.y = event.GetPosition().y; dragstarttime = wxDateTime::UNow(); // Reset the time to 'now' originaltree = this; // In case we change panes before the drag 'catches' dragging = true; return; } if ((abs(startpt.x - event.GetPosition().x)) < DnDXTRIGGERDISTANCE // If we've not moved far enough in either direction, return && (abs(startpt.y - event.GetPosition().y)) < DnDYTRIGGERDISTANCE) return; wxTimeSpan diff = wxDateTime::UNow() - dragstarttime; if (diff.GetMilliseconds() < 100) return; // If 0.1 sec hasn't passed since dragging was first noticed, return if (!originaltree->IsSelected(dragitem)) { ResetPreDnD(); return; } // If we've got this far, we can trigger provided that by now the item has become selected. Otherwise abort the process // If we're here, there's a genuine drag event ResetPreDnD(); // Reset dragging & startpt for the future if (MyFrame::mainframe->m_TreeDragMutex.TryLock() != wxMUTEX_NO_ERROR) { wxLogTrace(wxT("%s"),wxT("MyTreeCtrl::OnBeginDrag - - - - - - - - - - - - - Mutex was locked")); MyFrame::mainframe->m_TreeDragMutex.Unlock(); // If we don't unlock it here, DnD will never again work. Surely it will be safe by now . . . .? return; } size_t count; // No of selections (may be multiple, after all) wxArrayString paths; // Array to store them count = parent->GetMultiplePaths(paths); // Fill the array with selected pathname/filenames if (!count) return; MyGenericDirCtrl::DnDfilearray = paths; // Fill the DnD "clipboard" with paths MyGenericDirCtrl::DnDfilecount = count; // Store their number MyGenericDirCtrl::DnDFromID = parent->GetId(); // and the window ID (for refreshing) Note the reasonable assumption that all selections belong to same pane MyFrame::mainframe->m_CtrlPressed = event.m_controlDown; // Store metakey pattern, so that MyFrame::OnBeginDrag will know if we're copying, moving etc MyFrame::mainframe->m_ShPressed = event.ShiftDown(); MyFrame::mainframe->m_AltPressed = event.AltDown(); MyFrame::mainframe->OnBeginDrag(this); // Pass control to main Drag functions } void MyTreeCtrl::OnEndDrag(wxTreeEvent& event) { wxYieldIfNeeded(); // Now we need to find if we've found somewhere to drop onto wxPoint pt = ScreenToClient(wxGetMousePosition()); // Locate the mouse? Screen coords so -> client int flags; wxTreeItemId item = HitTest(pt, flags); // Find out if we're over a valid tree item (& not in the space to the right of it) if (item.IsOk() && !(flags & wxTREE_HITTEST_ONITEMRIGHT)) { wxDirItemData* data = (wxDirItemData*) GetItemData(item); MyGenericDirCtrl::DnDDestfilepath = data->m_path; // so get its path MyGenericDirCtrl::DnDToID = parent->GetId(); // and its ID (for refreshing) if (parent->fileview == ISRIGHT) // However, if we're in a fileview pane, need to check that we're not dropping on top of a file { FileData fd(MyGenericDirCtrl::DnDDestfilepath); if (fd.IsSymlinktargetADir(true)) // If we're dropping onto a symlink & its target is a dir MyGenericDirCtrl::DnDDestfilepath = fd.GetUltimateDestination(); // replace path with the symlink target. NB If the target isn't a dir, we don't want to deref the symlink at all; just paste into its parent dir as usual else if (fd.IsValid() && !fd.IsDir()) MyGenericDirCtrl::DnDDestfilepath = fd.GetPath(); // If the overall path isn't a dir, remove the filename, so we drop onto the parent dir } } else { MyGenericDirCtrl::DnDDestfilepath = wxEmptyString; // If HitTest() missed, mark invalid MyFrame::mainframe->m_TreeDragMutex.Unlock(); return; // and bail out } if (!MyGenericDirCtrl::DnDfilecount) return; enum myDragResult dragtype = MyFrame::mainframe->ParseMetakeys(); // First find out if we've been moving, copying or linking bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); switch (dragtype) { case myDragCopy: parent->OnPaste(true); break; case myDragMove: {DevicesStruct* ds = MyFrame::mainframe->Layout->m_notebook-> DeviceMan->QueryAMountpoint(MyGenericDirCtrl::DnDfilearray[0], true); // See if we're trying to drag from a ro device if (ds != NULL && ds->readonly) parent->OnPaste(true); // If we _are_ trying to move from a cdrom or similar, silently alter to Paste else parent->OnDnDMove(); break;} // Otherwise do a Move as requested case myDragHardLink: case myDragSoftLink: parent->OnLink(true, dragtype); break; case myDragNone: break; default: break; } if (ClusterWasNeeded && !(dragtype==myDragCopy || dragtype==myDragMove)) UnRedoManager::EndCluster(); // Don't end the cluster if threads are involved; it'll be too soon MyFrame::mainframe->m_TreeDragMutex.Unlock(); // Finally, release the tree-mutex lock } void MyTreeCtrl::OnPaint(wxPaintEvent& event) // // Copied from wxTreeCtrl only because it's the caller of the overridden (PaintLevel()->) PaintItem { if (parent->fileview == ISLEFT) return wxTreeCtrl::OnPaint(event); // // If it's a dirview, use the original version Col0 = STRIPE_0; Col1 = STRIPE_1; // // Copy these at the beginning of the paint so, if the defaults get changed halfway thru, we don't end up looking stupid wxPaintDC dc(this); PrepareDC(dc); if (!m_anchor) return; dc.SetFont(m_normalFont); dc.SetPen(m_dottedPen); // this is now done dynamically //if(GetImageList() == NULL) // m_lineHeight = (int)(dc.GetCharHeight() + 4); int y = 2; PaintLevel(m_anchor, dc, 0, y, 0); } void MyTreeCtrl::PaintLevel(wxGenericTreeItem *item, wxDC &dc, int level, int &y, int index) // // I've added index { int x = level*m_indent; if (!HasFlag(wxTR_HIDE_ROOT)) { x += m_indent; } else { if (level == 0) { // always expand hidden root int origY = y; wxArrayGenericTreeItems& children = item->GetChildren(); int count = children.Count(); if (count > 0) { int n = 0, oldY; do { oldY = y; PaintLevel(children[n], dc, 1, y, n); } while (++n < count); if (!HasFlag(wxTR_NO_LINES) && HasFlag(wxTR_LINES_AT_ROOT) && count > 0) { // draw line down to last child origY += GetLineHeight(children[0])>>1; oldY += GetLineHeight(children[n-1])>>1; dc.DrawLine(3, origY, 3, oldY); } } return; } else { #if defined(__WXGTK3__) // Fiddle-factor for gtk3 (at least in fedora 20, & does no harm elsewhere). Otherwise the left edge of each dir icon is lost x += 5; #endif } } item->SetX(x+m_spacing); item->SetY(y); int h = GetLineHeight(item); int y_top = y; int y_mid = y_top + (h>>1); y += h; int exposed_x = dc.LogicalToDeviceX(0); int exposed_y = dc.LogicalToDeviceY(y_top); if (IsExposed(exposed_x, exposed_y, 10000, h)) // 10000 = very much { const wxPen *pen = #ifndef __WXMAC__ // don't draw rect outline if we already have the // background color under Mac (item->IsSelected() && m_hasFocus) ? wxBLACK_PEN : #endif // !__WXMAC__ wxTRANSPARENT_PEN; wxColour colText; if (item->IsSelected()) { colText = wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHTTEXT); } else { wxTreeItemAttr *attr = item->GetAttributes(); if (attr && attr->HasTextColour()) colText = attr->GetTextColour(); else colText = GetForegroundColour(); } // prepare to draw dc.SetTextForeground(colText); dc.SetPen(*pen); // draw PaintItem(item, dc, index); if (HasFlag(wxTR_ROW_LINES)) { // if the background colour is white, choose a // contrasting color for the lines dc.SetPen(*((GetBackgroundColour() == *wxWHITE) ? wxMEDIUM_GREY_PEN : wxWHITE_PEN)); dc.DrawLine(0, y_top, 10000, y_top); dc.DrawLine(0, y, 10000, y); } // restore DC objects dc.SetBrush(*wxWHITE_BRUSH); dc.SetPen(m_dottedPen); dc.SetTextForeground(*wxBLACK); if (item->HasPlus() && HasButtons()) // should the item show a button? { if (!HasFlag(wxTR_NO_LINES)) { if (x > (signed)m_indent) dc.DrawLine(x - m_indent, y_mid, x - 5, y_mid); else if (HasFlag(wxTR_LINES_AT_ROOT)) dc.DrawLine(3, y_mid, x - 5, y_mid); dc.DrawLine(x + 5, y_mid, x + m_spacing, y_mid); } if (m_imageListButtons != NULL) { // draw the image button here int image_h = 0, image_w = 0, image = wxTreeItemIcon_Normal; if (item->IsExpanded()) image = wxTreeItemIcon_Expanded; if (item->IsSelected()) image += wxTreeItemIcon_Selected - wxTreeItemIcon_Normal; m_imageListButtons->GetSize(image, image_w, image_h); int xx = x - (image_w>>1); int yy = y_mid - (image_h>>1); dc.SetClippingRegion(xx, yy, image_w, image_h); m_imageListButtons->Draw(image, dc, xx, yy, wxIMAGELIST_DRAW_TRANSPARENT); dc.DestroyClippingRegion(); } } } else // no custom buttons { static const int wImage = 9; static const int hImage = 9; int flag = 0; if (item->IsExpanded()) flag |= wxCONTROL_EXPANDED; if (item == m_underMouse) flag |= wxCONTROL_CURRENT; wxRendererNative::Get().DrawTreeItemButton ( this, dc, wxRect(x - wImage/2, y_mid - hImage/2, wImage, hImage), flag ); } if (item->IsExpanded()) { wxArrayGenericTreeItems& children = item->GetChildren(); int count = children.Count(); if (count > 0) { int n = 0, oldY; ++level; do { oldY = y; PaintLevel(children[n], dc, level, y); } while (++n < count); if (!HasFlag(wxTR_NO_LINES) && count > 0) { // draw line down to last child oldY += GetLineHeight(children[n-1])>>1; if (HasButtons()) y_mid += 5; // Only draw the portion of the line that is visible, in case it is huge wxCoord xOrigin=0, yOrigin=0, width, height; dc.GetDeviceOrigin(&xOrigin, &yOrigin); yOrigin = abs(yOrigin); GetClientSize(&width, &height); // Move end points to the begining/end of the view? if (y_mid < yOrigin) y_mid = yOrigin; if (oldY > yOrigin + height) oldY = yOrigin + height; // after the adjustments if y_mid is larger than oldY then the line // isn't visible at all so don't draw anything if (y_mid < oldY) dc.DrawLine(x, y_mid, x, oldY); } } } } void MyTreeCtrl::PaintItem(wxGenericTreeItem *item, wxDC& dc, int index) { static const int NO_IMAGE = -1; // // // TODO implement "state" icon on items wxTreeItemAttr *attr = item->GetAttributes(); if (attr && attr->HasFont()) dc.SetFont(attr->GetFont()); else if (item->IsBold()) dc.SetFont(m_boldFont); int text_w = 0, text_h = 0; dc.GetTextExtent(item->GetText(), &text_w, &text_h); int total_h = GetLineHeight(item); if (item->IsSelected()) { dc.SetBrush(*(m_hasFocus ? m_hilightBrush : m_hilightUnfocusedBrush)); } else { wxColour colBg; if (attr && attr->HasBackgroundColour()) colBg = attr->GetBackgroundColour(); else if (USE_STRIPES) // // If we want the fileview background to be striped with alternate colours colBg = (index % 2) ? Col1 : Col0; else colBg = m_backgroundColour; #if wxVERSION_NUMBER < 2900 dc.SetBrush(wxBrush(colBg, wxSOLID)); #else dc.SetBrush(wxBrush(colBg, wxBRUSHSTYLE_SOLID)); #endif } int offset = HasFlag(wxTR_ROW_LINES) ? 1 : 0; dc.DrawRectangle(0, item->GetY()+offset, headerwindow->GetWidth(), // // total_h-offset); dc.SetBackgroundMode(wxTRANSPARENT); int extraH = (total_h > text_h) ? (total_h - text_h)/2 : 0; int extra_offset = 0; DataBase* stat = NULL; // // // // After simplifying (& so probably speeding up) DirGenericDirCtrl::ReloadTree(), I started getting rare Asserts where index==GetCount() during Moving/Pasting // // I suspect data is sometimes being added to the treectrl faster than to the array, If a refresh then occurs at the wrong time . . . if (((FileGenericDirCtrl*)parent)->CombinedFileDataArray.GetCount() <= (size_t)index) return; // // stat = &((FileGenericDirCtrl*)parent)->CombinedFileDataArray.Item(index); // // Get a ptr to the current stat data if (!stat) return; // // With USE_FSWATCHER this avoids rare assert, presumably a race for(size_t i = 0; i < headerwindow->GetColumnCount(); ++i) // // { if (headerwindow->IsHidden(i)) continue; // // Not a lot to do for a hidden column int coord_x = extra_offset, image_x = coord_x; int clip_width = headerwindow->GetColumnWidth(i); // // int image_h = 0, image_w = 0; //2; int image = NO_IMAGE; if(i == 0) { // // image = item->GetCurrentImage(); coord_x = item->GetX(); } else { image = NO_IMAGE; // //item->GetImage(i); } if(image != NO_IMAGE) { if(m_imageListNormal) { m_imageListNormal->GetSize(image, image_w, image_h); image_w += 4; } else { image = NO_IMAGE; } } // honor text alignment wxString text("?"); // // If the file is corrupt, display _something_ if (!i) // // If col 0, do it the standard way text = stat->ReallyGetName(); // // but use stat->ReallyGetName() as this is might hold a useful string even if the file is corrupt else // // The whole 'else' is mine { const static time_t YEAR2038(2145916800); wxDateTime time; if (stat && !headerwindow->IsHidden(i)) switch(i) { case ext: if (stat->IsValid()) { wxString fname(stat->GetFilename().Mid(1)); // Mid(1) to avoid hidden-file confusion if (EXTENSION_START == 0) // Use the first dot. This one's easy: if AfterFirst() fails it returns "" { text = fname.AfterFirst(wxT('.')); break; } else { size_t pos = fname.rfind(wxT('.')); if (pos != wxString::npos) { text = fname.Mid(pos+1); // We've found a last dot. Store the remaining string if (EXTENSION_START == 1) // and then, if so configured, look for a penultimate one { pos = fname.rfind(wxT('.'), pos-1); if (pos != wxString::npos) text = fname.Mid(pos+1); } } else text.Clear(); // We don't want to display '?' just because there's no ext } } break; case filesize: if (stat->IsValid()) text = stat->GetParsedSize(); break; case modtime: if (stat->IsValid() && stat->ModificationTime() < YEAR2038) // If it's > 2038 the datetime is highly likely to be invalid, and will assert below { time.Set(stat->ModificationTime()); if (time.IsValid()) text = time.Format("%x %R"); // %x means d/m/y but arranged according to locale. %R is %H:%M } else text = "00/00/00"; break; case permissions: if (stat->IsValid()) text = stat->PermissionsToText(); break; case owner: if (stat->IsValid()) text = stat->GetOwner(); if (text.IsEmpty()) text.Printf(wxT("%u"), stat->OwnerID()); break; case group: if (stat->IsValid()) text = stat->GetGroup(); if (text.IsEmpty()) text.Printf(wxT("%u"), stat->GroupID()); break; case linkage: if (stat->IsValid() && stat->IsSymlink()) { if (stat->GetSymlinkData() && stat->GetSymlinkData()->IsValid()) text.Printf(wxT("-->%s"), stat->GetSymlinkDestination(true).c_str()); else text = _(" *** Broken symlink ***"); } else text.Clear(); // We don't want to display '?' just because it's not a link } } switch(headerwindow->GetColumn(i).GetAlignment()) { case wxTL_ALIGN_LEFT: coord_x += image_w + 2; image_x = coord_x - image_w; break; case wxTL_ALIGN_RIGHT: dc.GetTextExtent(text, &text_w, NULL); coord_x += clip_width - text_w - image_w - 2; image_x = coord_x - image_w; break; case wxTL_ALIGN_CENTER: dc.GetTextExtent(text, &text_w, NULL); //coord_x += (clip_width - text_w)/2 + image_w; image_x += (clip_width - text_w - image_w)/2 + 2; coord_x = image_x + image_w; } wxDCClipper clipper(dc, /*coord_x,*/ extra_offset, item->GetY() + extraH, clip_width, total_h); if(image != NO_IMAGE) { m_imageListNormal->Draw(image, dc, image_x, item->GetY() +((total_h > image_h)? ((total_h-image_h)/2):0), wxIMAGELIST_DRAW_TRANSPARENT); } dc.DrawText(text, (wxCoord)(coord_x /*image_w + item->GetX()*/), (wxCoord)(item->GetY() + extraH)); extra_offset += headerwindow->GetColumnWidth(i); } // restore normal font dc.SetFont(m_normalFont); } void MyTreeCtrl::OnIdle(wxIdleEvent& event) // // Makes sure any change in column width is reflected within { if (headerwindow==NULL) { event.Skip(); return; } // Necessary as event may be called before there IS a headerwindow if (headerwindow->m_dirty) // Although MyTreeCtrl has an m_dirty too, that's just there because TreeListHeaderWindow writes to it! { headerwindow->m_dirty = false; // The one that is changed when columns are resized is the TreeListHeaderWindow one Refresh(); } event.Skip(); // Without this, gtk1 has focus problems; and in X11 the scrollbars get stuck in the top-left corner on creation! } void MyTreeCtrl::OnSize(wxSizeEvent& event) // // Keeps the treectrl columns in step with the headerwindows { if (headerwindow) headerwindow->m_dirty = true; // In >=2.5.1, the headerwindows don't otherwise seem to get refreshed on splitter dragging AdjustMyScrollbars(); event.Skip(); } void MyTreeCtrl::ScrollToOldPosition(const wxTreeItemId& item) // An altered ScrollTo() that tries as much as possible to maintain what the user had seen { wxCHECK_RET(!IsFrozen(), wxT("DoDirtyProcessing() won't work when frozen, at least in 2.9")); if (!item.IsOk()) return; if (m_dirty) DoDirtyProcessing(); wxGenericTreeItem *gitem = (wxGenericTreeItem*) item.m_pItem; int item_y = gitem->GetY(); static const int PIXELS_PER_UNIT = 10; const int fiddlefactor = 1; int start_x = 0; int start_y = 0; GetViewStart( &start_x, &start_y ); #if wxVERSION_NUMBER < 2900 start_y *= PIXELS_PER_UNIT; int client_h = 0; int client_w = 0; GetClientSize( &client_w, &client_h ); //if (item_y < start_y+3) { // going down int x = 0; int y = 0; m_anchor->GetSize( x, y, this ); y += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels x += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels int x_pos = GetScrollPos( wxHORIZONTAL ); // Item should appear at top SetScrollbars( PIXELS_PER_UNIT, PIXELS_PER_UNIT, x/PIXELS_PER_UNIT, y/PIXELS_PER_UNIT, x_pos, (item_y/PIXELS_PER_UNIT) + fiddlefactor); } /* else if (item_y+GetLineHeight(gitem) > start_y+client_h) { // going up int x = 0; int y = 0; m_anchor->GetSize( x, y, this ); y += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels x += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels item_y += PIXELS_PER_UNIT+2; int x_pos = GetScrollPos( wxHORIZONTAL ); // Item should appear at bottom SetScrollbars( PIXELS_PER_UNIT, PIXELS_PER_UNIT, x/PIXELS_PER_UNIT, y/PIXELS_PER_UNIT, x_pos, (item_y+GetLineHeight(gitem)-client_h)/PIXELS_PER_UNIT ); }*/ #else // 2.9 const int clientHeight = GetClientSize().y; const int itemHeight = GetLineHeight(gitem) + 2; if ( item_y + itemHeight > start_y*PIXELS_PER_UNIT + clientHeight ) { // need to scroll up by enough to show this item fully item_y += itemHeight - clientHeight; } /* else if ( itemY > start_y*PIXELS_PER_UNIT ) { // item is already fully visible, don't do anything return; }*/ //else: scroll down to make this item the top one displayed Scroll(-1, (item_y/PIXELS_PER_UNIT) + fiddlefactor); #endif } void MyTreeCtrl::AdjustMyScrollbars() // // Taken from src/generic/treectlg.cpp, because of the headerwindow line { const int PIXELS_PER_UNIT = 10; // // This was set in src/generic/treectlg.cpp if (m_anchor) { int x = 0, y = 0; m_anchor->GetSize(x, y, this); if (headerwindow != NULL) x = headerwindow->GetTotalPreferredWidth(); // // This means we get the column width, not just that of m_anchor's name y += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels // // x += PIXELS_PER_UNIT+2; // one more scrollbar unit + 2 pixels This actually makes things worse int x_pos = GetScrollPos(wxHORIZONTAL); int y_pos = GetScrollPos(wxVERTICAL); SetScrollbars(PIXELS_PER_UNIT, PIXELS_PER_UNIT, x/PIXELS_PER_UNIT, y/PIXELS_PER_UNIT, x_pos, y_pos); } else { SetScrollbars(0, 0, 0, 0); } } void MyTreeCtrl::OnScroll(wxScrollWinEvent& event) // // Keeps the headerwindows in step with the treectrl colums { if (headerwindow != NULL) headerwindow->Refresh(); event.Skip(); } #if !defined(__WXGTK3__) void MyTreeCtrl::OnEraseBackground(wxEraseEvent& event) // This is only needed in gtk2 under kde and brain-dead theme-manager, but can cause a blackout in some gtk3(themes?) { wxClientDC* clientDC = NULL; // We may or may not get a valid dc from the event, so be prepared if (!event.GetDC()) clientDC = new wxClientDC(this); wxDC* dc = clientDC ? clientDC : event.GetDC(); wxColour colBg = GetBackgroundColour(); // Use the chosen background if there is one if (!colBg.Ok()) colBg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW); #if wxVERSION_NUMBER < 2900 dc->SetBackground(wxBrush(colBg, wxSOLID)); #else dc->SetBackground(wxBrush(colBg, wxBRUSHSTYLE_SOLID)); #endif dc->Clear(); if (clientDC) delete clientDC; } #endif #if wxVERSION_NUMBER > 3102 void MyTreeCtrl::Expand(const wxTreeItemId& itemId) // Needed in wx3.2 as otherwise non-fulltree dirview roots don't get children added. See wx git a6b92cb313 and https://trac.wxwidgets.org/ticket/13886 { wxGenericTreeItem *item = (wxGenericTreeItem*)itemId.m_pItem; wxCHECK_RET( item, wxT("invalid item in wxGenericTreeCtrl::Expand") ); wxCHECK_RET( !HasFlag(wxTR_HIDE_ROOT) || itemId != GetRootItem(), wxT("can't expand hidden root") ); if (!item->HasPlus()) return; if (item->IsExpanded()) return; wxTreeEvent event(wxEVT_TREE_ITEM_EXPANDING, this, item); if (GetEventHandler()->ProcessEvent( event ) && !event.IsAllowed()) return; // cancelled by program item->Expand(); if (!IsFrozen()) { CalculatePositions(); RefreshSubtree(item); } else m_dirty = true; // frozen event.SetEventType(wxEVT_TREE_ITEM_EXPANDED); GetEventHandler()->ProcessEvent(event); } #endif BEGIN_EVENT_TABLE(MyTreeCtrl,wxTreeCtrl) EVT_KEY_DOWN(MyTreeCtrl::AdjustForNumlock) EVT_SET_FOCUS(MyTreeCtrl::OnReceivingFocus) EVT_KILL_FOCUS(MyTreeCtrl::OnLosingFocus) EVT_MENU(SHCUT_SELECTALL,MyTreeCtrl::OnCtrlA) EVT_RIGHT_DOWN(MyTreeCtrl::OnRtDown) // Just swallows the event, to stop it triggering an unwanted context menu in >GTK-2.5.3 EVT_RIGHT_UP(MyTreeCtrl::OnRtUp) // Takes over the context menu generation EVT_LEFT_DOWN(MyTreeCtrl::OnLtDown) EVT_MOTION(MyTreeCtrl::OnMouseMovement) EVT_MIDDLE_DOWN(MyTreeCtrl::OnMiddleDown) // Allows middle-button paste EVT_LEAVE_WINDOW(MyTreeCtrl::OnLeavingWindow) EVT_PAINT (MyTreeCtrl::OnPaint) #if !defined(__WXGTK3__) EVT_ERASE_BACKGROUND(MyTreeCtrl::OnEraseBackground) #endif EVT_IDLE(MyTreeCtrl::OnIdle) EVT_SIZE(MyTreeCtrl::OnSize) EVT_SCROLLWIN(MyTreeCtrl::OnScroll) END_EVENT_TABLE() //--------------------------------------------------------------------------- #include #include #include wxTreeItemId PreviewManager::m_LastItem = wxTreeItemId(); PreviewManagerTimer* PreviewManager::m_Timer = NULL; wxWindow* PreviewManager::m_Tree = NULL; wxString PreviewManager::m_Filepath; wxPoint PreviewManager::m_InitialPos = wxPoint(); PreviewPopup* PreviewManager::m_Popup = NULL; size_t PreviewManager::m_DwellTime; int PreviewManager::MAX_PREVIEW_IMAGE_HT; int PreviewManager::MAX_PREVIEW_IMAGE_WT; int PreviewManager::MAX_PREVIEW_TEXT_HT; int PreviewManager::MAX_PREVIEW_TEXT_WT; PreviewManager::~PreviewManager() { Clear(); delete m_Timer; m_Timer = NULL; } //static void PreviewManager::Init() { wxConfigBase* config = wxConfigBase::Get(); m_DwellTime = (size_t)config->Read(wxT("/Misc/Display/Preview/dwelltime"), 1000l); MAX_PREVIEW_IMAGE_WT = (int)config->Read(wxT("/Misc/Display/Preview/MAX_PREVIEW_IMAGE_WT"), 100l); MAX_PREVIEW_IMAGE_HT = (int)config->Read(wxT("/Misc/Display/Preview/MAX_PREVIEW_IMAGE_HT"), 100l); MAX_PREVIEW_TEXT_WT = (int)config->Read(wxT("/Misc/Display/Preview/MAX_PREVIEW_TEXT_WT"), 300l); MAX_PREVIEW_TEXT_HT = (int)config->Read(wxT("/Misc/Display/Preview/MAX_PREVIEW_TEXT_HT"), 300l); } //static void PreviewManager::Save(int Iwt, int Iht, int Twt, int Tht, size_t dwell) { wxConfigBase* config = wxConfigBase::Get(); config->Write(wxT("/Misc/Display/Preview/dwelltime"), (long)dwell); config->Write(wxT("/Misc/Display/Preview/MAX_PREVIEW_IMAGE_WT"), (long)Iwt); config->Write(wxT("/Misc/Display/Preview/MAX_PREVIEW_IMAGE_HT"), (long)Iht); config->Write(wxT("/Misc/Display/Preview/MAX_PREVIEW_TEXT_WT"), (long)Twt); config->Write(wxT("/Misc/Display/Preview/MAX_PREVIEW_TEXT_HT"), (long)Tht); Init(); // We get here when the user has changed the values; so reload to keep the vars current } //static void PreviewManager::ProcessMouseMove(wxTreeItemId item, int flags, const wxString& filepath, wxMouseEvent& event) { if (item.IsOk() && !(flags & wxTREE_HITTEST_ONITEMRIGHT)) // Find out if we're near a tree item (& not in the space to the right of it) { if (item != m_LastItem) { Clear(); m_LastItem = item; m_Tree = (wxWindow*)event.GetEventObject(); m_InitialPos = wxGetMousePosition(); bool InArchive = false; // We might be trying to extract from an archive into this editor MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active != NULL && active->arcman != NULL && active->arcman->IsArchive()) InArchive = true; if (InArchive) { FakeFiledata ffd(filepath); if (!ffd.IsValid()) return; wxArrayString arr; arr.Add(filepath); wxArrayString tempfilepaths = active->arcman->ExtractToTempfile(arr, false, true); // This extracts filepath to a temporary file, which it returns. The bool params mean not-dirsonly, files-only if (tempfilepaths.IsEmpty()) return; // Empty == failed FileData tfp(tempfilepaths[0]); tfp.DoChmod(0444); // Make the file readonly, as we won't be saving any alterations and exec.ing it is unlikely to be sensible m_Filepath = tempfilepaths[0]; } else { FileData fd(filepath); if (fd.IsDir() || fd.IsSymlinktargetADir() || !fd.IsValid()) return; m_Filepath = fd.GetUltimateDestination(); } if (!m_Timer) m_Timer = new PreviewManagerTimer(); m_Timer->Start(m_DwellTime, true); } } else Clear(); } //static void PreviewManager::Clear() { if (m_Timer) m_Timer->Stop(); m_LastItem = wxTreeItemId(); m_Filepath.Clear(); m_InitialPos = wxPoint(); if (m_Popup) { m_Popup->Dismiss(); m_Popup->Destroy(); m_Popup = NULL; } } //static void PreviewManager::ClearIfNotInside() { if (!m_Popup) return; // If we're here, it's because the mouse moved out of the treectrl. However we don't want to close if it's actually _inside_ the popup wxPoint pt = wxGetMousePosition(); if (!m_Popup->GetRect().Contains(pt)) Clear(); } //static void PreviewManager::OnTimer() { wxPoint pt = wxGetMousePosition(); if (pt.y - m_InitialPos.y > 30) { Clear(); return; } // We must originally have been called on the bottom item, and now we're some way below it. So abort delete m_Popup; m_Popup = new PreviewPopup(m_Tree); if (!m_Popup->GetCanDisplay()) return; // Not an image/txtfile* wxSize ps = m_Popup->GetPanelSize(); // Ensure the popup will fit on the screen if (pt.y < ps.GetHeight()) pt.y = ps.GetHeight() + 2; if (pt.x + ps.GetWidth() >= wxGetClientDisplayRect().GetWidth()) pt.x -= (pt.x + ps.GetWidth() - wxGetClientDisplayRect().GetWidth() + 2); pt.x += 1; // +1 to prevent very small bitmaps from touching the pointer and immediately deleting m_Popup->Position(pt, wxSize(0, -ps.GetHeight())); m_Popup->Popup(m_Tree); m_Popup->SetSize(m_Popup->GetPanelSize()); // Otherwise it doesn't seem to know its size } PreviewPopup::PreviewPopup(wxWindow* parent) : wxPopupTransientWindow(parent), m_CanDisplay(false), m_Size(wxSize()) { wxString filepath = PreviewManager::GetFilepath(); wxCHECK_RET(!filepath.empty(), wxT("PreviewManager has an empty filepath")); if (IsText(filepath)) // Try for text first: *.c files seem to return true from wxImage::CanRead :/ { DisplayText(filepath); m_CanDisplay = true; } else if (IsImage(filepath)) { DisplayImage(filepath); m_CanDisplay = true; } Bind(wxEVT_LEAVE_WINDOW, &PreviewPopup::OnLeavingWindow, this); } bool PreviewPopup::IsImage(const wxString& filepath) { wxCHECK_MSG(!filepath.empty(), false, wxT("An empty filepath passed to IsImage()")); wxLogNull NoErrorMessages; if (filepath.Right(4) == ".svg") return true; return (wxImage::CanRead(filepath)); } bool PreviewPopup::IsText(const wxString& filepath) { wxCHECK_MSG(!filepath.empty(), false, wxT("An empty filepath passed to IsText()")); wxLogNull NoErrorMessages; wxString mt, ext = filepath.AfterLast(wxT('.')), filename = filepath.AfterLast(wxT('/')).Lower(); // Do some specials first: not recognised by wxTheMimeTypesManager, but can usefully be previewed // Do 'txt' too, as wxTheMimeTypesManager doesn't spot this in some distros :/ if (ext == wxT("txt") || ext == wxT("sh") || ext == wxT("xrc") || ext == wxT("in") || ext == wxT("bkl") || filename == wxT("makefile") || filename == wxT("readme")) return true; wxFileType* ft = wxTheMimeTypesManager->GetFileTypeFromExtension(ext); if (!ft) return false; bool result(false); if (ft->GetMimeType(&mt)) { if (mt.StartsWith(wxT("text"))) result = true; } delete ft; return result; } void PreviewPopup::DisplayImage(const wxString& fpath) { wxLogNull NoErrorMessages; wxString filepath(fpath); wxString pngfilepath; wxImage image; if (filepath.Right(4) == ".svg") { void* handle = wxGetApp().GetRsvgHandle(); if (!handle) return; // Presumably librsvg is not available at present wxFileName fn(filepath); // Create a filepath in /tmp/ to store the .png pngfilepath = "/tmp/" + fn.GetName() + ".png"; if (SvgToPng(filepath, pngfilepath, handle)) image = wxImage(pngfilepath); wxRemoveFile(pngfilepath); } else image = wxImage(filepath); if (!image.IsOk()) return; int ht = wxMin(image.GetHeight(), PreviewManager::MAX_PREVIEW_IMAGE_HT); int wt = wxMin(image.GetWidth(), PreviewManager::MAX_PREVIEW_IMAGE_WT); if (ht != image.GetHeight() || wt != image.GetWidth()) { if (image.GetHeight() != image.GetWidth()) { bool wider = image.GetWidth() > image.GetHeight(); // Scale retaining the aspect ratio if (wider) ht = (int)(ht * ((float)image.GetHeight()/(float)image.GetWidth())); else wt = (int)(wt * ((float)image.GetWidth()/(float)image.GetHeight())); } image.Rescale(wt, ht); } wxPanel* panel = new wxPanel(this, wxID_ANY); panel->SetBackgroundColour(*wxLIGHT_GREY); wxStaticBitmap* bitmap = new wxStaticBitmap(panel, wxID_ANY, wxBitmap(image)); wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL); topSizer->Add(bitmap, 0); panel->SetClientSize(wxSize(wt,ht)); panel->SetSizer(topSizer); m_Size = wxSize(wt,ht); } void PreviewPopup::DisplayText(const wxString& filepath) { wxLogNull NoErrorMessages; wxPanel* toppanel = new wxPanel(this, wxID_ANY); toppanel->SetBackgroundColour(*wxLIGHT_GREY); wxPanel* whitepanel = new wxPanel(toppanel, wxID_ANY); whitepanel->SetBackgroundColour(*wxWHITE); wxString previewstring; wxFileInputStream fis(filepath); if (!fis.IsOk()) return; wxTextInputStream tis(fis); for (size_t n=0; n < 30; ++n) { if (!fis.CanRead()) break; previewstring << tis.ReadLine() << wxT('\n'); } wxStaticText* text = new wxStaticText(whitepanel, wxID_ANY, previewstring); wxBoxSizer* whitesizer = new wxBoxSizer(wxVERTICAL); whitesizer->Add(text, 1, wxEXPAND); whitepanel->SetSizer(whitesizer); whitepanel->SetClientSize(PreviewManager::MAX_PREVIEW_TEXT_WT-4, PreviewManager::MAX_PREVIEW_TEXT_HT-4); wxBoxSizer* topSizer = new wxBoxSizer(wxVERTICAL); topSizer->Add(whitepanel, 1, wxEXPAND | wxALL, 2); toppanel->SetSizer(topSizer); toppanel->SetClientSize(wxSize(PreviewManager::MAX_PREVIEW_TEXT_WT,PreviewManager::MAX_PREVIEW_TEXT_HT)); m_Size = wxSize(PreviewManager::MAX_PREVIEW_TEXT_WT, PreviewManager::MAX_PREVIEW_TEXT_HT); } void PreviewPopup::OnLeavingWindow(wxMouseEvent& event) { PreviewManager::ClearIfNotInside(); } ./4pane-6.0/MyDragImage.h0000644000175000017500000000544613205575137014003 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyDragImage.h // Purpose: Pseudo D'n'D // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MYDRAGIMAGEH #define MYDRAGIMAGEH #include "wx/wx.h" #include "wx/dragimag.h" #include "Externs.h" class MyDragImageSlideTimer; class MyDragImageScrollTimer; class MyDragImage : public wxDragImage { public: MyDragImage(); ~MyDragImage(); void SetCursor(enum DnDCursortype cursortype); wxPoint pt; void IncSlide(); void SetImageType(enum myDragResult type); // Are we (currently) copying, softlinking etc? Sets the image appropriately void DoLineScroll(wxMouseEvent& event); // Scrolling a line during DnD in response to scrollwheel void DoPageScroll(wxMouseEvent& event); // Scrolling a page during DnD in response to Rt-click // The next paragraph deals with scroll during DnD in response to mouse-positioning void OnLeavingPane(wxWindow* lastwin); // Checks to see whether to start the scroll timer void QueryScroll(); // Called by the scroll timer, scrolls if appropriate protected: void SetCorrectCursorForWindow(wxWindow* win) const; // When leaving a window, or cancelling DnD, revert to the correct cursor int height; int width; // Holds the size of WindowToScroll int exitlocation; // The y-location where we left the WindowToScroll size_t scrollno; // Remembers the no of previous scrolls, so that acceleration can be intelligent wxWindow* m_PreviousWin; wxWindow* WindowToScroll; MyDragImageScrollTimer* scrolltimer; wxIcon drag_icon; wxIcon* copier_icon; wxIcon hardlink_icon; wxIcon softlink_icon; MyDragImageSlideTimer* slidetimer; enum myDragResult dragtype; // Drag, copy, hardlink, softlink size_t slide; // For animated images, this holds which slide is next to be shown wxCursor m_standardcursor; wxCursor m_textctlcursor; enum DnDCursortype currentcursor; }; class MyDragImageSlideTimer : public wxTimer // Used by MyDragImage. Notify() incs the slide-show counter { public: void Init(MyDragImage* mdi){ parent = mdi; } void Notify(){ parent->IncSlide(); } protected: MyDragImage* parent; }; class MyDragImageScrollTimer : public wxTimer // Used by MyDragImage. Notify() scrolls a pane's tree { public: void Init(MyDragImage* mdi){ parent = mdi; } void Notify(){ parent->QueryScroll(); } protected: MyDragImage* parent; }; #endif // MYDRAGIMAGEH ./4pane-6.0/Dup.h0000666000175000017500000001163613455327440012406 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Dup.h // Purpose: Checks/manages Duplication & Renaming // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef DUPH #define DUPH #include "wx/wx.h" #include class PasteThreadSuperBlock; class CheckDupRen { public: CheckDupRen(MyGenericDirCtrl* caller, const wxString& origin_path, const wxString& dest_path, bool fromarchive=false, time_t modtime = 0) : parent(caller), incomingpath(origin_path), destpath(dest_path), FromArchive(fromarchive), FromModTime(modtime) { IsMultiple = false; WhattodoifCantRead = WhattodoifClash = DR_Unknown; m_tsb = NULL; } bool CheckForAccess(bool recurse = true); // This is a convenient place to check for read permission when in a Moving/Pasting loop. Recurse means check permissions of dir contents too --- not needed for Rename bool CheckForIncest(); // Ensure we don't try to move a dir onto a descendant --- which would cause an indef loop enum CDR_Result CheckForPreExistence(); // Ensure we don't accidentally overwrite int CheckForPreExistenceInArchive(); // Should we overwrite or dup inside an archive static int RenameFile(wxString& originpath, wxString& originname, wxString& newname, bool dup); // The ultimate mechanisms. Static as used by UnRedo too static int RenameDir(wxString& destpath, wxString& newpath, bool dup); static bool MultipleRename(wxWindow* parent, wxArrayString& OldFilepaths, wxArrayString& NewFilepaths, bool dup); static bool ChangeLinkTarget(wxString& linkfilepath, wxString& destfilepath); // Here for convenience: change the target of a symlink void SetTSB(PasteThreadSuperBlock* tsb) { m_tsb = tsb; } wxString finalpath; wxString finalbit; bool ItsADir; bool IsMultiple; enum DupRen WhattodoifClash; enum DupRen WhattodoifCantRead; // We only use SkipAll this time wxString GetOverwrittenFilepath() const { return m_overwrittenfilepath; } protected: MyGenericDirCtrl* parent; wxString incomingpath; wxString inname; wxString destpath; wxString destname; wxString newname; // The name to call the duplicated/renamed dir/file wxString stubpath; // The original destpath splits into stubpath & lastseg wxString lastseg; wxString m_overwrittenfilepath; wxArrayInt IDs; bool IsDir; bool dup; // Flags whether we're duplicating (intentionally or otherwise) bool FromArchive; // Used to flag that we're Pasting from an archive, so can't conveniently rename if there's a clash time_t FromModTime; // It's easier to pass the modtime of an archive entry than to work it out here! PasteThreadSuperBlock* m_tsb; // Used to coordinate a trashdir CDR_Result DirAdjustForPreExistence(bool intoArchive = false, time_t modtime = 0); CDR_Result FileAdjustForPreExistence(bool intoArchive = false, time_t modtime = 0); enum DupRen OfferToRename(int dialogversion, bool intoArchive = false, time_t modtime = 0); bool GetNewName(wxString& destpath, wxString& destname); static bool DoDup(wxString& originalpath, wxString& newpath); // Used by RenameDir to duplicate dirs, so must be static too }; class MultipleRenameDlg : public wxDialog { public: MultipleRenameDlg(){} void Init(); wxTextCtrl* IncText; wxRadioBox* DigitLetterRadio; wxRadioBox* CaseRadio; wxRadioButton *ReplaceAllRadio, *ReplaceOnlyRadio; wxSpinCtrl* MatchSpin; wxComboBox *ReplaceCombo, *WithCombo; wxComboBox *PrependCombo, *AppendCombo; int IncWith, Inc; protected: void OnRegexCrib(wxCommandEvent& event); void OnRadioChanged(wxCommandEvent& event); void OnSpinUp(wxSpinEvent& event); void OnSpinDown(wxSpinEvent& event); void SetIncText(); void PanelUpdateUI(wxUpdateUIEvent& event); void ReplaceAllRadioClicked(wxCommandEvent& event); void ReplaceOnlyRadioClicked(wxCommandEvent& event); enum { digit, upper, lower }; private: DECLARE_DYNAMIC_CLASS(MultipleRenameDlg) DECLARE_EVENT_TABLE() }; class MultipleRename // Class to implement multiple rename/dup { public: MultipleRename(wxWindow* dad, wxArrayString& OldFP, bool duplicate) : parent(dad), OldFilepaths(OldFP), dup(duplicate) {} wxArrayString DoRename(); static wxString IncText(int type, int start); protected: bool DoRegEx(wxString& String, wxString& ReplaceThis, wxString& WithThis, size_t matches ); bool DoPrependAppend(bool body, wxString& Prepend, wxString& Append); bool DoInc(bool body, int InitialValue, int type, bool AlwaysInc); bool CheckForClash(wxString Filepath, size_t index); void LoadHistory(); void SaveHistory(); enum { digit, upper, lower }; wxWindow* parent; wxArrayString& OldFilepaths; // This must be a reference, otherwise an only-alter-matching-files situation will make caller lose registration wxArrayString NewFilepaths; bool dup; MultipleRenameDlg dlg; }; #endif // DUPH ./4pane-6.0/bzipstream.cpp0000644000175000017500000002124713205575137014365 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: bzipstream.cpp // Purpose: BZip stream classes // Author: Ryan Norton // Modified by: David Hart (numerous fixes) // Created: 10/11/03 // RCS-ID: $Id: bzipstream.cpp,v 1.4 2006/12/13 18:53:39 ryannpcs Exp $ // Copyright: (c) Ryan Norton // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #ifndef WX_PRECOMP #include "wx/wx.h" #include "wx/utils.h" #include "wx/intl.h" #include "wx/log.h" #endif #ifdef __BORLANDC__ #pragma hdrstop #endif #if wxUSE_STREAMS #include "bzipstream.h" #define BZ_NO_STDIO #ifdef USE_SYSTEM_BZIP2 #include #else #include "sdk/bzip/bzlib.h" #endif #ifndef BZ_MAX_UNUSED #define BZ_MAX_UNUSED 5000 #endif //=========================================================================== // // IMPLEMENTATION // //=========================================================================== //--------------------------------------------------------------------------- // // wxBZipInputStream // //--------------------------------------------------------------------------- wxBZipInputStream::wxBZipInputStream(wxInputStream& Stream, bool bLessMemory) : wxFilterInputStream(Stream), m_nBufferPos(0) { m_hZip = (void*) new bz_stream; bz_stream* hZip = (bz_stream*)m_hZip; hZip->bzalloc = NULL; hZip->bzfree = NULL; hZip->opaque = NULL; //param 2 - verbosity = 0-4, 4 more stuff to stdio //param 3 - small = non-zero means less memory and more time if (BZ2_bzDecompressInit(hZip, 0, bLessMemory)!= BZ_OK) { delete hZip; wxLogSysError(wxT("Could not initialize bzip ") wxT("decompression engine!")); } } wxBZipInputStream::~wxBZipInputStream() { bz_stream* hZip = (bz_stream*)m_hZip; BZ2_bzDecompressEnd(hZip); delete hZip; } wxInputStream& wxBZipInputStream::ReadRaw(void* pBuffer, size_t size) { return m_parent_i_stream->Read(pBuffer, size); } off_t wxBZipInputStream::TellRawI() { return m_parent_i_stream->TellI(); } off_t wxBZipInputStream::SeekRawI(off_t pos, wxSeekMode sm) { return 0; } size_t wxBZipInputStream::OnSysRead(void* buffer, size_t bufsize) { bz_stream* hZip = (bz_stream*)m_hZip; hZip->next_out = (char*)buffer; hZip->avail_out = bufsize; while (hZip->avail_out != 0) { if (m_nBufferPos == 0 || m_nBufferPos == WXBZBS) { ReadRaw(m_pBuffer, WXBZBS); m_nBufferPos = 0; hZip->next_in = m_pBuffer; hZip->avail_in = WXBZBS; if (m_parent_i_stream->LastRead() != WXBZBS) { // Full amount not read, so do a last // minute tidy up and decompress what is left hZip->avail_in = m_parent_i_stream->LastRead(); int nRet = BZ2_bzDecompress(hZip); if (nRet == BZ_OK || nRet == BZ_STREAM_END) return bufsize - hZip->avail_out; else return 0; } } // Buffer full, decompress some bytes hZip->next_in = &m_pBuffer[m_nBufferPos]; hZip->avail_in = WXBZBS - m_nBufferPos; int nRet = BZ2_bzDecompress(hZip); if (nRet == BZ_OK) { m_nBufferPos = WXBZBS - hZip->avail_in; } else if(nRet == BZ_STREAM_END) return bufsize - hZip->avail_out; else return 0; } return bufsize - hZip->avail_out; } //--------------------------------------------------------------------------- // // wxBZipOutputStream // //--------------------------------------------------------------------------- wxBZipOutputStream::wxBZipOutputStream(wxOutputStream& Stream, wxInt32 nCompressionFactor) : wxFilterOutputStream(Stream) { m_hZip = new bz_stream; bz_stream* hZip = (bz_stream*)m_hZip; hZip->bzalloc = NULL; hZip->bzfree = NULL; hZip->opaque = NULL; //param 2 - compression factor = 1-9 9 more compression but slower //param 3 - verbosity = 0-4, 4 more stuff to stdio (ignored) //param 4 - workfactor = reliance on standard comp alg, 0-250, // 0==30 default if (BZ2_bzCompressInit(hZip, nCompressionFactor, 0, 0)!= BZ_OK) { delete hZip; wxLogSysError(wxT("Could not initialize bzip compression engine!")); } } wxBZipOutputStream::~wxBZipOutputStream() { bz_stream* hZip = (bz_stream*)m_hZip; BZ2_bzCompressEnd(hZip); delete hZip; } wxOutputStream& wxBZipOutputStream::WriteRaw(void* pBuffer, size_t size) { return m_parent_o_stream->Write(pBuffer, size); } off_t wxBZipOutputStream::TellRawO() { return m_parent_o_stream->TellO(); } off_t wxBZipOutputStream::SeekRawO(off_t pos, wxSeekMode sm) { return 0; } size_t wxBZipOutputStream::OnSysWrite(const void* buffer, size_t bufsize) { bz_stream* hZip = (bz_stream*)m_hZip; hZip->next_in = (char*)buffer; hZip->avail_in = bufsize; hZip->next_out = m_pBuffer; hZip->avail_out = WXBZBS; size_t nWrote = 0; int nRet = BZ_RUN_OK; // for the 'while' statement while( nRet== BZ_RUN_OK && hZip->avail_in > 0 ) { // Compress the data in buffer, resulting data -> pbuffer nRet = BZ2_bzCompress(hZip, BZ_RUN); if (nRet != BZ_RUN_OK) { wxLogDebug(wxT("Error from BZ2_bzCompress in Write()")); return 0; } // This is how much newly compressed data is available size_t nCurWrite = WXBZBS - hZip->avail_out; if (nCurWrite != 0) { // Deliver the compressed data to the parent stream WriteRaw(m_pBuffer, nCurWrite); if (m_parent_o_stream->LastWrite() != nCurWrite) { wxLogDebug(wxT("Error writing to underlying stream")); break; } //Reset the buffer hZip->avail_out = WXBZBS; hZip->next_out = m_pBuffer; nWrote += nCurWrite; } } // I'm not sure if this is necessary as, if it worked, // the loop continued until avail_in was zero nWrote = bufsize - hZip->avail_in ; return nWrote; } bool wxBZipOutputStream::Close() // Flushes any remaining compressed data { bz_stream* hZip = (bz_stream*)m_hZip; int nRet = BZ_FINISH_OK; while ( nRet == BZ_FINISH_OK ) { hZip->next_out = m_pBuffer; hZip->avail_out = WXBZBS; // Call BZ2_bzCompress with the parameter BZ_FINISH int nRet = BZ2_bzCompress(hZip, BZ_FINISH); if (nRet != BZ_FINISH_OK && nRet != BZ_STREAM_END) { wxLogDebug(wxT("BZ2_bzCompress error in Close()")); break; } size_t nCurWrite = WXBZBS - hZip->avail_out; if (nCurWrite != 0) { WriteRaw(m_pBuffer, nCurWrite); if (m_parent_o_stream->LastWrite() != nCurWrite) { wxLogDebug(wxT("Error writing to underlying ") wxT("stream during the Close() phase")); break; } } if (nRet == BZ_STREAM_END) { return true; //hrm, restructure here??? } } return false; } //--------------------------------------------------------------------------- // // wxBZipStream // //--------------------------------------------------------------------------- wxBZipStream::wxBZipStream(wxInputStream& i, wxOutputStream& o) : wxBZipInputStream(i), wxBZipOutputStream(o) {} wxBZipStream::~wxBZipStream(){} //--------------------------------------------------------------------------- // // wxBZipClassFactory // //--------------------------------------------------------------------------- IMPLEMENT_DYNAMIC_CLASS(wxBZipClassFactory, wxFilterClassFactory) static wxBZipClassFactory g_wxBZipClassFactory; wxBZipClassFactory::wxBZipClassFactory() { if (this == &g_wxBZipClassFactory) PushFront(); } const wxChar * const * wxBZipClassFactory::GetProtocols(wxStreamProtocolType type) const { static const wxChar *protos[] = { _T("bzip"), _T("bzip2"), NULL }; static const wxChar *mimes[] = { _T("a\application/x-bzip"), _T("application/x-bzip-compressed-tar"), NULL }; static const wxChar *encs[] = { _T("bzip"), _T("bzip2"), NULL }; static const wxChar *exts[] = { _T(".bz"), _T(".bz2"), NULL }; static const wxChar *empty[] = { NULL }; switch (type) { case wxSTREAM_PROTOCOL: return protos; case wxSTREAM_MIMETYPE: return mimes; case wxSTREAM_ENCODING: return encs; case wxSTREAM_FILEEXT: return exts; default: return empty; } } #endif //wxUSE_ZLIB && wxUSE_STREAMS ./4pane-6.0/MyNotebook.h0000644000175000017500000000672113205575137013740 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyNotebook.h // Purpose: Notebook stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MYNOTEBOOKH #define MYNOTEBOOKH #include "Externs.h" class DirectoryForDeletions; class UnRedoManager; class DeviceAndMountManager; class Bookmarks; class LaunchMiscTools; class MyNotebook : public wxNotebook { public: MyNotebook(wxSplitterWindow *main, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0); ~MyNotebook(); void LoadTabs(int TemplateNo = -1, const wxString& startdir0=wxT(""), const wxString& startdir1=wxT("")); // Loads the default tabs, or if TemplateNo > -1, loads that tab template void CreateTab(int tabtype = 0, int after = -1, int TemplateNo = -1, const wxString& pageName = wxT(""), const wxString& startdir0=wxT(""), const wxString& startdir1=wxT("")); void OnAppendTab(wxCommandEvent& WXUNUSED(event)){ AppendTab(); } void OnInsTab(wxCommandEvent& WXUNUSED(event)){ InsertTab(); } void OnDelTab(wxCommandEvent& WXUNUSED(event)){ DelTab(); } void OnRenTab(wxCommandEvent& WXUNUSED(event)){ RenameTab(); } void OnDuplicateTab(wxCommandEvent& WXUNUSED(event)){ DuplicateTab(); } void OnAdvanceSelection(wxCommandEvent& event){AdvanceSelection(event.GetId() == SHCUT_NEXT_TAB); } wxString CreateUniqueTabname() const; #if defined (__WXGTK__) void OnAlwaysShowTab(wxCommandEvent& event); void OnSameTabSize(wxCommandEvent& event){ EqualSizedTabs = ! EqualSizedTabs; EqualWidthTabs(EqualSizedTabs); } #endif void LoadTemplate(int TemplateNo); // Triggered by a menu event, loads the selected tab template void SaveDefaults(int TemplateNo = -1, const wxString& title = wxT(""));// Save current tab setup. If TemplateNo > -1 save as a template; otherwise just do a 'normal' save void SaveAsTemplate(); // Save the current tab setup as a template void DeleteTemplate(); // Delete an existing template DirectoryForDeletions* DeleteLocation; // Organises unique dirnames for deleted/trashed files UnRedoManager* UnRedoMan; // The sole instance of UnRedoManager DeviceAndMountManager* DeviceMan; // Find where floppy, cds are Bookmarks* BookmarkMan; LaunchMiscTools* LaunchFromMenu; // Launches user-defined external programs & scripts from the Tools menu bool showcommandline; bool showterminal; bool saveonexit; int NoOfExistingTemplates; // How many templates are there? int TemplateNoThatsLoaded; // Which of them is loaded, if any. -1 means none bool AlwaysShowTabs; bool EqualSizedTabs; protected: void DoLoadTemplateMenu(); // Get the correct no of loadable templates listed on the menu void OnSelChange(wxNotebookEvent& event); void OnButtonDClick(wxMouseEvent& WXUNUSED(event)){ RenameTab(); } #if defined (__WXX11__) void OnRightUp(wxMouseEvent& event){ ShowContextMenu((wxContextMenuEvent&)event); } // EVT_CONTEXT_MENU doesn't seem to work in X11 #endif void ShowContextMenu(wxContextMenuEvent& event); void AppendTab(); void InsertTab(); void DelTab(); void DuplicateTab(); void RenameTab(); #if defined (__WXGTK__) void OnLeftDown(wxMouseEvent& event); void ShowTabs(bool show_tabs); void EqualWidthTabs(bool equal_tabs); #endif int nextpageno; private: DECLARE_EVENT_TABLE() }; #endif // MYNOTEBOOKH ./4pane-6.0/Filetypes.cpp0000666000175000017500000036523213566743310014162 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Filetypes.cpp // Purpose: FileData class. Open/OpenWith. // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/scrolwin.h" #include "wx/menu.h" #include "wx/dirctrl.h" #include "wx/dragimag.h" #include "wx/imaglist.h" #include "wx/config.h" #include "wx/xrc/xmlres.h" #include "wx/tokenzr.h" #include "wx/dynarray.h" #include "wx/arrimpl.cpp" #include "wx/mimetype.h" #include // For finding usernames from ids #include // Ditto groupnames #include // For statvfs(), used in FileData::CanTHISUserWrite() #include // For lutime() #if defined __WXGTK__ #include // To get the default Open command #endif #include "Externs.h" #include "MyGenericDirCtrl.h" #include "MyDirs.h" #include "MyFrame.h" #include "MyFiles.h" #include "Redo.h" #include "Configure.h" #include "Misc.h" #include "Filetypes.h" //This file deals with 3 things. First (& least), a FileData class which does stat & similar on a filepath. //The 2 main things deal with launching & opening. There are classes that do the group-based OpenWith dialog & its child tree & dialogs. //These are called from a method of the FiletypeManager class. That also deals with Opening by a default applic on double-clicking, and by //previous choices: the applics offered by reference to the file's extension, prior to the full OpenWith dialog. //You might feel that too much has ended up in this class, & the methods use a confusing mixture of the group-related structs and //the ext-related ones. I might agree with you. /* File */ static const char * iconfile_xpm[] = { /* width height ncolors chars_per_pixel */ "16 16 3 1", /* colors */ " s None c None", ". c #000000", "+ c #ffffff", /* pixels */ " ", " ........ ", " .++++++.. ", " .+.+.++.+. ", " .++++++.... ", " .+.+.+++++. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " ........... ", " ", " "}; //--------------------------------------------------------------------------------------------------------------------------- FileData::FileData(wxString filepath, bool defererence /*=false*/) : Filepath(filepath) { IsFake = false; statstruct = new struct stat; symlinkdestination = NULL; if (!defererence) { result = lstat(Filepath.mb_str(wxConvUTF8), statstruct); // lstat rather than stat as it doesn't dereference symlinks if (!result && IsSymlink()) // If we have a valid result & it's a symlink symlinkdestination = new FileData(filepath, true); // load another FileData with its target } else { errno=0; result = stat(Filepath.mb_str(wxConvUTF8), statstruct); // Unless we WANT to dereference, in which case use stat int stat_error = errno; // Strangely, stat/lstat don't return any filepath data. Here we need it, so we have to use readlink char buf[500]; // We have to specify a char buffer. 500 bytes should be long enough: it gets truncated anyway int len = readlink(Filepath.mb_str(wxConvUTF8), buf, 500); // Readlink inserts into buf the destination filepath of the symlink if (len != -1) { Filepath = wxString(buf, wxConvUTF8, len); // If it worked, len == length of the destination filepath. Put it into Filepath if (result==-1 && stat_error==ENOENT) // However if stat failed because the target ain't there no longer... BrokenlinkName = Filepath; } else Filepath = wxEmptyString; // If readlink failed, there's nothing sensible to be done } SetType(); } void FileData::SetType() // Called in ctor to set DataBase::Type { if (IsDir()) { Type = DIRTYPE; return; } if (IsSymlink()){ Type = SYMTYPE; return; } if (IsCharDev()){ Type = CHRTYPE; return; } if (IsBlkDev()) { Type = BLKTYPE; return; } if (IsSocket()) { Type = SOCTYPE; return; } if (IsFIFO()) { Type = FIFOTYPE; return; } Type = REGTYPE; // The least-stupid default } wxString FileData::GetPath() { if (!IsValid()) return wxEmptyString; wxString Path = GetFilepath(); if (Path.Right(1) == wxFILE_SEP_PATH) Path = Path.BeforeLast(wxFILE_SEP_PATH); // Avoid problems with any terminal '/' return wxString(Path.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH); // Chop off any filename & add a '/' for luck. This also means we return '/' if the original filepath was itself '/' ! } bool FileData::IsFileExecutable() // See if the file is executable (by SOMEONE, not necessarily us) { if (!IsValid()) return false; // If lstat() returned an error, the answer must be 'No' unsigned int st_mode = ((unsigned int)statstruct->st_mode); // For readability return (!!(st_mode & S_IXUSR) || !!(st_mode & S_IXGRP) || !!(st_mode & S_IXOTH)); // If user, group or other has execute permission, return true } bool FileData::IsBrokenSymlink() // Is Filepath a broken Symlink? { FileData* sfd = GetSymlinkData(); if (!sfd || !sfd->IsValid()) return true; if (sfd->GetFilepath() == GetFilepath()) return true; // Self-referential symlink return !sfd->BrokenlinkName.empty(); } bool FileData::CanTHISUserRead() // Do WE have permission to read this file { if (!IsValid()) return false; // We can't use access() if this is a symlink, as it reports on the target instead. This is a particular problem if the symlink is broken! if (IsSymlink()) return true; // All symlinks seem to have global rwx permissions int result = access(Filepath.mb_str(wxConvUTF8), R_OK); // Use 'access' to see if we have read permission return (result==0 ? true : false); } bool FileData::CanTHISUserWrite() // Do WE have permission to write to this file { if (!IsValid()) return false; // We can't use access() if this is a symlink, as it reports on the target instead. This is a particular problem if the symlink is broken! if (IsSymlink()) // All symlinks seem to have global rwx permissions, so no need to check for these { struct statvfs buf; // However we do need to check for a ro filesystem int ans = statvfs(GetPath().mb_str(wxConvUTF8), &buf); // Use the path here, rather than the filepath, as statvfs can't cope with broken symlinks return (ans==0 && (buf.f_flag & ST_RDONLY)==0); } int result = access(Filepath.mb_str(wxConvUTF8), W_OK); // Use 'access' to see if we have write permission return (result==0 ? true : false); } bool FileData::CanTHISUserExecute() // Do WE have permission to execute this file { if (!IsValid()) return false; // I _am_ using access() here, even if this is a symlink. Otherwise, as symlinks all have rwx permissions, they will all appear to be executable, even if the target isn't! int result = access(Filepath.mb_str(wxConvUTF8), X_OK); // Use 'access' to see if we have execute permission return (result==0 ? true : false); } bool FileData::CanTHISUserWriteExec() // Do WE have write & exec permissions for this file { if (!IsValid()) return false; // We can't use access() if this is a symlink, as it reports on the target instead. This is a particular problem if the symlink is broken! if (IsSymlink()) return CanTHISUserWrite(); // All symlinks seem to have global rwx permissions, but use CanTHISUserWrite() to check for a ro filesystem int result = access(Filepath.mb_str(wxConvUTF8), W_OK | X_OK); // Use 'access' to see if we have permissions return (result==0 ? true : false); } bool FileData::CanTHISUserRename() // See if the file can be Renamed by US { if (!IsValid()) return false; // To Rename a file or dir, we need to have 'write' permission for its parent dir (& execute or we can't stat it!) FileData dir(GetPath()); // Make a FileData for the parent dir. NB GetPath() still returns '/' if the original file was root if (!dir.IsValid()) return false; // If stat() returned an error, the answer must be 'No' if (!dir.CanTHISUserWriteExec()) return false; // Return false if parent dir hasn't write & exec permission for us // If we HAVE got these permissions, we still have to check that the Sticky bit isn't set if (!dir.IsSticky()) return true; // If it isn't, we're OK uid_t id = getuid(); // Get user's numerical id return (id == OwnerID() || id == dir.OwnerID()); // We're still OK if we own either the file or the parent dir. Otherwise we're not } bool FileData::CanTHISUserRenameThusly(wxString& newname) // See above. Will this particular name work? { if (!IsValid()) return false; if (newname.IsEmpty()) return false; if (!CanTHISUserRename()) return false; // Check for 'write' permission for its parent dir (& execute or we can't stat it!) // To rename a file or dir, we also need to check that the new location will be on the same device/partition as the old. Otherwise rename won't work, we'd have to copy/delete FileData newlocation(newname); if (!newlocation.IsValid()) return false; // If stat() returned an error, the answer must be 'No' return (GetDeviceID() == newlocation.GetDeviceID()); // We're OK if st_dev is unchanged } int HowManyChildrenInThisDir(wxString& dirname); bool FileData::CanTHISUserMove_By_RenamingThusly(wxString& newname) // Can we "Move" like this, by Renaming { if (!IsValid()) return false; if (newname.IsEmpty()) return false; if (!CanTHISUserRenameThusly(newname)) return false; // Check for 'write' permission for its parent dir (& execute or we can't stat it!); + that From & To are on the same device if (!IsDir()) return true; // If it's a file, that's all we need to know if (CanTHISUserWriteExec()) return true; // To rename a dir, we also need write/exec permission to "delete" any progeny from this filepath when we rename it to another return (HowManyChildrenInThisDir(newname) == 0); // The dir can't be emptied, unless it's obliging enough to be empty } int FileData::CanTHISUserMove() // See if the file can be moved by US. NB this means Move, rather than just renaming the file { // Return '0' for no because of the parent dir, '-1' because of read permissions. (This allows for a more-intelligent explanation in the subsequent dialog) if (!CanTHISUserRename()) return false; // To move a file, we first need to have 'write' permission for its parent dir (& execute or we can't stat it!). This is the same as Rename(), so use this return CanTHISUserRead() ? 1:-1; // We also need to have 'read' permission for the file, otherwise we can't copy it } bool FileData::CanTHISUserPotentiallyCopy() // See if files in the parent dir can in theory be Copied by US NB to copy the individual files in the dir will also require Read access to them { if (!IsValid()) return false; // To copy a file or dir, we need to have 'execute' permission for its parent dir // (BTW We also need 'read' to be able to list the dir in the first place, and 'read' permission for each file we want to copy) FileData dir(GetPath()); // Make a FileData for the parent dir. NB GetPath() still returns '/' if the original file was root if (!dir.IsValid()) return false; // If stat() returned an error, the answer must be 'No' return dir.CanTHISUserExecute(); // Return true if parent dir has exec permission for user } bool FileData::CanTHISUserChmod() // See if the file's permissions are changeable by US { if (!IsValid()) return false; // To change a file or dir's permissions, we need to own it or be root uid_t id = getuid(); // Get user's numerical id return (id == OwnerID() || id == 0); // We're OK if we own either the file or are root. Otherwise we're not } bool FileData::CanTHISUserChown(uid_t newowner) // See if the file's owner is changeable by US { unsigned int invalid = (unsigned int)-1; // This is to prevent compiler warnings about -1 in unsigned ints if (!IsValid()) return false; if (newowner == invalid || newowner == OwnerID() // because there's nothing to do || getuid() != 0) return false; // Only root can change ownership return true; } bool FileData::CanTHISUserChangeGroup(gid_t newgroup) // See if the file's group is changeable by US { unsigned int invalid = (unsigned int)-1; // This is to prevent compiler warnings about -1 in unsigned ints if (!IsValid()) return false; if (newgroup == invalid || newgroup == GroupID()) return false; // because there's nothing to do if (getuid()!=0 && getuid()!=OwnerID()) return false; // Only the file-owner or root can change a group return true; } int FileData::DoChmod(mode_t newmode) // If appropriate, change the file's permissions to newmode { if (!IsValid()) return false; if (!CanTHISUserChmod()) return false; // Check we have the requisite authority (we need to own it or be root) if (newmode == (statstruct->st_mode & 07777)) return 2; // Check the new mode isn't identical to the current one! If so, return a flag return (chmod(Filepath.mb_str(wxConvUTF8), newmode) == 0); // All's well, so do the chmod. Success is flagged by zero return } int FileData::DoChangeOwner(uid_t newowner) // If appropriate, change the file's owner { if (newowner == OwnerID()) return 2; // Check the new owner isn't identical to the current one! If so, return a flag if (!CanTHISUserChown(newowner)) return false; // Check it can be done unsigned int invalid = (unsigned int)-1; // This is to prevent compiler warnings about -1 in unsigned ints return (lchown(Filepath.mb_str(wxConvUTF8), newowner, invalid) == 0); // Try to do the chown (actually lchown as this works on links too). Zero return means success } int FileData::DoChangeGroup(gid_t newgroup) // If appropriate, change the file's group { if (newgroup == GroupID()) return 2; // Check the new group isn't identical to the current one! If so, return a flag if (!CanTHISUserChangeGroup(newgroup)) return false; // First check it can be done unsigned int invalid = (unsigned int)-1; // This is to prevent compiler warnings about -1 in unsigned ints return (lchown(Filepath.mb_str(wxConvUTF8), invalid, newgroup) == 0); // Try to do the chown (actually lchown as this works on links too). Zero return means success } wxString FileData::GetParsedSize() // Returns the size, but in bytes, KB, MB or GB according to magnitude { return ParseSize(Size(), false); } wxString FileData::PermissionsToText() // Returns a string describing the filetype & permissions eg -rwxr--r--, just as does ls -l { wxString text; text.Printf(wxT("%c%c%c%c%c%c%c%c%c%c"), IsRegularFile() ? wxT('-') : wxT('d'), // To start with, assume all non-regular files are dirs IsUserReadable() ? wxT('r') : wxT('-'), IsUserWriteable() ? wxT('w') : wxT('-'), IsUserExecutable() ? wxT('x') : wxT('-'), IsGroupReadable() ? wxT('r') : wxT('-'), IsGroupWriteable() ? wxT('w') : wxT('-'), IsGroupExecutable() ? wxT('x') : wxT('-'), IsOtherReadable() ? wxT('r') : wxT('-'), IsOtherWriteable() ? wxT('w') : wxT('-'), IsOtherExecutable() ? wxT('x') : wxT('-') ); if (text.GetChar(0) != wxT('-')) // If it wasn't a file, { if (IsDir()) ; // check it really IS a dir (& if so, do nothing). If it's NOT a dir, it'll be one of the miscellany else if (IsSymlink()) text.SetChar(0, wxT('l')); else if (IsCharDev()) text.SetChar(0, wxT('c')); else if (IsBlkDev()) text.SetChar(0, wxT('b')); else if (IsSocket()) text.SetChar(0, wxT('s')); else if (IsFIFO()) text.SetChar(0, wxT('p')); } // Now amend string if the unusual permissions are set. if (IsSetuid()) text.GetChar(3) == wxT('x') ? text.SetChar(3, wxT('s')) : text.SetChar(3, wxT('S')); // If originally 'x', use lower case, otherwise upper if (IsSetgid()) text.GetChar(6) == wxT('x') ? text.SetChar(6, wxT('s')) : text.SetChar(6, wxT('S')); if (IsSticky()) text.GetChar(9) == wxT('x') ? text.SetChar(9, wxT('t')) : text.SetChar(9, wxT('T')); return text; } wxString DataBase::TypeString() // Returns string version of type eg "Directory" NB a baseclass DataBase method, not FileData { wxString type; switch(Type) { case HDLNKTYPE: case REGTYPE: type = _("Regular File"); break; case SYMTYPE: if (IsFake || (GetSymlinkData() && GetSymlinkData()->IsValid())) type = _("Symbolic Link"); // A FakeFiledata symlink can't cope with target/broken else type = _("Broken Symbolic Link"); break; case CHRTYPE: type = _("Character Device"); break; case BLKTYPE: type = _("Block Device"); break; case DIRTYPE: type = _("Directory"); break; case FIFOTYPE: type = _("FIFO"); break; case SOCTYPE: type = _("Socket"); break; default: type = _("Unknown Type?!"); } return type; } bool DataBase::IsValid() { if (IsFake) return (FakeFiledata*)IsValid(); else return (FileData*)IsValid(); } wxString FileData::GetOwner() // Returns owner's name as string { struct passwd p, *result; static const size_t bufsize = 4096; char buf[bufsize]; getpwuid_r(OwnerID(), &p, buf, bufsize, &result); // Use getpwuid_r to fill password struct if (result == NULL) return wxT(""); wxString name(result->pw_name, wxConvUTF8); return name; } wxString FileData::GetGroup() // Returns group name as string { struct group g, *result; static const size_t bufsize = 4096; char buf[bufsize]; getgrgid_r(GroupID(), &g, buf, bufsize, &result); // Use getgrgid_r to fill group struct if (result == NULL) return wxT(""); wxString name(result->gr_name, wxConvUTF8); return name; } bool FileData::IsSymlinktargetASymlink() { if (!IsValid() || !GetSymlinkData()->IsValid() || GetSymlinkData()->GetFilepath().empty()) return false; FileData next(GetSymlinkDestination()); return (next.IsValid() && next.IsSymlink()); } bool FileData::IsSymlinktargetADir(bool recursing /*=false*/) // (Recursively) search to see if the ultimate target's a dir { if (!IsValid()) return false; if (recursing && IsDir()) return true; // Success, providing this isn't the 1st iteration & the file's a *real* dir if (!IsSymlink() || GetSymlinkData()->GetFilepath().empty()) return false; // If it's not a symlink (or it's a broken one), then the target wasn't a dir FileData recurse(GetSymlinkDestination()); return recurse.IsSymlinktargetADir(true); // Return recursion result } wxString FileData::GetUltimateDestination() // Returns the filepath at the end of a series of symlinks (or the original filepath if not a symlink) { if (!IsValid()) return wxT(""); return GetUltimateDestination(GetFilepath()); } #ifndef PATH_MAX #define PATH_MAX 10000 // gnu/hurd doesn't have a max path length, so it doesn't pre-define this #endif //static wxString FileData::GetUltimateDestination(const wxString& filepath) // Ditto, but a static that tests the passed filepath { if (filepath.empty()) return filepath; char buf[PATH_MAX]; if (realpath(filepath.mb_str(wxConvUTF8), buf) == NULL) return filepath; // This function absolutes a relative path, and undoes any symlinks within the path eg /foo/subdir where foo is a symlink for /bar return wxString(buf, wxConvUTF8); } wxString FileData::MakeAbsolute(wxString fpath/*=wxEmptyString*/, wxString cwd/*=wxEmptyString*/) // Returns the absolute filepath version of the, presumably relative, given string, relative to cwd or the passed parameter { if (fpath.IsEmpty()) // If fpath is empty & the FileData is valid, assume it's the original filepath we're to absolute { if (!IsValid()) return fpath; else { fpath = GetFilepath(); if (fpath.IsEmpty()) return fpath; } // If fpath is still empty, abort } wxFileName fn(fpath); // Now use wxFileName's Normalize method to do the hard bit fn.Normalize(wxPATH_NORM_ALL, cwd); return fn.GetFullPath(); } //static bool FileData::ModifyFileTimes(const wxString& fpath, const wxString& ComparisonFpath) // Sets the fpath's atime/mtime to that of ComparisonFpath { if (fpath.empty() || ComparisonFpath.empty()) return false; FileData fd(fpath); if (fd.IsValid()) return fd.ModifyFileTimes(ComparisonFpath); return false; } bool FileData::ModifyFileTimes(const wxString& ComparisonFpath) // Sets the FileData's atime/mtime to that of ComparisonFpath { if (ComparisonFpath.empty() || !IsValid()) return false; FileData fd(ComparisonFpath); if (!fd.IsValid()) return false; struct timeval tvp[2]; tvp[0].tv_sec = fd.AccessTime(); tvp[0].tv_usec = 0; tvp[1].tv_sec = fd.ModificationTime(); tvp[1].tv_usec = 0; // Use lutimes instead of utimes as, like lstat, it doesn't 'look through' symlinks. For non-symlinks there's no difference afaict return (lutimes(GetFilepath().ToUTF8(), tvp) == 0); } bool FileData::ModifyFileTimes(time_t mt) // Sets the FileData's mtime to mt { if (!IsValid()) return false; struct timeval tvp[2]; tvp[0].tv_sec = 0; tvp[0].tv_usec = 0; // For our usecase, atime is 'now' anyway tvp[1].tv_sec = mt; tvp[1].tv_usec = 0; return (lutimes(GetFilepath().ToUTF8(), tvp) == 0); } //--------------------------------------------------------------------------------------------------------------------------------------------------------------------- bool SafelyCloneSymlink(const wxString& oldFP, const wxString& newFP, FileData& stat) // Clones a symlink even if badly broken { wxCHECK_MSG(stat.IsSymlink(), false, wxT("Passed something other than a symlink")); if (stat.IsBrokenSymlink() && stat.GetSymlinkDestination().empty()) { wxString sdfilepath( stat.GetSymlinkData()->Filepath ); // Don't use GetFilepath() here, as !IsValid() so will return "" if (!sdfilepath.empty()) CreateSymlink(sdfilepath, newFP); else return wxCopyFile(oldFP, newFP, false); // ...for want of something better } else CreateSymlink(stat.GetSymlinkDestination(), newFP); FileData fd(newFP); return fd.IsSymlink(); } wxString QuoteSpaces(wxString& str) // Intelligently cover with "". Do each filepath separately, in case we're launching a script with a parameter which takes parameters . . . { if (str.IsEmpty()) return str; wxString word, result; wxStringTokenizer tkz(str); while (tkz.HasMoreTokens()) { wxString token = tkz.GetNextToken(); word += token; FileData fd(word); if (fd.IsValid()) // If the token is a valid filepath, followed by whitespace, add it to the result { result += wxT('\"') + word; result += wxT('\"'); // Add string-to-date, surrounded by "" word.Empty(); } if (tkz.HasMoreTokens()) // If there's more to come, add the intervening white space. This might be the space-between-filepaths from above, or a space within a filepath { size_t spacestart = str.find(token); if (spacestart != wxString::npos) { wxString residue = str.Mid(spacestart + token.Len()); for (size_t n=0; n < residue.Len(); ++n) if (wxIsspace(residue.GetChar(n))) word += residue.GetChar(n); else break; } } } if (!word.IsEmpty()) { result += wxT('\"') + word; result += wxT('\"'); } // If there's a residue that isn't a filepath, quote it too return result; } //--------------------------------------------------------------------------------------------------------------------------------------------------------------------- #include #include // The following 2 helper functions are taken/adapted from "Simple Program to List a Directory, Mark II" in the GNU C lib manual static int one(const struct dirent* unused) // Just returns true { return 1; } int HowManyChildrenInThisDir(wxString& dirname) // Returns the no of dirs/files in the passed dir. Used in CanFoldertreeBeEmptied() below { struct dirent **eps; int n; n = scandir(dirname.mb_str(wxConvUTF8), &eps, one, alphasort); if (n >= 0) return n - 2; // Return n-2, as .. and . are counted too so empty is 2 else return -1; } enum emptyable CanFoldertreeBeEmptied(wxString path) // Global to check that this folder & any daughters can be deleted from { bool PathWasOriginallyAFile = false; // Flags whether we were originally passed a file, not a dir while (path.Right(1) == wxFILE_SEP_PATH && path.Len() > 1) path.RemoveLast(); FileData* stat = new FileData(path); // We have to use FileData throughout, not eg wxDirExists which (currently) falsely accepts symlinks-to-dirs if (!stat->IsDir()) { if (!stat->IsValid()) { delete stat; return RubbishPassed; } // Flagging rubbish if (stat->IsSymlink() && stat->IsSymlinktargetADir(true)) // We want to assess a symlink-to-dir as the target dir { path = stat->GetUltimateDestination(); delete stat; stat = new FileData(path); } else // If it's a valid filedata, but not a dir or a symlink-to-dir, it must be a 'file'. Use the parent dir { path = path.BeforeLast(wxFILE_SEP_PATH); // This should amputate any filename delete stat; stat = new FileData(path); // Now try again if ( !(stat->IsDir() || (stat->IsSymlink() && stat->IsSymlinktargetADir(true))) ) { delete stat; return RubbishPassed; } // Must have been disguised rubbish PathWasOriginallyAFile = true; // Remember we did this } } wxDir dir(path); if (!dir.IsOpened()) { delete stat; return RubbishPassed; } // Heavily-disguised rubbish! if (!stat->CanTHISUserWriteExec()) { delete stat; // The passed folder fails, unless it's obliging enough to be empty return (HowManyChildrenInThisDir(path) == 0) ? CanBeEmptied : CannotBeEmptied; } delete stat; // If we're here, the passed folder was OK. Recursively check any subfolders (unless we were actually passed a file...) if (PathWasOriginallyAFile) return CanBeEmptied; wxString subdirname; bool cont = dir.GetFirst(&subdirname, wxEmptyString, wxDIR_DIRS); while (cont) { wxString filepath = path + wxFILE_SEP_PATH + subdirname; // Make 'subdir' into a filepath FileData stat(filepath); if (stat.IsDir()) // Protect against symlinks-to-dirs { enum emptyable ans = CanFoldertreeBeEmptied(filepath); if (ans != CanBeEmptied) return (ans==CannotBeEmptied ? SubdirCannotBeEmptied : ans); // If failure, return the fail code, but translate Cannot into SubdirCannot } cont = dir.GetNext(&subdirname); } return CanBeEmptied; } bool HasThisDirSubdirs(wxString& dirname) // Does the passed dir have child dirs? Used in DirGenericDirCtrl::ReloadTree() { DIR* dp; struct dirent* ep; dp = opendir (dirname.mb_str(wxConvUTF8)); if (dp != NULL) { while ((ep = readdir (dp)) != NULL) { wxString fname(ep->d_name, wxConvUTF8); if (fname == wxT(".") || fname == wxT("..")) continue; // Check we're not trying to count . or .. FileData fd(dirname + wxFILE_SEP_PATH + fname); // Make a filedata with the filepath in question if (fd.IsValid() && fd.IsDir()) { (void) closedir (dp); return true; } // If it's a dir, we know there's a subdir } (void) closedir (dp); } return false; } bool ReallyIsDir(const wxString& path, const wxString& item) // Is the passed, presumably corrupt, item likely to be a dir? { // This is used to (hopefully) distinguish between a corrupt, or otherwise non-'stat'able, file and dir // It works correctly at least for .gvfs/ (see http://forums.opensuse.org/showthread.php/387162-permission-denied-on-gvfs) struct dirent *next; DIR* dirp = opendir(path.mb_str(wxConvUTF8)); if (!dirp) { wxLogDebug(wxT("The passed parent dir, %s, was (also?) invalid"), path.c_str()); return false; } while(1) { errno = 0; next = readdir(dirp); if (!next) { wxString msg; switch (errno) { case EACCES: msg = wxT("of a permissions issue"); break; case ENOENT: msg = wxT("of an invalid name"); break; case 0: msg = wxT("it simply wasn't there"); break; default: msg = wxString::Format(wxT("error %i"), errno); } wxLogDebug(wxT("Couldn't find or access item %s inside %s because "), item.c_str(), path.c_str(), msg.c_str()); closedir(dirp); return false; } if (wxString(next->d_name, wxConvUTF8) != item) continue; #if defined(_DIRENT_HAVE_D_TYPE) bool ans = (next->d_type == DT_DIR); closedir(dirp); return ans; #else wxLogDebug(wxT("_DIRENT_HAVE_D_TYPE not available")); #endif } closedir(dirp); return false; } wxULongLong globalcumsize; // Threads? What are threads...? :p #include int AddToCumSize(const char *filename, const struct stat *statptr, int flags, struct FTW *unused) { if ((flags & FTW_F) == FTW_F) // If this is a regular file or similar, add its size to the total globalcumsize += statptr->st_size; return 0; } wxULongLong GetDirSizeRecursively(wxString& dirname) // Get the recursive size of the dir's contents Used by FileGenericDirCtrl::UpdateStatusbarInfo { globalcumsize = 0; int result = nftw(dirname.mb_str(wxConvUTF8), AddToCumSize, 5, FTW_PHYS | FTW_MOUNT); if (result==0) return globalcumsize; else return 0; } wxULongLong GetDirSize(wxString& dirname) // Get the, non-recursive, size of the dir's contents (or the file's size if a file is passed) Used by FileGenericDirCtrl::UpdateStatusbarInfo { DIR* dp; struct dirent* ep; wxULongLong cumsize = 0; FileData filepath(dirname); if (!filepath.IsValid()) return cumsize; // which will be 0 if (!filepath.IsDir() && !filepath.IsSymlinktargetADir(true)) return (cumsize = filepath.Size()); // If it's not a dir, return the file's size dp = opendir (dirname.mb_str(wxConvUTF8)); if (dp != NULL) { while ((ep = readdir (dp)) != NULL) { wxString fname(ep->d_name, wxConvUTF8); if (fname == wxT(".") || fname == wxT("..")) continue;// Check we're not trying to count . or .. FileData fd(dirname + wxFILE_SEP_PATH + fname); // Make a filedata with the filepath in question if (fd.IsValid()) cumsize += fd.Size(); // and add its size to cumsize } (void) closedir (dp); } return cumsize; } int RecursivelyChangeAttributes(wxString filepath, wxArrayInt& IDs, size_t newdata, size_t& successes, size_t& failures, enum AttributeChange whichattribute, int flag) // Global recursively to chmod etc a dir +/- any progeny { // If flag==0, just do this filepath. If ==1, recurse. If ==-1, we've come from UnRedo, so just do this filepath & don't set up another UnRedo const int PartialSuccess = 2; size_t oldattr = 0; FileData* stat = new FileData(filepath); if (!stat->IsValid()) { delete stat; return false; } if (flag==1 && stat->IsDir()) // If we're supposed to, & this is a dir, first recurse thru all its files & subdirs { struct dirent **eps; int count = scandir(filepath.mb_str(wxConvUTF8), &eps, one, alphasort); if (count != -1) // -1 means error for (int n=0; n < count; ++n) { wxString name(eps[n]->d_name, wxConvUTF8); if (name==wxT(".") || name==wxT("..")) continue; // Ignore dots RecursivelyChangeAttributes(filepath + wxFILE_SEP_PATH + name, IDs, newdata, successes, failures, whichattribute, flag); } } int ans = 0; // Now do the passed filepath itself, whatever type it is switch (whichattribute) { case ChangeOwner: oldattr = stat->OwnerID(); ans = stat->DoChangeOwner((uid_t)newdata); break; case ChangeGroup: oldattr = stat->GroupID(); ans = stat->DoChangeGroup((gid_t)newdata); break; case ChangePermissions: oldattr = stat->GetPermissions(); ans = stat->DoChmod((mode_t)newdata); break; } delete stat; if (ans==1) // If nothing changed because newdata==old, ans will be 2 { ++successes; // If it worked, inc the int that holds successes; if (flag != -1) // (flag==-1 signifies that this is an UnRedo already { UnRedoChangeAttributes* UnRedoptr = new UnRedoChangeAttributes(filepath, IDs, oldattr, newdata, whichattribute); UnRedoManager::AddEntry(UnRedoptr); // Store UnRedo data } } else if (!ans) ++failures; // If false, inc the int that holds failures. NB If nothing changed because newdata==old, ans will be 2 // If this is the original iteration, we need a return code to signify whether we've had total, partial or no success. If we're currently recursing, it will be ignored if (successes) { if (!failures) return true; else return PartialSuccess; } if (flag == -1) return ans==PartialSuccess; // This is a workaround for unredoing changes of group: as chmod happens at the same time, and if unchanged will return 2... return false; } bool RecursivelyGetFilepaths(wxString path, wxArrayString& array) // Global recursively to fill array with all descendants of this dir { FileData stat(path); if (stat.IsValid() && stat.IsDir()) // If we're supposed to, & this is a dir, first recurse thru all its files & subdirs { struct dirent **eps; int count = scandir(path.mb_str(wxConvUTF8), &eps, one, alphasort); if (count == -1) return false; // -1 means error wxArrayString dirs; for (int n=0; n < count; ++n) { wxString filename(eps[n]->d_name, wxConvUTF8); free (eps[n]); if (filename==wxT(".") || filename==wxT("..")) continue; // Ignore dots wxString name = path + wxFILE_SEP_PATH + filename; FileData fd(name); if (fd.IsDir()) dirs.Add(name); // If it's a dir, store it here for a while else array.Add(name); // Otherwise add it to the array. Doing it this way means all path's children keep together } free (eps); for (size_t n=0; n < dirs.GetCount(); ++n) // Now add each dir, then recurse into it { array.Add(dirs[n]); RecursivelyGetFilepaths(dirs[n], array); } } else return false; return true; } bool ContainsRelativeSymlinks(wxString filepath) // Is filepath a relative symlink, or a dir containing at least one such? { if (filepath.IsEmpty()) return false; FileData fd(filepath); if (!fd.IsValid()) return false; if (fd.IsSymlink() && fd.GetSymlinkDestination(true).GetChar(0) != wxFILE_SEP_PATH) return true; // If this *is* a relative symlink, don't think too hard if (!fd.IsDir()) return false; // OK, it's a dir. Use RecursivelyGetFilepaths() to grab all its contents, then check each one wxArrayString fpaths; if (!RecursivelyGetFilepaths(fd.GetFilepath(), fpaths)) return false; for (size_t n=0; n < fpaths.GetCount(); ++n) if (ContainsRelativeSymlinks(fpaths[n])) return true; // Did someone mention recursion? return false; } //--------------------------------------------------------------------------------------------------------------------------------------------------------------------- #include "bitmaps/include/ClosedFolder.xpm" enum { FILETYPE_FOLDER, FILETYPE_FILE }; void MyFiletypeDialog::Init(FiletypeManager* dad) { parent = dad; AddApplicBtn = (wxButton*)FindWindow(wxT("AddApplication")); AddApplicBtn->Enable(true); EditApplicBtn = (wxButton*)FindWindow(wxT("EditApplication")); EditApplicBtn->Enable(false); RemoveApplicBtn = (wxButton*)FindWindow(wxT("RemoveApplication")); RemoveApplicBtn->Enable(false); AddFolderBtn = (wxButton*)FindWindow(wxT("AddFolder")); RemoveFolderBtn = (wxButton*)FindWindow(wxT("RemoveFolder")); RemoveFolderBtn->Enable(false); OKBtn = (wxButton*)FindWindow(wxT("wxID_OK")); OKBtn->Enable(false); isdefault = (wxCheckBox*)FindWindow(wxT("AlwaysUse")); interminal = (wxCheckBox*)FindWindow(wxT("OpenInTerminal")); text = (wxTextCtrl*)FindWindow(wxT("text")); } void MyFiletypeDialog::OnButtonPressed(wxCommandEvent& event) { int id = event.GetId(); if (id == wxID_OK) EndModal(id); // Finished if (id == wxID_CANCEL) EndModal(id); // Aborted if (id == XRCID("RemoveApplication")) parent->OnDeleteApplication(); if (id == XRCID("EditApplication")) parent->OnEditApplication(); if (id == XRCID("AddApplication")) parent->OnAddApplication(); if (id == XRCID("AddFolder")) parent->OnNewFolder(); if (id == XRCID("RemoveFolder")) parent->OnRemoveFolder(); if (id == XRCID("Browse")) parent->OnBrowse(); } void MyFiletypeDialog::TerminalBtnClicked(wxCommandEvent& event) // The InTerminal checkbox was clicked in the MAIN dialog { wxString launch = text->GetValue(); // Get the launch command if (interminal->IsChecked()) // If the change was from unchecked to checked { if (!launch.Contains(wxT("$OPEN_IN_TERMINAL "))) // If command doesn't already contain it, prepend the InTerminal marker { text->Clear(); text->SetValue(wxT("$OPEN_IN_TERMINAL ") + launch); } return; } // Otherwise the change was from checked to unchecked launch.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); // Remove any InTerminal marker text->Clear(); text->SetValue(launch); // & write back the command to textctrl } void MyFiletypeDialog::OnIsDefaultBtn(wxCommandEvent& event) // The IsDefault checkbox was clicked in the MAIN dialog { if (isdefault->IsChecked()) // If the change was from unchecked to checked { struct Filetype_Struct* ftype; // We'll need ftype to use as a parameter wxString appname, launch; wxString ext = parent->filepath.AfterLast(wxFILE_SEP_PATH); // First find which ext we are dealing with ext = ext.AfterLast(wxT('.')); // use the LAST dot to get the ext (otherwise what if myprog.3.0.1.tar ?) // If no dot, try using the whole filename, in case of eg makefile having an association if (ext.IsEmpty()) return; if (parent->tree->IsSelectionApplic()) // If there's a selected applic, { appname = parent->tree->FTSelected->AppName; // use data from the selected applic where appropriate ie NOT Ext launch = parent->tree->FTSelected->Command; } else // If there isn't a selected applic, use the contents of textctrl { launch = text->GetValue(); // Get the launch command if (launch.IsEmpty()) return; appname = launch.BeforeFirst(wxT('\%')); // We presume the launch command is /path/path/filename %s appname = appname.AfterLast(wxFILE_SEP_PATH); // Now we have just the filename + terminal space appname.Trim(); // Remove the space } ftype = new Filetype_Struct; // Create ftype ftype->Ext = ext; // Use the constructed ext ftype->AppName = appname; // & the other data from whichever source ftype->Command = launch; if (parent->AddDefaultApplication(*ftype, false)) // Do it. False==confirm replacements { parent->SaveExtdata(); // Success, so need to save the amended extdata parent->LoadExtdata(); // Reload too, to make sure it happens in this instance if (parent->AddExtToApplicInGroups(*ftype)) // Try to add the ext to the ftype in GroupArray parent->SaveFiletypes(); // Save if worked } delete ftype; // We need to delete ftype, as it wasn't added to any array return; } // If we're here, the change was from checked to unchecked parent->RemoveDefaultApplicationGivenExt(true); // Use one of parent's methods to sort it out } void MyFiletypeDialog::DoUpdateUIOK(wxUpdateUIEvent &event) // This is to enable the OK button when the textctrl has text { if (text==NULL) return; bool hasdata = !text->GetValue().IsEmpty(); OKBtn->Enable(hasdata || parent->m_altered); } BEGIN_EVENT_TABLE(MyFiletypeDialog, wxDialog) EVT_BUTTON(-1, MyFiletypeDialog::OnButtonPressed) EVT_CHECKBOX(XRCID("OpenInTerminal"), MyFiletypeDialog::TerminalBtnClicked) EVT_CHECKBOX(XRCID("AlwaysUse"), MyFiletypeDialog::OnIsDefaultBtn) EVT_UPDATE_UI(XRCID("text"), MyFiletypeDialog::DoUpdateUIOK) END_EVENT_TABLE() BEGIN_EVENT_TABLE(MyApplicDialog, wxDialog) EVT_BUTTON(XRCID("Browse"), MyApplicDialog::OnBrowse) EVT_BUTTON(XRCID("NewFolder"), MyApplicDialog::OnNewFolderButton) EVT_CHECKBOX(XRCID("AlwaysUse"), MyApplicDialog::OnIsDefaultBtn) END_EVENT_TABLE() void MyApplicDialog::Init() { AddFolderBtn = (wxButton*)FindWindow(wxT("NewFolder")); browse = (wxButton*)FindWindow(wxT("Browse")); label = (wxTextCtrl*)FindWindow(wxT("Label")); filepath = (wxTextCtrl*)FindWindow(wxT("Filepath")); ext = (wxTextCtrl*)FindWindow(wxT("Ext")); command = (wxTextCtrl*)FindWindow(wxT("Command")); WorkingDir = (wxTextCtrl*)FindWindow(wxT("WorkingDir")); isdefault = (wxCheckBox*)FindWindow(wxT("AlwaysUse")); interminal = (wxCheckBox*)FindWindow(wxT("OpenInTerminal")); } void MyApplicDialog::UpdateInterminalBtn() // Called by parent when it alters textctrl, to see if checkbox should be set { bool term = command->GetValue().Contains(wxT("$OPEN_IN_TERMINAL ")); interminal->SetValue(term); } void MyApplicDialog::OnNewFolderButton(wxCommandEvent& event) { parent->OnNewFolderButton(); } void MyApplicDialog::OnBrowse(wxCommandEvent& event) { wxString Filepath = parent->Browse(); // Call FiletypeManager::Browse() to get the desired applic filepath if (Filepath.IsEmpty()) return; filepath->SetValue(Filepath); // Insert filepath into the Name textctrl if (label->GetValue().IsEmpty()) // If the label textctrl is empty, invent a name label->SetValue(Filepath.AfterLast(wxFILE_SEP_PATH)); if (command->GetValue().IsEmpty()) { Filepath += wxT(" %s"); command->SetValue(Filepath); } // If command textctrl is empty, insert Filepath with a guess at param } void MyApplicDialog::OnIsDefaultBtn(wxCommandEvent& event) { if (GetTitle().Left(4) != wxT("Edit")) return; // We only want this to happen from Edit, not Add WriteBackExtData(ftype); // The contents of the ext textctrl might well have changed, so reload ftype::Ext if (isdefault->IsChecked()) // If the change was from unchecked to checked { if (parent->AddDefaultApplication(*ftype, false)) // Add the ext(s). False==confirm replacements { parent->GetApplicExtsDefaults(*ftype, ext); // Update the Ext textctrl parent->SaveExtdata(); // Success, so need to save the amended extdata parent->LoadExtdata(); // Reload it too, to make sure it happens in this instance // The next bit is to update the main-dialog IsDefault checkbox wxString ext= parent->filepath.AfterLast(wxFILE_SEP_PATH); // Next find which ext parent's filepath has. Find the filename, ext = ext.AfterLast(wxT('.')); // Use the LAST dot to get the ext (otherwise what if myprog.3.0.1.tar ?) // If no dot, try using the whole filename, in case of eg 'makefile' or 'README' having an association parent->mydlg->isdefault->SetValue(parent->IsApplicDefaultForExt(*ftype, ext)); return; } } parent->RemoveDefaultApplication(*ftype); // Otherwise it was an UN-check parent->GetApplicExtsDefaults(*ftype, ext); // Update the Ext textctrl parent->mydlg->isdefault->SetValue(false); // Since all are undefaulted, reset the main-dialog IsDefault checkbox parent->SaveExtdata(); // Save changes: there must have been a default previously for the box 2b checked parent->LoadExtdata(); // Reload it too, to make sure it happens in this instance } void MyApplicDialog::WriteBackExtData(Filetype_Struct* ftype) // Writes the contents of the ext textctrl back to ftype { ftype->Ext.Empty(); // There may be several exts, comma separated wxStringTokenizer tkz(ext->GetValue(), wxT(",")); // First tokenise while (tkz.HasMoreTokens()) { wxString ext = tkz.GetNextToken(); ext.Strip(wxString::both); // Strip white-space if (ext.IsEmpty()) continue; // In case someone is daft enough to enter " " if (ext.GetChar(0) == wxT('.')) ext = ext.Mid(1); // In case someone enters .txt instead of txt (but allow tar.gz) ftype->Ext +=ext.Lower() + wxT(","); // Then add the ext to ftype->Ext } ftype->DeDupExt(); if (!ftype->Ext.IsEmpty() && ftype->Ext.Last() == wxT(',')) ftype->Ext.RemoveLast(); // Assuming >0 additions, get rid of that last comma } BEGIN_EVENT_TABLE(MyFiletypeTree, wxTreeCtrl) EVT_TREE_SEL_CHANGED(wxID_ANY, MyFiletypeTree::OnSelection) END_EVENT_TABLE() void MyFiletypeTree::Init(FiletypeManager* dad) { parent = dad; wxImageList *images = new wxImageList(16, 16, true); // Make an image list containing small icons images->Add(wxIcon(ClosedFolder_xpm)); images->Add(wxIcon(iconfile_xpm)); AssignImageList(images); SetIndent(TREE_INDENT); // Make the layout of the tree match the GenericDirCtrl sizes SetSpacing(TREE_SPACING); } void MyFiletypeTree::LoadTree(ArrayOfFiletypeGroupStructs& GroupArray) { // The data loaded from config by FiletypeManager is held in the array of FiletypeGroup structs GroupArray wxTreeItemId rootId = AddRoot(_("Applications")); // A tree needs a root SetItemHasChildren(rootId); for (size_t n=0; n < GroupArray.GetCount(); ++n) { struct FiletypeGroup* fgroup = GroupArray[n]; // Grab an entry from GroupArray, representing one subgroup eg "Editors" wxTreeItemId thisfolder; bool haschildren = false; // First thing to do is to create the new folder MyMimeTreeItemData* data = new MyMimeTreeItemData(fgroup->Category, NextID++, false); // Make a suitable data struct thisfolder = AppendItem(rootId, fgroup->Category, FILETYPE_FOLDER, -1, data); // Append the folder to the tree if (!thisfolder.IsOk()) continue; // Now fill this category with any loaded application names for (size_t c=0; c < fgroup->FiletypeArray.GetCount(); ++c) { Filetype_Struct* ft = fgroup->FiletypeArray[c]; MyMimeTreeItemData* entry = new MyMimeTreeItemData(ft->AppName, NextID++, true, ft); // Make a suitable data struct AppendItem(thisfolder, ft->AppName, FILETYPE_FILE, -1, entry); // Insert the application into the folder haschildren = true; } if (haschildren) SetItemHasChildren(thisfolder); // If any children were loaded, set button } Expand(rootId); } wxString MyFiletypeTree::GetSelectedFolder() // Returns either the selected subfolder, the subfolder containing the selected applic, or "" if no selection { wxTreeItemId sel = GetSelection(); if (!sel.IsOk()) return wxT(""); MyMimeTreeItemData* data = (MyMimeTreeItemData*)GetItemData(sel); if (data==NULL) return wxT(""); if (data->IsApplication) sel = GetItemParent(sel); // If the selection is an applic, replace it with its parent subfolder if (sel == GetRootItem()) return wxT(""); // Shouldn't happen, but just in case data = (MyMimeTreeItemData*)GetItemData(sel); // Need to re-get the data in case sel was just changed return data->Name; } bool MyFiletypeTree::IsSelectionApplic() // If there is a valid selection, which is an application rather than a folder, returns true { wxTreeItemId sel = GetSelection(); if (!sel.IsOk()) return false; MyMimeTreeItemData* data = (MyMimeTreeItemData*)GetItemData(sel); if (data==NULL) return false; return data->IsApplication; } void MyFiletypeTree::OnSelection(wxTreeEvent &event) { bool isapplic; wxTreeItemId sel = event.GetItem(); if (!sel.IsOk()) return; MyMimeTreeItemData* data = (MyMimeTreeItemData*)GetItemData(sel); if (data==NULL || !data->IsApplication) isapplic = false; else isapplic = true; parent->mydlg->EditApplicBtn->Enable(isapplic); // Do UI for the buttons parent->mydlg->RemoveApplicBtn->Enable(isapplic); parent->mydlg->RemoveFolderBtn->Enable(!isapplic); if (isapplic) { FTSelected = data->FT; // If an applic, store its data, parent->mydlg->interminal->SetValue(FTSelected->Command.Contains(wxT("$OPEN_IN_TERMINAL "))); // Set interminal depending on whether command contains its marker parent->mydlg->text->SetValue(FTSelected->Command); // Insert the launch command wxString ext= parent->filepath.AfterLast(wxFILE_SEP_PATH);// Next find which ext parent's filepath has. Find the filename, ext = ext.AfterLast(wxT('.')); // Use the LAST dot to get the ext (otherwise what if myprog.3.0.1.tar ?) // If no dot, try using the whole filename, in case of eg makefile having an association parent->mydlg->isdefault->SetValue(parent->IsApplicDefaultForExt(*FTSelected, ext)); // Use this to see if the IsDefault check should be set } else FTSelected = NULL; } IMPLEMENT_DYNAMIC_CLASS(MyFiletypeTree, wxTreeCtrl) //----------------------------------------------------------------------------------------------------------------------- void Filetype_Struct::DeDupExt() { wxCHECK_RET(!Ext.empty(), "Trying to dedup an empty Ext"); wxString DeDuped; wxStringTokenizer tkz(Ext, wxT(",;")); wxString tok = tkz.GetNextToken().Lower(); while (1) { if (tok.empty()) { Ext = DeDuped; return; } if (!DeDuped.Contains(tok)) // Check this ext is already there (presumably for historical 'txt'/'TXT' reasons) { if (!DeDuped.empty()) DeDuped << ','; DeDuped << tok; } tok = tkz.GetNextToken().Lower(); } } void FiletypeManager::Init(wxString& pathname) { filepath = pathname; LoadExtdata(); // Load the ext/command data stat = new FileData(filepath); // Do statty-type things on filepath m_altered=false; force_kdesu=false; } FiletypeManager::~FiletypeManager() { for (int n = (int)GroupArray.GetCount(); n > 0; --n) { FiletypeGroup* item = GroupArray.Item(n-1); delete item; GroupArray.RemoveAt(n-1); } for (int n = (int)Extdata.GetCount(); n > 0; --n) { FiletypeExts* item = Extdata.Item(n-1); delete item; Extdata.RemoveAt(n-1); } if (stat != NULL) delete stat; } void FiletypeManager::LoadFiletypes() // Loads Filetype dialog data from config { wxString Path(wxT("/FileAssociations")); // The Top-level config path config = wxConfigBase::Get(); // Find the config data if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } GroupArray.Clear(); // Make sure the array is empty config->SetPath(Path); // This is where the categories are stored wxString entry; long cookie; bool bCont = config->GetFirstGroup(entry, cookie); // Load first subgroup while (bCont) { wxString oldpath = config->GetPath(); config->SetPath(Path + wxCONFIG_PATH_SEPARATOR + entry); // Set the subfolder path struct FiletypeGroup* fgroup = new struct FiletypeGroup; LoadSubgroup(fgroup); // Use submethod to load subgroup contents to FiletypeArray fgroup->Category = entry; // Store the subgroup name in Category GroupArray.Add(fgroup); // & add the group struct to main array config->SetPath(oldpath); bCont = config->GetNextGroup(entry, cookie); // Look for another subgroup } config->SetPath(wxT("/")); } void FiletypeManager::LoadSubgroup(struct FiletypeGroup* fgroup) { wxString Path = config->GetPath(); // We'll need the subgroup path wxString appname; long cookie; // Each filetype is stored in a sub-subgroup with the application name as its label eg 'kedit' bool bCont=config->GetFirstGroup(appname, cookie); // Load first application while (bCont) { wxString subpath = Path + wxCONFIG_PATH_SEPARATOR + appname + wxCONFIG_PATH_SEPARATOR; struct Filetype_Struct* ftype = new Filetype_Struct; // Make a new Filetype_Struct ftype->AppName = appname; config->Read(subpath + wxT("Ext"), &ftype->Ext); ftype->DeDupExt(); config->Read(subpath + wxT("Filepath"), &ftype->Filepath); config->Read(subpath + wxT("Command"), &ftype->Command); config->Read(subpath + wxT("WorkingDir"), &ftype->WorkingDir); fgroup->FiletypeArray.Add(ftype); bCont = config->GetNextGroup(appname, cookie); } } void FiletypeManager::SaveFiletypes(wxConfigBase* conf /*= NULL*/) { if (conf != NULL) config = conf; // In case we're exporting the data in ConfigureMisc::OnExportBtn else config = wxConfigBase::Get(); // Otherwise find the config data (in case it's changed location recently) if (config == NULL) return; // Delete current info (otherwise deleted data would remain, & be reloaded in future). // I'm doing this at subgroup level, to prevent [FileAssociations] moving around the 'ini' file all the time config->SetPath(wxT("/FileAssociations")); wxString grp; bool bCont; do { long cookie; if ((bCont = config->GetFirstGroup(grp, cookie))) config->DeleteGroup(grp); } while (bCont); for (size_t n=0; n < GroupArray.GetCount(); n++) // Go thru the array, creating each subgroup & saving its data SaveSubgroup(GroupArray[n]); config->Flush(); config->SetPath(wxT("/")); } void FiletypeManager::SaveSubgroup(struct FiletypeGroup* fgroup) { wxString Path = wxT("/FileAssociations/") + fgroup->Category; // Make the path to this subgroup config->SetPath(Path); if (!fgroup->FiletypeArray.GetCount()) config->Write(Path + wxCONFIG_PATH_SEPARATOR + wxT("dummy"), wxT("")); // Create it & insert a dummy entry, otherwise an empty subgroup wouldn't be created for (size_t n=0; n < fgroup->FiletypeArray.GetCount(); n++) // For every applic { wxString subpath = Path + wxCONFIG_PATH_SEPARATOR + fgroup->FiletypeArray[n]->AppName + wxCONFIG_PATH_SEPARATOR; // AppName becomes the subgroup subpath config->Write(subpath + wxT("Ext"), fgroup->FiletypeArray[n]->Ext); // Write the Extension config->Write(subpath + wxT("Filepath"), fgroup->FiletypeArray[n]->Filepath); // & the Filepath config->Write(subpath + wxT("Command"), fgroup->FiletypeArray[n]->Command); // & the Command config->Write(subpath + wxT("WorkingDir"), fgroup->FiletypeArray[n]->WorkingDir); // & any working dir } config->SetPath(wxT("/")); } bool FiletypeManager::OnNewFolder() { wxString newlabel; wxTextEntryDialog getname(mydlg, _("What Label would you like for the new Folder?")); do // Get the name in a loop, in case of duplication { if (getname.ShowModal() != wxID_OK) return false; newlabel = getname.GetValue(); // Get the desired label from the dlg if (newlabel.IsEmpty()) return false; bool flag = false; for (size_t n=0; n < GroupArray.GetCount(); n++) // Ensure it's not a duplicate if (GroupArray[n]->Category == newlabel) { wxString msg; msg.Printf(_("Sorry, there is already a folder called %s\n Try again?"), newlabel.c_str()); wxMessageDialog dialog(mydlg, msg, _("Are you sure?"), wxYES_NO); if (dialog.ShowModal() != wxID_YES) return false; else { flag = true; continue; } } if (flag) continue; break; // If we're here, no match so all's well } while (1); struct FiletypeGroup* fgroup = new struct FiletypeGroup; // Make a new FiletypeGroup fgroup->Category = newlabel; // Store the subgroup name in Category GroupArray.Add(fgroup); // & add the group struct to main array if (!from_config) SaveFiletypes(); // Now Save the database if appropriate m_altered=true; // Either way, set m_altered so that OK button will be enabled // Finally add new folder to the tree MyMimeTreeItemData* data = new MyMimeTreeItemData(fgroup->Category, NextID++, false); tree->AppendItem(tree->GetRootItem(), fgroup->Category, FILETYPE_FOLDER, -1, data); // Append the folder to the tree return true; } void FiletypeManager::OnRemoveFolder() { bool deleted=false; wxTreeItemId id = tree->GetSelection(); if (!id.IsOk()) return; MyMimeTreeItemData* data = (MyMimeTreeItemData*)tree->GetItemData(id); if (data->IsApplication) return; // Shouldn't be possible, as the button would be disabled if (id == tree->GetRootItem()) // Ensure we're not trying to delete the lot { wxString msg(_("Sorry, you're not allowed to delete the root folder")); wxMessageDialog dialog(mydlg, msg, _("Sigh!"), wxICON_EXCLAMATION); dialog.ShowModal(); return; } wxString msg; if (tree->ItemHasChildren(id)) // Check we really mean it msg.Printf(_("Delete folder %s and all its contents?"), data->Name.c_str()); else msg.Printf(_("Delete folder %s?"), data->Name.c_str()); wxMessageDialog dialog(mydlg, msg, _("Are you sure?"), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return; for (size_t n=0; n < GroupArray.GetCount(); n++) // Find the subgroup to kill if (GroupArray[n]->Category == data->Name) // Found it. Delete the folder & contents { struct FiletypeGroup* temp = GroupArray[n]; // (Store group while it's removed) GroupArray.RemoveAt(n); // Remove it temp->Clear(); delete temp; // Clear() should deal with contents, then delete releases the memory deleted = true; } if (!deleted) { wxLogError(_("Sorry, I couldn't find that folder!?")); return; } tree->Delete(id); // Remove from the tree if (!from_config) SaveFiletypes(); // Now Save the database if appropriate m_altered=true; // Either way, set m_altered so that OK button will be enabled } void FiletypeManager::OnAddApplication() { wxString Label, Filepath, WorkingDir; bool flag = false; struct FiletypeGroup* fgroup; MyApplicDialog dlg(this); wxXmlResource::Get()->LoadDialog(&dlg, mydlg, wxT("AddApplicationDlg")); dlg.Init(); combo = (wxComboBox*)dlg.FindWindow(wxT("Combo")); wxString selected = tree->GetSelectedFolder(); // This is either the selected subfolder or the one containing the selected applic, or "" int index = -1; for (size_t n=0; n < GroupArray.GetCount(); n++) // Load the subgroup names into combobox { combo->Append(GroupArray[n]->Category); if (GroupArray[n]->Category == selected) index = n; // If this subfolder is the one to be selected, store its index } if (index != -1) { combo->SetSelection(index); // If there was a valid folder selection, use it combo->SetValue(combo->GetString(index)); // Need actually to set the textbox in >2.7.0.1 } do // Get the name in a loop, in case of duplication { dlg.label->SetFocus(); // We want to start with the Name textctrl if (dlg.ShowModal() != wxID_OK) return; Label = dlg.label->GetValue(); // Get the applic name Filepath = dlg.filepath->GetValue(); // Get the applic if (Filepath.IsEmpty()) return; // If it doesn't exist, abort if (Label.IsEmpty()) // If a specific label wasn't entered, use the filename from filepath Label = Filepath.AfterLast(wxFILE_SEP_PATH); // (Returns either the filename or the whole string if there wasn't a wxFILE_SEP_PATH) WorkingDir = dlg.WorkingDir->GetValue(); selected = combo->GetStringSelection(); // Get the folder selection if (selected.IsEmpty()) return; // If there isn't one, abort. This is only possible if the user just added a null entry! index = -1; // It is possible that the user added a new combobox entry during the dialog, so search by name, not by index for (size_t n=0; n < GroupArray.GetCount(); n++) if (GroupArray[n]->Category == selected) index = n; // If this subfolder is the one to be selected, store its index if (index == -1) return; // Theoretically impossible fgroup = GroupArray[index]; wxString commandstart = Filepath.BeforeFirst(wxT(' ')); // Get the real command, without parameters etc if (!Configure::TestExistence(commandstart, true)) // Check there is such a program { wxString msg; if (wxIsAbsolutePath(commandstart)) msg.Printf(_("I can't find an executable program \"%s\".\nContinue anyway?"), commandstart.c_str()); else msg.Printf(_("I can't find an executable program \"%s\" in your PATH.\nContinue anyway?"), commandstart.c_str()); wxMessageDialog dialog(mydlg, msg, wxT(" "), wxYES_NO); if (dialog.ShowModal() != wxID_YES) return; } for (size_t n=0; n < fgroup->FiletypeArray.GetCount(); ++n) // Check for duplication if (fgroup->FiletypeArray[n]->AppName == Label) { wxString msg; msg.Printf(_("Sorry, there is already an application called %s\n Try again?"), Label.c_str()); wxMessageDialog dialog(mydlg, msg, wxT(" "), wxYES_NO); if (dialog.ShowModal() != wxID_YES) return; else { dlg.label->SetValue(Label); flag = true; continue; } } if (flag) continue; break; // If we're here, no match so all's well } while (1); struct Filetype_Struct* ftype = new Filetype_Struct; // Make a new Filetype_Struct ftype->AppName = Label; // Store the applic data ftype->Filepath = Filepath; ftype->Command = dlg.command->GetValue(); ftype->WorkingDir = dlg.WorkingDir->GetValue(); dlg.WriteBackExtData(ftype); // Do the ext in a sub-method if (ftype->Command.IsEmpty()) // If no Command was entered, fake it ftype->Command = ftype->Filepath + wxT(" %s"); if (dlg.interminal->IsChecked()) // If we want this applic to launch in a terminal if (!ftype->Command.Contains(wxT("$OPEN_IN_TERMINAL "))) // & if this hasn't been sorted ftype->Command = wxT("$OPEN_IN_TERMINAL ") + ftype->Command;// prepend the command with marker for (by default) xterm -e if (dlg.isdefault->IsChecked()) // If making this default for ext, { bool IsDefault=true; wxString Ext = ftype->Ext; // Check an ext was entered! if (Ext.IsEmpty()) // If not, see if filepath has one { wxString file_ext, title; if ((filepath.AfterLast(wxFILE_SEP_PATH)).Find(wxT('.')) != -1) // If there's at least 1 dot in the filename { file_ext = (filepath.AfterLast(wxFILE_SEP_PATH)).AfterLast(wxT('.')); // use the LAST of these to get the suggestion for ext title = _("Please confirm"); } else title = _("You didn't enter an Extension!"); wxString msg(_("For which extension(s) do you wish this application to be the default?")); Ext = wxGetTextFromUser(msg, title, file_ext); if (Ext.IsEmpty()) IsDefault = false; // If STILL no ext, flag to ignore IsDefault checkbox else ftype->Ext = Ext.Lower(); // Otherwise save in ftype } if (IsDefault) // Check bool in case we reset it above AddDefaultApplication(*ftype, false); // Make default, overwriting any current version. False==confirm replacements } if (!ftype->Ext.IsEmpty()) AddApplicationToExtdata(*ftype); // If there is an ext, add the applic to the submenu-type structarray // Right, that's finished the ext-based bits. Now back to the group-dialog fgroup->FiletypeArray.Add(ftype); // Add the ftype entry in the designated group if (!from_config) { SaveFiletypes(); SaveExtdata(); } // Now Save the database if appropriate m_altered=true; // Either way, set m_altered so that OK button will be enabled mydlg->text->Clear(); mydlg->text->SetValue(ftype->Command); // Put the new launch command into the MAIN textctrl // Finally add new applic to the tree. We need to find the folder first wxTreeItemIdValue cookie; wxTreeItemId folderID = tree->GetFirstChild(tree->GetRootItem(), cookie); do { if (!folderID.IsOk()) return; // Folder not found. This shouldn't happen! if (tree->GetItemText(folderID) == fgroup->Category) break; // Folder matches label so break folderID = tree->GetNextChild(tree->GetRootItem(), cookie); } while (1); MyMimeTreeItemData* entry = new MyMimeTreeItemData(Label, NextID++, true, ftype); // Make a suitable data struct tree->AppendItem(folderID, Label, FILETYPE_FILE, -1, entry); // Insert the application into the folder tree->SetItemHasChildren(folderID); } bool FiletypeManager::AddDefaultApplication(struct Filetype_Struct& ftype, bool noconfirm/*=true*/) // Make applic default for a particular ext (or ext.s) { wxArrayString choices; wxArrayInt selections; int NoOfExts; bool flag; wxStringTokenizer tkz(ftype.Ext, wxT(",")); // First tokenise ftype.Ext, in case there's more than one extension NoOfExts = tkz.CountTokens(); if (!NoOfExts) return false; if (NoOfExts > 1) // If there are >1 ext.s, allow the user to chose which he wants applic to be default for { while (tkz.HasMoreTokens()) // First put the ext.s in a stringarray. It's easier choices.Add(tkz.GetNextToken().Strip(wxString::both)); // Strip them of their white-spaces // Now do a dialog to see if we want default for all the exts or only some wxDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, mydlg, wxT("MultipleDefaultDlg")); // Load the appropriate dialog wxString msg; msg.Printf(_("For which Extensions do you want %s to be default"), ftype.AppName.c_str()); // Personalise the message ((wxStaticText*)dlg.FindWindow(wxT("message")))->SetLabel(msg); wxListBox* list = (wxListBox*)dlg.FindWindow(wxT("Listbox")); for (size_t n=0; n < choices.GetCount(); ++n) // Enter the ext.s into the listbox list->Append(choices[n]); dlg.GetSizer()->SetSizeHints(&dlg); if (dlg.ShowModal() != wxID_OK) return false; // Do the dialog int rad = ((wxRadioBox*)dlg.FindWindow(wxT("radiobox")))->GetSelection(); switch(rad) { case 2: list->GetSelections(selections); break; // If various selections, get into the int-array case 1: selections.Add(0); break; // If just the first, put a 0 into the int-array case 0: // Otherwise select them all, by putting all their indices into array default: for (int n=0; n < (int)choices.GetCount(); ++n) selections.Add(n); } } else // If there's only 1 ext, add it to arrays { choices.Add(tkz.GetNextToken().Strip(wxString::both)); selections.Add(0); } for (size_t sel=0; sel < selections.GetCount(); ++sel) // For every ext that found its way into the int-array { wxString Ext = choices[ selections[sel] ].Lower(); // Get the string from string-array flag=false; for (size_t n=0; n < Extdata.GetCount(); ++n) // Go thru Extdata array, trying to match 1 of its known ext.s to the given one { if (Extdata[n]->Ext.Lower() == Ext) // Found it, so see if we're really changing the default applic, or just editing the old one { wxString ftypecommand = ftype.Command; // Comparison is much easier if we don't have to worry about InTerminal prefixes in either comparator if (ftypecommand.Contains(wxT("$OPEN_IN_TERMINAL "))) ftypecommand.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); wxString defaultcommand = Extdata[n]->Default.Command; if (defaultcommand.Contains(wxT("$OPEN_IN_TERMINAL "))) defaultcommand.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); if (!defaultcommand.IsEmpty() && defaultcommand != ftypecommand) // See if the current DefaultCommand is the same as the new one. If so, nothing to do { wxString msg; msg.Printf(_("Replace %s\nwith %s\nas the default command for files of type %s?"), Extdata[n]->Default.Label.c_str(), ftype.AppName.c_str(), Ext.c_str()); // If different command, check it was intended int result(0); if (!noconfirm) { MyButtonDialog ApplyToAllDlg; wxLogNull nocantfindmessagesthanks; bool ATAdlgFound = wxXmlResource::Get()->LoadDialog(&ApplyToAllDlg, mydlg, wxT("ApplyToAllDlg")); if (ATAdlgFound) { ((wxStaticText*)ApplyToAllDlg.FindWindow(wxT("m_MessageTxt")))->SetLabel(msg); ApplyToAllDlg.Fit(); result = ApplyToAllDlg.ShowModal(); if (((wxCheckBox*)ApplyToAllDlg.FindWindow(wxT("m_ApplyToAllCheck")))->IsChecked()) // If the user doesn't want to be asked multiple times... { if (result == wxID_YES) noconfirm = true; // this will accept all else { sel=selections.GetCount(); flag=true; break; } // If this one wasn't wanted, apply-to-all means 'no to all the rest' } } else // Old xrc file, so use the original way { wxMessageDialog dialog(mydlg, msg, _("Are you sure?"), wxYES_NO | wxICON_QUESTION); result = dialog.ShowModal(); } } if (noconfirm || (result == wxID_YES)) { Extdata[n]->Default.Label = ftype.AppName; // If intended, substitute the new command Extdata[n]->Default.Command = ftype.Command; Extdata[n]->Default.WorkingDir = ftype.WorkingDir; } } else { Extdata[n]->Default.Command = ftype.Command; // If there wasn't a default command before, there is now! Extdata[n]->Default.WorkingDir = ftype.WorkingDir; Extdata[n]->Default.Label = ftype.AppName; } flag=true; break; // Flag we've done it } } if (flag) continue; // If we're still here, we didn't find a pre-existing ext, so do an Add struct FiletypeExts *extstruct = new struct FiletypeExts; // Make a new struct for the ext extstruct->Ext = Ext; // Store the data in it extstruct->Default.Label = ftype.AppName; extstruct->Default.Command = ftype.Command; extstruct->Default.WorkingDir = ftype.WorkingDir; struct Applicstruct* app = new struct Applicstruct; // Make a new struct for the applic bits app->Label = ftype.AppName; // Store the label bit app->Command = ftype.Command; // & Command app->WorkingDir = ftype.WorkingDir; // & WorkingDir extstruct->Applics.Add(app); // & add to extstruct Extdata.Add(extstruct); // Add struct to main structarray } return true; } void FiletypeManager::RemoveDefaultApplication(struct Filetype_Struct& ftype) // Kill the default application for a particular extension (or extensions) { wxStringTokenizer tkz(ftype.Ext, wxT(",")); // First tokenise ftype.Ext, in case there's more than one extension while (tkz.HasMoreTokens()) // Do every ext in a loop { wxString Ext = tkz.GetNextToken().Strip(wxString::both); // Get an ext, removing surrounding white space for (size_t n=0; n < Extdata.GetCount(); ++n) // Go thru Extdata array, trying to match ext if (Extdata[n]->Ext.Lower() == Ext.Lower()) { Extdata[n]->Default.Clear(); break; } // Clear default data } } void FiletypeManager::AddApplicationToExtdata(struct Filetype_Struct& ftype) // Add submenu application for particular extension(s), adding ext if needed { bool flag; wxStringTokenizer tkz(ftype.Ext, wxT(",")); // First tokenise ftype.Ext, in case there's more than one extension while (tkz.HasMoreTokens()) // Do every ext in a loop { wxString Ext = tkz.GetNextToken().Strip(wxString::both); // Get an ext, removing surrounding white space flag=false; for (size_t n=0; n < Extdata.GetCount(); ++n) // Go thru Extdata array, trying to match 1 of its known ext.s to the given one { bool found = false; if (Extdata[n]->Ext.Lower() == Ext.Lower()) // Found ext { for (size_t a=0; a < Extdata[n]->Applics.GetCount(); ++a)// Now look thru its applics if (Extdata[n]->Applics[a]->Label == ftype.AppName) // If labels match, don't add. Even if the commands differ, we list by label { found = true; break; } if (!found) // If the applic isn't already there, add it { struct Applicstruct* app = new struct Applicstruct; // Make a new struct for the applic bits app->Label = ftype.AppName; // Store the label bit app->Command = ftype.Command; // & Command app->WorkingDir = ftype.WorkingDir; // & WorkingDir Extdata[n]->Applics.Add(app); // & add to extstruct } flag=true; break; // Flag we've done it } } if (flag) continue; // If we're here, the ext wasn't in Extdata, so add it struct FiletypeExts *extstruct = new struct FiletypeExts; // Make a new struct for the ext extstruct->Ext = Ext.Lower(); // Store the data in it struct Applicstruct* app = new struct Applicstruct; // Make a new struct for the applic bits app->Label = ftype.AppName; // Store the label bit app->Command = ftype.Command; // & Command app->WorkingDir = ftype.WorkingDir; // & WorkingDir extstruct->Applics.Add(app); // & add to extstruct Extdata.Add(extstruct); // Add extstruct to main structarray } } void FiletypeManager::RemoveApplicationFromExtdata(struct Filetype_Struct& ftype) // Remove application described by ftype from the Extdata structarray { wxStringTokenizer tkz(ftype.Ext, wxT(",")); // First tokenise ftype.Ext, in case there's more than one extension while (tkz.HasMoreTokens()) // Do every ext in a loop { wxString Ext = tkz.GetNextToken().Strip(wxString::both); // Get an ext, removing surrounding white space for (size_t n=0; n < Extdata.GetCount(); ++n) // Go thru Extdata array, trying to match ext if (Extdata[n]->Ext.Lower() == Ext.Lower()) // Found ext { for (size_t a=0; a < Extdata[n]->Applics.GetCount(); ++a)// Now look thru its applics if (Extdata[n]->Applics[a]->Label == ftype.AppName) // If labels match, delete. Even if the commands differ, we list by label { struct Applicstruct* temp = Extdata[n]->Applics[a]; // Store applic while it's removed Extdata[n]->Applics.RemoveAt(a); // Remove it from array delete temp; // & delete it } break; // If we're here, no such applic in the ext. Break: there won't be another match for this ext } } } void FiletypeManager::OnNewFolderButton() // This is called (indirectly) when the "New Folder" button is pressed in the Add Application method { wxString newgroup; int index; if (!OnNewFolder()) return; // Use pre-existing method to get the new group for (size_t n=0; n < GroupArray.GetCount(); n++) // Go thru the subgroups, comparing each with the combobox contents { if (combo->FindString(GroupArray[n]->Category) == -1) // When we find the new entry, save its name & append it { newgroup = GroupArray[n]->Category; combo->Append(newgroup); } } index = combo->FindString(newgroup); if (index != -1) combo->SetSelection(index); // If we found a new folder, select it. It should be the last item } void FiletypeManager::OnDeleteApplication() { int index = -1; wxTreeItemId id = tree->GetSelection(); if (!id.IsOk()) return; MyMimeTreeItemData* data = (MyMimeTreeItemData*)tree->GetItemData(id); if (!data->IsApplication) return; // Shouldn't be possible, as the button would be disabled if (id == tree->GetRootItem()) return; // Similarly wxTreeItemId parent = tree->GetItemParent(id); // This should be the group if (!parent.IsOk()) return; for (size_t n=0; n < GroupArray.GetCount(); n++) // Find the containing subgroup if (GroupArray[n]->Category == tree->GetItemText(parent)) { index = n; break; } // Found it if (index == -1) { wxLogError(_("Sorry, I couldn't find the application!?")); return; } // Just in case wxString msg; msg.Printf(_("Delete %s?"), tree->GetItemText(id).c_str()); wxMessageDialog dialog(mydlg, msg, _("Are you sure?"), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return; struct FiletypeGroup* fgroup = GroupArray[index]; // So now we have the group for (size_t n=0; n < fgroup->FiletypeArray.GetCount(); n++) // Go thru every applic in it if (fgroup->FiletypeArray[n]->AppName == tree->GetItemText(id)) // This is the one { RemoveDefaultApplication(*fgroup->FiletypeArray[n]); // Remove any defaults RemoveApplicationFromExtdata(*fgroup->FiletypeArray[n]); // Remove it from Extdata struct Filetype_Struct* temp = fgroup->FiletypeArray[n];// (Store applic while it's removed) fgroup->FiletypeArray.RemoveAt(n); // Remove it from fgroup delete temp; break; } mydlg->text->Clear(); // Clear the textctrl tree->Delete(id); // Remove from the tree wxTreeItemIdValue cookie; wxTreeItemId child = tree->GetFirstChild(parent, cookie); // If that was the folder's sole applic, remove the HasChildren button if (!child.IsOk()) tree->SetItemHasChildren(parent, false); if (!from_config) { SaveFiletypes(); SaveExtdata(); } // Now Save the database if appropriate m_altered=true; // Either way, set m_altered so that OK button will be enabled } void FiletypeManager::OnEditApplication() { struct FiletypeGroup* fgroup, *newfgroup; struct Filetype_Struct* ftype = NULL; int index = -1, OriginalFtypeIndex = -1; wxString Label, Filepath, WorkingDir, selected; // First recycle some of OnDeleteApplication() to work out which applic we're editing wxTreeItemId id = tree->GetSelection(); if (!id.IsOk()) return; MyMimeTreeItemData* data = (MyMimeTreeItemData*)tree->GetItemData(id); if (!data->IsApplication) return; // Shouldn't be possible, as the button would be disabled if (id == tree->GetRootItem()) return; // Similarly wxTreeItemId parent = tree->GetItemParent(id); // This should be the group if (!parent.IsOk()) return; for (size_t n=0; n < GroupArray.GetCount(); ++n) // Find the containing subgroup if (GroupArray[n]->Category == tree->GetItemText(parent)) { index = n; break; } // Found it if (index == -1) { wxLogError(_("Sorry, I couldn't find the application!?")); return; } fgroup = GroupArray[index]; // So now we have the group for (size_t n=0; n < fgroup->FiletypeArray.GetCount(); ++n) // Go thru every applic in it if (fgroup->FiletypeArray[n]->AppName == tree->GetItemText(id)) // This is the one { ftype = fgroup->FiletypeArray[n]; // So store it OriginalFtypeIndex = n; break; // & its index } // Now recycle most of OnAddApplication(), first filling the dialog with current data MyApplicDialog dlg(this); wxXmlResource::Get()->LoadDialog(&dlg, mydlg, wxT("AddApplicationDlg")); // Load the inappropriate dialog dlg.SetTitle(_("Edit the Application data")); dlg.Init(); combo = (wxComboBox*)dlg.FindWindow(wxT("Combo")); for (size_t n=0; n < GroupArray.GetCount(); ++n) // Load the subgroup names into combobox combo->Append(GroupArray[n]->Category); combo->SetSelection(index); // Load old data into the textctrls dlg.ftype = ftype; // Store ftype here too, for ease of use dlg.label->SetValue(ftype->AppName); dlg.filepath->SetValue(ftype->Filepath); dlg.ext->SetValue(ftype->Ext.Lower()); dlg.command->SetValue(ftype->Command); dlg.WorkingDir->SetValue(ftype->WorkingDir); dlg.UpdateInterminalBtn(); // See if the InTerminal checkbox should be set if (!ftype->Ext.IsEmpty()) // If there's an Ext, set the Default Applic checkbox if applic's the default dlg.isdefault->SetValue(GetApplicExtsDefaults(*ftype, dlg.ext)); // while at the same time filling the Ext textctrl, defaults in bold if (ftype->Command.Contains(wxT("$OPEN_IN_TERMINAL "))) // Amputate any InTerminal marker: it looks ugly when displayed. We add it back later { ftype->Command.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); dlg.command->SetValue(ftype->Command); // If so, rewrite the textctrl. The original version had to be loaded earlier, otherwise UpdateInterminalBtn() would have failed } do // Get the name in a loop, in case of duplication { dlg.label->SetFocus(); // We want to start with the Name textctrl if (dlg.ShowModal() != wxID_OK) return; Filepath = dlg.filepath->GetValue(); // Get the applic if (Filepath.IsEmpty()) return; // If it doesn't exist, abort Label = dlg.label->GetValue(); // See if Label still exists. If it does, accept whatever's there: it may be intentionally different if (Label.IsEmpty()) // If it's empty, invent it as usual Label = Filepath.AfterLast(wxFILE_SEP_PATH); WorkingDir = dlg.WorkingDir->GetValue(); selected = combo->GetStringSelection(); // Get the folder selection if (selected.IsEmpty()) return; // If there isn't one, abort. This is only possible if the user just added a null entry! index = -1; // It is possible that the user added a new combobox entry during the dialog, so search by name, not by index for (size_t n=0; n < GroupArray.GetCount(); ++n) if (GroupArray[n]->Category == selected) index = n; // If this subfolder is the one to be selected, store its index if (index == -1) return; // Theoretically impossible newfgroup = GroupArray[index]; bool flag = false; if (newfgroup != fgroup || Label != ftype->AppName) // ie don't complain about dup name if it's the applic itself! for (size_t n=0; n < newfgroup->FiletypeArray.GetCount(); ++n) // Otherwise check that the amended version doesn't clash with a pre-existing one if (newfgroup->FiletypeArray[n]->AppName == Label) { wxString msg; msg.Printf(_("Sorry, there is already an application called %s\n Try again?"), Label.c_str()); wxMessageDialog dialog(mydlg, msg, wxT(" "), wxYES_NO); if (dialog.ShowModal() != wxID_YES) return; else { dlg.label->SetValue(Label); flag = true; continue; } } if (flag) continue; break; // If we're here, no match so all's well } while (1); RemoveApplicationFromExtdata(*ftype); // Before any updating is done, remove the applic from extdata. We'll add it back when it's been amended struct Filetype_Struct oldftype = *ftype; // Save orig data, for use in updating default-applics ftype->AppName = Label; // Store the amended data ftype->Filepath = Filepath; ftype->Command = dlg.command->GetValue(); ftype->WorkingDir = dlg.WorkingDir->GetValue(); dlg.WriteBackExtData(ftype); // Do the ext in a sub-method if (ftype->Command.IsEmpty()) // If no Command was entered, fake it ftype->Command = ftype->Filepath + wxT(" %s"); if (dlg.interminal->IsChecked()) // If we want this applic to launch in a terminal { if (!ftype->Command.Contains(wxT("$OPEN_IN_TERMINAL "))) // & if this hasn't been sorted ftype->Command = wxT("$OPEN_IN_TERMINAL ") + ftype->Command; // prepend the command with marker for (by default) xterm -e } else ftype->Command.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); // Remove any InTerminal marker mydlg->text->Clear(); mydlg->text->SetValue(ftype->Command); // Put the (new?) launch command into the MAIN textctrl AddApplicationToExtdata(*ftype); // Now we've updated ftype, it's safe to return the applic to extdata UpdateDefaultApplics(oldftype, *ftype); // Make sure any label/command edits are copied into default data too if (newfgroup != fgroup) // If there hasn't been a change of group, that's all we need to do. But if there has been: { newfgroup->FiletypeArray.Add(fgroup->FiletypeArray[OriginalFtypeIndex]); // Add the ftype entry its new group (doing it this way should avoid needing to delete) fgroup->FiletypeArray.RemoveAt(OriginalFtypeIndex); // & remove it from the original one tree->Delete(id); // Remove from the tree wxTreeItemIdValue cookie; wxTreeItemId child = tree->GetFirstChild(parent, cookie); // If that was the folder's sole applic, remove the HasChildren button if (!child.IsOk()) tree->SetItemHasChildren(parent, false); // Finally add applic to its new folder. We need to find the folder first cookie=0; wxTreeItemId folderID = tree->GetFirstChild(tree->GetRootItem(), cookie); do { if (!folderID.IsOk()) return; // Folder not found. This shouldn't happen! if (tree->GetItemText(folderID) == newfgroup->Category) break; // Folder matches label so break folderID = tree->GetNextChild(tree->GetRootItem(), cookie); } while (1); MyMimeTreeItemData* entry = new MyMimeTreeItemData(Label, NextID++, true, ftype); // Make a new data struct. Easier than amending the previous one tree->AppendItem(folderID, Label, FILETYPE_FILE, -1, entry); // Insert the application into the folder tree->SetItemHasChildren(folderID); } if (!from_config) { SaveFiletypes(); SaveExtdata(); } // Now Save the database if appropriate m_altered=true; // Either way, set m_altered so that OK button will be enabled } void FiletypeManager::OnBrowse() { wxString filepath = Browse(); // Call Browse() to get the desired applic filepath if (filepath.IsEmpty()) return; mydlg->text->SetValue(filepath); // Insert it into the textctl } wxString FiletypeManager::Browse() { wxString message(_("Choose a file")); wxFileDialog fdlg(mydlg,message, wxGetApp().GetHOME(), wxT(""), wxT("*"), wxFD_OPEN); if (fdlg.ShowModal() != wxID_OK) return wxT(""); return fdlg.GetPath(); } void FiletypeManager::LoadExtdata() // Load the file containing preferred Ext:Applic data { config = wxConfigBase::Get(); if (config==NULL) return; Extdata.Clear(); // In case this is a reload (after a save), need to clear the stucts first wxString Rootname(wxT("LaunchExt/")); size_t count = (size_t)config->Read(Rootname + wxT("count"), 0l); for (size_t n=0; n < count; ++n) { wxString grp = CreateSubgroupName(n, count); // Create a subgroup name: "a", "b" etc struct FiletypeExts* extstruct = new struct FiletypeExts; // Make a new struct for storage extstruct->Ext = config->Read(Rootname+grp+wxT("/Ext")); // Load the ext we're dealing with extstruct->Ext.MakeLower(); extstruct->Default.Label = config->Read(Rootname+grp+wxT("/DefaultLabel"), wxT("")); extstruct->Default.Command = config->Read(Rootname+grp+wxT("/DefaultCommand"), wxT("")); extstruct->Default.WorkingDir = config->Read(Rootname+grp+wxT("/DefaultWorkingDir"), wxT("")); size_t appcount = (size_t)config->Read(Rootname+grp+ wxT("/appcount"), 0l); for (size_t c=0; c < appcount; ++c) // Now go thru the Applic array, making a subgroup for each Label/Command pair { wxString subgrp = wxT("/") + CreateSubgroupName(c, appcount); struct Applicstruct* app = new struct Applicstruct; app->Label = config->Read(Rootname+grp+subgrp+wxT("/Label"), wxT("")); app->Command = config->Read(Rootname+grp+subgrp+wxT("/Command"), wxT("")); app->WorkingDir = config->Read(Rootname+grp+subgrp+wxT("/WorkingDir"), wxT("")); extstruct->Applics.Add(app); // Add to extstruct } Extdata.Add(extstruct); // Finished this ext. Add struct to main structarray } ExtdataLoaded = true; } void FiletypeManager::SaveExtdata(wxConfigBase* conf /*= NULL*/) // Save the file containing preferred Ext:Applic data { if (conf != NULL) config = conf; // In case we're exporting the data in ConfigureMisc::OnExportBtn else config = wxConfigBase::Get(); // Otherwise find the config data (in case it's changed location recently) if (config==NULL) return; config->DeleteGroup(wxT("LaunchExt")); // Delete previous info wxString Rootname(wxT("LaunchExt/")); size_t count = Extdata.GetCount(); config->Write(wxT("LaunchExt/count"), (long)count); for (size_t n=0; n < count; ++n) { wxString grp = CreateSubgroupName(n, count); // Create a subgroup name: "a", "b" etc config->Write(Rootname+grp+wxT("/Ext"), Extdata[n]->Ext.Lower()); // Store the ext we're dealing with if (!Extdata[n]->Default.Command.IsEmpty()) // Assuming there is a default, save it { config->Write(Rootname+grp+wxT("/DefaultLabel"), Extdata[n]->Default.Label); config->Write(Rootname+grp+wxT("/DefaultCommand"), Extdata[n]->Default.Command); config->Write(Rootname+grp+wxT("/DefaultWorkingDir"), Extdata[n]->Default.WorkingDir); } size_t appcount = Extdata[n]->Applics.GetCount(); config->Write(Rootname+grp+wxT("/appcount"), (long)appcount); for (size_t c=0; c < appcount; ++c) // Now go thru the Applic array, making a subgroup for each Label/Command pair { wxString subgrp = wxT("/") + CreateSubgroupName(c, appcount); config->Write(Rootname+grp+subgrp+wxT("/Label"), Extdata[n]->Applics[c]->Label); config->Write(Rootname+grp+subgrp+wxT("/Command"), Extdata[n]->Applics[c]->Command); config->Write(Rootname+grp+subgrp+wxT("/WorkingDir"), Extdata[n]->Applics[c]->WorkingDir); } } config->Flush(); } void FiletypeManager::OpenWith() // Do 'Open with' dialog { LoadFiletypes(); // Load the dialog data if (!ExtdataLoaded) LoadExtdata(); // & the Ext data MyFiletypeDialog dlg; mydlg = &dlg; wxXmlResource::Get()->LoadDialog(&dlg, MyFrame::mainframe->GetActivePane(), wxT("ManageFiletypes")); // Load the appropriate dialog dlg.Init(this); wxSize size = MyFrame::mainframe->GetClientSize(); // Get a reasonable dialog size. WE have to, because the treectrl has no idea how big it is dlg.SetSize(size.x/3, 2*size.y/3); dlg.CentreOnScreen(); tree = (MyFiletypeTree*)dlg.FindWindow(wxT("TREE")); tree->Init(this); // Do the bits that weren't done in XRC tree->LoadTree(GroupArray); // Load the folder & filetype data into the tree HelpContext = HCopenwith; if (dlg.ShowModal() != wxID_OK) { if (m_altered && filepath.IsEmpty()) // filepath will be empty if we've come from Configure { wxMessageDialog dialog(MyFrame::mainframe->GetActivePane(), _("Lose all changes?"), _("Are you sure?"), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) SaveFiletypes(); } HelpContext = HCunknown; return; } HelpContext = HCunknown; wxString Command = dlg.text->GetValue(); // Get the launch command from textctrl, in case user had amended it if (!Command.IsEmpty()) // Check we have an application to use { wxString open = ParseCommand(Command); // Replace any %s with filepath (else just shove it on the end) if (open.IsEmpty()) return; bool usingsu = (force_kdesu || (!stat->CanTHISUserRead())); // While we still have stat-access, check if we'll need kdesu Openfunction(open, usingsu); // Then use sub-method for the Open } } wxString FiletypeManager::ParseCommand(const wxString& cmd /*=wxT("")*/) // Goes thru command, looking for %s to replace with filepath { // A cut-down, amended version of wxFileType::ExpandCommand() wxString command(cmd); if (command.IsEmpty()) command = Array[0]; // Later, we'll use single quotes around the filepath to avoid problems with spaces etc. EscapeQuote(filepath); // However this CAUSES a problem with apostrophes! This global function goes thru filepath, Escaping any it finds wxString str; bool found = false; for (const wxChar *pc = command.c_str(); *pc != wxT('\0'); pc++) // Go thru command, looking for % { if (*pc == wxT('%')) { if (*++pc == wxT('s')) // Found one, so see if next char is 's'. If so: { // '%s' expands into filepath, quoted because it might contain spaces unless there are already quotes found = true; if ((*(pc - 2) == wxT('"') && *(pc + 1) == wxT('"')) // If the %s is already surrounded by double quotes, || (*(pc - 2) == wxT('\'') && *(pc + 1) == wxT('\'')))// or by single ones, str << filepath; // just replace it with filepath else str << wxT('\'') << filepath << wxT('\''); // Otherwise do so surrounded by single quotes: they seem less upseting to some progs } else // If it wasn't 's' { if (*pc == wxT('%')) str << *pc; // If it's another %, ie %% means escaped %, just copy it else { found = true; str << filepath; } // I'm wickedly choosing to treat any other %char as a parameter but not using quotes } } else str << *pc; // If it wasn't '%', copy it } // Right, that's finished the for-loop. If we found a %s, we're done. But what if there wasn't one? if (found == false) str = command + wxT(" \'") + filepath + wxT("\'"); // Just plonk the filepath on the end, surrounded by single quotes return str; } bool FiletypeManager::Open(wxArrayString& commands) { bool CtrlDown = wxGetKeyState(WXK_CONTROL); // Some files eg scripts, may be both executable and openable. If ctrl is pressed, open instead of exec bool AltDown = wxGetKeyState(WXK_ALT); // Similarly, if the 'ALT' key is pressed, show the OpenWith menu instead of exec or any default OpenUsingFoo() wxMouseState state = wxGetMouseState(); // NB wxGetMouse/KeyboardState don't work for the META key, and ALT+DClick seems to be swallowed by the system, so we have to look for CTRL+ALT+DClick if (AltDown) // If so, instead of Open just show the OpenWith menu { return OfferChoiceOfApplics(commands); } // If it's an executable, execute it if we have permission if (stat->IsFileExecutable() && !CtrlDown) // Is it executable? Is the Ctrl-key pressed, which means use OpenWith instead { if (filepath.Contains(wxT("$OPEN_IN_TERMINAL "))) // First check to see if we're to run in terminal. If so, replace marker with eg. 'xterm -e' filepath.Replace(wxT("$OPEN_IN_TERMINAL "), TERMINAL_COMMAND, false); // As this section will be reached from e.g. a DClick, I doubt if this'll ever happen if ((!force_kdesu) && stat->CanTHISUserExecute()) // Assuming we weren't TOLD to open with su, & we have execute permission... { wxExecute(filepath); return false; } if (WHICH_SU==mysu) // If it's executable, but we don't have permission, su if available { if (USE_SUDO) ExecuteInPty(wxT("sudo \"") + filepath + wxT('\"')); else ExecuteInPty(wxT("su -c \"") + filepath + wxT('\"')); return false; } else if (WHICH_SU==kdesu) { wxString command; command.Printf(wxT("kdesu %s"), filepath.c_str()); wxExecute(command); return false; } else if (WHICH_SU==gksu) // or gksu { wxString command; command.Printf(wxT("gksu %s"), filepath.c_str()); wxExecute(command); return false; } else if (WHICH_SU==gnomesu) { wxString command; command.Printf(wxT("gnomesu --title "" -c %s -d"), filepath.c_str()); // -d means don't show the "Which user?" box, just use root wxExecute(command); return false; } else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) // or user-provided { wxExecute(OTHER_SU_COMMAND + filepath); return false; } // Still here? Then apologise & ask if user wishes to try Reading the file, assuming Read permission if (!stat->CanTHISUserRead()) { wxMessageBox(_("Sorry, you don't have permission to execute this file.")); return false; } if (wxMessageBox(_("Sorry, you don't have permission to execute this file.\nWould you like to try to Read it?"), wxT(" "), wxYES_NO | wxICON_QUESTION) != wxYES) return false; } // It's NOT executable, so try to Open it. First use the file's ext to try to get a default launch command if (PREFER_SYSTEM_OPEN) { if (USE_SYSTEM_OPEN && FiletypeManager::OpenUsingMimetype(filepath)) return false; // false here signifies success else return (USE_BUILTIN_OPEN && FiletypeManager::OpenUsingBuiltinMethod(filepath, commands, false)); } else { if (USE_BUILTIN_OPEN && FiletypeManager::OpenUsingBuiltinMethod(filepath, commands, true)) return false; // false here signifies success else if (USE_SYSTEM_OPEN && FiletypeManager::OpenUsingMimetype(filepath)) return false; else return (USE_BUILTIN_OPEN && FiletypeManager::OpenUsingBuiltinMethod(filepath, commands, false)); } wxCHECK_MSG(false, false, wxT("Unreachable code")); } bool FiletypeManager::OpenUsingBuiltinMethod(const wxString& filepath, wxArrayString& commands, bool JustOpen) { if (DeduceExt()) if (GetLaunchCommandFromExt()) // If true, Array[0] now contains the launch command eg kedit %s { wxString open = ParseCommand(); // Parse combines this with filepath eg kedit '/home/david/my.txt' bool usingsu = (force_kdesu || (!stat->CanTHISUserRead())); // While we still have stat-access, check if we'll need kdesu Openfunction(open, usingsu); // Do the rest in submethod, shared by 'Open with' return true; } if (JustOpen) return false; // Stop here to let the system method have a go // Didn't work? OK, look & see if there is a list of known applics for the ext if (OfferChoiceOfApplics(commands)) return false; // There ARE known applics, so return true to make caller process them else { OpenWith(); return true; } // No known applics, so go the whole hog with OpenWith() } bool FiletypeManager::OpenUsingMimetype(const wxString& fpath) { wxString filepath(fpath); // If we're trying to Open a file that's inside an archive, first extract it to a temp dir MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active && active->arcman && active->arcman->IsArchive()) { FakeFiledata ffd(filepath); if (!ffd.IsValid()) return false; wxArrayString arr; arr.Add(filepath); wxArrayString tempfilepaths = active->arcman->ExtractToTempfile(arr, false, true); // This extracts filepath to a temporary file, which it returns. The bool params mean not-dirsonly, files-only if (tempfilepaths.IsEmpty()) return false; // Empty == failed filepath = tempfilepaths[0]; FileData tfp(filepath); tfp.DoChmod(0444); // Make the file readonly, as we won't be saving any alterations and exec.ing it is unlikely to be sensible } // Start by trying to use GIO calls, provided we're using wxGTK #if defined __WXGTK__ if (filepath.empty()) return false; GAppInfo* appinfo = NULL; GFile* file = g_file_new_for_path(filepath.mb_str(wxConvUTF8)); if (file) { appinfo = g_file_query_default_handler(file, NULL, NULL); g_object_unref(file); } if (appinfo) { wxString command(g_app_info_get_executable(appinfo), wxConvUTF8); if (!command.empty()) { command << wxT(' ') << EscapeQuoteStr( EscapeSpaceStr(filepath) ); wxExecute(command); return true; } } // If it failed, we might as well try the wxTheMimeTypesManager way so fall through #endif if (!DeduceExt()) return false; // false means filepath was empty if (!Array.GetCount()) return false; // Shouldn't happen wxString fp = EscapeQuoteStr( EscapeSpaceStr(filepath) ); for (size_t n=0; n < Array.GetCount(); ++n) // There may be >1 offerings in Array { wxFileType* ft = wxTheMimeTypesManager->GetFileTypeFromExtension(Array[n]); if (ft) { wxString command = ft->GetOpenCommand(fp); delete ft; if (!command.empty()) { wxExecute(command); return true; } } } return false; } //static void FiletypeManager::Openfunction(wxString& open, bool usingsu) // Submethod to actually launch applic+file. Used by Open and Open-With { if (open.Contains(wxT("$OPEN_IN_TERMINAL "))) // First check to see if we're to run in terminal. If so, replace marker with eg. 'xterm -e' open.Replace(wxT("$OPEN_IN_TERMINAL "), TERMINAL_COMMAND, false); MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); bool InArchive = (active != NULL && active->arcman != NULL && active->arcman->IsArchive()); if (InArchive) // If we're opening a file from within an archive, we need the archive's cooperation! { wxString tempfilepath = active->arcman->ExtractToTempfile(); // This extracts the selected filepath to a temporary file, which it returns if (!tempfilepath) return; // Empty == failed FileData tfp(tempfilepath); tfp.DoChmod(0444); // Take the opportunity to make this file readonly, as we won't be saving any alterations and exec.ing it is unlikely to be sensible wxStringTokenizer tkz(open); // We now need to replace the /withinarchive/path/to/foo bit of open with ~/temppath/to/foo wxString file = tempfilepath.AfterLast(wxFILE_SEP_PATH); bool flag = false; while (tkz.HasMoreTokens()) { wxString tok = tkz.GetNextToken(); if (tok.Contains(file)) // This will break if open is e.g."kwrite kwrite"; but it probably won't be! { open.Replace(tok, tempfilepath, false); flag = true; break; } } if (!flag) return; // Shouldn't happen, but if the substitution couldn't be made, abort usingsu = false; // Because of earlier FileData failures, we might have been wrongly told to su } if (!usingsu) wxExecute(open); // If we can, execute the command to launch the file else { if (WHICH_SU==mysu) // If we don't have permission, su if available { if (USE_SUDO) ExecuteInPty(wxT("sudo \"") + open + wxT('\"')); else ExecuteInPty(wxT("su -c \"") + open + wxT('\"')); } else if (WHICH_SU==kdesu) { wxString command; command.Printf(wxT("kdesu \"%s\""), open.c_str()); wxExecute(command); } else if (WHICH_SU==gksu) // or gksu { wxString command; command.Printf(wxT("gksu \"%s\""), open.c_str()); wxExecute(command); } else if (WHICH_SU==gnomesu) { // Try using xsu (== gnomesu == gsu) but it's less satisfactory. // It can't cope with simple names like gedit, it needs the whole pathname, even for gnome applications. // It also throws an Error on exiting, complaining that kbuildsycoca is running (actually it only manages ildsycoca!). That's a kde applic that does the mimetypes. wxString command; command.Printf(wxT("gnomesu --title "" -c \"%s\" -d"), open.c_str()); // -d means don't show the "Which user?" box, just use root wxExecute(command); // wxLogNull doesn't work } else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) // or user-provided { wxString command; command.Printf(wxT("\"%s\""), open.c_str()); wxExecute(OTHER_SU_COMMAND + command); } } } bool FiletypeManager::DeduceExt() // Which bit of a filepath should we call 'ext' for GetLaunchCommandFromExt() { int index; if (filepath.IsEmpty()) return false; Array.Clear(); // Array is where we'll store the answer(s), so get rid of any stale data wxString ext = filepath.AfterLast(wxFILE_SEP_PATH); // First remove the path // The plan is: Look for a dot. If there isn't one, put the whole filename into the array, in case we want to open eg makefile with an Editor. // If there is, put everything to the R of it in the array, & then look for another dot. This way we return a hierarchy of possible exts eg tar.gz, then gz index = ext.Find(wxT('.')); // Check there's at least one dot (-1 means no) if (index == -1) { Array.Add(ext); return true; } // If not, put the whole filename into the array, in case we want to open eg makefile with an Editor do // There IS a .ext { ext = ext.Mid(index+1); // ext now contains the substring distal to the 1st dot Array.Add(ext); // Add the rest to Array index = ext.Find(wxT('.')); // See if there's another dot } while (index != -1); // If there is, go round for another bite return true; } bool FiletypeManager::GetLaunchCommandFromExt() // FiletypeManager::Array contains a list of possible ext.s, created in DeduceExt() { if (!Array.GetCount()) return false; // Shouldn't happen for (size_t e=0; e < Extdata.GetCount(); ++e) // Go thru Extdata array, trying to match 1 of its known ext.s to one of the file's ones for (size_t n=0; n < Array.GetCount(); ++n) // There may be >1 offerings in Array if (Array[n].Lower() == Extdata[e]->Ext.Lower()) // Got one if (!Extdata[e]->Default.Command.IsEmpty()) // See if there's a default command { Array.Clear(); // If so, put it in the Array, flagging its presence by returning true wxString command; // If there's a working dir to cd into first, we need a shell + dquotes. The next global function does that PPath_returncodes ans = PrependPathToCommand(Extdata[e]->Default.WorkingDir, Extdata[e]->Default.Command, wxT('\"'), command, true); if (ans == Oops) return false; if (ans == needsquote) command << wxT('\"'); // The command now starts with sh -c, so we need to close the quote Array.Add(command); return true; } // Otherwise carry on thru the Array, in case a later entry works eg prog.0.3.1.tar.gz might succeed with tar.gz, but not 0.3.1.tar.gz return false; // No match } void FiletypeManager::RemoveDefaultApplicationGivenExt(bool confirm /*=false*/) // Given an ext (in filepath), un-associate its default applic, if any { wxString Ext = filepath.AfterLast(wxFILE_SEP_PATH); // Remove path Ext = Ext.AfterLast(wxT('.')); // Use the bit after the last dot // If no dot, try using the whole filename, in case of eg makefile having an association if (Ext.IsEmpty()) return; int index = GetDefaultApplicForExt(Ext.Lower()); // Try to find an applic for it if (index == -1) return; // -1 flags failure if ((size_t)index > Extdata.GetCount()) return; if (confirm) { wxString msg; msg.Printf(_("No longer use %s as the default command for files of type %s?"), Extdata[index]->Default.Label.c_str(), Ext.c_str()); wxMessageDialog dialog(mydlg, msg, _("Are you sure?"), wxYES_NO | wxICON_QUESTION); if (dialog.ShowModal() != wxID_YES) return; } Extdata[index]->Default.Clear(); // Clear the default SaveExtdata(); LoadExtdata(); // Save & reload the data, to make it happen in this instance } int FiletypeManager::GetDefaultApplicForExt(const wxString& Ext) // Given an ext, find its default applic, if any. Returns -1 if none { for (size_t e=0; e < Extdata.GetCount(); ++e) // Go thru Extdata array, trying to match 1 of its known ext.s to Ext if (Extdata[e]->Ext.Lower() == Ext.Lower()) // Got it { if (Extdata[e]->Default.Command.IsEmpty()) // See if there's a default command return -1; // Nope return e; // There is, so return its index } return -1; } bool FiletypeManager::GetApplicExtsDefaults(const struct Filetype_Struct& ftype, wxTextCtrl* text) // Fill textctrl, & see if applic is default for any of its ext.s { bool result=false, isdefault, notfirst=false; wxTextAttr style; wxFont font; text->Clear(); // Clear textctrl style = text->GetDefaultStyle(); // Save its original style font = style.GetFont(); // Get default font, & enBolden it font.SetWeight(wxFONTWEIGHT_BOLD); wxStringTokenizer tkz(ftype.Ext, wxT(",")); // First tokenise Exts while (tkz.HasMoreTokens()) { wxString Ext = tkz.GetNextToken().Trim().Lower(); // Remove any terminal space: see the workaround below for why there might be some isdefault = IsApplicDefaultForExt(ftype, Ext); // For each ext, see if it's default if (notfirst) text->AppendText(wxT(',')); // If this isn't the 1st ext, separate with a comma if (isdefault) { text->SetDefaultStyle(wxTextAttr(wxNullColour, wxNullColour, font)); // Turn on Bold text->AppendText(Ext); // Add Ext to textctrl with Bold font text->SetDefaultStyle(style); // Return to original style result = true; // Flag that there's at least one } else text->AppendText(Ext); // If applic isn't default for this ext, add Ext with normal font notfirst = true; } // The next line is a workaround. If the last item entered was in Bold, the (re)SetDefaultStyle() doesn't work. Nor does anything else eg add something then remove it. if (result) text->AppendText(wxT(" ")); // So add a space. This means if the user adds another ext, it isn't in Bold; yet it doesn't show too much. return result; // True if >0 defaults } bool FiletypeManager::IsApplicDefaultForExt(const struct Filetype_Struct& ftype, const wxString& Ext) // See if the applic is the default for extension Ext { if (Ext.IsEmpty() || ftype.Command.IsEmpty()) return false; wxString ext = Ext.BeforeFirst(wxT(',')); // The passed Ext may be multiple eg htm, html. This will never match, so use just the 1st item wxString command = ftype.Command; // The stored command may start with the InTerminal flag, but this would have been temporarily stripped during OnEditApplication() if (command.Contains(wxT("$OPEN_IN_TERMINAL "))) command.Replace(wxT("$OPEN_IN_TERMINAL "), wxT("")); // So provide the trucated version for the comparison too for (size_t e=0; e < Extdata.GetCount(); ++e) // Go thru Extdata array, trying to find ext if (Extdata[e]->Ext.Lower() == ext.Lower()) { if (Extdata[e]->Default.Label == ftype.AppName && (Extdata[e]->Default.Command == ftype.Command || Extdata[e]->Default.Command == command)) return true; // If everything matches, return the Ext else return false; } return false; // No match } void FiletypeManager::UpdateDefaultApplics(const struct Filetype_Struct& oldftype, const struct Filetype_Struct& newftype) // Update default data after Edit { if (oldftype.AppName.IsEmpty()) return; // Don't want to match empty data for (size_t e=0; e < Extdata.GetCount(); ++e) // Go thru Extdata array, trying to find matching default data for oldftype if (Extdata[e]->Default.Label == oldftype.AppName && Extdata[e]->Default.Command == oldftype.Command) { Extdata[e]->Default.Label = newftype.AppName; // Got a match, so replace olddata with new, in case of alterations Extdata[e]->Default.Command = newftype.Command; Extdata[e]->Default.WorkingDir = newftype.WorkingDir; } } bool FiletypeManager::OfferChoiceOfApplics(wxArrayString& CommandArray) // Loads Array with applics for this filetype, & CommandArray with launch-commands { if (filepath.IsEmpty()) return false; wxString ext = filepath.AfterLast(wxFILE_SEP_PATH); ext = ext.AfterLast(wxT('.')); // Use the LAST dot to get the ext (otherwise what if myprog.3.0.1.tar ?) // If no dot, try using the whole filename, in case of eg makefile having an association for (size_t n=0; n < Extdata.GetCount(); ++n) // Go thru Extdata array, trying to match 1 of its known ext.s to the file's one if (Extdata[n]->Ext.Lower() == ext.Lower()) { Array.Clear(); for (size_t c=0; c < Extdata[n]->Applics.GetCount(); ++c) // Add all the associated applic names to an array { Array.Add(Extdata[n]->Applics[c]->Label); // This application's name goes into FiletypeManager::Array wxString launchcommand = ParseCommand(Extdata[n]->Applics[c]->Command); // Parse its associated launch command CommandArray.Add(launchcommand); // & put result (indirectly) in FileGenericDirCtrl's array, so that it can be retrieved after Context menu } if (!Array.GetCount()) return false; else return true; } return false; } bool FiletypeManager::QueryCanOpen(char* buf) // See if we can open the file by double-clicking, ie executable or ext with default command { if (filepath.IsEmpty()) return false; if (!wxFileExists(filepath)) return false; // Check file actually exists if (stat->IsFileExecutable()) // See if the file is executable { if (stat->CanTHISUserExecute()) buf[1] = true; // Yes, by us so flag Open else if (WHICH_SU != dunno) // Yes but WE can't buf[2] = true; // so flag only if we have su-itable alternative } if (stat->CanTHISUserRead() || stat->CanTHISUserWrite()) buf[0] = true; // If it can be read or written by us, flag OpenWith if ((!stat->CanTHISUserRead() || !stat->CanTHISUserWrite()) // If either are missing, && (WHICH_SU != dunno)) // & we have *su buf[2] = true; // flag OpenWithKdesu if (!buf[1] && stat->CanTHISUserRead()) // Finally, if we haven't already flagged Open for executable reasons, & we can read, see if we have a default launcher { if (!ExtdataLoaded) LoadExtdata(); // Load the ext/command data Array.Add(filepath); // Put filepath in 1st slot of Array if (DeduceExt()) // if DeduceExts returns true, Array will now be filled with 1 or more ext.s to check if (GetLaunchCommandFromExt()) // If this is true, there is a launch command available, so flag Open buf[1] = true; } return true; } bool FiletypeManager::QueryCanOpenArchiveFile(wxString& filepath) // A cutdown QueryCanOpen() for use within archives { if (!ExtdataLoaded) LoadExtdata(); // Load the ext/command data Array.Add(filepath); // Put filepath in 1st slot of Array if (DeduceExt()) // if DeduceExts returns true, Array will now be filled with 1 or more ext.s to check if (GetLaunchCommandFromExt()) return true; // If this is true, there is a launch command available, so flag Open return false; } bool FiletypeManager::AddExtToApplicInGroups(const struct Filetype_Struct& ftype) // Try to locate applic matching ftype. If so, add ftype.Ext to it { for (size_t g=0; g < GroupArray.GetCount(); ++g) // Go thru the GroupArray { for (size_t n=0; n < GroupArray[g]->FiletypeArray.GetCount(); ++n) // For each filetype in subgroup if (GroupArray[g]->FiletypeArray[n]->Command == ftype.Command) // If the Commands match, assume the rest does too { wxString Ext; Filetype_Struct* fgroup = GroupArray[g]->FiletypeArray[n]; wxStringTokenizer tkz(fgroup->Ext, wxT(",")); // Tokenise ftype.Ext, in case it has more than one extension while (tkz.HasMoreTokens()) // Do every ext in a loop { Ext = tkz.GetNextToken().Strip(wxString::both); // Get an ext, removing surrounding white space if (Ext.Lower() == ftype.Ext.Lower()) return false; // See if it matches the new one. If so, abort } fgroup->Ext += wxT(',') + ftype.Ext.Lower(); // If we're here, the ext is a new one, so add it return true; // No point in further searching } } return false; // In case applic not found } ./4pane-6.0/configure.ac0000777000175000017500000000000013567212013017411 2.build/configure.acustar daviddavid./4pane-6.0/Externs.h0000644000175000017500000005525513536157251013310 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Externs.h // Purpose: Extern declarations, enums // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef EXTERNSH #define EXTERNSH #include "wx/artprov.h" #ifndef __LINUX__ #define __GNU_HURD__ enum TranslatorType { TT_active, TT_passive, TT_either }; #endif extern bool SvgToPng(const wxString& svgfilepath, const wxString& outputfilepath, void* dlhandle); // Renders an svg file to an image extern wxString LocateLibrary(const wxString& lib); // Search ldconfig output to find a lib's filepath. 'lib' can/will be a partial name e.g. 'rsvg' extern wxString HOME; // In case we want to pass as a parameter an alternative $HOME // Externs for some global functions extern wxString ParseSize(wxULongLong ull, bool longer); // Returns filesize parsed into bytes/K/M/GB as appropriate. In Misc.cpp extern wxString CreateSubgroupName(size_t no, size_t total); // Creates a unique subgroup name in ascending alphabetical order enum changerelative { makeabsolute, makerelative, nochange }; // Used by: extern bool CreateSymlinkWithParameter(wxString oldname, wxString newname, enum changerelative rel); // In Tools. CreateSymlink() with the option of changing from abs<->relative extern bool CreateSymlink(wxString oldname, wxString newname); // In Tools. Encapsulates creating a symlink. Used also to rename, move etc extern bool CreateHardlink(wxString oldname, wxString newname); // In Tools. Encapsulates creating a hard-link extern void HtmlDialog(const wxString& title, const wxString& file2display, const wxString& dialogname, wxWindow* parent=NULL, wxSize size=wxSize(0,0)); // In Tools. Sets up a dialog with just a wxHtmlWindow & a Finished button extern size_t IsPlausibleIPaddress(wxString& str); // In Mounts.cpp extern wxString StrWithSep(const wxString& path); // In Misc, returns path with a '/' if necessary extern wxString StripSep(const wxString& path); // In Misc, returns path without any terminal '/' extern bool IsDescendentOf(const wxString& dir, const wxString& child); // In Misc, checks if child is a descendent of dir extern wxString EscapeQuote(wxString& filepath); // In Misc, used by Filetypes & Archive. Escapes any apostrophes in a filepath extern wxString EscapeQuoteStr(const wxString& filepath); extern wxString EscapeSpace(wxString& filepath); // Escapes spaces within e.g. filepaths extern wxString EscapeSpaceStr(const wxString& filepath); extern wxString QuoteSpaces(wxString& str); // Intelligently cover with "". Do each filepath separately, in case we're launching a script with a parameter which takes parameters . . . extern void QuoteExcludingWildcards(wxString& command); // Wraps command with " " if appropriate, excluding any terminal globs extern void SetSortMethod(const bool LC_COLLATE_aware); // Do we want filename etc sorting to be LC_COLLATE aware? extern void SetDirpaneSortMethod(const bool LC_COLLATE_aware); // Ditto for dirpane sorting extern wxString TruncatePathtoFitBox(wxString filepath, wxWindow* box); // In Misc, used by MyFiles extern wxWindow* InsertEllipsizingStaticText(wxString filepath, wxWindow* original, int insertAt = -1); // In Misc, used by MyFiles and MyDirs extern wxString MakeTempDir(const wxString& name = wxT("")); // In Misc, Makes a unique dir in /tmp/4Pane/ extern wxBitmap GetBestBitmap(const wxArtID& artid, const wxArtClient& client, const wxBitmap& fallback_xpm); // In Misc, returns a wxArtProvider bitmap or the default one extern void QueryWrapWithShell(wxString& command); // In Misc. Wraps command with sh -c if appropriate extern bool KernelLaterThan(wxString minimum); // In Misc, used by Devices extern bool GetFloat(wxString& str, double* fl, size_t skip); // In Misc, used by Configure extern void DoBriefLogStatus(int no, wxString msgA, wxString msgB); // In Misc. A convenience function, to call BriefLogStatus with the commonest requirements extern bool LoadPreviousSize(wxWindow* tlwin, const wxString& name); // In Misc. Retrieve and apply any previously-saved size for the top-level window extern void SaveCurrentSize(wxWindow* tlwin, const wxString& name); // In Misc. The 'save' for LoadPreviousSize() enum distro { gok, suse, redhat, fedora, mandrake, slackware, sabayon, gentoo, debian, mepis, ubuntu, kubuntu, pclos, damnsmall, puppy, knoppix, gnoppix, zenwalk, mint, other }; enum emptyable { CannotBeEmptied = 0, CanBeEmptied, SubdirCannotBeEmptied, RubbishPassed = -1 }; // Can a dir and its progeny be deleted from? extern enum emptyable CanFoldertreeBeEmptied(wxString path); // In Filetypes, used by Delete extern bool HasThisDirSubdirs(wxString& dirname); // In Filetypes, used in DirGenericDirCtrl::ReloadTree() extern bool ReallyIsDir(const wxString& path, const wxString& item); // In Filetypes, used in DirGenericDirCtrl::ExpandDir extern bool RecursivelyGetFilepaths(wxString path, wxArrayString& array); // Global recursively to fill array with all descendants of this dir extern wxULongLong GetDirSizeRecursively(wxString& dirname); // Get the recursive size of the dir's contents Used by FileGenericDirCtrl::UpdateStatusbarInfo extern wxULongLong GetDirSize(wxString& dirname); // Get the non-recursive size of the dir's contents Used by FileGenericDirCtrl::UpdateStatusbarInfo extern bool ContainsRelativeSymlinks(wxString fd); // Used by MyGenericDirCtrl::Move to see if a relative symlink is present (as it Moves differently) extern bool FLOPPY_DEVICES_AUTOMOUNT; // Some distos automount floppies extern bool CDROM_DEVICES_AUTOMOUNT; // Some distos automount dvds etc extern bool USB_DEVICES_AUTOMOUNT; // Some distos automount usb devices extern bool FLOPPY_DEVICES_SUPERMOUNT; // Similarly, some distos use supermount instead or as well extern bool CDROM_DEVICES_SUPERMOUNT; extern bool USB_DEVICES_SUPERMOUNT; enum DiscoveryMethod { OriginalMethod=0, MtabMethod, SysHal }; // Used below extern enum DiscoveryMethod DEVICE_DISCOVERY_TYPE; // Which method of info-discovery is used for hotplugged devices enum TableInsertMethod { MtabInsert=0, FstabInsert, NoInsert }; // Used below extern enum TableInsertMethod FLOPPY_DEVICES_DISCOVERY_INTO_FSTAB; // Where is floppy-device data hotplugged to? fstab or mtab or nowt extern enum TableInsertMethod CD_DEVICES_DISCOVERY_INTO_FSTAB; // Ditto cdrom extern enum TableInsertMethod USB_DEVICES_DISCOVERY_INTO_FSTAB; // Ditto usb extern wxString SCSI_DEVICES; // Some HAL/Sys data is discovered here extern wxString AUTOMOUNT_USB_PREFIX; // See above. This holds the path + first 2 letters of the /devs onto which usb devices are loaded. Probably "/dev/sd" extern bool SUPPRESS_EMPTY_USBDEVICES; // Do we want to avoid displaying usb devices like multi-card readers, that will otherwise have multiple icons despite being largely empty extern bool SUPPRESS_SWAP_PARTITIONS; // Do we want to avoid displaying swap partitions in the Mount/Unmount dialogs. Surely we do . . . extern wxString PROGRAMDIR; extern wxString BITMAPSDIR; extern wxString RCDIR; extern wxString HELPDIR; extern wxWindowID NextID; extern wxFont TREE_FONT; // Which font is currently used in the panes extern wxFont CHOSEN_TREE_FONT; // Which font to use in the panes if USE_DEFAULT_TREE_FONT is false extern bool USE_DEFAULT_TREE_FONT; extern bool SHOW_TREE_LINES; // Whether (esp in gtk2) to show the branches, or just the leaves extern int TREE_INDENT; // Holds the horizontal indent for each subbranch relative to its parent extern size_t TREE_SPACING; // Holds the indent for each branch, +-box to Folder extern int DnDXTRIGGERDISTANCE; // How far before D'n'D triggers extern int DnDYTRIGGERDISTANCE; extern int METAKEYS_COPY, METAKEYS_MOVE, METAKEYS_HARDLINK, METAKEYS_SOFTLINK; // These hold the flags that signify DnD Copy, Softlink etc extern bool SHOWHIDDEN; extern bool SHOWPREVIEW; extern bool USE_LC_COLLATE; extern bool TREAT_SYMLINKTODIR_AS_DIR; extern bool ASK_ON_TRASH; // Do we show the "Are you sure?" message extern bool ASK_ON_DELETE; extern bool USE_STOCK_ICONS; extern bool SHOW_DIR_IN_TITLEBAR; extern bool USE_FSWATCHER; extern bool ASK_BEFORE_UMOUNT_ON_EXIT; extern bool SHOW_TB_TEXTCTRL; // The textctrl in the toolbar that shows filepaths extern wxString TRASHCAN; // Where to base the rubbish dirs extern bool KONSOLE_PRESENT; // Which terminal emulators are present on the system extern bool GNOME_TERM_PRESENT; extern bool XTERM_PRESENT; extern bool XCFE4_PRESENT; extern bool LXTERMINAL_PRESENT; extern bool QTERMINAL_PRESENT; extern bool MATETERMINAL_PRESENT; extern wxString TERMINAL; // The name of the terminal for terminal sessions. Default "konsole" extern wxString TERMINAL_COMMAND; // Command to prepend to an applic to launch in terminal window. Default "xterm -e" extern wxString TOOLS_TERMINAL_COMMAND; // Similarly for the Tools > Run a Program command extern wxArrayString FilterHistory; extern bool KDESU_PRESENT; extern bool XSU_PRESENT; extern bool GKSU_PRESENT; enum sutype { dunno, kdesu, gnomesu, gksu, othersu, mysu }; // Choices for su-ing extern sutype WHICH_SU; // Which of the above do we use? extern bool USE_SUDO; // Is this a su or a sudo distro? extern bool STORE_PASSWD; // Do we cache the password (from the builtin su)? extern size_t PASSWD_STORE_TIME; // If so, for how many minutes? extern bool RENEW_PASSWD_TTL; // and do we extend the time-to-live whenever the cached password is supplied? extern sutype WHICH_EXTERNAL_SU; // If WHICH_SU == mysu, this stores any external-su preference extern wxString OTHER_SU_COMMAND; // A user-provided kdesu-equivalent, used when WHICH_SU==othersu extern bool LIBLZMA_LOADED; extern const bool ISLEFT; // The flag for a directory window extern const bool ISRIGHT; // as opposed to a file window extern bool SHOW_RECURSIVE_FILEVIEW_SIZE; extern bool RETAIN_REL_TARGET; // If we Move a relative symlink, keep the original target extern bool RETAIN_MTIME_ON_PASTE; // Should Move/Paste keep the modification time of the origin file extern size_t MAX_NUMBER_OF_UNDOS; // Amount of memory to allocate for UnRedo extern size_t MAX_NUMBER_OF_PREVIOUSDIRS; // Similarly for previously-visited dirs extern size_t MAX_DROPDOWN_DISPLAY; // How many to display at a time on a dropdown menu extern size_t MAX_COMMAND_HISTORY; // How many recent commands from eg grep or locate, should be stored extern const int MAX_NO_TABS; // Can't have >26 tabs, mostly because they are labelled in config-file by a-z! extern size_t MAX_TERMINAL_HISTORY; // How many recent terminal-emulator commands should be stored extern wxString TERMEM_PROMPTFORMAT; // The preferred format for the terminal-emulator prompt extern wxFont TERMINAL_FONT; extern wxFont CHOSEN_TERMINAL_FONT; extern bool USE_DEFAULT_TERMINALEM_FONT; extern size_t CHECK_USB_TIMEINTERVAL; extern size_t AUTOCLOSE_TIMEOUT; extern size_t AUTOCLOSE_FAILTIMEOUT; extern size_t DEFAULT_BRIEFLOGSTATUS_TIME; extern bool COLOUR_PANE_BACKGROUND; extern bool SINGLE_BACKGROUND_COLOUR; extern wxColour BACKGROUND_COLOUR_DV, BACKGROUND_COLOUR_FV; extern bool USE_STRIPES; // For those who like a naffly-striped fileview extern wxColour STRIPE_0, STRIPE_1; extern const size_t TOTAL_NO_OF_FILEVIEWCOLUMNS; extern bool HIGHLIGHT_PANES; // Do we subtly emphasise which pane has focus? extern int DIRVIEW_HIGHLIGHT_OFFSET; // If so, how subtly? extern int FILEVIEW_HIGHLIGHT_OFFSET; extern const int HEADER_HEIGHT; // The ht of the header column. Originally 23 extern size_t DEFAULT_COLUMN_WIDTHS[]; // How wide is a visible column by default extern bool DEFAULT_COLUMN_TEMPLATE[]; // and which of them are shown by default extern unsigned int EXTENSION_START; // Do the exts shown in the 'ext' column start with the first, penultimate or last dot? enum split_type { initialsplit, vertical = 1, horizontal, unsplit }; extern split_type WINDOW_SPLIT_TYPE; // Split each pane vertically by default extern wxString FLOPPYINFOPATH; extern wxString CDROMINFO; extern wxString PARTITIONS; extern wxString SCSIUSBDIR; extern wxString SCSISCSI; extern wxString DEVICEDIR; extern wxString LVMPREFIX; extern wxString LVM_INFO_FILE_PREFIX; extern size_t LINES_PER_MOUSEWHEEL_SCROLL; extern wxString SMBPATH; // Where is the dir with samba stuff? Might be symlinked from here instead extern wxString SHOWMOUNTFPATH; // Where is the dir containing showmount? extern wxArrayString NFS_SERVERS; // Any known servers extern int DEFAULT_STATUSBAR_WIDTHS[]; extern bool USE_SYSTEM_OPEN; extern bool USE_BUILTIN_OPEN; extern bool PREFER_SYSTEM_OPEN; enum // menuitem IDs { GAP_FOR_NEW_SHORTCUTS = 200, SHCUT_START = 20000, SHCUT_CUT = SHCUT_START, // The first batch are UpdateUIed according to whether there's a selection, in DoQueryEmptyUI() SHCUT_COPY, SHCUT_TRASH, SHCUT_DELETE, SHCUT_REALLYDELETE, SHCUT_RENAME, SHCUT_DUP, SHCUT_PROPERTIES, SHCUT_OPEN, SHCUT_OPENWITH, SHCUT_OPENWITH_KDESU, SHCUT_PASTE, // These are done in DoMiscUI() SHCUT_HARDLINK, SHCUT_SOFTLINK, SHCUT_DELTAB, SHCUT_RENAMETAB, SHCUT_UNDO, SHCUT_REDO, SHCUT_SELECTALL, SHCUT_NEW, SHCUT_NEWTAB, SHCUT_INSERTTAB, SHCUT_DUPLICATETAB, SHCUT_ALWAYS_SHOW_TAB, SHCUT_SAME_TEXTSIZE_TAB, SHCUT_REPLICATE, SHCUT_SWAPPANES, SHCUT_SPLITPANE_VERTICAL, SHCUT_SPLITPANE_HORIZONTAL, SHCUT_SPLITPANE_UNSPLIT, SHCUT_SHOW_COL_EXT, SHCUT_SHOW_COL_SIZE, SHCUT_SHOW_COL_TIME, SHCUT_SHOW_COL_PERMS, SHCUT_SHOW_COL_OWNER, SHCUT_SHOW_COL_GROUP, SHCUT_SHOW_COL_LINK, SHCUT_SHOW_COL_ALL, SHCUT_SHOW_COL_CLEAR, SHCUT_SAVETABS, SHCUT_SAVETABS_ONEXIT, SHCUT_TAB_SAVEAS_TEMPLATE, LoadTabTemplateMenu, // Different format to signify that it's not really a shortcut: it's here only for UpdateUI SHCUT_TAB_DELETE_TEMPLATE, SHCUT_REFRESH, SHCUT_LAUNCH_TERMINAL, SHCUT_FILTER, SHCUT_TOGGLEHIDDEN, SHCUT_ADD_TO_BOOKMARKS, SHCUT_MANAGE_BOOKMARKS, SHCUT_MOUNT_MOUNTPARTITION, SHCUT_MOUNT_UNMOUNTPARTITION, SHCUT_MOUNT_MOUNTISO, SHCUT_MOUNT_MOUNTNFS, SHCUT_MOUNT_MOUNTSAMBA, SHCUT_MOUNT_UNMOUNTNETWORK, SHCUT_TOOL_LOCATE, SHCUT_TOOL_FIND, SHCUT_TOOL_GREP, SHCUT_TERMINAL_EMULATOR, SHCUT_COMMANDLINE, SHCUT_TERMINALEM_GOTO, // Used in terminal context menu SHCUT_EMPTYTRASH, SHCUT_EMPTYDELETED, SHCUT_ARCHIVE_EXTRACT, SHCUT_ARCHIVE_CREATE, SHCUT_ARCHIVE_APPEND, SHCUT_ARCHIVE_TEST, SHCUT_ARCHIVE_COMPRESS, SHCUT_SHOW_RECURSIVE_SIZE, SHCUT_RETAIN_REL_TARGET, SHCUT_CONFIGURE, SHCUT_EXIT, SHCUT_F1, SHCUT_HELP, SHCUT_FAQ, SHCUT_ABOUT, SHCUT_CONFIG_SHORTCUTS, SHCUT_GOTO_SYMLINK_TARGET, SHCUT_GOTO_ULTIMATE_SYMLINK_TARGET, SHCUT_EDIT_BOOKMARK, // Bookmarks mostly reuse SHCUT_COPY etc, but we need these 2 specific ones SHCUT_NEW_SEPARATOR, SHCUT_TOOLS_REPEAT, // ***** Add any future shortcuts here, so they won't affect old values or those of UDTools SHCUT_SWITCH_FOCUS_OPPOSITE, SHCUT_SWITCH_FOCUS_ADJACENT, SHCUT_SWITCH_FOCUS_PANES, SHCUT_SWITCH_FOCUS_TERMINALEM, SHCUT_SWITCH_FOCUS_COMMANDLINE, SHCUT_SWITCH_FOCUS_TOOLBARTEXT, SHCUT_SWITCH_TO_PREVIOUS_WINDOW, SHCUT_PREVIOUS_TAB, SHCUT_NEXT_TAB, SHCUT_PASTE_DIR_SKELETON, SHCUT_EXT_FIRSTDOT, SHCUT_EXT_MIDDOT, SHCUT_EXT_LASTDOT, SHCUT_MOUNT_MOUNTSSHFS, SHCUT_PREVIEW, SHCUT_ESCAPE, // For interrupting threads SHCUT_DECIMALAWARE_SORT, // In the current fileview, sort foo1, foo2 above foo11 SHCUT_RETAIN_MTIME_ON_PASTE, // When Moving/Pasting, try to leave the modification time ISQ (like cp -a) // ***** SHCUT_TOOLS_LAUNCH = SHCUT_TOOLS_REPEAT + 1 + GAP_FOR_NEW_SHORTCUTS, SHCUT_TOOLS_LAUNCH_LAST = SHCUT_TOOLS_LAUNCH + 500, SHCUT_RANGESTART, SHCUT_RANGEFINISH = SHCUT_RANGESTART+500, // I expect 500 submenu items will suffice SHCUT_TABTEMPLATERANGE_START, SHCUT_TABTEMPLATERANGE_FINISH = SHCUT_TABTEMPLATERANGE_START + 26, // as they are labelled by lower-case letters 26 SHCUT_FINISH }; enum { ID_FIRST_BOOKMARK = 25000, ID__LAST_BOOKMARK = ID_FIRST_BOOKMARK+6000 // Surely no one wants more than 6k, even with avoiding duplicates while pasting }; enum // to do with toolbars { ID_TOOLBAR = 500, ID_FRAMETOOLBAR, ID_FILEPATH, IDM_TOOLBAR_Range = 15, // Define a range extent for the no. of user-defined buttons IDM_TOOLBAR_fulltree = 200, IDM_TOOLBAR_up, IDM_TOOLBAR_LargeDropdown1, IDM_TOOLBAR_LargeDropdown2, IDM_TOOLBAR_bmfirst, IDM_TOOLBAR_bmlast = IDM_TOOLBAR_bmfirst + IDM_TOOLBAR_Range }; enum myDragResult // Extended version of wxDragResult { myDragError, myDragNone, myDragCopy, myDragMove, myDragHardLink, myDragCancel, myDragSoftLink // Mine }; enum deviceID // to do with toolbar bitmap-buttons { ID_FLOPPY1 = 0, ID_UNKNOWN=98, MAXDEVICE = 99, ID_EDITOR = 100, MAXEDITOR = ID_EDITOR+50, MAX_NO_OF_PARTITONS = 1000, // Should suffice MAX_NO_OF_DVDRAM_MOUNTS = 100, // Should definitely suffice! ID_MOUNT=200, ID_UNMOUNT=ID_MOUNT+1 + MAX_NO_OF_PARTITONS, ID_EJECT=ID_UNMOUNT+1 + MAX_NO_OF_PARTITONS, ID_MOUNT_DVDRAM, ID_UNMOUNT_DVDRAM, ID_DISPLAY_DVDRAM // Don't forget this is a range, max MAX_NO_OF_DVDRAM_MOUNTS }; enum whichcan { delcan, trashcan, tempfilecan }; // Deals with deleted/trash/tempfile dirs enum devicecategory { harddiskcat = 0, floppycat, cdromcat, cdrcat, usbpencat, usbmemcat, usbmultcardcat, usbharddrivecat, unknowncat, rubbish=-1 }; enum treerooticon { ordinary = 0, floppytype, cdtype, usbtype, twaddle }; // Which icons to use for the treectrl root image: folder, floppy etc. All the cd-types share an icon enum discoverytable { TableUnused = 0, MtabOrdinary, MtabSupermount, FstabOrdinary, FstabSupermount, DoNowt }; // Some distros insert device info into fstab, others mtab. Some use supermount with a device-name of "none"! enum { current = 0, selected, home }; // On Unmounting, which dir to revert to: HOME, CurrentWorkingDir or user configured enum DupRen{ DR_ItsAFile, DR_ItsADir, DR_Rename, DR_RenameAll, DR_Overwrite, DR_OverwriteAll, DR_Skip, DR_SkipAll, DR_Store, DR_StoreAll, DR_Cancel, DR_Unknown }; // Used by CheckDupRen & its callers enum toolchoice { null = -1, locate = 0, find, grep, terminalem, cmdline }; // Which tool are we using in the bottom (or top) pane? enum columntype { filename = 0, ext, filesize, modtime, permissions, owner, group, linkage }; // Fileview column types enum DnDCursortype { dndStdCursor = 0, dndSelectedCursor, dndScrollCursor, dndUnselect, dndOriginalCursor }; // Cursor types for use by MyDragImage enum devicestructignore { DS_false = 0, DS_true, DS_defer }; // Do we wish to ignore a particular device enum ConfigDeviceType { CDT_fixed = 0, CDT_removable }; // Makes it easier to reuse a dialog class for both fixed and usb devices enum ziptype { zt_gzip, zt_bzip, zt_lzma, zt_xz, zt_lzop, zt_compress, zt_lastcompressed = zt_compress, zt_firstarchive, zt_taronly = zt_firstarchive, zt_cpio, zt_rpm, zt_ar, zt_deb, zt_firstcompressedarchive, zt_targz = zt_firstcompressedarchive, zt_tarbz, zt_tarlzma, zt_tarxz, zt_tar7z, zt_tarlzop, zt_taZ, zt_7z, zt_zip, zt_rar, zt_htb, zt_lastcompressedarchive = zt_htb, zt_invalid }; enum GDC_images { GDC_closedfolder, GDC_openfolder, GDC_file, GDC_computer, GDC_drive, GDC_cdrom, GDC_floppy, GDC_removable, GDC_symlink, GDC_brokensymlink, GDC_symlinktofolder, GDC_lockedfolder, GDC_usb, GDC_pipe, GDC_blockdevice, GDC_chardevice, GDC_socket, GDC_compressedfile, GDC_tarball, GDC_compressedtar, GDC_ghostclosedfolder,GDC_ghostopenfolder, GDC_ghostfile, GDC_ghostcompressedfile, GDC_ghosttarball, GDC_ghostcompressedtar, GDC_unknownfolder, GDC_unknownfile }; enum alterarc { arc_add, arc_remove, arc_del, arc_rename, arc_dup }; enum adjFPs { afp_rename, afp_extract, afp_neither }; enum PPath_returncodes { Oops, unaltered, needsquote, noneed4quote }; extern enum PPath_returncodes PrependPathToCommand(const wxString& Path, const wxString& Command, wxChar quote, wxString& FinalCommand, bool ThereWillBeParameters); enum archivemovetype { amt_from, amt_to, amt_bothsame, amt_bothdifferent }; // For unredoing archive Moves: are we Moving From an archive, To one, or both: within the same one or not enum AttributeChange { ChangeOwner = 0, ChangeGroup, ChangePermissions }; // Which type of attribute-change do we wish for. See RecursivelyChangeAttributes() extern int RecursivelyChangeAttributes(wxString filepath, wxArrayInt& IDs, size_t newdata, size_t& successes, size_t& failures, enum AttributeChange whichattribute, int flag); // In Filetypes, used by OnProperties() enum NavigateArcResult { OutsideArc, FoundInArchive, Snafu }; enum OCA { OCA_false, OCA_true, OCA_retry }; enum greptype { PREFER_QUICKGREP, PREFER_FULLGREP }; // Does the user prefer full or quick greps? extern enum greptype WHICHGREP; /*=PREFER_QUICKGREP*/ enum findtype { PREFER_QUICKFIND, PREFER_FULLFIND }; // Similarly quick finds? extern enum findtype WHICHFIND; /*=PREFER_QUICKFIND*/ enum helpcontext { HCunknown, HCconfigUDC, HCconfigDevices, HCconfigMount, HCconfigShortcuts, HCconfigNetworks, HCconfigterminal, HCconfigMisc, HCconfigMiscStatbar, HCconfigMiscExport, HCarchive, HCconfigDisplay, HCterminalEm, HCsearch, HCmultiplerename , HCproperties, HCdnd, HCbookmarks, HCfilter, HCopenwith }; extern helpcontext HelpContext; // What Help to show on F1 enum InotifyEventType { IET_create, IET_delete, IET_rename, IET_modify, IET_attribute, IET_umount, IET_other }; enum UnRedoType { URT_notunredo, URT_undo, URT_redo }; enum CDR_Result { CDR_skip, CDR_ok, CDR_renamed = CDR_ok, CDR_overwrite }; enum MovePasteResult { MPR_fail, MPR_thread, MPR_completed }; enum Thread_Type { ThT_paste = 1, ThT_text = 2, /*ThT_SOMETHINGELSE = 4*/ ThT_all = -1}; // These are treated as flags #endif // EXTERNSH ./4pane-6.0/ArchiveStream.cpp0000666000175000017500000032442313566743310014750 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: ArchiveStream.cpp // Purpose: Virtual manipulation of archives // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/tokenzr.h" #include "wx/stream.h" #include "wx/zipstrm.h" #include "wx/zstream.h" #include "wx/mstream.h" #include "wx/wfstream.h" #include "Devices.h" #include "MyDirs.h" #include "MyGenericDirCtrl.h" #include "MyFrame.h" #include "Externs.h" #include "Redo.h" #include "Archive.h" #include "ArchiveStream.h" #include "Filetypes.h" #include "Misc.h" #include "bzipstream.h" #include "Otherstreams.h" #include wxString FakeFiledata::PermissionsToText() // Returns a string describing the filetype & permissions eg -rwxr--r--. Adapted from real FileData, but uses the archivestream::GetMode() info { wxString text; text.Printf(wxT("%c%c%c%c%c%c%c%c%c%c"), IsDir() ? wxT('d') : wxT('-'), !!(Permissions & S_IRUSR) ? wxT('r') : wxT('-'), !!(Permissions & S_IWUSR) ? wxT('w') : wxT('-'), !!(Permissions & S_IXUSR) ? wxT('x') : wxT('-'), !!(Permissions & S_IRGRP) ? wxT('r') : wxT('-'), !!(Permissions & S_IWGRP) ? wxT('w') : wxT('-'), !!(Permissions & S_IXGRP) ? wxT('x') : wxT('-'), !!(Permissions & S_IROTH) ? wxT('r') : wxT('-'), !!(Permissions & S_IWOTH) ? wxT('w') : wxT('-'), !!(Permissions & S_IXOTH) ? wxT('x') : wxT('-') ); if (text.GetChar(0) == wxT('-')) // If it wasn't a dir, { if (IsSymlink()) text.SetChar(0, wxT('l')); // see if it's one of the miscellany, rather than a regular file else if (IsCharDev())text.SetChar(0, wxT('c')); else if (IsBlkDev()) text.SetChar(0, wxT('b')); else if (IsSocket()) text.SetChar(0, wxT('s')); else if (IsFIFO()) text.SetChar(0, wxT('p')); } // Now amend string if the unusual permissions are set. if (!!(Permissions & S_ISUID)) text.GetChar(3) == wxT('x') ? text.SetChar(3, wxT('s')) : text.SetChar(3, wxT('S')); // If originally 'x', use lower case, otherwise upper if (!!(Permissions & S_ISGID)) text.GetChar(6) == wxT('x') ? text.SetChar(6, wxT('s')) : text.SetChar(6, wxT('S')); if (!!(Permissions & S_ISVTX)) text.GetChar(9) == wxT('x') ? text.SetChar(9, wxT('t')) : text.SetChar(9, wxT('T')); return text; } enum ffscomp FakeFiledata::Compare(FakeFiledata* comparator, FakeFiledata* candidate) // Finds how the candidate file/dir is related to the comparator one { if (comparator==NULL || candidate==NULL) return ffsRubbish; if (!comparator->IsDir()) return ffsRubbish; // I can't see atm why we'd be comparing a file with another file wxString candid = candidate->GetFilepath(); if (!candidate->IsDir()) candid = candid.BeforeLast(wxFILE_SEP_PATH); candid += wxFILE_SEP_PATH; // In case this is a file, amputate the filename // Go thru the dirs segment by segment until there's a mismatch, or 1 runs out. We can rely on each starting/ending in '/' as we did it in the ctor wxStringTokenizer candtok(candid.Mid(1), wxFILE_SEP_PATH); wxStringTokenizer comptok(comparator->GetFilepath().Mid(1), wxFILE_SEP_PATH); while (comptok.HasMoreTokens()) { if (!candtok.HasMoreTokens()) { if (candidate->IsDir()) return ffsParent; // The candidate is parent to the comparator dir else return ffsCousin; // Otherwise its a file belonging to a (g)parent dir. ffsCousin is the best description } wxString tmp = comptok.GetNextToken(); int ans = tmp.Cmp(candtok.GetNextToken()); // Compare next token of each if (ans != 0) return ffsCousin; // Different so return that they're not (very) related } // Otherwise identical so loop if (candtok.HasMoreTokens()) return ffsChild; // The candidate matches but is longer, so it's a (g)child of the comparator if (!candidate->IsDir()) return ffsChild; // The candidate matches in terms of Path, but it's a file of the comparator return ffsEqual; // Otherwise they must be identical dirs } //----------------------------------------------------------------------------------------------------------------------- void FakeDir::Clear() { for (int n = (int)dirdataarray->GetCount(); n > 0; --n) { FakeDir* item = dirdataarray->Item(n-1); delete item; } for (int n = (int)filedataarray->GetCount(); n > 0; --n) { DataBase* item = filedataarray->Item(n-1); delete item; } dirdataarray->Clear(); filedataarray->Clear(); } enum ffscomp FakeDir::AddDir(FakeDir* dir) { if (dir == NULL) return ffsRubbish; enum ffscomp ans = Compare(this, dir); // First compare the dir with this one if (ans != ffsChild) return ans; // If it's above us or in another lineage or rubbish, say so for (size_t n=0; n < SubDirCount(); ++n) { enum ffscomp ans = Compare(GetFakeDir(n), dir); if (ans == ffsChild) return GetFakeDir(n)->AddDir(dir);// It's a (g)child of this dir, add it there if (ans != ffsCousin) { delete dir; return ffsDealtwith; } // If parent (which shouldn't be possible) or a duplicate or rubbish, abort } // Still here? Then it must be a previously unacknowledged child. Add it bit by bit, in case it's a grandchild & we haven't yet met its parent FakeDir *AddHere = this, *lastdir = parentdir; // The first segment of new dir will be added to us, of course wxString rest = dir->GetFilepath().Mid(GetFilepath().Len());// Get the bit of string subsequent to this dir wxStringTokenizer extra(rest, wxFILE_SEP_PATH, wxTOKEN_STRTOK); // NB use wxTOKEN_STRTOK here so as not to return an empty token from /foo/bar//baz while (extra.HasMoreTokens()) { wxString fp = AddHere->GetFilepath() + extra.GetNextToken() + wxFILE_SEP_PATH; // Add this segment to the previous path, and create a new child FakeDir with that name if (extra.HasMoreTokens()) // If there's more to come after this segment, create a new fakedir for this bit { FakeDir* newdir = new FakeDir(fp, 0, (time_t)0, 0,wxT(""),wxT(""), lastdir); AddHere->AddChildDir(newdir); parentdir = AddHere; AddHere = newdir; } else AddHere->AddChildDir(dir); // Otherwise add the actual new dir! } return ffsDealtwith; } enum ffscomp FakeDir::AddFile(FakeFiledata* file) { if (file == NULL) return ffsRubbish; enum ffscomp ans = Compare(this, file); // First compare the file with this one if (ans != ffsChild) return ans; // If it's above us or in another lineage or rubbish, say so for (size_t n=0; n < SubDirCount(); ++n) { enum ffscomp ans = Compare(GetFakeDir(n), file); if (ans == ffsChild) return GetFakeDir(n)->AddFile(file); // It belongs in a (g)child of this dir, add it there if (ans != ffsCousin) { delete file; return ffsDealtwith; } // If it belongs in a parent (which shouldn't be possible) or is a duplicate or rubbish, abort } // Still here? Then it must be a previously unacknowledged child. Add it bit by bit, in case it's a grandchild & we haven't yet met its parent wxString rest = file->GetFilepath().Mid(GetFilepath().Len()); // Get the bit of string subsequent to this dir wxString filename = rest.AfterLast(wxFILE_SEP_PATH); rest = rest.BeforeLast(wxFILE_SEP_PATH); // Separate into path & name FakeDir *AddHere = this, *lastdir = parentdir; // The first segment of any new dir will be added to us, of course wxStringTokenizer extra(rest, wxFILE_SEP_PATH, wxTOKEN_STRTOK); // Go thru any new Path, creating dirs as we go while (extra.HasMoreTokens()) { wxString fp = AddHere->GetFilepath() + extra.GetNextToken() + wxFILE_SEP_PATH; // Add this segment to the previous path, and create a new child FakeDir with that name FakeDir* newdir = new FakeDir(fp, 0, (time_t)0, 0,wxT(""),wxT(""), lastdir); AddHere->AddChildDir(newdir); parentdir = AddHere; AddHere = newdir; } AddHere->AddChildFile(file); // We've created any necessary dir structure. Now we can finally add the file return ffsDealtwith; } FakeDir* FakeDir::FindSubdirByFilepath(const wxString& targetfilepath) { if (GetFilepath() == targetfilepath || GetFilepath() == targetfilepath+wxFILE_SEP_PATH) return this; // If we're it, return us for (size_t n=0; n < SubDirCount(); ++n) { FakeDir* child = dirdataarray->Item(n)->FindSubdirByFilepath(targetfilepath); if (child != NULL) return child; } // Otherwise recurse thru children return NULL; } FakeFiledata* FakeDir::FindFileByName(wxString filepath) { if (filepath.IsEmpty()) return NULL; if (filepath.Last() == wxFILE_SEP_PATH) filepath = filepath.BeforeLast(wxFILE_SEP_PATH); // In case there's a spurious terminal '/' wxString path = filepath.BeforeLast(wxFILE_SEP_PATH), filename = filepath.AfterLast(wxFILE_SEP_PATH); FakeDir* dir = FindSubdirByFilepath(path); if (dir == NULL) return NULL; return dir->GetFakeFile(filename); } bool FakeDir::HasSubDirs(wxString& dirname) // Find a FakeDir with this name, and see if it has subdirs { FakeDir* dir = FindSubdirByFilepath(dirname); // Find if a dir with this name exists. NULL if not if (dir != NULL) return (dir->SubDirCount() > 0); // Then just count the subdirs return false; } bool FakeDir::HasFiles(wxString& dirname) // Find a FakeDir with this name, and see if it has files { FakeDir* dir = FindSubdirByFilepath(dirname); if (dir != NULL) return (dir->FileCount() > 0); return false; } bool FakeDir::GetFilepaths(wxArrayString& array) { if (!FileCount()) return false; for (size_t n=0; n < FileCount(); ++n) { DataBase* temp = GetFakeFiledata(n); array.Add(temp->GetFilepath()); } return true; } void FakeDir::GetDescendants(wxArrayString& array, bool dirs_only/*=false*/) // Fill the array with all its files & (recursively) its subdirs { if (!dirs_only) GetFilepaths(array); // First add this dir's files to the array (unless we're pasting a dir skeleton) for (size_t n=0; n < SubDirCount(); ++n) // Now for every subdir { FakeDir* temp = GetFakeDir(n); if (temp==NULL) continue; array.Add(temp->GetFilepath()); // Add the subdir temp->GetDescendants(array, dirs_only); // and recurse thru it } } wxULongLong FakeDir::GetSize() // Returns the size of its files { wxULongLong totalsize = 0; for (size_t n=0; n < FileCount(); ++n) // First add the size of each file totalsize += GetFakeFiledata(n)->Size(); // Since we've just worked it out anyway, why not update our 'm_size' too size = totalsize; return totalsize; } wxULongLong FakeDir::GetTotalSize() // Returns the size of all its files & those of its subdirs { wxULongLong totalsize = GetSize(); // First the files for (size_t n=0; n < SubDirCount(); ++n) // Now recursively for every subdir totalsize += GetFakeDir(n)->GetTotalSize(); return totalsize; } //----------------------------------------------------------------------------------------------------------------------- FakeFilesystem::FakeFilesystem(wxString filepath, wxULongLong size, time_t Time, size_t Perms, wxString Owner/*=wxT("")*/, wxString Group/*=wxT("")*/) { rootdir = new FakeDir(filepath, size, Time, Perms, Owner, Group); // Create the 'root' dir, which will be the archive itself currentdir = rootdir; // We start with the root } void FakeFilesystem::AddItem(wxString filepath, wxULongLong size, time_t Time, size_t Perms, DB_filetype Type, const wxString& Target/*=wxT("")*/, const wxString& Owner/*=wxT("")*/, const wxString& Group/*=wxT("")*/) { if (filepath.IsEmpty()) return; if (Type == DIRTYPE) rootdir->AddDir(new FakeDir(filepath, size, Time, Perms, Owner, Group, rootdir)); else rootdir->AddFile(new FakeFiledata(filepath, size, Time, Type, Target, Perms, Owner, Group)); } //----------------------------------------------------------------------------------------------------------------------- bool ArcDir::Open(wxString dirName) { if (arc == NULL || arc->Getffs() == NULL || dirName.IsEmpty()) return false; if (arc->Getffs()->GetRootDir()->FindSubdirByFilepath(dirName) == NULL) return false; filepaths.Clear(); startdir = dirName; // This is the dir to investigate. We need to save it to use in ArcDir::GetFirst isopen = true; return true; } bool ArcDir::GetFirst(wxString* filename, const wxString& filespec, int flags) { SetFileSpec(filespec); SetFlags(flags); wxString currentcurrentdir = arc->Getffs()->GetCurrentDir()->GetFilepath(); // Save the current currentdir if (!arc->SetPath(startdir)) { arc->SetPath(currentcurrentdir); return false; } // Change it to point to the dir we're interested in if (m_flags & wxDIR_DIRS) { wxArrayString temp; arc->GetDirs(temp); filepaths = temp; } if (m_flags & wxDIR_FILES) arc->Getffs()->GetCurrentDir()->GetFilepaths(filepaths); arc->SetPath(currentcurrentdir); // Revert to the original currentdir if (filepaths.GetCount() > 0) { nextfile=0; return GetNext(filename); } else return false; } bool ArcDir::GetNext(wxString* filename) { if (filepaths.IsEmpty() || nextfile < 0) return false; while ((size_t)nextfile < filepaths.GetCount()) { wxString name = filepaths[ nextfile++ ]; if (m_filespec.IsEmpty() // An empty filespec is considered to match everything || wxMatchWild(m_filespec, name)) // Pass this name thru the filter { *filename = name; return true; } } return false; // No (more) names that match filespec } //----------------------------------------------------------------------------------------------------------------------- ArchiveStream::ArchiveStream(DataBase* archive) // It's a real archive { m_membuf = NULL; wxString name = archive->GetFilepath(); if (name.IsEmpty()) return; if (name.GetChar(name.Len()-1) != wxFILE_SEP_PATH) name << wxFILE_SEP_PATH; // Although it's an archive, not a real dir, for our purposes we need it to pretend ffs = new FakeFilesystem(name, archive->Size(), archive->ModificationTime(), archive->GetPermissions(), archive->GetOwner(), archive->GetGroup()); Dirty = Nested = false; archivename = name; } ArchiveStream::ArchiveStream(wxString name) // Used for nested archives { m_membuf = NULL; if (name.IsEmpty()) return; if (name.GetChar(name.Len()-1) != wxFILE_SEP_PATH) name << wxFILE_SEP_PATH; // Although it's an archive, not a real dir, for our purposes we need it to pretend ffs = new FakeFilesystem(name, 0, 0, 0); Dirty = false; Nested = true; archivename = name; } bool ArchiveStream::LoadToBuffer(wxString filepath) // Used by the subclassed ctors to load the archive into m_membuf { wxFFileInputStream in(filepath); // Load the archive thru a wxFFileInputStream wxStreamBuffer streambuf((wxInputStream&)in, wxStreamBuffer::read); // and store it first in a wxStreamBuffer (since this can cope with a stream feed) size_t size = in.GetSize(); // This is how much was loaded i.e. the file size if (!size) return false; wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the streambuffer to a memorybuffer streambuf.Read(buf, size); // is by using an intermediate char[] delete m_membuf; // Get rid of any old data, otherwise we'll leak when reloading m_membuf = new wxMemoryBuffer(size); // Now (at last) we can store the data in a memory buffer m_membuf->AppendData(buf, size); delete[] buf; return true; } bool ArchiveStream::LoadToBuffer(wxMemoryBuffer* mbuf) // Reload m_membuf with data from a different pane's buffer { if (mbuf == NULL) return false; delete m_membuf; // Get rid of any old data, otherwise we'll leak m_membuf = new wxMemoryBuffer(mbuf->GetDataLen()); m_membuf->AppendData(mbuf->GetData(), mbuf->GetDataLen()); return true; } bool ArchiveStream::SaveBuffer() // Saves the compressed archive in buffer back to the filesystem { if (IsNested()) { Dirty = true; return true; } // Except we don't if this is a nested archive: it gets saved on Pop wxFFileOutputStream fileoutstream(archivename); if (!fileoutstream.Ok()) return false; fileoutstream.Write(m_membuf->GetData(), m_membuf->GetDataLen()); return fileoutstream.IsOk(); // Returns true if the Write was successful } void ArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } bool ArchiveStream::IsWithin(wxString filepath) // Find if the passed filepath is within this archive { bool isdir = Getffs()->GetRootDir()->FindSubdirByFilepath(filepath) != NULL; // Start by seeing if there's a dir with this name if (isdir) return true; return (Getffs()->GetRootDir()->FindFileByName(filepath) != NULL); // Failing that, try for a file } FakeFiledataArray* ArchiveStream::GetFiles() // Returns the files for the current 'path' { return ffs->GetFiles(); } bool ArchiveStream::GetDirs(wxArrayString& dirs) // Returns in the arraystring the files for the current 'path' { dirs.Clear(); for (size_t n=0; n < ffs->GetCurrentDir()->SubDirCount(); ++n) { FakeDir* dir = ffs->GetCurrentDir()->GetFakeDir(n); dirs.Add(dir->GetFilepath()); // NB a FakeDir GetFilepath() returns the full filepath, whereas a FakeFiledata GetFilepath() currently just gives the filename } return dirs.GetCount() > 0; } bool ArchiveStream::GetDescendants(wxString dirName, wxArrayString& filepaths) // Returns in the array all files, dirs & subdirs files for the path { filepaths.Clear(); FakeDir* dir = Getffs()->GetRootDir()->FindSubdirByFilepath(dirName); if (dir == NULL) return false; // Path must be a dir, not a file or a null dir->GetDescendants(filepaths); // This does the real work return filepaths.GetCount() > 0; } bool ArchiveStream::SetPath(const wxString& dir) { if (dir.IsEmpty()) return false; if ((dir+wxFILE_SEP_PATH) == ffs->GetRootDir()->GetFilepath()) { ffs->SetCurrentDir(ffs->GetRootDir()); return true; } // First check that we're not reverting to root wxString path(dir); if (path.GetChar(path.Len()-1) != wxFILE_SEP_PATH) path << wxFILE_SEP_PATH; FakeDir* newdir = ffs->GetRootDir()->FindSubdirByFilepath(path); if (newdir != NULL) { ffs->SetCurrentDir(newdir); return true; } // Bingo! There's a subdir with this name wxString prepath = dir.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // It wasn't a subdir. Let's check & see if it's a file newdir = ffs->GetRootDir()->FindSubdirByFilepath(prepath); if (newdir == NULL) return false; // No valid parent dir either if (newdir->HasFileCalled(dir.AfterLast(wxFILE_SEP_PATH))) // See if this parent dir contains the correct file { ffs->SetCurrentDir(newdir); return true; } // If so, set path to the parent dir return false; } bool ArchiveStream::OnExtract() // On Extract from context menu. Finds what to extract { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active==NULL) return false; wxArrayString filepaths; size_t count = active->GetMultiplePaths(filepaths); if (!count) return false; bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); wxString empty; wxArrayString resultingfilepaths; bool result = DoExtract(filepaths, empty, resultingfilepaths); if (ClusterWasNeeded) UnRedoManager::EndCluster(); return result; } bool ArchiveStream::DoExtract(wxArrayString& filepaths, wxString& destination, wxArrayString& resultingfilepaths, bool DontUndo/*=false*/, bool dirs_only/*=false*/) // From OnExtract or D'n'D/Paste, or Move { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active==NULL) return false; size_t count = filepaths.GetCount(); if (!count) return false; wxArrayString WithinArcNames; for (size_t n=0; n < count; ++n) { wxString filepath = filepaths[n]; // For each filepath, find and store the bit distal to the archive name if (!SortOutNames(filepath)) return false; // Some implausible breakage wxString WithinArcName(WithinArchiveName); WithinArcNames.Add(WithinArcName); } wxString suggestedfpath = active->arcman->GetPathOutsideArchive(); while (destination.IsEmpty()) // Get the desired destination from the user, if it's not already been provided { wxString msg; if (count >1) msg = _("To which directory would you like these files extracted?"); else msg = _("To which directory would you like this extracted?"); destination = wxGetTextFromUser(msg, _("Extracting from archive"), suggestedfpath); if (destination.IsEmpty()) return false; // A blank answer must be a hint ;) wxString destinationpath(destination); if (destinationpath.Last() == wxFILE_SEP_PATH) destinationpath = destinationpath.BeforeLast(wxFILE_SEP_PATH); FileData DestinationFD(destinationpath); if (DestinationFD.IsValid() && ! DestinationFD.CanTHISUserWriteExec()) // Make sure we have permission to write to the dir { wxMessageDialog dialog(MyFrame::mainframe->GetActivePane(), _("I'm afraid you don't have permission to Create in this directory\n Try again?"), _("No Entry!"), wxYES_NO | wxICON_ERROR); if (dialog.ShowModal() == wxID_YES) { destination.Empty(); continue; } else return false; } bool flag=false; for (size_t n=0; n < count; ++n) { FileData fd(destinationpath + wxFILE_SEP_PATH + WithinArcNames[n]); // Check for pre-existence of each file: at least those in the base dir if (fd.IsValid()) { wxString msg; msg.Printf(_("Sorry, %s already exists\n Try again?"), fd.GetFilepath().c_str()); wxMessageDialog dialog(active, msg, _("Oops!"), wxYES_NO | wxICON_ERROR); if (dialog.ShowModal() == wxID_YES) { destination.Empty(); flag=true; break; } else return false; } } if (flag == true) continue; } if (destination.Last() != wxFILE_SEP_PATH) destination << wxFILE_SEP_PATH; // Nasty things would happen otherwise if (!Extract(filepaths, destination, resultingfilepaths, dirs_only)) return false; wxArrayInt IDs; IDs.Add(active->GetId()); if (!DontUndo) { UnRedoExtract* UnRedoptr = new UnRedoExtract(resultingfilepaths, destination, IDs); UnRedoManager::AddEntry(UnRedoptr); } MyFrame::mainframe->OnUpdateTrees(destination, IDs, wxT(""), true); return true; } bool ArchiveStream::SortOutNames(const wxString& filepath) // Subroutine used in Extract etc, so made into a function in the name of code reuse { WithinArchiveName.Empty(); WithinArchiveNames.Clear(); WithinArchiveNewNames.Clear(); IsDir = false; archivename = ffs->GetRootDir()->GetFilepath(); if (archivename.IsEmpty()) return false; // Now get the true archivename: the archive expects it ;) wxString FakeFilesystemPath(ffs->GetCurrentDir()->GetFilepath()); if (FakeFilesystemPath.IsEmpty()) return false; // First use current path, in case we're recursing in a subdir wxString filename; if (!(filepath == archivename.BeforeLast(wxFILE_SEP_PATH) || filepath.StartsWith(FakeFilesystemPath, &filename))) // This effectively removes the current within-archive path from filepath, leaving the filename { if (!filename.IsEmpty()) // just in case filepath IS the archive { if (ffs->GetCurrentDir()->HasDirCalled(filename)) IsDir = true; // We'll need to know, as dirs get a terminal '/' else if (!ffs->GetCurrentDir()->HasFileCalled(filename)) return false; // If it's not a file either, abort! } else { if (FakeFilesystemPath == (filepath+wxFILE_SEP_PATH)) IsDir = true; } } // WithinArchiveName is the filename to extract: may be subpath/filename within the archive if (!filepath.StartsWith(archivename, &WithinArchiveName)) return false; // Get the "filename" bit: may have a bit of path-within-archive too if (IsDir) WithinArchiveName << wxFILE_SEP_PATH; // Dirs in the archive will have a terminal '/' archivename = archivename.BeforeLast(wxFILE_SEP_PATH); // Remove the archive's spurious terminal '/' return true; } // Get the within-archive names, any descendants, and (if renaming) the new names bool ArchiveStream::AdjustFilepaths(const wxArrayString& filepaths, const wxString& destpath, wxArrayString& newnames, adjFPs whichtype/*=afp_neither*/, bool dirs_only/*=false*/, bool files_only/*=false*/) { WithinArchiveNames.Clear(); WithinArchiveNewNames.Clear(); archivename = ffs->GetRootDir()->GetFilepath(); if (archivename.IsEmpty()) return false; // Get the archive name, which we need to remove // If we're from Rename or Extract, newnames will hold the new names/destination path if (whichtype==afp_rename && newnames.GetCount() > filepaths.GetCount()) return false; // If there are too many of them, abort for (size_t n=0; n < filepaths.GetCount(); ++n) // For every file/dir we were passed { if (!filepaths[n].StartsWith(archivename, &WithinArchiveName)) continue; // Amputate the /path/to/archive bit wxString WithinArchiveNewname; if (whichtype==afp_rename) if (!newnames[n].StartsWith(archivename, &WithinArchiveNewname)) continue; // We need to get rid of the path from newname too FakeDir* fd = ffs->GetRootDir()->FindSubdirByFilepath(filepaths[n]); // See if it's a dir if (fd == NULL) { if (dirs_only) continue; // Don't look for files if it's not a dir and we only want those FakeFiledata* ffd = ffs->GetRootDir()->FindFileByName(filepaths[n]); if (ffd == NULL) continue; // If it's not a dir, or a file, abort this one WithinArchiveNames.Add(WithinArchiveName); if (whichtype==afp_rename) WithinArchiveNewNames.Add(WithinArchiveNewname); // If we're renaming, add the corresponding new name else { newnames.Add(destpath + filepaths[n].AfterLast(wxFILE_SEP_PATH)); WithinArchiveNewNames.Add(newnames[n]); } // Extract to here } else // It's a dir. We need to find & process all descendants too { if (!files_only) // but only if we _want_ dirs { WithinArchiveNames.Add(WithinArchiveName + wxFILE_SEP_PATH); // but first do the dir itself if (whichtype==afp_rename) WithinArchiveNewNames.Add(WithinArchiveNewname); // If we're renaming, add the corresponding new dir name else { wxString dirname; if (filepaths[n].Last() == wxFILE_SEP_PATH) dirname = (filepaths[n].BeforeLast(wxFILE_SEP_PATH)).AfterLast(wxFILE_SEP_PATH); else dirname = filepaths[n].AfterLast(wxFILE_SEP_PATH); newnames.Add(destpath + dirname); WithinArchiveNewNames.Add(destpath + dirname); // Extract to here } wxArrayString fpaths; fd->GetDescendants(fpaths, dirs_only); // This recursively gets all (files and) subdirs into fpaths size_t distalbit = 0; // We need this to extract bar/ from archive/foo/bar. Assume 0 to start with, which would be true for foo if (WithinArchiveName.find(wxFILE_SEP_PATH) != wxString::npos) distalbit = WithinArchiveName.BeforeLast(wxFILE_SEP_PATH).Len() + (archivename.Last()==wxFILE_SEP_PATH); // This gets bar/ from archive/foo/bar for (size_t i=0; i < fpaths.GetCount(); ++i) { wxString descendantpart; if (!fpaths[i].StartsWith(archivename, &descendantpart)) continue;// For every descendant, get & add the descendant part WithinArchiveNames.Add(descendantpart); if (whichtype==afp_rename) // If we're renaming, construct the corresponding new name for each WithinArchiveNewNames.Add(WithinArchiveNewname + descendantpart.Mid(WithinArchiveName.Len())); else { newnames.Add(destpath + descendantpart.Mid(distalbit)); WithinArchiveNewNames.Add(destpath + descendantpart.Mid(distalbit)); } // distalbit is calculated to use just the desired distal segments } } } } archivename = archivename.BeforeLast(wxFILE_SEP_PATH); // Remove the archive's spurious terminal '/' return WithinArchiveNames.GetCount() > 0; } bool ArchiveStream::Alter(wxArrayString& filepaths, enum alterarc DoWhich, wxArrayString& newnames, bool dirs_only/*=false*/) // This might be add remove del or rename, depending on the enum { if (filepaths.IsEmpty()) return false; if (DoWhich != arc_add) // If not arc_add, remove the /pathtoarchive/archive bit of each filepath { wxString Unused; if (!AdjustFilepaths(filepaths, Unused, newnames, DoWhich==arc_rename || DoWhich==arc_dup ? afp_rename : afp_neither, dirs_only)) return false; wxBusyCursor busy; if (!DoAlteration(filepaths, DoWhich)) return false; // Do the exciting bit in a tar or zip-specific method } else // If arc_add, get the target dir for insertion into WithinArchivename. I've overloaded newnames to contain its full filepath { if (newnames.IsEmpty()) return false; wxString dest(newnames[0]); if (SortOutNames(dest)) // Sortoutnames also fills archivename. Don't test for success: if we're pasting directly onto the archive, it'll return false if (!IsDir) WithinArchiveName = WithinArchiveName.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // If we're pasting onto a file, remove the filename wxBusyCursor busy; if (!DoAlteration(filepaths, DoWhich, newnames[1], dirs_only)) return false; // Do the exciting bit in a tar or zip-specific method } size_t size = OutStreamPtr->GetSize(); // This is how much was loaded i.e. the file size wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the stream to a memorybuffer ((wxMemoryOutputStream*)OutStreamPtr.get())->CopyTo(buf, size); // is by using an intermediate char[] OutStreamPtr.reset(); // Delete memoutstream delete m_membuf; m_membuf = new wxMemoryBuffer(size); // I've no idea why, but trying to delete the old data by SetDataLen(0) failed :( m_membuf->AppendData(buf, size); // Store the data delete[] buf; SaveBuffer(); ffs->Clear(); // Throw out the old dir structure, and reload ListContentsFromBuffer(archivename); return true; } bool ArchiveStream::MovePaste(MyGenericDirCtrl* originctrl, MyGenericDirCtrl* destctrl, wxArrayString& filepaths, wxString& destpath, bool Moving/*=true*/, bool dirs_only/*=false*/) { if (originctrl == NULL || destctrl == NULL || filepaths.IsEmpty() || destpath.IsEmpty()) return false; bool PastingFromTrash = filepaths[0].StartsWith(DirectoryForDeletions::GetDeletedName()); // We'll need this if we'd Cut from an archive ->trash; & now we're Pasting it bool FromArchive = ! PastingFromTrash && (originctrl->arcman != NULL && originctrl->arcman->IsArchive()); // If we're PastingFromTrash, originctrl->->IsArchive() would be irrelevantly true bool ToArchive = (destctrl->arcman != NULL && destctrl->arcman->IsArchive()); wxString OriginPath(filepaths[0]); // We'll need this later OriginPath = OriginPath.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; wxArrayInt IDs; IDs.Add(destctrl->GetId()); // Make an int array, & store the ID of destination pane if (Moving) IDs.Add(originctrl->GetId()); // If Moving, add the origin ID if (FromArchive && ! ToArchive) { FileData dp(destpath); if (!dp.IsValid()) return false; // Avoid pasting onto a file if (!dp.IsDir() && ! (dp.IsSymlink() && dp.IsSymlinktargetADir())) destpath = dp.GetPath(); FileData DestinationFD(destpath); if (!DestinationFD.CanTHISUserWriteExec()) // Make sure we have permission to write to the destination dir { wxMessageDialog dialog(destctrl, _("I'm afraid you don't have Permission to write to this Directory"), _("No Entry!"), wxOK | wxICON_ERROR); dialog.ShowModal(); return false; } enum DupRen WhattodoifClash = DR_Unknown, WhattodoifCantRead = DR_Unknown; // These get passed to CheckDupRen. May become SkipAll, OverwriteAll etc, but start with Unknown size_t filecount = filepaths.GetCount(); wxArrayString fpaths; // fpaths will hold the filepaths once they've been checked/amended etc for (size_t n=0; n < filecount; ++n) // For every entry in the clipboard { bool ItsADir = false; // We need to check we're not about to do something illegal if (WhattodoifClash==DR_Rename || WhattodoifClash==DR_Overwrite || WhattodoifClash==DR_Skip || WhattodoifClash==DR_Store) WhattodoifClash = DR_Unknown; // Remove any stale single-shot choice FakeFiledata* fd = Getffs()->GetRootDir()->FindFileByName(filepaths[n]); // Dirs aren't '/'-terminated, so just try it and see if (fd==NULL) { fd = Getffs()->GetRootDir()->FindSubdirByFilepath(filepaths[n]); ItsADir = true; } // Not a file, so try for a dir if (fd==NULL) continue; CheckDupRen CheckIt(destctrl, filepaths[n], destpath, true, fd->ModificationTime()); // Make an instance of the class that tests for this. The 'true' means "From archive" CheckIt.IsMultiple = (filecount > 1); // We use different dialogs for multiple items CheckIt.WhattodoifClash = WhattodoifClash; CheckIt.WhattodoifCantRead = WhattodoifCantRead; CheckIt.ItsADir = ItsADir; // Set CheckIt's variables to match any previous choice if (!CheckIt.CheckForPreExistence()) // Check we're not pasting onto ourselves or a namesake. True means OK { WhattodoifClash = CheckIt.WhattodoifClash; // Store any new choice in local variable. This catches SkipAll & Cancel, which return false if (WhattodoifClash==DR_Cancel) { n = filecount; break; } // Cancel this item & the rest of the loop by increasing n else continue; // Skip this item but continue with loop } else { WhattodoifClash = CheckIt.WhattodoifClash; // Needed to cache any DR_OverwriteAll fpaths.Add(filepaths[n]); // If there was an unskipped clash, this will effect an overwrite. Rename isn't possible ex archive (ie it isn't worth the bother of altering everything to implement it) } } filepaths = fpaths; // Revert to using filepaths. This is a reference, so the caller can use it to count the items actually done if (!filepaths.GetCount()) return false; // If everything was skipped/cancelled, go home bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); wxArrayString destinations; originctrl->arcman->GetArc()->DoExtract(filepaths, destpath, destinations, Moving, dirs_only); // The 'Moving' says don't create an Undo for this; but for a paste we need one if (Moving) // If we're Moving (cf Pasting), delete those files from the archive { wxArrayString unused; originctrl->arcman->GetArc()->Alter(filepaths, arc_remove, unused); UnRedoMoveToFromArchive* UnRedoptr = new UnRedoMoveToFromArchive(filepaths, destinations, OriginPath, destpath, IDs, originctrl, destctrl, amt_from); UnRedoManager::AddEntry(UnRedoptr); MyFrame::mainframe->OnUpdateTrees(OriginPath, IDs, wxT(""), true); } if (ClusterWasNeeded) UnRedoManager::EndCluster(); return true; } if (ToArchive && !FromArchive) { // First check that we have exec permissions for the origin dir FileData OriginFileFD(filepaths[0]); if (!OriginFileFD.CanTHISUserPotentiallyCopy()) { wxMessageDialog dialog(destctrl, _("I'm afraid you don't have permission to access files from this Directory"), _("No Exit!")); return false; } enum DupRen WhattodoifClash = DR_Unknown, WhattodoifCantRead = DR_Unknown; // These get passed to CheckDupRen. May become SkipAll, OverwriteAll etc, but start with Unknown size_t filecount = filepaths.GetCount(); wxArrayString Unskippedfpaths; // Some filepaths may clash and be skipped; store the used ones here wxArrayString fpaths; // fpaths will hold the filepaths once they've been checked/amended etc wxArrayInt DupRens; // This holds the 'WhattodoifClash' responses, which might be 'dup' for one item, 'overwrite' for another for (size_t n=0; n < filecount; ++n) // For every entry in the clipboard { bool ItsADir = false; // We need to check we're not about to do something illegal if (WhattodoifClash==DR_Rename || WhattodoifClash==DR_Overwrite || WhattodoifClash==DR_Skip || WhattodoifClash==DR_Store) WhattodoifClash = DR_Unknown; // Remove any stale single-shot choice FileData fd(filepaths[n]); ItsADir = fd.IsDir(); CheckDupRen CheckIt(destctrl, filepaths[n], destpath); CheckIt.IsMultiple = (filecount > 1); // We use different dialogs for multiple items CheckIt.WhattodoifClash = WhattodoifClash; CheckIt.WhattodoifCantRead = WhattodoifCantRead; CheckIt.ItsADir = ItsADir; // Set CheckIt's variables to match any previous choice int result = CheckIt.CheckForPreExistenceInArchive(); // Check we're not pasting onto ourselves or a namesake. True means OK if (!result) // false means skip or cancel { WhattodoifClash = CheckIt.WhattodoifClash; // Store any new choice in local variable. This catches SkipAll & Cancel, which return false if (WhattodoifClash==DR_Cancel) { n = filecount; break; } // Cancel this item & the rest of the loop by increasing n else continue; // Skip this item but continue with loop } else { WhattodoifClash = CheckIt.WhattodoifClash; // Store any new choice in local variable; it'll be fed back in the next iteration of the loop // 'result' may be 1, in which case there wasn't a clash; or 2, in which case use WhattodoifClash to flag what to do to this item enum DupRen Whattodothistime = (result==1) ? DR_Unknown : WhattodoifClash; if (!ItsADir) { Unskippedfpaths.Add(filepaths[n]); fpaths.Add(filepaths[n]); // If there was an unskipped clash, this will effect a duplication or overwrite, depending on the DupRen returned DupRens.Add(Whattodothistime); // So store that in the corresponding position in this array } else // For a dir, we need to go thru its filepaths to add its children and any subdirs { Unskippedfpaths.Add(filepaths[n]); fpaths.Add(filepaths[n]); DupRens.Add(Whattodothistime); // First do the dir itself wxArrayString tempfpaths; RecursivelyGetFilepaths(filepaths[n], tempfpaths); // The contents of any dirs are now in tempfpaths for (size_t c=0; c < tempfpaths.GetCount(); ++c) // Go through these, storing the overwrite/add info too { fpaths.Add(tempfpaths.Item(c)); DupRens.Add(Whattodothistime); } } } } filepaths = Unskippedfpaths; if (!filepaths.GetCount()) return false; // If everything was skipped/cancelled, go home FakeFiledata* ffd = destctrl->arcman->GetArc()->ffs->GetRootDir()->FindFileByName(destpath); // Destpath doesn't have a '/', so we need to see if it's a file and amputate if (ffd != NULL) destpath = destpath.BeforeLast(wxFILE_SEP_PATH); if (destpath.Last() != wxFILE_SEP_PATH) destpath << wxFILE_SEP_PATH; // Some of the new items may clash with existing ones; and the user may (should!) have decided to overwrite these // If so, we need to extract-to-trash the existing items so that they can be unredone, then remove them from the archive wxArrayString deletions; for (size_t n=0; n < DupRens.GetCount(); ++n) // Start by seeing if the problem exists if ((DupRens[n] == DR_Overwrite) || (DupRens[n] == DR_OverwriteAll)) { wxString distal; if (!fpaths[n].StartsWith(OriginPath, &distal)) continue; deletions.Add(destpath + distal); } bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); if (!deletions.IsEmpty()) { wxFileName trashdirbase; // Create a unique subdir in trashdir, using current date/time if (!DirectoryForDeletions::GetUptothemomentDirname(trashdirbase, delcan)) { wxMessageBox(_("For some reason, trying to create a dir to receive the backup failed. Sorry!")); if (ClusterWasNeeded) UnRedoManager::EndCluster(); return false; } wxArrayString destinations, unused; wxString trashpath(trashdirbase.GetPath()); if (!destctrl->arcman->GetArc()->DoExtract(deletions, trashpath, destinations, true, dirs_only)) // Extract the files to the bin. The true means don't unredo: we'll do it here { wxMessageDialog dialog(destctrl, _("Sorry, backing up failed"), _("Oops!"), wxOK | wxICON_ERROR); if (ClusterWasNeeded) UnRedoManager::EndCluster(); return false; } UnRedoCutPasteToFromArchive* UnRedoptr = new UnRedoCutPasteToFromArchive(deletions, destinations, destpath, trashpath, IDs, destctrl, originctrl, amt_from); UnRedoManager::AddEntry(UnRedoptr); if (!destctrl->arcman->GetArc()->Alter(deletions, arc_remove, unused)) // Then remove from the archive { wxMessageDialog dialog(destctrl, _("Sorry, removing items failed"), _("Oops!"), wxOK | wxICON_ERROR); if (ClusterWasNeeded) UnRedoManager::EndCluster(); return false; } } wxArrayString Path; // We have to provide a 2nd arraystring anyway due to the Alter API, so use it to transport the path Path.Add(destpath); wxString originpath = OriginFileFD.GetPath(); // We also need to know the 'root' of the origin path if (originpath.Last() != wxFILE_SEP_PATH) originpath << wxFILE_SEP_PATH; Path.Add(originpath); // This too will kludgily pass if (!destctrl->arcman->GetArc()->Alter(fpaths, arc_add, Path, dirs_only)) // Do the Paste bit of the Move { if (ClusterWasNeeded) UnRedoManager::EndCluster(); return false; } wxArrayString destinations; bool needsyield(false); for (size_t n=0; n < filepaths.GetCount(); ++n) // Do the delete bit { if (Moving) { wxFileName From(filepaths[n]); originctrl->ReallyDelete(&From); #if wxVERSION_NUMBER > 2812 && (wxVERSION_NUMBER < 3003 || wxVERSION_NUMBER == 3100) // Earlier wx3 version have a bug (http://trac.wxwidgets.org/ticket/17122) that can cause segfaults if we SetPath() on returning from here if (From.IsDir()) needsyield = true; // Yielding works around the problem by altering the timing of incoming fswatcher events #endif } wxString distal; if (!filepaths[n].StartsWith(OriginPath, &distal)) continue; destinations.Add(destpath + distal); // Fill destinations array ready for UnRedoing } if (needsyield) wxSafeYield(); if (Moving) { UnRedoMoveToFromArchive* UnRedoptr = new UnRedoMoveToFromArchive(filepaths, destinations, OriginPath, destpath, IDs, originctrl, destctrl, amt_to); UnRedoManager::AddEntry(UnRedoptr); MyFrame::mainframe->OnUpdateTrees(OriginPath, IDs, wxT(""), true); } else // Move would have done the Paste Unredo bit too. Since we're not Moving, do it here { UnRedoArchivePaste* UnRedoptr = new UnRedoArchivePaste(fpaths, destinations, OriginPath, destpath, IDs, destctrl, _("Paste"), dirs_only); UnRedoManager::AddEntry(UnRedoptr); } if (ClusterWasNeeded) UnRedoManager::EndCluster(); MyFrame::mainframe->OnUpdateTrees(destpath, IDs, wxT(""), true); return true; } // If we're here, we are moving/pasting from one archive to another, which might be: // Within the same archive in the same pane --- Anything that's really a Rename/Dup happens in DoThingsWithinSameArchive(). This is for moving/pasting between (sub)dirs // Within the same archive displayed in different panes --- Ditto, then reload the other one (as otherwise the 2 will be out of sync) // Between different archives displayed in different panes --- Extract to a tempfile, then add to the 2nd archive. If moving, delete from the 1st if (originctrl->arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath() // Within the same archive in the same or different panes, so Rename == destctrl->arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath()) { wxArrayString newpaths; FakeFiledata* ffd = ffs->GetRootDir()->FindFileByName(destpath); // Destpath doesn't have a '/', so we need to see if it's a file and amputate. The '/' gets added later if (ffd) destpath = destpath.BeforeLast(wxFILE_SEP_PATH); if (destpath.Last() != wxFILE_SEP_PATH) destpath << wxFILE_SEP_PATH; for (size_t n=0; n < filepaths.GetCount(); ++n) // Go thru the filepaths, changing the paths { wxString filename; if (filepaths.Item(n).Last() != wxFILE_SEP_PATH) filename = filepaths.Item(n).AfterLast(wxFILE_SEP_PATH); else filename = (filepaths.Item(n).BeforeLast(wxFILE_SEP_PATH)).AfterLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // If it's a dir, manoevre round the terminal '/' newpaths.Add(destpath + filename); } int whattodoifclash = XRCID("DR_Unknown"); for (size_t n=newpaths.GetCount(); n > 0; --n) // Do a poor-man's CheckIt.WhattodoifClash { if (ffs->GetRootDir()->FindFileByName(newpaths.Item(n-1)) || ffs->GetRootDir()->FindSubdirByFilepath(newpaths.Item(n-1))) { // It's difficult/impossible to cope with a clash when moving between archives, so don't try if (whattodoifclash != XRCID("SkipAll")) { MyButtonDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, destctrl, wxT("PoorMansClashDlg")); wxString distal; if (!newpaths.Item(n-1).StartsWith(destpath+wxFILE_SEP_PATH, &distal)) distal = newpaths.Item(n-1); // Try to show only the in-archive bit of the fpath ((wxStaticText*)dlg.FindWindow(wxT("Filename")))->SetLabel(distal); dlg.GetSizer()->Fit(&dlg); whattodoifclash = dlg.ShowModal(); // whattodoifclash might now hold Skip, SkipAll or Cancel if (whattodoifclash == XRCID("Cancel")) return false; } newpaths.RemoveAt(n-1); filepaths.RemoveAt(n-1); } } if (filepaths.IsEmpty()) return false; if (!destctrl->arcman->GetArc()->Alter(filepaths, Moving ? arc_rename : arc_dup, newpaths, dirs_only)) // Do the rename. NB we use the destination pane here, and (maybe) reload the origin return false; if (originctrl != destctrl && originctrl != destctrl->partner) // If we have 2 editions of the same archive open, reload the origin one { archivename = ffs->GetRootDir()->GetFilepath(); archivename = archivename.BeforeLast(wxFILE_SEP_PATH); originctrl->arcman->GetArc()->Getffs()->Clear(); // Throw out the old dir structure, and reload if (!IsNested()) { if (!archivename.IsEmpty()) originctrl->arcman->GetArc()->LoadToBuffer(archivename); } else originctrl->arcman->GetArc()->LoadToBuffer(destctrl->arcman->GetArc()->GetBuffer()); // If we're in a nested buffer situation, copy the updated buffer into the out-of-date one originctrl->arcman->GetArc()->ListContentsFromBuffer(archivename); } bool ClusterWasNeeded(false); if (Moving) ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); wxArrayInt IDs; IDs.Add(originctrl->GetId()); bool IdenticalArc = (originctrl->arcman->GetArc()->Getffs() == destctrl->arcman->GetArc()->Getffs()); // Are we moving/pasting to a subdir, within the same pane? UnRedoArchiveRen* UnRedoptr = new UnRedoArchiveRen(filepaths, newpaths, IDs, destctrl, Moving==false, IdenticalArc ? NULL : originctrl, dirs_only); // Moving==false == not duplicating. Passing destctrl says 'Only if still visible' UnRedoManager::AddEntry(UnRedoptr); if (Moving) { if (ClusterWasNeeded) UnRedoManager::EndCluster(); MyFrame::mainframe->OnUpdateTrees(OriginPath, IDs, wxT(""), true); } MyFrame::mainframe->OnUpdateTrees(destpath, IDs, wxT(""), true); return true; } else // Otherwise we're going between different archives { wxArrayString destinations, newpaths; wxString dest(destpath); FakeFiledata* ffd = destctrl->arcman->GetArc()->ffs->GetRootDir()->FindFileByName(dest); // Destpath doesn't have a '/', so we need to see if it's a file and amputate if (ffd != NULL) dest = dest.BeforeLast(wxFILE_SEP_PATH); if (dest.Last() != wxFILE_SEP_PATH) dest << wxFILE_SEP_PATH; for (size_t n=0; n < filepaths.GetCount(); ++n) // Go thru the filepaths, changing the paths { wxString filename; if (filepaths.Item(n).Last() != wxFILE_SEP_PATH) filename = filepaths.Item(n).AfterLast(wxFILE_SEP_PATH); else filename = (filepaths.Item(n).BeforeLast(wxFILE_SEP_PATH)).AfterLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // If it's a dir, manoevre round the terminal '/' newpaths.Add(dest + filename); } FakeDir* droot = destctrl->arcman->GetArc()->Getffs()->GetRootDir(); int whattodoifclash = XRCID("DR_Unknown"); for (size_t n=newpaths.GetCount(); n > 0; --n) // Do a poor-man's CheckIt.WhattodoifClash { if (droot->FindFileByName(newpaths.Item(n-1)) || droot->FindSubdirByFilepath(newpaths.Item(n-1))) { // It's difficult/impossible to cope with a clash when moving between archives, so don't try if (whattodoifclash != XRCID("SkipAll")) { MyButtonDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, destctrl, wxT("PoorMansClashDlg")); wxString distal; if (!newpaths.Item(n-1).StartsWith(dest, &distal)) distal = newpaths.Item(n-1); // Try to show only the in-archive bit of the fpath ((wxStaticText*)dlg.FindWindow(wxT("Filename")))->SetLabel(distal); dlg.GetSizer()->Fit(&dlg); whattodoifclash = dlg.ShowModal(); // whattodoifclash might now hold Skip, SkipAll or Cancel if (whattodoifclash == XRCID("Cancel")) return false; } newpaths.RemoveAt(n-1); filepaths.RemoveAt(n-1); } } if (!filepaths.GetCount()) return false; // If everything was skipped/cancelled, go home wxArrayString tempfiles = originctrl->arcman->ExtractToTempfile(filepaths, dirs_only); // This extracts the selected filepaths to temporary files, which it returns if (tempfiles.IsEmpty()) return false; wxArrayString Path; Path.Add(dest); // We have to provide a 2nd arraystring anyway due to the Alter API, so use it to transport the path FileData tmppath(tempfiles[0]); wxString tfileoriginpath = tmppath.GetPath(); // We also need to know the 'root' of the tempfile path if (tfileoriginpath.Last() != wxFILE_SEP_PATH) tfileoriginpath << wxFILE_SEP_PATH; Path.Add(tfileoriginpath); // This too will kludgily pass if (!destctrl->arcman->GetArc()->Alter(tempfiles, arc_add, Path, dirs_only)) return false; // Do the Paste bit of the Move for (size_t n=0; n < tempfiles.GetCount(); ++n) // Fill destinations array ready for UnRedoing { wxString distal; if (!tempfiles[n].StartsWith(tfileoriginpath, &distal)) continue; destinations.Add(dest + distal); } bool ClusterWasNeeded = UnRedoManager::StartClusterIfNeeded(); if (Moving) // If we're Moving (cf Pasting), delete those files from the archive { wxArrayString unused; originctrl->arcman->GetArc()->Alter(filepaths, arc_remove, unused); UnRedoArchiveDelete* UnRedoptr = new UnRedoArchiveDelete(filepaths, tempfiles, OriginPath, tfileoriginpath, IDs, originctrl, _("Move")); UnRedoManager::AddEntry(UnRedoptr); MyFrame::mainframe->OnUpdateTrees(OriginPath, IDs, wxT(""), true); } UnRedoArchivePaste* UnRedoptr = new UnRedoArchivePaste(tempfiles, destinations, tfileoriginpath, dest, IDs, destctrl, Moving ? _("Move") : _("Paste"), dirs_only); UnRedoManager::AddEntry(UnRedoptr); if (ClusterWasNeeded) UnRedoManager::EndCluster(); MyFrame::mainframe->OnUpdateTrees(destpath, IDs, wxT(""), true); return true; } } // Abstracted from MyGenericDirCtrl::OnDnDMove and OnPaste to cope with renaming-by-Paste or D'n'D within an archive bool ArchiveStream::DoThingsWithinSameArchive(MyGenericDirCtrl* originctrl, MyGenericDirCtrl* destctrl, wxArrayString& filearray, wxString& destinationpath) { if (!filearray.GetCount()) return false; // Shouldn't happen bool OrigIsArchive = originctrl && originctrl->arcman && originctrl->arcman->IsArchive(); bool DestIsArchive = destctrl && destctrl->arcman && destctrl->arcman->IsArchive(); bool WithinSameArchive = (OrigIsArchive && DestIsArchive && (originctrl->arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath() == destctrl->arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath())); if (!WithinSameArchive) return false; // Try to distinguish between pasting within the same dir, and pasting to elsewhere in the archive wxString dest(destinationpath); if (destctrl->arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(dest)) dest = dest.BeforeLast(wxFILE_SEP_PATH); // If it's a file, amputate wxString lastseg = wxFILE_SEP_PATH, originpath = filearray.Item(0); if (originctrl->arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(originpath)) { originpath = originpath.BeforeLast(wxFILE_SEP_PATH); // If it's a file, amputate if (dest != originpath) return false; // If we're moving/pasting from arc/foo to arc/foo/bar, do it the normal way } else { if (!originctrl->arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(originpath)) return false; // Not a file, not a dir... lastseg << originpath.AfterLast(wxFILE_SEP_PATH); if (dest+lastseg != originpath) return false; // If we're not moving/pasting e.g. arc/foo to arc/, do it the normal way } // If we're Moving/Pasting to the same dir within the same archive (perhaps open on different panes), ask if the user wants to rename MyButtonDialog dlg; wxXmlResource::Get()->LoadDialog(&dlg, destctrl, wxT("QuerySameArchiveRenameDlg")); int result = dlg.ShowModal(); if (result == XRCID("Rename")) { if (filearray.GetCount() > 1) { destctrl->DoMultipleRename(filearray, true); } // Piggyback on the Rename code else { wxString filepath(filearray.Item(0)); // Use the single-selection version destctrl->DoRename(true, filepath); } wxString archivename = originctrl->arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath(); archivename = archivename.BeforeLast(wxFILE_SEP_PATH); destctrl->arcman->GetArc()->Getffs()->Clear(); // Throw out the old dir structure, and reload if (!destctrl->arcman->GetArc()->IsNested()) { if (!archivename.IsEmpty()) destctrl->arcman->GetArc()->LoadToBuffer(archivename); } else destctrl->arcman->GetArc()->LoadToBuffer(destctrl->arcman->GetArc()->GetBuffer()); // If we're in a nested buffer situation, copy the updated buffer into the out-of-date one destctrl->arcman->GetArc()->ListContentsFromBuffer(archivename); wxArrayInt IDs; IDs.Add(originctrl->GetId()); MyFrame::mainframe->OnUpdateTrees(archivename, IDs, wxT(""), true); return true; } return true; // Otherwise the user presumably pressed Cancel, but still return true to signify that nothing more needs be done } //--------------------------------------------------------------------------------- wxDEFINE_SCOPED_PTR(wxInputStream, wxInputStreamPtr) wxDEFINE_SCOPED_PTR(wxOutputStream, wxOutputStreamPtr) wxDEFINE_SCOPED_PTR_TYPE(wxTarEntry); wxDEFINE_SCOPED_PTR_TYPE(wxZipEntry); ZipArchiveStream::ZipArchiveStream(DataBase* archive) : ArchiveStream(archive) // Opens a 'real' archive, not a nested one { Valid = false; if (!archive->IsValid()) return; wxBusyCursor busy; if (!LoadToBuffer(archive->GetFilepath())) return; // Load the wxMemoryBuffer with the archive Valid = true; } ZipArchiveStream::ZipArchiveStream(wxMemoryBuffer* membuf, wxString archivename) : ArchiveStream(archivename) // Opens a 'nested' archive { Valid = false; if (archivename.IsEmpty()) return; m_membuf = membuf; Valid = true; } bool ZipArchiveStream::Extract(wxArrayString& filepaths, wxString destpath, wxArrayString& resultingfilepaths, bool dirs_only/*=false*/, bool files_only/*=false*/) // Extract filepath from the archive { if (filepaths.IsEmpty() || destpath.IsEmpty()) return false; // AdjustFilepaths puts each filepath into WithinArchiveNames, less the /path-to-archive/archive; & creates its dest in WithinArchiveNewNames. If a dir, recursively adds into children too if (!AdjustFilepaths(filepaths, destpath, resultingfilepaths, afp_extract, dirs_only, files_only)) return false; wxZipEntryPtr entry; wxMemoryInputStream meminstream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer m_membuf. 'Extract' it to a memory stream wxZipInputStream zip(meminstream); size_t NumberFound = 0; while (entry.reset(zip.GetNextEntry()), entry.get() != NULL) { int item = WithinArchiveNames.Index(entry->GetName()); // See if this file is one of the ones we're interested in if (item == wxNOT_FOUND) continue; // Found it. If it's a file, extract it. If a dir, make a new dir with this name (*outside* the archive ;) wxLogNull log; if (!entry->IsDir()) // (For a dir there's no data to extract) { wxString Path(resultingfilepaths[ item ]); Path = Path.BeforeLast(wxFILE_SEP_PATH); if (!wxFileName::Mkdir(Path, 0777, wxPATH_MKDIR_FULL)) return false; // Make any necessary dir wxFFileOutputStream out(resultingfilepaths[ item ]); if (!out || ! out.Write(zip) || ! zip.Eof()) return false; // and extract into the new filepath FileData fd(resultingfilepaths[ item ]); if (fd.IsValid()) fd.DoChmod(entry->GetMode()); // Correct the extracted file's permissions } else if (!wxFileName::Mkdir(resultingfilepaths[ item ], 0777, wxPATH_MKDIR_FULL)) return false; // Just create the dir if (++NumberFound >= WithinArchiveNames.GetCount()) return true; // See if we've used all the passed filepaths } return false; } bool ZipArchiveStream::DoAlteration(wxArrayString& filepaths, enum alterarc DoWhich, const wxString& originroot/*=wxT("")*/, bool dirs_only/*=false*/) // Implement add remove del or rename, depending on the enum { wxInputStreamPtr dupptr; GetFromBuffer(); // The archive is in the memory buffer m_membuf. 'Extract' it to InStreamPtr if (DoWhich==arc_dup) // If we're duplicating, we need a 2nd instream, so store the first and re-extract { dupptr.reset(InStreamPtr.release()); GetFromBuffer(true); } wxMemoryOutputStream* memoutstream = new wxMemoryOutputStream; wxZipOutputStream outzip(*memoutstream); outzip.CopyArchiveMetaData(*(wxZipInputStream*)InStreamPtr.get()); wxZipEntryPtr entry, dupentry; while (entry.reset(((wxZipInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) // Go thru the archive, looking for the selected files. { int item = WithinArchiveNames.Index(entry->GetName()); // See if this file is one of the ones we're interested in switch(DoWhich) { case arc_add: break; // Add happens later case arc_remove: if (item != wxNOT_FOUND) continue; // If this file is one of the 2b-removed ones, ignore it, don't add it to the new archive else break; // Otherwise break to copy the entry case arc_dup: dupentry.reset(((wxZipInputStream*)dupptr.get())->GetNextEntry()); // For dup, get the next entry, then fall thru to rename case arc_rename: if (item != wxNOT_FOUND) // For rename, change the name then break to copy the entry { if (entry->IsDir() && WithinArchiveNewNames[ item ].Last() != wxFILE_SEP_PATH) WithinArchiveNewNames[ item ] << wxFILE_SEP_PATH; entry->SetName(WithinArchiveNewNames[ item ]); } break; case arc_del: continue; } // Copy this entry to the outstream if (!entry->IsDir()) { if (!outzip.CopyEntry(entry.release(), *(wxZipInputStream*)InStreamPtr.get())) return false; // CopyEntry is specific to archive/zip-outputsteams, which is why I'm using one here if (DoWhich==arc_dup && item != wxNOT_FOUND) // If we're duplicating, we now need to output the original version to the stream if (!outzip.CopyEntry(dupentry.release(), *(wxZipInputStream*)dupptr.get())) return false; } else { if (!outzip.PutNextDirEntry(entry->GetName(), entry->GetDateTime())) return false; // If it's a dir, this just writes the 'header' info; there isn't any data entry.release(); if (DoWhich==arc_dup && item != wxNOT_FOUND) // If we're duplicating, we now need to output the original version to the stream { if (!outzip.PutNextDirEntry(dupentry->GetName(), dupentry->GetDateTime())) return false; dupentry.release(); } } } if (DoWhich == arc_add) // If we're trying to add, we've just copied all the old entries. Now add new the files to the within-archive dir WithinArchiveName { bool success = false; wxString path = filepaths[0].BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // The first item *must* exist. Use it to find the curent path of the entries: which will be amputated for (size_t n=0; n < filepaths.GetCount(); ++n) { FileData fd(filepaths[n]); if (!fd.IsValid()) continue; wxString Name; if (!filepaths[n].StartsWith(path, &Name)) continue; // Get what's after path into Name: if we've adding dir foo, path==../path/, Name will be /foo or /foo/bar Name = WithinArchiveName + Name; wxDateTime DT(fd.ModificationTime()); if (fd.IsDir()) { success = outzip.PutNextDirEntry(Name, DT); continue; } // Dirs don't have data, so just provide the filepath if (dirs_only) continue; // If we're pasting a dir skeleton, skip the non-dirs code below wxFFileInputStream file(filepaths[n]); if (!file.Ok()) continue; // Make a wxFFileInputStream to get the data to be added wxZipEntry* addentry = new wxZipEntry(Name, DT, file.GetSize()); addentry->SetSystemMadeBy(wxZIP_SYSTEM_UNIX); addentry->SetMode(fd.GetPermissions()); if (!outzip.PutNextEntry(addentry) // and add it to the outputstream || ! outzip.Write(file) || ! file.Eof()) continue; success = true; // Flag that we've at least one successful addition } if (!success) return false; // No point proceeding if nothing worked } if (!outzip.Close()) return false; if (!memoutstream->Close()) return false; OutStreamPtr.reset(memoutstream); // This has a kludgey feel, but it returns the memoutstream to Alter() via the member scoped ptr return true; } wxMemoryBuffer* ZipArchiveStream::ExtractToBuffer(wxString filepath) // Extract filepath from this archive into a new wxMemoryBuffer { if (filepath.IsEmpty()) return NULL; if (!SortOutNames(filepath)) return NULL; wxZipEntryPtr entry; wxBusyCursor busy; wxMemoryInputStream meminstream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer m_membuf. 'Extract' it to a memory stream wxZipInputStream zip(meminstream); while (entry.reset(zip.GetNextEntry()), entry.get() != NULL) { if (entry->GetName() != WithinArchiveName) continue; // Go thru the archive, looking for the desired file // Found it. Extract it to a new buffer wxMemoryOutputStream memoutstream; if (!memoutstream || ! memoutstream.Write(zip)) return NULL; size_t size = memoutstream.GetSize(); // This is how much was loaded i.e. the file size wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the stream to a memorybuffer memoutstream.CopyTo(buf, size); // is by using an intermediate char[] wxMemoryBuffer* membuf = new wxMemoryBuffer(size); // Now (at last) we can store the data in a memory buffer membuf->AppendData(buf, size); delete[] buf; return membuf; } return NULL; } void ZipArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } void ZipArchiveStream::GetFromBuffer(bool dup) // Get the stored archive from membuf into the stream { wxZipInputStream* zip; wxMemoryInputStream* meminstream = new wxMemoryInputStream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer membuf. Stream it to a memory stream if (!dup) { MemInStreamPtr.reset(meminstream); zip = new wxZipInputStream(*MemInStreamPtr.get()); // Then pass it thru the filter } else { DupMemInStreamPtr.reset(meminstream); zip = new wxZipInputStream(*DupMemInStreamPtr.get()); // If we're duplicating, use DupMemInStreamPtr the second time around } InStreamPtr.reset(zip); // Use this member wxScopedPtr to 'return' the stream } void ZipArchiveStream::ListContents(wxString archivename) { // Zip files don't contain absolute paths, just any subdirs, so get the bit to be prepended if (archivename.GetChar(archivename.Len()-1) != wxFILE_SEP_PATH) archivename << wxFILE_SEP_PATH; wxZipEntryPtr entry; while (entry.reset(((wxZipInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) { entry->SetSystemMadeBy(wxZIP_SYSTEM_UNIX); wxString name = archivename + entry->GetName(); wxDateTime time = entry->GetDateTime(); // read 'zip' to access the entry's data ffs->AddItem(name, entry->GetSize(), time.GetTicks(), entry->GetMode(), entry->IsDir() ? DIRTYPE : REGTYPE); // wxZipEntry can't cope with symlinks etc } } void ZipArchiveStream::RefreshFromDirtyChild(wxString archivename, ArchiveStream* child) // Used when a nested child archive has been altered; reload the altered version { if (archivename.IsEmpty() || child == NULL) return; wxMemoryInputStream childstream(child->GetBuffer()->GetData(), child->GetBuffer()->GetDataLen()); GetFromBuffer(); // The archive is in the memory buffer m_membuf. 'Extract' it to InStreamPtr wxMemoryOutputStream memoutstream; wxZipOutputStream outzip(memoutstream); outzip.CopyArchiveMetaData(*(wxZipInputStream*)InStreamPtr.get()); wxZipEntryPtr entry; while (entry.reset(((wxZipInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) // Go thru the archive, looking for the selected files. { // Copy this entry to the outstream if (!entry->IsDir()) { if (archivename == entry->GetName()) // If this is the archive we want to refresh { if (!outzip.PutNextEntry(entry->GetName(), entry->GetDateTime(), childstream.GetSize()) // ignore the original archive; instead add the new data || ! outzip.Write(childstream) || ! childstream.Eof()) return; } else if (!outzip.CopyEntry(entry.release(), *(wxZipInputStream*)InStreamPtr.get())) return; // CopyEntry is specific to archive/zip-outputsteams, which is why I'm using one here } else { if (!outzip.PutNextDirEntry(entry->GetName(), entry->GetDateTime())) return; // If it's a dir, this just writes the 'header' info; there isn't any data entry.release(); } } if (!outzip.Close()) return; if (!memoutstream.Close()) return; size_t size = memoutstream.GetSize(); // This is how much was loaded i.e. the file size wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the stream to a memorybuffer memoutstream.CopyTo(buf, size); // is by using an intermediate char[] delete m_membuf; m_membuf = new wxMemoryBuffer(size); // I've no idea why, but trying to delete the old data by SetDataLen(0) failed :( m_membuf->AppendData(buf, size); // Store the data delete[] buf; SaveBuffer(); // We now need to save (or declare dirty) the parent arc } //----------------------------------------------------------------------------------------------------------------------- TarArchiveStream::TarArchiveStream(DataBase* archive) : ArchiveStream(archive) // Opens a 'real' archive, not a nested one { Valid = false; if (!archive->IsValid()) return; wxBusyCursor busy; if (!LoadToBuffer(archive->GetFilepath())) return; // Common code, so do this in base class. Loads the wxMemoryBuffer with the archive Valid = true; } TarArchiveStream::TarArchiveStream(wxMemoryBuffer* membuf, wxString archivename) : ArchiveStream(archivename) // Opens a 'nested' archive { Valid = false; if (archivename.IsEmpty()) return; m_membuf = membuf; Valid = true; } void TarArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } void TarArchiveStream::ListContents(wxString archivename) { // Tar files don't contain absolute paths, just any subdirs, so get the bit to be prepended if (archivename.GetChar(archivename.Len()-1) != wxFILE_SEP_PATH) archivename << wxFILE_SEP_PATH; wxTarEntryPtr entry; while (entry.reset(((wxTarInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) { wxString target; wxString name = archivename + entry->GetName(); wxDateTime time = entry->GetDateTime(); DB_filetype Type; // wxTarEntry (cf. zipentry) stores the type of 'file' e.g. symlink. So make use of that switch(entry->GetTypeFlag()) { case wxTAR_DIRTYPE: Type = DIRTYPE; break; case wxTAR_FIFOTYPE: Type = FIFOTYPE; break; case wxTAR_BLKTYPE: Type = BLKTYPE; break; case wxTAR_CHRTYPE: Type = CHRTYPE; break; case wxTAR_SYMTYPE: Type = SYMTYPE; target = entry->GetLinkName(); break; default: Type = REGTYPE; // Not only reg files, but hardlinks, ex-sockets & "contiguous files" (see wxTAR_CONTTYPE and http://www.gnu.org/software/tar/manual/html_node/Standard.html) } ffs->AddItem(name, entry->GetSize(), time.GetTicks(), entry->GetMode(), Type, target); } } void TarArchiveStream::GetFromBuffer(bool dup) // Get the stored archive from m_membuf into the stream { wxMemoryInputStream* meminstream = new wxMemoryInputStream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer membuf. Stream it to a memory stream wxTarInputStream* tar; if (!dup) { MemInStreamPtr.reset(meminstream); tar = new wxTarInputStream(*MemInStreamPtr.get()); } else { DupMemInStreamPtr.reset(meminstream); // If we're duplicating, use DupMemInStreamPtr the second time around tar = new wxTarInputStream(*DupMemInStreamPtr.get()); } InStreamPtr.reset(tar); // Use this member wxScopedPtr to 'return' the stream } bool TarArchiveStream::CompressStream(wxOutputStream* outstream) // Pretend to compress this stream, ready to be put into membuf { OutStreamPtr.reset(outstream); // Since we can't compress a plain vanilla tarstream, use the member wxScopedPtr to 'return' the same stream return true; } bool TarArchiveStream::Extract(wxArrayString& filepaths, wxString destpath, wxArrayString& resultingfilepaths, bool dirs_only/*=false*/, bool files_only/*=false*/) // Create and extract filepath from the archive { if (filepaths.IsEmpty() || destpath.IsEmpty()) return false; // AdjustFilepaths puts each filepath into WithinArchiveNames, less the /path-to-archive/archive; & creates its dest in WithinArchiveNewNames. If a dir, recursively adds into children too if (!AdjustFilepaths(filepaths, destpath, resultingfilepaths, afp_extract, dirs_only, files_only)) return false; GetFromBuffer(); size_t NumberFound = 0; wxTarEntryPtr entry; while (entry.reset(((wxTarInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) { int item = WithinArchiveNames.Index(entry->GetName()); // See if this file is one of the ones we're interested in if (item == wxNOT_FOUND) continue; // Found it. If it's a file, extract it. If a dir, make a new dir with this name (*outside* the archive ;) wxLogNull log; if ((entry->GetTypeFlag() == wxTAR_REGTYPE) // Start with the files, which are the only things that require extraction of data. wxTAR_REGTYPE is 48 ('0') || (entry->GetTypeFlag() == 0)) // However in ancient tar formats (as automake's make dist seems to use by default :/) a regular file has a type of NUL { wxString Path(resultingfilepaths[ item ]); Path = Path.BeforeLast(wxFILE_SEP_PATH); if (!wxFileName::Mkdir(Path, 0777, wxPATH_MKDIR_FULL)) return false; // Make any necessary dir wxFFileOutputStream out(resultingfilepaths[ item ]); if (!out || ! out.Write(*(wxTarInputStream*)InStreamPtr.get()) || ! InStreamPtr->Eof()) return false; // and extract into the new filepath FileData fd(resultingfilepaths[ item ]); if (fd.IsValid()) fd.DoChmod(entry->GetMode()); // Correct the extracted file's permissions } else if (entry->IsDir()) { if (!wxFileName::Mkdir(resultingfilepaths[ item ], 0777, wxPATH_MKDIR_FULL)) return false; } // Just create the dir else if (entry->GetTypeFlag() == wxTAR_SYMTYPE || entry->GetTypeFlag() == wxTAR_LNKTYPE) // The 2nd is in case of confusion, but all links should be symlinks { if (!CreateSymlink(entry->GetLinkName(), resultingfilepaths[ item ])) return false; } else // Otherwise it's a Misc: a FIFO or similar. Just create a new one with the same name { wxString Path(resultingfilepaths[ item ]); Path = Path.BeforeLast(wxFILE_SEP_PATH); FileData fd(Path, true); mode_t mode; dev_t dev=0; switch(entry->GetTypeFlag()) { case wxTAR_CHRTYPE: mode = S_IFCHR; dev = fd.GetDeviceID(); break; case wxTAR_BLKTYPE: mode = S_IFBLK; dev = fd.GetDeviceID(); break; case wxTAR_FIFOTYPE: mode = S_IFIFO; break; // FIFOs don't need the major/minor thing in dev default: continue; } mode_t oldUmask = umask(0); if (entry->GetTypeFlag()==wxTAR_FIFOTYPE || getuid()==0) // If we're making a fifo (which doesn't require su), or we're already root mknod(resultingfilepaths[ item ].mb_str(wxConvUTF8), mode | 0777, dev); else { wxString secondbit = (mode==S_IFBLK ? wxT(" b ") : wxT(" c ")); secondbit << (int)(dev / 256) << wxT(" ") << (int)(dev % 256); if (WHICH_SU==mysu) { if (USE_SUDO) ExecuteInPty(wxT("sudo \"mknod -m 0777 ") + resultingfilepaths[ item ] + secondbit + wxT("\"")); else ExecuteInPty(wxT("su -c \"mknod -m 0777 ") + resultingfilepaths[ item ] + secondbit + wxT("\"")); } else if (WHICH_SU==kdesu) wxExecute(wxT("kdesu \"mknod -m 0777 ") + resultingfilepaths[ item ] + secondbit + wxT("\"")); else if (WHICH_SU==gksu) wxExecute(wxT("gksu \"mknod -m 0777 ") + resultingfilepaths[ item ] + secondbit + wxT("\"")); else if (WHICH_SU==gnomesu) wxExecute(wxT("gnomesu --title "" -c \"mknod -m 0777 ") + resultingfilepaths[ item ] + secondbit + wxT("\" -d")); else if (WHICH_SU==othersu && !OTHER_SU_COMMAND.IsEmpty()) wxExecute(OTHER_SU_COMMAND + wxT("\"mknod -m 0777 ") +resultingfilepaths[ item ] + secondbit + wxT("\" -d")); else { wxMessageBox(_("Sorry, you need to be root to extract character or block devices"), wxT(":-(")); umask(oldUmask); return false; } } umask(oldUmask); } ++NumberFound; } // This line used to be inside the loop. However it broke if someone added foo to an archive that already contained a foo; the bogof situation messed up the count if (NumberFound >= WithinArchiveNames.GetCount()) return true; // See if we've used all the passed filepaths else return false; } wxMemoryBuffer* TarArchiveStream::ExtractToBuffer(wxString filepath) // Extract filepath from this archive into a new wxMemoryBuffer { if (filepath.IsEmpty()) return NULL; if (!SortOutNames(filepath)) return NULL; wxTarEntryPtr entry; wxBusyCursor busy; GetFromBuffer(); // The archive is in the memory buffer m_membuf. 'Extract' it to InStreamPtr while (entry.reset(((wxTarInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) { if (entry->GetName() != WithinArchiveName) continue; // Go thru the archive, looking for the desired file // Found it. Extract it to a new buffer wxMemoryOutputStream memoutstream; if (!memoutstream || ! memoutstream.Write(*(wxTarInputStream*)InStreamPtr.get())) return NULL; size_t size = memoutstream.GetSize(); // This is how much was loaded i.e. the file size wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the stream to a memorybuffer memoutstream.CopyTo(buf, size); // is by using an intermediate char[] wxMemoryBuffer* membuf = new wxMemoryBuffer(size); // Now (at last) we can store the data in a memory buffer membuf->AppendData(buf, size); delete[] buf; return membuf; } return NULL; } bool TarArchiveStream::DoAlteration(wxArrayString& filepaths, enum alterarc DoWhich, const wxString& originroot/*=wxT("")*/, bool dirs_only/*=false*/) // Implement add remove del or rename, depending on the enum { wxInputStreamPtr dupptr; GetFromBuffer(); // The archive is in the memory buffer m_membuf. 'Extract' it to InStreamPtr if (DoWhich==arc_dup) // If we're duplicating, we need a 2nd instream, so store the first and re-extract { dupptr.reset(InStreamPtr.release()); GetFromBuffer(true); } wxMemoryOutputStream* memoutstream = new wxMemoryOutputStream; if (!CompressStream(memoutstream)) return false; // This will compress the output (unless we're dealing with a plain tar). False means we're not gzip-capable wxTarOutputStream taroutstream(*OutStreamPtr.get()); // OutStreamPtr is the 'output' of the CompressStream call in Alter() wxTarEntryPtr entry, dupentry; while (entry.reset(((wxTarInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) // Go thru the archive, looking for the selected files. { int item = WithinArchiveNames.Index(entry->GetName()); // See if this file is one of the ones we're interested in switch(DoWhich) { case arc_add: break; // Add happens later case arc_remove: if (item != wxNOT_FOUND) continue; // If this file is one of the 2b-removed ones, ignore it, don't add it to the new archive else break; // Otherwise break to copy the entry case arc_dup: dupentry.reset(((wxTarInputStream*)dupptr.get())->GetNextEntry()); // For dup, get the next entry, then fall thru to rename case arc_rename: if (item != wxNOT_FOUND) // For rename, change the name then break to copy the entry { if (entry->IsDir() && WithinArchiveNewNames[ item ].Last() != wxFILE_SEP_PATH) WithinArchiveNewNames[ item ] << wxFILE_SEP_PATH; entry->SetName(WithinArchiveNewNames[ item ]); } break; case arc_del: continue; } // Copy this entry to the outstream if (!entry->IsDir()) { if (!taroutstream.CopyEntry(entry.release(), *(wxTarInputStream*)InStreamPtr.get())) return false; // CopyEntry is specific to archive/zip-outputsteams, which is why I'm using one here if (DoWhich==arc_dup && item != wxNOT_FOUND) // If we're duplicating, we now need to output the original version to the stream if (!taroutstream.CopyEntry(dupentry.release(), *(wxTarInputStream*)dupptr.get())) return false; } else { if (!taroutstream.PutNextDirEntry(entry->GetName(), entry->GetDateTime())) return false; // If it's a dir, this just writes the 'header' info; there isn't any data entry.release(); if (DoWhich==arc_dup && item != wxNOT_FOUND) // If we're duplicating, we now need to output the original version to the stream { if (!taroutstream.PutNextDirEntry(dupentry->GetName(), dupentry->GetDateTime())) return false; dupentry.release(); } } } if (DoWhich == arc_add) // If we're trying to add, we've just copied all the old entries. Now add the files to the within-archive dir WithinArchiveName { bool success = false; for (size_t n=0; n < filepaths.GetCount(); ++n) { if (DoAdd(filepaths[n], taroutstream, originroot, dirs_only)) success = true; } if (!success) return false; // No point proceeding if nothing worked } if (!taroutstream.Close()) return false; if (!OutStreamPtr.get()->Close()) return false; if (!memoutstream->Close()) return false; OutStreamPtr.reset(memoutstream); // This has a kludgey feel, but it returns the memoutstream to Alter() via the member scoped ptr return true; } bool TarArchiveStream::DoAdd(const wxString& filepath, wxTarOutputStream& taroutstream, const wxString& originroot, bool dirs_only/*=false*/) { FileData fd(filepath); if (!fd.IsValid()) return false; wxString Name; if (!filepath.StartsWith(originroot, &Name)) return false; // Get what's after path into Name: if we've adding dir foo, path==../path/, Name will be /foo or /foo/bar Name = WithinArchiveName + Name; wxDateTime DT(fd.ModificationTime()); if (fd.IsDir()) return taroutstream.PutNextDirEntry(Name, DT); // Dirs don't have data, so just provide the filepath if (dirs_only) return false; // If we're pasting a dir skeleton, skip the non-dirs code below wxTarEntry* addentry = new wxTarEntry(Name, DT); addentry->SetMode(fd.GetPermissions()); if (fd.IsRegularFile()) { wxFFileInputStream file(filepath); if (!file.Ok()) return false; // Make a wxFFileInputStream to get the data to be added addentry->SetSize(file.GetSize()); // and add it to the outputstream return (taroutstream.PutNextEntry(addentry) && (!!taroutstream.Write(file)) && file.Eof()); } // If it's not a dir, or a file, it must be a misc int type = wxTAR_REGTYPE; if (fd.IsSymlink()) type = wxTAR_SYMTYPE; if (fd.IsCharDev()) type = wxTAR_CHRTYPE; if (fd.IsBlkDev()) type = wxTAR_BLKTYPE; if (fd.IsFIFO()) type = wxTAR_FIFOTYPE; addentry->SetTypeFlag(type); if (fd.IsSymlink()) addentry->SetLinkName(fd.GetSymlinkDestination(true)); // If a symlink, tell entry its target return taroutstream.PutNextEntry(addentry); // Add it to the outputstream } void TarArchiveStream::RefreshFromDirtyChild(wxString archivename, ArchiveStream* child) // Used when a nested child archive has been altered; reload the altered version { if (archivename.IsEmpty() || child == NULL) return; wxMemoryInputStream childstream(child->GetBuffer()->GetData(), child->GetBuffer()->GetDataLen()); GetFromBuffer(); // The archive is in the memory buffer m_membuf. 'Extract' it to InStreamPtr wxMemoryOutputStream* memoutstream = new wxMemoryOutputStream; if (!CompressStream(memoutstream)) return; // This will compress the output (unless we're dealing with a plain tar). False means we're not gzip-capable wxTarOutputStream taroutstream(*OutStreamPtr.get()); // OutStreamPtr is the 'output' of the CompressStream call in Alter() wxTarEntryPtr entry; while (entry.reset(((wxTarInputStream*)InStreamPtr.get())->GetNextEntry()), entry.get() != NULL) // Go thru the archive, looking for the selected files. { // Copy this entry to the outstream if (!entry->IsDir()) { if (archivename == entry->GetName()) // If this is the archive we want to refresh { if (!taroutstream.PutNextEntry(entry->GetName(), entry->GetDateTime(), childstream.GetSize()) // ignore the original archive; instead add the new data || ! taroutstream.Write(childstream) || ! childstream.Eof()) return; } else if (!taroutstream.CopyEntry(entry.release(), *(wxTarInputStream*)InStreamPtr.get())) return; // CopyEntry is specific to archive/zip-outputsteams, which is why I'm using one here } else { if (!taroutstream.PutNextDirEntry(entry->GetName(), entry->GetDateTime())) return; // If it's a dir, this just writes the 'header' info; there isn't any data entry.release(); } } if (!taroutstream.Close()) return; if (!OutStreamPtr.get()->Close()) return; if (!memoutstream->Close())return; OutStreamPtr.release(); // Not doing this causes a double-deletion segfault when the archivestream is deleted size_t size = memoutstream->GetSize(); // This is how much was loaded i.e. the file size wxChar* buf = new wxChar[ size ]; // It's ugly, but the easiest way I've found to get the data from the stream to a memorybuffer memoutstream->CopyTo(buf, size); // is by using an intermediate char[] delete memoutstream; delete m_membuf; m_membuf = new wxMemoryBuffer(size); // I've no idea why, but trying to delete the old data by SetDataLen(0) failed :( m_membuf->AppendData(buf, size); // Store the data delete[] buf; SaveBuffer(); // We now need to save (or declare dirty) the parent arc } //----------------------------------------------------------------------------------------------------------------------- void GZArchiveStream::GetFromBuffer(bool dup) // Get the stored archive from membuf into the stream { wxZlibInputStream* zlib; wxTarInputStream* tar; wxMemoryInputStream* meminstream = new wxMemoryInputStream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer membuf. Stream it to a memory stream if (!dup) { MemInStreamPtr.reset(meminstream); zlib = new wxZlibInputStream(*MemInStreamPtr.get()); // Then pass it thru the filter zlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*zlibInStreamPtr.get()); // into a wxTarInputStream } else { DupMemInStreamPtr.reset(meminstream); zlib = new wxZlibInputStream(*DupMemInStreamPtr.get()); // If we're duplicating, use DupMemInStreamPtr/DupzlibInStreamPtr the second time around DupzlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*DupzlibInStreamPtr.get()); } InStreamPtr.reset(tar); // Use this member wxScopedPtr to 'return' the stream } bool GZArchiveStream::CompressStream(wxOutputStream* outstream) // Compress this stream, ready to be put into membuf { if (!wxZlibOutputStream::CanHandleGZip()) { wxLogError(_("I'm afraid your zlib is too old to be able to do this :(")); return false; } wxZlibOutputStream* zlib = new wxZlibOutputStream(*outstream, wxZ_BEST_COMPRESSION, wxZLIB_GZIP); // Pass the outstream thru the filter OutStreamPtr.reset(zlib); // Use the member wxScopedPtr to 'return' the stream return true; } void GZArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } //----------------------------------------------------------------------------------------------------------------------- void BZArchiveStream::GetFromBuffer(bool dup) // Get the stored archive from membuf into the stream { wxBZipInputStream* zlib; wxTarInputStream* tar; wxMemoryInputStream* meminstream = new wxMemoryInputStream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer membuf. Stream it to a memory stream if (!dup) { MemInStreamPtr.reset(meminstream); zlib = new wxBZipInputStream(*MemInStreamPtr.get()); // Then pass it thru the filter zlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*zlibInStreamPtr.get()); // into a wxTarInputStream } else { DupMemInStreamPtr.reset(meminstream); zlib = new wxBZipInputStream(*DupMemInStreamPtr.get()); // If we're duplicating, use DupMemInStreamPtr/DupzlibInStreamPtr the second time around DupzlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*DupzlibInStreamPtr.get()); } InStreamPtr.reset(tar); // Use this member wxScopedPtr to 'return' the stream } bool BZArchiveStream::CompressStream(wxOutputStream* outstream) // Compress this stream, ready to be put into membuf { wxBZipOutputStream* bzip = new wxBZipOutputStream(*outstream, 9); // Pass the outstream thru the filter OutStreamPtr.reset(bzip); // Use the member wxScopedPtr to 'return' the stream return true; } void BZArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } //----------------------------------------------------------------------------------------------------------------------- #ifndef NO_LZMA_ARCHIVE_STREAMS void XZArchiveStream::GetFromBuffer(bool dup) // Get the stored archive from membuf into the stream { XzInputStream* zlib; wxTarInputStream* tar; wxMemoryInputStream* meminstream = new wxMemoryInputStream(m_membuf->GetData(), m_membuf->GetDataLen()); // The archive is in the memory buffer membuf. Stream it to a memory stream if (!dup) { MemInStreamPtr.reset(meminstream); if (m_zt == zt_tarxz) zlib = new XzInputStream(*MemInStreamPtr.get()); // Then pass it thru the filter else zlib = new LzmaInputStream(*MemInStreamPtr.get()); zlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*zlibInStreamPtr.get()); // into a wxTarInputStream } else { DupMemInStreamPtr.reset(meminstream); if (m_zt == zt_xz) zlib = new XzInputStream(*DupMemInStreamPtr.get()); // If we're duplicating, use DupMemInStreamPtr/DupzlibInStreamPtr the second time around else zlib = new LzmaInputStream(*DupMemInStreamPtr.get()); DupzlibInStreamPtr.reset(zlib); tar = new wxTarInputStream(*DupzlibInStreamPtr.get()); } InStreamPtr.reset(tar); // Use this member wxScopedPtr to 'return' the stream } bool XZArchiveStream::CompressStream(wxOutputStream* outstream) // Compress this stream, ready to be put into membuf { XzOutputStream* xz; if (m_zt == zt_tarxz) xz = new XzOutputStream(*outstream); // Pass the outstream thru the filter else xz = new LzmaOutputStream(*outstream); OutStreamPtr.reset(xz); // Use the member wxScopedPtr to 'return' the stream return true; } void XZArchiveStream::ListContentsFromBuffer(wxString archivename) { wxBusyCursor busy; GetFromBuffer(); ListContents(archivename); } #endif // ndef NO_LZMA_ARCHIVE_STREAMS //----------------------------------------------------------------------------------------------------------------------- void ArchiveStreamMan::Push() // Make a new ArchiveStruct and save it on the array { if (arc==NULL) return; ArchiveStruct* newarcst = new struct ArchiveStruct(arc, ArchiveType); ArcArray->Add(newarcst); } bool ArchiveStreamMan::Pop() // Revert to any previous archive. Returns true if this happened { size_t count = ArcArray->GetCount(); if (!count) // If we're not within multiple archives, just delete and exit { if (!IsArchive()) return false; // providing there's anything to delete delete arc; arc = NULL; ArchiveType = zt_invalid; OriginalArchive.Empty(); // NB We also kill any arc data, so Pop() will exit a 'single' archive too // NB we really need the following checks, as otherwise we'll segfault if we're within an archive when the program exits if (MyFrame::mainframe==NULL || ! MyFrame::mainframe->SelectionAvailable) return false; MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active==NULL) return false; if (active->fileview == ISRIGHT) active = active->partner; active->fulltree = WasOriginallyFulltree; // Set the pane's fulltree-ness to its original value return false; } ArchiveStruct* PreviousArcst = ArcArray->Item(count-1); if (arc->IsDirty()) // If we're exiting a nested archive, it might need 2b saved to its parent { // Remove the parent-archive/ bit of the filepath (we can't just use the last segment of arc->GetArchiveName(); we may be in a parentarc/subdir/childarc situation) wxString dirtychildname = arc->GetArchiveName().Mid(PreviousArcst->arc->GetArchiveName().Len() + 1); PreviousArcst->arc->RefreshFromDirtyChild(dirtychildname, arc); } delete arc; arc = PreviousArcst->arc; ArchiveType = PreviousArcst->ArchiveType; ArcArray->RemoveAt(count-1); delete PreviousArcst; // NB deleting the struct doesn't delete the stored archive, as it is referenced by arc. return true; } bool ArchiveStreamMan::NewArc(wxString filepath, enum ziptype NewArchiveType) { if (filepath.IsEmpty()) return false; DataBase* stat; bool OriginallyInArchive = IsArchive(); if (IsArchive()) stat = new FakeFiledata(filepath); // If we're opening an archive within an archive, we need to use FakeFiledata here else stat = new FileData(filepath); if (!stat->IsValid()) { delete stat; return false; } ArchiveStream* newarc; switch(NewArchiveType) { case zt_htb: // htb's are effectively zips case zt_zip: if (!IsArchive()) newarc = new ZipArchiveStream(stat); // If we're not already inside an archive, do things the standard way else { wxMemoryBuffer* membuf; membuf = arc->ExtractToBuffer(filepath); if (membuf == NULL) { delete stat; return false; } newarc = new ZipArchiveStream(membuf, filepath); } if (!(newarc && newarc->IsValid())) { wxLogError(_("For some reason, the archive failed to open :(")); delete stat; delete newarc; return false; } ((ZipArchiveStream*)newarc)->ListContentsFromBuffer(filepath); break; case zt_targz: if (!IsArchive()) newarc = new GZArchiveStream(stat); // If we're not already inside an archive, do things the standard way else { wxMemoryBuffer* membuf; membuf = arc->ExtractToBuffer(filepath); // Extract filepath from the previous archive to a membuffer if (membuf == NULL) { delete stat; return false; } newarc = new GZArchiveStream(membuf, filepath); // Make a new archive of it } if (!(newarc && newarc->IsValid())) { wxLogError(_("For some reason, the archive failed to open :(")); delete stat; delete newarc; return false; } ((GZArchiveStream*)newarc)->ListContentsFromBuffer(filepath); break; case zt_taronly: if (!IsArchive()) newarc = new TarArchiveStream(stat); else { wxMemoryBuffer* membuf; membuf = arc->ExtractToBuffer(filepath); if (membuf == NULL) { delete stat; return false; } newarc = new TarArchiveStream(membuf, filepath); } if (!(newarc && newarc->IsValid())) { wxLogError(_("For some reason, the archive failed to open :(")); delete stat; delete newarc; return false; } ((TarArchiveStream*)newarc)->ListContentsFromBuffer(filepath); break; case zt_tarbz: if (!IsArchive()) newarc = new BZArchiveStream(stat); else { wxMemoryBuffer* membuf; membuf = arc->ExtractToBuffer(filepath); if (membuf == NULL) { delete stat; return false; } newarc = new BZArchiveStream(membuf, filepath); } if (!(newarc && newarc->IsValid())) { wxLogError(_("For some reason, the archive failed to open :(")); delete stat; delete newarc; return false; } ((BZArchiveStream*)newarc)->ListContentsFromBuffer(filepath); break; #ifndef NO_LZMA_ARCHIVE_STREAMS case zt_tarlzma: case zt_tarxz: if (!LIBLZMA_LOADED) { wxMessageBox(_("I can't peek inside that sort of archive unless you install liblzma."), _("Missing library")); delete stat; return false; } if (!IsArchive()) newarc = new XZArchiveStream(stat, NewArchiveType); else { wxMemoryBuffer* membuf; membuf = arc->ExtractToBuffer(filepath); if (membuf == NULL) { delete stat; return false; } newarc = new XZArchiveStream(membuf, filepath, NewArchiveType); } if (!(newarc && newarc->IsValid())) { wxLogError(_("For some reason, the archive failed to open :(")); delete stat; delete newarc; return false; } ((XZArchiveStream*)newarc)->ListContentsFromBuffer(filepath); break; #endif // ndef NO_LZMA_ARCHIVE_STREAMS case zt_gzip: case zt_bzip: case zt_lzma: case zt_xz: case zt_lzop: case zt_compress: wxMessageBox(_("This file is compressed, but it's not an archive so you can't peek inside."), _("Sorry")); delete stat; return false; default: wxMessageBox(_("I'm afraid I can't peek inside that sort of archive."), _("Sorry")); delete stat; return false; } if (newarc == NULL) { delete stat; return false; } Push(); // Save any current archive data arc = newarc; ArchiveType = NewArchiveType; // and install the new values if (!OriginallyInArchive) // If this is the original archive (ie not nesting), store interesting info { OriginalArchive = filepath; OutOfArchivePath = filepath.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; } delete stat; return true; } //static bool ArchiveStream::IsStreamable(enum ziptype ztype) { if (ztype < zt_firstarchive) return false; // We can't stream compresed files switch(ztype) { case zt_taronly: case zt_targz: case zt_tarbz: case zt_zip: case zt_htb: return true; #ifndef NO_LZMA_ARCHIVE_STREAMS case zt_tarlzma: case zt_tarxz: return LIBLZMA_LOADED; #endif // ndef NO_LZMA_ARCHIVE_STREAMS default: return false; // zt_invalid, zt_tar7z, zt_tarlzop, zt_taZ, zt_7z, zt_cpio, zt_rpm, zt_ar, zt_deb } } bool ArchiveStreamMan::IsWithinArchive(wxString filepath) // Is filepath within the archive system i.e. the original archive itself, or 1 of its contents, or that of a nested archive { if (arc==NULL || ! IsArchive()) return false; while (filepath.Right(1) == wxFILE_SEP_PATH && filepath.Len() > 1) filepath.RemoveLast(); return filepath.StartsWith(OriginalArchive); } bool ArchiveStreamMan::IsWithinThisArchive(wxString filepath) { if (!IsWithinArchive(filepath)) return false; // It's faster first to check if it's possible return arc->IsWithin(filepath); } bool ArchiveStreamMan::MightFilepathBeWithinChildArchive(wxString filepath) // See if filepath is longer than the current rootdir. Assume we've just checked it's not in *this* archive { if (!IsArchive() || filepath.IsEmpty()) return false; // If there isn't an archive open, the question is meaningless return filepath.StartsWith(GetArc()->Getffs()->GetRootDir()->GetFilepath()); // Shouldn't need to worry about the terminal '/' on rootdir } wxString ArchiveStreamMan::FindFirstArchiveinFilepath(wxString filepath) // Filepath will be a fragment of a path. Find the first thing that looks like an archive { wxString filename, segment; while (true) { if (filepath.GetChar(0) == wxFILE_SEP_PATH) filepath = filepath.Mid(1); // Remove any prepended '/' if (filepath.IsEmpty()) return filepath; filename += wxFILE_SEP_PATH; segment = filepath.BeforeFirst(wxFILE_SEP_PATH); // Get the first segment of filepath filename += segment; if (Archive::Categorise(filename) != zt_invalid) return filename; // See if it's an archive. If so return it filepath = filepath.Mid(segment.Len()); // Amputate the bit we just checked from filepath & try again } return wxEmptyString; // We shouldn't reach here } enum OCA ArchiveStreamMan::OpenCorrectArchive(wxString& filepath) // See if filepath is (within) a, possibly nested, archive. If so, open it { if (filepath.IsEmpty()) return OCA_false; if (IsWithinThisArchive(filepath)) return OCA_true; // The trivial case! wxString archivepath; if (!IsArchive()) { archivepath = FindFirstArchiveinFilepath(filepath); if (archivepath.IsEmpty()) return OCA_false; ziptype zt = Archive::Categorise(archivepath); if (zt == zt_invalid) return OCA_false; // Shouldn't happen! if (!NewArc(archivepath, zt)) return OCA_false; // Enter the 1st archive } if (MightFilepathBeWithinChildArchive(filepath)) // ie we're going forwards, not backwards while (true) { if (IsWithinThisArchive(filepath)) return OCA_true; // Are we nearly there yet? archivepath = GetArc()->Getffs()->GetRootDir()->GetFilepath(); archivepath = archivepath.BeforeLast(wxFILE_SEP_PATH); wxString extra; if (!filepath.StartsWith(archivepath, &extra)) return OCA_false; // Shouldn't happen! // Extra now contains the unused bit of filepath. wxString nextbit = FindFirstArchiveinFilepath(extra); // Get the next archive in the path if (nextbit.IsEmpty()) return OCA_false; archivepath += nextbit; ziptype zt = Archive::Categorise(archivepath); if (zt == zt_invalid) return OCA_false; // Shouldn't happen! if (!NewArc(archivepath, zt)) return OCA_false; // Enter the next archive in the chain } bool flag=true; // It wasn't further into this archive, so try reversing while (true) { flag = Pop(); if (IsWithinThisArchive(filepath)) return OCA_true; if (!flag) return OCA_retry; // We're out of the old archive. Retry says do it again, to enter any new one } return OCA_false; } enum NavigateArcResult ArchiveStreamMan::NavigateArchives(wxString filepath) // If filepath is in an archive, goto the archive. Otherwise don't { if (filepath.IsEmpty()) return Snafu; FileData stat(filepath); if (!IsArchive()) // If we're not already inside an archive, we may need to sort out fulltree mode: { if ((stat.IsValid() && Archive::Categorise(filepath) != zt_invalid) // if we're entering an archive, || (! stat.IsValid() && ! FindFirstArchiveinFilepath(filepath).IsEmpty())) // or if we're jumping deep into an archive, { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active->fileview == ISRIGHT) active = active->partner; WasOriginallyFulltree = active->fulltree; active->fulltree = false; // Turn off fulltree mode if it's on, after storing the current state } } if (stat.IsValid() && filepath != OriginalArchive) // If this is an ordinary filepath, escape from any archive(s) and return for normal processing { while (Pop()) // The only other reason for stat being valid is if it's the original archive; in which case no point exiting here ; return OutsideArc; } enum OCA ans; do ans = OpenCorrectArchive(filepath); // Navigate either in, out or shake it all about while (ans == OCA_retry); // We'll need to retry if we *were* in an archive, and now have to come out to enter a different one return (ans==OCA_true ? FoundInArchive : Snafu); } wxString ArchiveStreamMan::ExtractToTempfile() // Called by FiletypeManager::Openfunction to provide a extracted tempfile { MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active==NULL) return wxEmptyString; wxString filepath = active->GetFilePath(); if (filepath.IsEmpty()) return filepath; // Find the filepath to open wxArrayString filepaths; filepaths.Add(filepath); // Although there's only 1 filepath, the real ExtractToTempfile() needs an array wxArrayString resultingfilepaths = ExtractToTempfile(filepaths); if (resultingfilepaths.IsEmpty()) return wxEmptyString; return resultingfilepaths[0]; // The resulting filepaths are returned in an array. We know there'll only be one of them } wxArrayString ArchiveStreamMan::ExtractToTempfile(wxArrayString& filepaths, bool dirs_only/*=false*/, bool files_only/*=false*/) // Called by e.g. EditorBitmapButton::OnEndDrag etc, to provide extracted tempfile(s) { wxArrayString tempfilepaths; if (!IsArchive() || arc==NULL || filepaths.IsEmpty()) return tempfilepaths; wxFileName tempdirbase; wxString temppath; while (true) // Do in a loop in case there's already one there ?!? { if (!DirectoryForDeletions::GetUptothemomentDirname(tempdirbase, tempfilecan)) return tempfilepaths; // Make a temporary dir to hold the files temppath = tempdirbase.GetFullPath(); FileData stat(temppath); if (stat.IsValid()) break; } if (!arc->Extract(filepaths, temppath, tempfilepaths, dirs_only, files_only)) // Extract, deleting the temp dir if it fails { tempfilepaths.Clear(); tempdirbase.Rmdir(); } return tempfilepaths; // Return the extracted tempfilepaths } ./4pane-6.0/config.sub0000644000175000017500000010577513205575137013472 0ustar daviddavid#! /bin/sh # Configuration validation subroutine script. # Copyright 1992-2014 Free Software Foundation, Inc. timestamp='2014-09-11' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that # program. This Exception is an additional permission under section 7 # of the GNU General Public License, version 3 ("GPLv3"). # Please send patches with a ChangeLog entry to config-patches@gnu.org. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright 1992-2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; android-linux) os=-linux-android basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray | -microblaze*) os= basic_machine=$1 ;; -bluegene*) os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*178) os=-lynxos178 ;; -lynx*5) os=-lynxos5 ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arceb \ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ | avr | avr32 \ | be32 | be64 \ | bfin \ | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | k1om \ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ | mips64r5900 | mips64r5900el \ | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa32r6 | mipsisa32r6el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64r6 | mipsisa64r6el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipsr5900 | mipsr5900el \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | moxie \ | mt \ | msp430 \ | nds32 | nds32le | nds32be \ | nios | nios2 | nios2eb | nios2el \ | ns16k | ns32k \ | open8 | or1k | or1knd | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ | riscv32 | riscv64 \ | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | spu \ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | we32k \ | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; c54x) basic_machine=tic54x-unknown ;; c55x) basic_machine=tic55x-unknown ;; c6x) basic_machine=tic6x-unknown ;; m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-unknown ;; strongarm | thumb | xscale) basic_machine=arm-unknown ;; xgate) basic_machine=$basic_machine-unknown os=-none ;; xscaleeb) basic_machine=armeb-unknown ;; xscaleel) basic_machine=armel-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | k1om-* \ | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ | mips64r5900-* | mips64r5900el-* \ | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa32r6-* | mipsisa32r6el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64r6-* | mipsisa64r6el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipsr5900-* | mipsr5900el-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* | nios2eb-* | nios2el-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | open8-* \ | or1k*-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pyramid-* \ | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tile*-* \ | tron-* \ | ubicom32-* \ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) basic_machine=$basic_machine-unknown ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aros) basic_machine=i386-pc os=-aros ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; blackfin) basic_machine=bfin-unknown os=-linux ;; blackfin-*) basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; bluegene*) basic_machine=powerpc-ibm os=-cnk ;; c54x-*) basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c55x-*) basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c6x-*) basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` ;; c90) basic_machine=c90-cray os=-unicos ;; cegcc) basic_machine=arm-unknown os=-cegcc ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16 | cr16-*) basic_machine=cr16-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dicos) basic_machine=i686-pc os=-dicos ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m68knommu) basic_machine=m68k-unknown os=-linux ;; m68knommu-*) basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; microblaze*) basic_machine=microblaze-xilinx ;; mingw64) basic_machine=x86_64-pc os=-mingw64 ;; mingw32) basic_machine=i686-pc os=-mingw32 ;; mingw32ce) basic_machine=arm-unknown os=-mingw32ce ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; moxiebox) basic_machine=moxie-unknown os=-moxiebox ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) basic_machine=i686-pc os=-msys ;; mvs) basic_machine=i370-ibm os=-mvs ;; nacl) basic_machine=le32-unknown os=-nacl ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; neo-tandem) basic_machine=neo-tandem ;; nse-tandem) basic_machine=nse-tandem ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; parisc) basic_machine=hppa-unknown os=-linux ;; parisc-*) basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` os=-linux ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc | ppcbe) basic_machine=powerpc-unknown ;; ppc-* | ppcbe-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos | rdos64) basic_machine=x86_64-pc os=-rdos ;; rdos32) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sde) basic_machine=mipsisa32-sde os=-elf ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh5el) basic_machine=sh5le-unknown ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; strongarm-* | thumb-*) basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tile*) basic_machine=$basic_machine-unknown os=-linux-gnu ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; xscale-* | xscalee[bl]-*) basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; z80-*-coff) basic_machine=z80-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -auroraux) os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ | -sym* | -kopensolaris* | -plan9* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -bitrig* | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* | -tirtos*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -zvmoe) os=-zvmoe ;; -dicos*) os=-dicos ;; -nacl*) ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in score-*) os=-elf ;; spu-*) os=-elf ;; *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; c8051-*) os=-elf ;; hexagon-*) os=-elf ;; tic54x-*) os=-coff ;; tic55x-*) os=-coff ;; tic6x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 ;; m68*-cisco) os=-aout ;; mep-*) os=-elf ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-haiku) os=-haiku ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -cnk*|-aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: ./4pane-6.0/ArchiveStream.h0000666000175000017500000005631313455327440014414 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: ArchiveStream.h // Purpose: Virtual manipulation of archives // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef ARCHIVESTREAMH #define ARCHIVESTREAMH #include "wx/wx.h" #include "wx/txtstrm.h" #include "wx/dir.h" #include "wx/tarstrm.h" #include enum DB_filetype{ REGTYPE, HDLNKTYPE, SYMTYPE, CHRTYPE, BLKTYPE, DIRTYPE, FIFOTYPE, SOCTYPE }; enum ffscomp { ffsParent, ffsEqual, ffsChild, ffsCousin, ffsRubbish, ffsDealtwith }; // Used to return result of comparison within 'dir' tree class DataBase // Base class for FileData and FakeFiledata { public: virtual ~DataBase(){} virtual wxString GetFilepath(){ return wxEmptyString; } virtual wxString GetFilename(){ return wxEmptyString; } virtual wxString ReallyGetName(){ return wxEmptyString; } virtual wxString GetOwner(){ return wxEmptyString; } virtual wxString GetGroup(){ return wxEmptyString; } virtual wxString GetSymlinkDestination(bool AllowRelative=false){ return wxEmptyString; } virtual wxULongLong Size(){ return (wxULongLong)0; } virtual uid_t OwnerID(){ return (uid_t)0;} virtual gid_t GroupID(){ return (gid_t)0;} virtual wxString GetParsedSize(){ return wxEmptyString; } virtual time_t ModificationTime(){ return (time_t)0; } virtual size_t GetPermissions(){ return (size_t)0;} virtual wxString PermissionsToText(){ return wxEmptyString; } virtual bool IsSymlinktargetADir(bool recursing = false){return false; } virtual bool IsSymlink(){ return Type==SYMTYPE; } virtual bool IsBrokenSymlink(){ return false; } virtual bool IsSocket(){ return Type==SOCTYPE; } virtual bool IsFIFO(){ return Type==FIFOTYPE; } virtual bool IsBlkDev(){ return Type==BLKTYPE; } virtual bool IsCharDev(){ return Type==CHRTYPE; } virtual bool IsRegularFile(){ return Type==REGTYPE; } virtual DataBase* GetSymlinkData(){return NULL;} virtual bool IsValid(); virtual bool IsDir(){ return false; } wxString TypeString(); // Returns string version of type eg "Directory" wxString sortstring; // For most sort modalities, the data is stored here to be sorted int sortint; // For int sorts e.g. modtime, the data is stored here to be sorted wxULongLong sortULL; // For wxULongLong sorts i.e. Size DB_filetype Type; // e.g. FIFO bool IsFake; // To distinguish between genuine FileDatas and Fake ones }; class FakeFiledata : public DataBase // Holds the data for a single file in a FakeFilesystem. Base class is to allow DataBase* also to reference a real FileData { public: FakeFiledata(){ IsFake = true; } FakeFiledata(const FakeFiledata& fd){ *this = fd; } FakeFiledata(const wxString& name, wxULongLong sze=0, time_t Time=(time_t)0, DB_filetype type=REGTYPE, const wxString& Target=wxT(""), size_t Perms=0664, const wxString& Owner=wxT(""), const wxString& Group=wxT("")) : Filepath(name), size(sze), ModTime(Time), Permissions(Perms), Ownername(Owner), Groupname(Group) { Type = type; symdest = Target; IsFake = true; } virtual ~FakeFiledata(){} FakeFiledata& operator=(const FakeFiledata& fd){ IsFake = true; Filepath = fd.Filepath; size = fd.size; ModTime = fd.ModTime; Type = fd.Type; symdest = fd.symdest; Permissions = fd.Permissions; Ownername = fd.Ownername; Groupname = fd.Groupname; return *this; } wxString GetFilepath(){ return Filepath; } virtual bool IsValid(){ return ! Filepath.IsEmpty(); } virtual wxString GetFilename(){ return Filepath.AfterLast(wxFILE_SEP_PATH); } // Note how these methods cleverly mimic those of FileData, so we can use either from a base pointer virtual wxString ReallyGetName(){ return GetFilename(); } virtual wxString GetOwner(){ return Ownername; } virtual wxString GetGroup(){ return Groupname; } virtual wxULongLong Size(){ return size; } virtual wxString GetParsedSize(){ return ParseSize(size, false); } virtual time_t ModificationTime(){ return ModTime; } virtual size_t GetPermissions(){ return Permissions; } virtual wxString PermissionsToText(); virtual wxString GetSymlinkDestination(bool AllowRelative=false){ return Type==SYMTYPE ? symdest : wxT(""); } void SetSymlinkDestination(wxString& dest){ symdest = dest; } virtual bool IsSymlinktargetADir(bool recursing = false){ return false; } protected: enum ffscomp Compare(FakeFiledata* comparator, FakeFiledata* candidate); // Finds how the candidate file/dir is related to the comparator one wxString Filepath; wxULongLong size; time_t ModTime; size_t Permissions; wxString Ownername; wxString Groupname; wxString symdest; }; class FakeDir; WX_DEFINE_ARRAY(DataBase*, FakeFiledataArray); WX_DEFINE_ARRAY(FakeDir*, FakeDirdataArray); class FakeDir : public FakeFiledata // Manages the data for a single (sub)dir in a FakeFilesystem { public: FakeDir(wxString name, wxULongLong size=0, time_t Time=(time_t)0, size_t Perms=0664, const wxString& Owner=wxT(""), const wxString& Group=wxT(""), FakeDir* parent=NULL) : FakeFiledata(name, size, Time, DIRTYPE, wxT(""), Perms, Owner, Group), parentdir(parent) { filedataarray = new FakeFiledataArray; dirdataarray = new FakeDirdataArray; if (name.IsEmpty()) name = wxFILE_SEP_PATH; if (name.GetChar(0) != wxFILE_SEP_PATH) name = wxFILE_SEP_PATH + name; // We're probably going to be fed obvious dirs, but just in case... if (name.GetChar(name.Len()-1) != wxFILE_SEP_PATH) name += wxFILE_SEP_PATH; } FakeDir(const FakeDir& fd){ *this = fd; filedataarray = new FakeFiledataArray; dirdataarray = new FakeDirdataArray; } virtual ~FakeDir(){ Clear(); delete dirdataarray; delete filedataarray; } void Clear(); FakeDir& operator=(const FakeDir& fd){ Filepath = fd.Filepath; size = ((FakeDir&)fd).GetSize(); ModTime = fd.ModTime; Type = fd.Type; Permissions = fd.Permissions; Ownername = fd.Ownername; Groupname = fd.Groupname; parentdir = fd.parentdir; /*filedataarray = fd.filedataarray; dirdataarray = fd.dirdataarray;*/ return *this; } enum ffscomp AddFile(FakeFiledata* file); // Adds a file to us or to our correct child, creating subdirs if need be; or not if it doesn't belong enum ffscomp AddDir(FakeDir* dir); // Ditto dir void AddChildFile(FakeFiledata* file){ filedataarray->Add(file); } // Adds file to our filedataarray, no questions asked void AddChildDir(FakeDir* dir){ dirdataarray->Add(dir); } // Adds dir to our dirdataarray, no questions asked DataBase* GetFakeFiledata(size_t index ){ if (index > FileCount()) return NULL; return filedataarray->Item(index); } FakeDir* FindSubdirByFilepath(const wxString& targetfilepath); FakeFiledata* FindFileByName(wxString filepath); bool HasSubDirs(wxString& dirname); // Find a FakeDir with this name, and see if it has subdirs bool HasFiles(wxString& dirname); // Find a FakeDir with this name, and see if it has files FakeDir* GetFakeDir(size_t index ){ if (index > SubDirCount()) return NULL; return dirdataarray->Item(index); } size_t FileCount(){ return filedataarray->GetCount(); } size_t SubDirCount(){ return dirdataarray->GetCount(); } bool HasFileCalled(wxString filename){ return GetFakeFile(filename) != NULL; } FakeFiledata* GetFakeFile(wxString filename){ if (filename.IsEmpty()) return NULL; for (size_t n=0; nItem(n)->GetFilename() == filename) return (FakeFiledata*)filedataarray->Item(n); return NULL; } bool HasDirCalled(wxString dirname){ if (dirname.IsEmpty()) return false; for (size_t n=0; nItem(n)->GetFilename() == dirname) return true; return false; } void GetDescendants(wxArrayString& array, bool dirs_only = false); // Fill the array with all its files & (recursively) its subdirs wxULongLong GetSize(); // Returns the size of its files wxULongLong GetTotalSize(); // Returns the size of all its files & those of its subdirs FakeFiledataArray* GetFiles(){ return filedataarray; } bool GetFilepaths(wxArrayString& array); FakeDirdataArray* GetDirs(){ return dirdataarray; } virtual wxString GetFilename(){ wxString fp(Filepath.BeforeLast(wxFILE_SEP_PATH)); return fp.AfterLast(wxFILE_SEP_PATH); } // For fake dirs, return the last chunk of the filepath bool IsRegularFile(){ return false; } bool IsDir(){ return true; } protected: FakeFiledataArray* filedataarray; FakeDirdataArray* dirdataarray; // Holds child dirs FakeDir* parentdir; }; class FakeFilesystem // Holds the data eg filenames, sizes, dir structure, of the (perhaps partial) contents of an archive { public: FakeFilesystem(wxString filepath, wxULongLong size, time_t Time, size_t Perms, wxString Owner=wxEmptyString, wxString Group=wxEmptyString); ~FakeFilesystem(){ delete rootdir; } void Clear(){ currentdir = rootdir; rootdir->Clear(); } void AddItem(wxString filepath, wxULongLong size, time_t Time, size_t Perms, DB_filetype Type, const wxString& Target=wxT(""), const wxString& Owner=wxT(""), const wxString& Group=wxT("")); FakeFiledataArray* GetFiles(){ return currentdir->GetFiles(); } // Returns the files held by currentdir FakeDir* GetRootDir(){ return rootdir; } FakeDir* GetCurrentDir(){ return currentdir; } void SetCurrentDir(FakeDir* newdir){ currentdir = newdir; } protected: FakeDir* rootdir; FakeDir* currentdir; }; class MyGenericDirCtrl; #include wxDECLARE_SCOPED_PTR(wxInputStream, wxInputStreamPtr) wxDECLARE_SCOPED_PTR(wxOutputStream, wxOutputStreamPtr) class ArchiveStream { public: ArchiveStream(DataBase* archive); ArchiveStream(wxString archivename); virtual ~ArchiveStream(){ delete ffs; delete m_membuf; m_membuf=NULL; } bool LoadToBuffer(wxString filepath); // Used by the subclassed ctors to load the archive into m_membuf bool LoadToBuffer(wxMemoryBuffer* mbuf); // Reload m_membuf with data from a different pane's buffer FakeFiledataArray* GetFiles(); // Returns the files for the current 'path' bool GetDirs(wxArrayString& dirs); // Returns in the arraystring the subdirs for the current 'path' bool SetPath(const wxString& subdir); // Makes subdir the new 'startdir' within the archive. Returns false if it's not a valid subdir bool GetDescendants(wxString dirName, wxArrayString& filepaths); // Returns in the array all files, dirs & subdirs files for the path bool OnExtract(); // On Extract from context menu. Finds what to extract, then calls OnExtract bool DoExtract(wxArrayString& filepaths, wxString& destpath, wxArrayString& destinations, bool DontUndo=false, bool dirs_only = false); // From OnExtract or D'n'D/Paste bool Alter(wxArrayString& filepaths, enum alterarc DoWhich, wxArrayString& newnames, bool dirs_only = false); // This might be add remove del or rename, depending on the enum bool MovePaste(MyGenericDirCtrl* originctrl, MyGenericDirCtrl* destctrl, wxArrayString& filepaths, wxString& destpath, bool Moving=true, bool dirs_only = false); bool DoThingsWithinSameArchive(MyGenericDirCtrl* originctrl, MyGenericDirCtrl* destctrl, wxArrayString& filearray, wxString& destinationpath); virtual bool Extract(wxArrayString& filepaths, wxString destpath, wxArrayString& destinations, bool dirs_only = false, bool files_only = false)=0; // Create and extract filename from the archive virtual wxMemoryBuffer* ExtractToBuffer(wxString filepath)=0; // Extract filepath from this archive into a new wxMemoryBuffer virtual void ListContentsFromBuffer(wxString archivename)=0; // Extract m_membuf and list the contents virtual void RefreshFromDirtyChild(wxString archivename, ArchiveStream* child)=0; // Used when a nested child archive has been altered; reload the altered version FakeFilesystem* Getffs() { return ffs; } wxMemoryBuffer* GetBuffer(){ return m_membuf; } // Used in RefreshFromDirtyChild() static bool IsStreamable(enum ziptype ztype); bool IsWithin(wxString filepath); bool IsDirty(){ return Dirty; } bool IsNested(){ return Nested; } bool IsValid(){ return Valid; } wxString GetArchiveName(){ if (ffs != NULL) return ffs->GetRootDir()->GetFilepath().BeforeLast(wxFILE_SEP_PATH); return wxEmptyString; } protected: bool SortOutNames(const wxString& filepath); // Subroutine used in Extract etc, so made into a function in the name of code reuse bool AdjustFilepaths(const wxArrayString& filepaths, const wxString& destpath, wxArrayString& newnames, adjFPs whichtype=afp_neither, bool dirs_only = false, bool files_only = false); // Similar for multiple strings, but recursive for dirs bool SaveBuffer(); // Saves the compressed archive in buffer back to the filesystem virtual void GetFromBuffer(bool dup = false)=0; // Get the stored archive from membuf into the stream, through the uncompressing filter virtual bool DoAlteration(wxArrayString& filepaths, enum alterarc DoWhich, const wxString& originroot=wxT(""), bool dirs_only = false)=0; // Implement add remove del or rename, depending on the enum virtual void ListContents(wxString archivename)=0; // Used by ListContentsFromBuffer wxString archivename; wxString WithinArchiveName; wxArrayString WithinArchiveNames; wxArrayString WithinArchiveNewNames; // Used if Rename()ing bool IsDir; wxInputStreamPtr MemInStreamPtr; // Using this avoids contorsions to prevent memory leaks wxInputStreamPtr zlibInStreamPtr; // Ditto wxInputStreamPtr DupMemInStreamPtr; // SImilarly, when duplicating (so we need separate pointers) wxInputStreamPtr DupzlibInStreamPtr; // Ditto wxInputStreamPtr InStreamPtr; // Used to hold instreams to pass between functions wxOutputStreamPtr OutStreamPtr; // Ditto outstreams wxMemoryBuffer* m_membuf; FakeFilesystem* ffs; // The root dir, or subdir, within the archive that is currently the startdir of the dirview bool Valid; bool Nested; bool Dirty; // This (nested) archive has been altered, and so needs saving to its parent during Pop }; class ZipArchiveStream : public ArchiveStream { public: ZipArchiveStream(DataBase* archive); ZipArchiveStream(wxMemoryBuffer* membuf, wxString archivename); ~ZipArchiveStream(){} bool Extract(wxArrayString& filepaths, wxString destpath, wxArrayString& destinations, bool dirs_only = false, bool files_only = false); // Create and extract filename from the archive virtual void ListContentsFromBuffer(wxString archivename); // Extract m_membuf and list the contents wxMemoryBuffer* ExtractToBuffer(wxString filepath); // Extract filepath from this archive into a new wxMemoryBuffer virtual void RefreshFromDirtyChild(wxString archivename, ArchiveStream* child); // Used when a nested child archive has been altered; reload the altered version protected: bool DoAlteration(wxArrayString& filepaths, enum alterarc DoWhich, const wxString& originroot=wxT(""), bool dirs_only = false); // Implement add remove del or rename, depending on the enum virtual void GetFromBuffer(bool dup = false); // Get the stored archive from membuf into the stream, through the uncompressing filter virtual void ListContents(wxString archivename); // Used by ListContentsFromBuffer }; class TarArchiveStream : public ArchiveStream { public: TarArchiveStream(DataBase* archive); TarArchiveStream(wxMemoryBuffer* membuf, wxString archivename); ~TarArchiveStream(){ InStreamPtr.reset(); } bool Extract(wxArrayString& filepaths, wxString destpath, wxArrayString& destinations, bool dirs_only = false, bool files_only = false); // Create and extract filename from the archive wxMemoryBuffer* ExtractToBuffer(wxString filepath); // Extract filepath from this archive into a new wxMemoryBuffer virtual void ListContentsFromBuffer(wxString archivename); // Extract m_membuf and list the contents virtual void RefreshFromDirtyChild(wxString archivename, ArchiveStream* child); // Used when a nested child archive has been altered; reload the altered version protected: void ListContents(wxString archivename); // Used by ListContentsFromBuffer virtual void GetFromBuffer(bool dup = false); // Get the stored archive from membuf into the stream. No filter in baseclass virtual bool CompressStream(wxOutputStream* outstream); // Does nothing, but we need this in GZArchiveStream etc bool DoAlteration(wxArrayString& filepaths, enum alterarc DoWhich, const wxString& originroot=wxT(""), bool dirs_only = false); // Implement add remove del or rename, depending on the enum bool DoAdd(const wxString& filepath, wxTarOutputStream& taroutstream, const wxString& originroot, bool dirs_only = false); // Adds an entry to a tarstream }; class GZArchiveStream : public TarArchiveStream { public: GZArchiveStream(DataBase* archive) : TarArchiveStream(archive) {} GZArchiveStream(wxMemoryBuffer* membuf, wxString archivename) : TarArchiveStream(membuf, archivename) {} ~GZArchiveStream(){} virtual void ListContentsFromBuffer(wxString archivename); // Extract m_membuf and list the contents protected: virtual void GetFromBuffer(bool dup = false); // Get the stored archive from membuf into the stream, through the uncompressing filter bool CompressStream(wxOutputStream* outstream); // Used to compress appropriately the output stream following Add, Rename etc }; class BZArchiveStream : public TarArchiveStream { public: BZArchiveStream(DataBase* archive) : TarArchiveStream(archive) {} BZArchiveStream(wxMemoryBuffer* membuf, wxString archivename) : TarArchiveStream(membuf, archivename) {} ~BZArchiveStream(){} virtual void ListContentsFromBuffer(wxString archivename); // Extract m_membuf and list the contents protected: virtual void GetFromBuffer(bool dup = false); // Get the stored archive from membuf into the stream, through the uncompressing filter bool CompressStream(wxOutputStream* outstream); // Used to compress appropriately the output stream following Add, Rename etc }; #ifndef NO_LZMA_ARCHIVE_STREAMS class XZArchiveStream : public TarArchiveStream { public: XZArchiveStream(DataBase* archive, enum ziptype zt = zt_xz) : TarArchiveStream(archive), m_zt(zt) {} XZArchiveStream(wxMemoryBuffer* membuf, wxString archivename, enum ziptype zt = zt_xz) :TarArchiveStream(membuf, archivename), m_zt(zt) {} ~XZArchiveStream(){} virtual void ListContentsFromBuffer(wxString archivename); // Extract m_membuf and list the contents protected: virtual void GetFromBuffer(bool dup = false); // Get the stored archive from membuf into the stream, through the uncompressing filter bool CompressStream(wxOutputStream* outstream); // Used to compress appropriately the output stream following Add, Rename etc enum ziptype m_zt; }; #endif // ndef NO_LZMA_ARCHIVE_STREAMS class DirBase // Base for mywxDir and ArcDir, so that I can use base pointers { public: virtual ~DirBase(){} virtual bool IsOpened()=0; virtual bool Open(wxString dirName)=0; virtual bool GetFirst(wxString* filename, const wxString& filespec = wxEmptyString, int flags = 0)=0; virtual bool GetNext(wxString* filename)=0; }; class mywxDir : public DirBase, public wxDir // A way of calling wxDir from a base pointer { public: mywxDir(){} ~mywxDir(){} bool IsOpened(){ return wxDir::IsOpened(); } bool Open(wxString dirName){ return wxDir::Open(dirName); } bool GetFirst(wxString* filename, const wxString& filespec = wxEmptyString, int flags = 0) { return wxDir::GetFirst(filename, filespec, flags); } bool GetNext(wxString* filename) { return wxDir::GetNext(filename); } }; class ArcDir : public DirBase // A version of wxDir for FakeDirs { public: ArcDir(ArchiveStream* arch) : arc(arch) { nextfile = -1; isopen = true;} ~ArcDir(){} bool IsOpened(){ return isopen; } bool Open(wxString dirName); bool GetFirst(wxString* filename, const wxString& filespec = wxEmptyString, int flags = 0); bool GetNext(wxString* filename); protected: void SetFileSpec(const wxString& filespec) { m_filespec = filespec.c_str(); } void SetFlags(int flags) { m_flags = flags; } wxString startdir; ArchiveStream* arc; bool isopen; wxString m_filespec; int m_flags; int nextfile; wxArrayString filepaths; }; struct ArchiveStruct { ArchiveStruct(ArchiveStream* Arc, ziptype archivetype) : arc(Arc), ArchiveType(archivetype) {} ArchiveStream* arc; // Pointer to this ArchiveStream enum ziptype ArchiveType; // and which type this is (or NotArchive) }; WX_DEFINE_ARRAY(ArchiveStruct*, ArchiveStructArray); class ArchiveStreamMan // Manages which archive we're peering into { public: ArchiveStreamMan(){ arc = NULL; ArchiveType = zt_invalid; ArcArray = new ArchiveStructArray; } ~ArchiveStreamMan(){ while (Pop()) // Pop() undoes any Pushed archives, deleting as it goes ; delete ArcArray; } ArchiveStream* GetArc() { return arc; } enum ziptype GetArchiveType(){ return ArchiveType; } bool IsArchive(){ return GetArchiveType() != zt_invalid; } bool IsWithinThisArchive(wxString filepath); bool IsWithinArchive(wxString filepath); // Is filepath within the archive system i.e. the original archive itself, or 1 of its contents, or that of a nested archive wxString GetPathOutsideArchive(){ return OutOfArchivePath; }// This is where, by default, to dump extracted files bool NewArc(wxString filepath, enum ziptype NewArchiveType); bool RemoveArc(){ return Pop(); } enum NavigateArcResult NavigateArchives(wxString filepath); // If filepath is in an archive, goto the archive. Otherwise don't wxString ExtractToTempfile(); // Called by FiletypeManager::Openfunction. Uses ExtractToTempfile(wxArrayString& filepaths) wxArrayString ExtractToTempfile(wxArrayString& filepaths, bool dirs_only = false, bool files_only = false); // Called by e.g. EditorBitmapButton::OnEndDrag to provide a extracted tempfile protected: void Push(); bool Pop(); enum OCA OpenCorrectArchive(wxString& filepath); // See if filepath is (within) a, possibly nested, archive. If so, open it bool MightFilepathBeWithinChildArchive(wxString filepath); // See if filepath is longer than the current rootdir. Assume we've just checked it's not in *this* archive wxString FindFirstArchiveinFilepath(wxString filepath); // FIlepath will be a fragment of a path. Find the first thing that looks like an archive bool WasOriginallyFulltree; wxString OriginalArchive; // The filepath of the archive (or original archive if nested) wxString OutOfArchivePath; // The filepath holding the (original)archive, which is the default location to put any extracted files ArchiveStructArray* ArcArray; // Stores Push()ed structs when we're inside an archive that's inside an archive thats... ArchiveStream* arc; // Holds the currently active pointer to the relevant class, or null enum ziptype ArchiveType; // and which type this is (or NotArchive) }; #endif //ARCHIVESTREAMH ./4pane-6.0/PACKAGERS0000644000175000017500000000154613205575137012724 0ustar daviddavidAs you know, some package systems like to do certain things themselves. I've therefore made your life a little easier (and mine too when I'm doing the packaging) by providing configure options to disable parts of 'make install'. For example, ./configure --disable-install_app (or --enable-install_app=no) will stop 'make install' installing the 4Pane binary. The options are: --enable-install_app Installs the 4Pane binary --enable-install_rc Installs the resource files --enable-install_docs Installs the help manual --enable-locale Installs any ./locale/*/LC_MESSAGES/*.mo files --enable-desktop Tries to create a 4Pane desktop shortcut --enable-symlink Tries to make a 4Pane to 4pane symlink in the install dir For all of them the default is 'yes'. ./4pane-6.0/depcomp0000755000175000017500000005602013367740426013057 0ustar daviddavid#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2018-03-07.03; # UTC # Copyright (C) 1999-2018 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by 'PROGRAMS ARGS'. object Object file output by 'PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac # Get the directory component of the given path, and save it in the # global variables '$dir'. Note that this directory component will # be either empty or ending with a '/' character. This is deliberate. set_dir_from () { case $1 in */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; *) dir=;; esac } # Get the suffix-stripped basename of the given path, and save it the # global variable '$base'. set_base_from () { base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` } # If no dependency file was actually created by the compiler invocation, # we still have to create a dummy depfile, to avoid errors with the # Makefile "include basename.Plo" scheme. make_dummy_depfile () { echo "#dummy" > "$depfile" } # Factor out some common post-processing of the generated depfile. # Requires the auxiliary global variable '$tmpdepfile' to be set. aix_post_process_depfile () { # If the compiler actually managed to produce a dependency file, # post-process it. if test -f "$tmpdepfile"; then # Each line is of the form 'foo.o: dependency.h'. # Do two passes, one to just change these to # $object: dependency.h # and one to simply output # dependency.h: # which is needed to avoid the deleted-header problem. { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" } > "$depfile" rm -f "$tmpdepfile" else make_dummy_depfile fi } # A tabulation character. tab=' ' # A newline character. nl=' ' # Character ranges might be problematic outside the C locale. # These definitions help. upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ lower=abcdefghijklmnopqrstuvwxyz digits=0123456789 alpha=${upper}${lower} if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Avoid interferences from the environment. gccflag= dashmflag= # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi cygpath_u="cygpath -u -f -" if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi if test "$depmode" = msvc7msys; then # This is just like msvc7 but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 cygpath_u='sed s,\\\\,/,g' depmode=msvc7 fi if test "$depmode" = xlc; then # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. gccflag=-qmakedep=gcc,-MF depmode=gcc fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. ## Unfortunately, FreeBSD c89 acceptance of flags depends upon ## the command line argument order; so add the flags where they ## appear in depend2.am. Note that the slowdown incurred here ## affects only configure: in makefiles, %FASTDEP% shortcuts this. for arg do case $arg in -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; *) set fnord "$@" "$arg" ;; esac shift # fnord shift # $arg done "$@" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. ## (see the conditional assignment to $gccflag above). ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). Also, it might not be ## supported by the other compilers which use the 'gcc' depmode. ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The second -e expression handles DOS-style file names with drive # letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the "deleted header file" problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. ## Some versions of gcc put a space before the ':'. On the theory ## that the space means something, we add a space to the output as ## well. hp depmode also adds that space, but also prefixes the VPATH ## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like '#:fec' to the end of the # dependency line. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ | tr "$nl" ' ' >> "$depfile" echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" ;; xlc) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts '$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.u tmpdepfile2=$base.u tmpdepfile3=$dir.libs/$base.u "$@" -Wc,-M else tmpdepfile1=$dir$base.u tmpdepfile2=$dir$base.u tmpdepfile3=$dir$base.u "$@" -M fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done aix_post_process_depfile ;; tcc) # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 # FIXME: That version still under development at the moment of writing. # Make that this statement remains true also for stable, released # versions. # It will wrap lines (doesn't matter whether long or short) with a # trailing '\', as in: # # foo.o : \ # foo.c \ # foo.h \ # # It will put a trailing '\' even on the last line, and will use leading # spaces rather than leading tabs (at least since its commit 0394caf7 # "Emit spaces for -MD"). "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. # We have to change lines of the first kind to '$object: \'. sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" # And for each line of the second kind, we have to emit a 'dep.h:' # dummy dependency, to avoid the deleted-header problem. sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" rm -f "$tmpdepfile" ;; ## The order of this option in the case statement is important, since the ## shell code in configure will try each of these formats in the order ## listed in this file. A plain '-MD' option would be understood by many ## compilers, so we must ensure this comes after the gcc and icc options. pgcc) # Portland's C compiler understands '-MD'. # Will always output deps to 'file.d' where file is the root name of the # source file under compilation, even if file resides in a subdirectory. # The object file name does not affect the name of the '.d' file. # pgcc 10.2 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using '\' : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... set_dir_from "$object" # Use the source, not the object, to determine the base name, since # that's sadly what pgcc will do too. set_base_from "$source" tmpdepfile=$base.d # For projects that build the same source file twice into different object # files, the pgcc approach of using the *source* file root name can cause # problems in parallel builds. Use a locking strategy to avoid stomping on # the same $tmpdepfile. lockdir=$base.d-lock trap " echo '$0: caught signal, cleaning up...' >&2 rmdir '$lockdir' exit 1 " 1 2 13 15 numtries=100 i=$numtries while test $i -gt 0; do # mkdir is a portable test-and-set. if mkdir "$lockdir" 2>/dev/null; then # This process acquired the lock. "$@" -MD stat=$? # Release the lock. rmdir "$lockdir" break else # If the lock is being held by a different process, wait # until the winning process is done or we timeout. while test -d "$lockdir" && test $i -gt 0; do sleep 1 i=`expr $i - 1` done fi i=`expr $i - 1` done trap - 1 2 13 15 if test $i -le 0; then echo "$0: failed to acquire lock after $numtries attempts" >&2 echo "$0: check lockdir '$lockdir'" >&2 exit 1 fi if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp2) # The "hp" stanza above does not work with aCC (C++) and HP's ia64 # compilers, which have integrated preprocessors. The correct option # to use with these is +Maked; it writes dependencies to a file named # 'foo.d', which lands next to the object file, wherever that # happens to be. # Much of this is similar to the tru64 case; see comments there. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then tmpdepfile1=$dir$base.d tmpdepfile2=$dir.libs/$base.d "$@" -Wc,+Maked else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d "$@" +Maked fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" # Add 'dependent.h:' lines. sed -ne '2,${ s/^ *// s/ \\*$// s/$/:/ p }' "$tmpdepfile" >> "$depfile" else make_dummy_depfile fi rm -f "$tmpdepfile" "$tmpdepfile2" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in 'foo.d' instead, so we check for that too. # Subdirectories are respected. set_dir_from "$object" set_base_from "$object" if test "$libtool" = yes; then # Libtool generates 2 separate objects for the 2 libraries. These # two compilations output dependencies in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir$base.o.d # libtool 1.5 tmpdepfile2=$dir.libs/$base.o.d # Likewise. tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d "$@" -MD fi stat=$? if test $stat -ne 0; then rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" do test -f "$tmpdepfile" && break done # Same post-processing that is required for AIX mode. aix_post_process_depfile ;; msvc7) if test "$libtool" = yes; then showIncludes=-Wc,-showIncludes else showIncludes=-showIncludes fi "$@" $showIncludes > "$tmpdepfile" stat=$? grep -v '^Note: including file: ' "$tmpdepfile" if test $stat -ne 0; then rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" # The first sed program below extracts the file names and escapes # backslashes for cygpath. The second sed program outputs the file # name when reading, but also accumulates all include files in the # hold buffer in order to output them again at the end. This only # works with sed implementations that can handle large buffers. sed < "$tmpdepfile" -n ' /^Note: including file: *\(.*\)/ { s//\1/ s/\\/\\\\/g p }' | $cygpath_u | sort -u | sed -n ' s/ /\\ /g s/\(.*\)/'"$tab"'\1 \\/p s/.\(.*\) \\/\1:/ H $ { s/.*/'"$tab"'/ G p }' >> "$depfile" echo >> "$depfile" # make sure the fragment doesn't end with a backslash rm -f "$tmpdepfile" ;; msvc7msys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for ':' # in the target name. This is to cope with DOS-style filenames: # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise. "$@" $dashmflag | sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this sed invocation # correctly. Breaking it into two sed invocations is a workaround. tr ' ' "$nl" < "$tmpdepfile" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift cleared=no eat=no for arg do case $cleared in no) set ""; shift cleared=yes ;; esac if test $eat = yes; then eat=no continue fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -arch) eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" # makedepend may prepend the VPATH from the source file name to the object. # No need to regex-escape $object, excess matching of '.' is harmless. sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process the last invocation # correctly. Breaking it into two sed invocations is a workaround. sed '1,2d' "$tmpdepfile" \ | tr ' ' "$nl" \ | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \ | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi # Remove '-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E \ | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test "X$1" != 'X--mode=compile'; do shift done shift fi IFS=" " for arg do case "$arg" in -o) shift ;; $object) shift ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E 2>/dev/null | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" echo "$tab" >> "$depfile" sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; msvcmsys) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: ./4pane-6.0/MyDirs.h0000644000175000017500000001704113440767731013062 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyDirs.h // Purpose: Dir-view // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MYDIRSH #define MYDIRSH #include "wx/filename.h" #include "wx/dir.h" #include "wx/toolbar.h" #include "wx/bmpbuttn.h" #include #include "Externs.h" #include "MyGenericDirCtrl.h" #include "Dup.h" #if wxVERSION_NUMBER < 2900 DECLARE_EVENT_TYPE(PasteThreadType, wxID_ANY) DECLARE_EVENT_TYPE(PasteProgressEventType, wxID_ANY) #else class PasteThreadEvent; wxDECLARE_EVENT(PasteThreadType, PasteThreadEvent); wxDECLARE_EVENT(PasteProgressEventType, wxCommandEvent); #endif class PasteThreadEvent: public wxCommandEvent { public: PasteThreadEvent(wxEventType commandType = PasteThreadType, int id = 0) : wxCommandEvent(commandType, id) { } PasteThreadEvent(const PasteThreadEvent& event) : wxCommandEvent(event) { this->SetArrayString(event.GetArrayString()); this->SetSuccesses(event.GetSuccesses()); this->SetRefreshesArrayString(event.GetRefreshesArrayString()); } wxEvent* Clone() const { return new PasteThreadEvent(*this); } wxArrayString GetArrayString() const { return m_ArrayString; } void SetArrayString(const wxArrayString& arr) { m_ArrayString = arr; } wxArrayString GetSuccesses() const { return m_SuccessesArrayString; } void SetSuccesses(const wxArrayString& arr) { m_SuccessesArrayString = arr; } wxArrayString GetRefreshesArrayString() const { return m_RefreshesArrayString; } void SetRefreshesArrayString(const wxArrayString& refreshes) { m_RefreshesArrayString = refreshes; } protected: wxArrayString m_ArrayString; wxArrayString m_RefreshesArrayString; wxArrayString m_SuccessesArrayString; }; typedef void (wxEvtHandler::*PasteThreadEventFunction)(PasteThreadEvent &); #if wxVERSION_NUMBER < 2900 #define PasteThreadEventHandler(func) (wxObjectEventFunction)(wxEventFunction)(wxCommandEventFunction)wxStaticCastEvent(PasteThreadEventFunction, &func) #else #define PasteThreadEventHandler(func) wxEVENT_HANDLER_CAST(PasteThreadEventFunction, func) #endif class MyDropdownButton : public wxBitmapButton { public: MyDropdownButton(){} // Needed for RTTI MyDropdownButton(wxWindow* parent, const wxWindowID id, const wxBitmap& bitmap) : wxBitmapButton(parent, id, bitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW | wxNO_BORDER) {} int partnerwidth; // The button to which this is the dropdown arrow stores its width here int left, right; // This button's coords relative to the toolbar, measured & stored at each click protected: void OnButtonClick(wxCommandEvent& event); DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(MyDropdownButton) }; struct NavigationData { NavigationData(const wxString& dir, const wxString& path) : m_dir(dir), m_path(path) {} wxString GetDir() const { return m_dir; } wxString GetPath() const { return m_path; } void SetPath(const wxString& path) { m_path = path; } protected: wxString m_dir; wxString m_path; }; class NavigationManager { public: NavigationManager() : m_NavDataIndex(-1) {} ~NavigationManager(); void PushEntry(const wxString& dir, const wxString& path = wxT("")); wxArrayString RetrieveEntry(int displacement); wxString GetCurrentDir() const; wxString GetDir(size_t index) const; wxString GetCurrentPath() const; wxString GetPath(size_t index) const; void SetPath(size_t index, const wxString& path); void DeleteInvalidEntry(); // Deletes the current entry, which will have just been found no longer to exist size_t GetCurrentIndex() const { return m_NavDataIndex; } size_t GetCount() const { return m_NavigationData.size(); } wxArrayString GetBestValidHistoryItem(const wxString& deadfilepath); // Retrieves the best valid dir from the vector. Used when an IN_UNMOUNT event is caught std::vector& GetNavigationData() { return m_NavigationData; } protected: std::vector m_NavigationData; // Holds info for Back/Forward toolbar buttons int m_NavDataIndex; // Indexes the currently-displayed dir in the vector }; class DirGenericDirCtrl : public MyGenericDirCtrl // The class that shows the directories, not the files { public: DirGenericDirCtrl(wxWindow* parent, const wxWindowID id, const wxString& START_DIR , const wxPoint& pos, const wxSize& size , long style = wxSUNKEN_BORDER, bool full_tree=false, const wxString& name = wxT("DirGenericDirCtrl")); ~DirGenericDirCtrl(); void CreateToolbar(); void OnFullTree(wxCommandEvent& event); // Toggles Fulltree button void OnDirUp(wxCommandEvent& event); // From toolbar Up button void OnDirBack(wxCommandEvent& event); // From toolbar Back button. Go back to a previously-visited directory void OnDirForward(wxCommandEvent& event); // From toolbar Forward button. Go forward to a previously-undone directory void OnDirDropdown(wxCommandEvent& event); // For multiple forward/back void OnDirCtrlTBButton(wxCommandEvent& event); // When a user-defined dirctrlTB button is clicked void DoToolbarUI(wxUpdateUIEvent& event); // Greys out appropriate buttons void OnToggleHidden(wxCommandEvent& event); // Toggles whether hidden dirs (& partner's files) are visible void ShowContextMenu(wxContextMenuEvent& event); // These methods implement backward/forward navigation of dirs, especially in !Fulltree mode void AddPreviouslyVisitedDir(const wxString& newentry, const wxString& path = wxT("")); // Adds a new revisitable dir to the array void RetrieveEntry(int displacement); // Retrieves a dir from the PreviousDirs array. 'displacement' determines which void GetBestValidHistoryItem(const wxString& deadfilepath); // Retrieves the best valid dir from the vector. Used when an IN_UNMOUNT event is caught void NewFile(wxCommandEvent& event); // Create a new File or Dir virtual void UpdateStatusbarInfo(const wxString& selected); // Writes the selection's name & some relevant data in the statusbar void UpdateStatusbarInfo(const wxArrayString& selections); // Writes selections' name & size in the statusbar void ReloadTree(wxString path, wxArrayInt& IDs); // Does a branch or tree refresh void ReloadTree(){ wxString path(wxFILE_SEP_PATH); wxArrayInt IDs; ReloadTree(path, IDs); } // If no parameter, do the whole tree void RecreateAcceleratorTable(); // When shortcuts are reconfigured, deletes old table, then calls CreateAcceleratorTable() void GetVisibleDirs(wxTreeItemId rootitem, wxArrayString& dirs) const; // Find which dirs can be seen i.e. children + expanded children's children bool IsDirVisible(const wxString& fpath) const; // Is fpath 'visible' i.e. expanded in the tree. Accounts for fulltree mode too void CheckChildDirCount(const wxString& dir); // See if the treeitem corresponding to dir has child dirs. Set the triangle accordingly wxULongLong SelectedCumSize; wxToolBar* toolBar; NavigationManager& GetNavigationManager() { return m_NavigationManager; } protected: void CreateAcceleratorTable(); NavigationManager m_NavigationManager; MyDropdownButton* MenuOpenButton1; // The dir-navigation buttons sidebars (those things that allow you to choose any of the previous dirs) MyDropdownButton* MenuOpenButton2; private: DECLARE_EVENT_TABLE() }; #endif // MYDIRSH ./4pane-6.0/4Pane.10000755000175000017500000000300113205575137012521 0ustar daviddavid.\" Hey, EMACS: -*- nroff -*- .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH 4PANE 1 "October 27, 2007" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for manpage-specific macros, see man(7) .SH NAME 4Pane - a detailed-view quad-pane file manager for GTK+ .SH SYNOPSIS .B 4Pane [-d ] [-c ] [-h] [Display from this filepath (optional)...] .br .SH DESCRIPTION This manual page documents only 4Pane\'s rarely-used invocation options (generally you'll just type '4Pane'). .br A detailed manual is available from within 4Pane, either from the help menu or by pressing F1; and also online at http://4pane.co.uk .PP .SH OPTIONS .TP .B \-d, \-\-home\-dir= Use as the home directory (optional) .TP .B \-c, \-\-config\-fpath= Use this filepath as 4Pane's configuration file (optional. If the filepath doesn't exist, it will be created) .TP .B \-h, \-\-help Show a summary of options .br .SH AUTHOR 4Pane was written by David Hart . .PP This manual page was written by David Hart . ./4pane-6.0/Redo.h0000666000175000017500000005230213455327440012542 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Redo.h // Purpose: Undo-redo and manager // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef REDOH #define REDOH #include "wx/filename.h" #include "wx/dir.h" #include "wx/toolbar.h" class MyGenericDirCtrl; class DirGenericDirCtrl; // This is the pop-up for dir-toolbar directory back/forward-button sidebars class MyPopupMenu : public wxWindow // Need to derive from wxWindow for the PopupMenu method { public: MyPopupMenu(DirGenericDirCtrl* dad, wxPoint& startpt, bool backwards, bool right); protected: void ShowMenu(); // Prepares & displays the menu bool LoadArray(); // Used by ShowMenu void GetAnswer(wxCommandEvent& event); // Gets the selection from the selection event and returns it to calling class wxPoint location; // Where to position the menu bool previous; // Are we going forwards or backwards? previous==true means back bool isright; // Is this the righthand dirview or the left? DirGenericDirCtrl* parent; size_t count; // These 2 ints get filled with info from parent's array size_t arrayno; wxArrayString entries; // We put here the data 2b displayed wxArrayInt idarray; // & its location within PreviousDirs const unsigned int FIRST_ID; DECLARE_EVENT_TABLE() }; // This is the pop-up for Undo/Redo-button sidebars class SidebarPopupMenu : public wxWindow // Need to derive from wxWindow for the PopupMenu method { public: SidebarPopupMenu(wxWindow* dad, wxPoint& startpt, wxArrayString& names, int& ans); protected: void ShowMenu(); // Prepares & displays the menu void GetAnswer(wxCommandEvent& event); // Gets the selection from the selection event and returns it to calling class wxPoint location; // Where to position the menu int& answer; // This is how to return the answer, in a ref passed by caller wxArrayString unredonames; // Array containing the strings to display wxWindow* parent; size_t count; size_t arrayno; wxArrayInt idarray; // This array stores the answer's location within caller's array const unsigned int FIRST_ID; DECLARE_EVENT_TABLE() }; //This is my take on Undo/Redo. A manager class which stores classes for each type of undo, all of which are derived from abstract class UnRedo class MyFrame; class UnRedo // Very basic Base class { public: UnRedo() : UndoPossible(false), RedoPossible(false), m_UsedThread(false) {} UnRedo(const wxString& name = wxT("")) : clustername(name), UndoPossible(false), RedoPossible(false), m_UsedThread(false) {} virtual ~UnRedo(){} size_t clusterno; // Some unredos should only happen as a cluster eg Overwrite means Delete + Move. Also used when multiple selections. wxString clustername; // What to call this cluster on the sidebar pop-up menu eg Move, Paste bool UndoPossible; bool RedoPossible; void ToggleFlags(){ UndoPossible = !UndoPossible; RedoPossible = !RedoPossible; } bool IsUndoing() const { return UndoPossible; } bool GetUsedThread() const { return m_UsedThread; } virtual bool Undo()=0; // Abstract, as we certainly don't want any objects, virtual bool Redo()=0; protected: bool m_UsedThread; // Used for unredo move/paste. Was this a simple process or did we need to use a thread? }; class UnRedoFile : public UnRedo // Base class for files { protected: wxFileName original; // Holds the path/filename we started with wxFileName final; // & that we end up with, if applicable wxString m_OverwrittenFile; // Holds any filepath overwritten by the original move/paste. Its path will be inside the trashcan wxArrayInt IDs; // Hold the IDs of the corresponding windows, for appropriate refreshing bool ItsADir; bool m_NeedsYield; public: UnRedoFile() : UnRedo(wxT("")) { m_NeedsYield = false; } UnRedoFile(const wxString& firstFn, const wxArrayInt& IDlist, const wxString& secondFn = wxT(""), const wxString& name = wxT("")) : UnRedo(name), IDs(IDlist), m_NeedsYield(false) { if (!firstFn.IsEmpty()) original.Assign(firstFn); // Assuming there IS data, reconvert it to a wxFileName if (!secondFn.IsEmpty()) final.Assign(secondFn); } ~UnRedoFile(){} const wxArrayInt GetIDs() const { return IDs; } wxString GetOverwrittenFile() const { return m_OverwrittenFile; } void SetOverwrittenFile(const wxString& overwritten) { m_OverwrittenFile = overwritten; } bool GetNeedsYield() const { return m_NeedsYield; } void SetNeedsYield(bool yield) { m_NeedsYield = yield; } }; class UnRedoMove : public UnRedoFile // Used by both Move & Delete { public: UnRedoMove(const wxString& first, const wxArrayInt& IDlist, const wxString& second=wxT(""), const wxString& endbit=wxT(""), const wxString& Originalend=wxT(""), bool QueryDir=false, bool FromDel=false, ThreadSuperBlock* tsb = NULL) : UnRedoFile(first, IDlist, second), finalbit(endbit), originalfinalbit(Originalend), m_tsb(tsb), FromDelete(FromDel) { ItsADir = QueryDir; clustername = (FromDelete ? _("Delete") : _("Move")); } UnRedoMove(const UnRedoMove& urm) : UnRedoFile() { *this = urm; } ~UnRedoMove(){} UnRedoMove& operator=(const UnRedoMove& urm) { original=urm.original; IDs=urm.IDs; final=urm.final; finalbit=urm.finalbit; originalfinalbit= urm.originalfinalbit; ItsADir=urm.ItsADir; m_tsb=urm.m_tsb; FromDelete=urm.FromDelete; m_NeedsYield=urm.m_NeedsYield; m_UsedThread=urm.m_UsedThread; return *this; } void SetThreadSuperblock(ThreadSuperBlock* tsb) { m_tsb = tsb; } wxString finalbit; // This is the pasted filename, or the terminal segment of the pasted dir ie it's the name to Redo to wxString originalfinalbit; // This is the pre-Move filename/terminal segment, before any possible rename. ie it's the name to Undo to bool Undo(); bool Redo(); protected: ThreadSuperBlock* m_tsb; bool FromDelete; // Flags whether the calling method was Delete or not. It makes a difference as to which paths get refreshed }; class UnRedoPaste : public UnRedoFile { public: UnRedoPaste(const wxString& first, const wxArrayInt& IDlist, const wxString& second = wxT(""), const wxString& endbit = wxT(""), bool QueryDir=false, bool dirs_only = false, ThreadSuperBlock* tsb = NULL) : UnRedoFile(first, IDlist, second, dirs_only ? _("Paste dirs") : _("Paste")), finalbit(endbit), m_dirs_only(dirs_only), m_tsb(tsb) { ItsADir = QueryDir; } UnRedoPaste(const UnRedoPaste& urp) : UnRedoFile() { *this = urp; } ~UnRedoPaste(){} UnRedoPaste& operator=(const UnRedoPaste& urp) { original=urp.original; IDs=urp.IDs; final=urp.final; finalbit=urp.finalbit; ItsADir=urp.ItsADir; m_dirs_only=urp.m_dirs_only; m_tsb=urp.m_tsb; m_NeedsYield=urp.m_NeedsYield; m_UsedThread=urp.m_UsedThread; return *this; } void SetThreadSuperblock(ThreadSuperBlock* tsb) { m_tsb = tsb; } wxString finalbit; // This is the pasted filename, or the terminal segment of the pasted dir bool m_dirs_only; bool Undo(); // Undoing a Paste means deleting the copy bool Redo(); protected: ThreadSuperBlock* m_tsb; }; class UnRedoLink : public UnRedoFile { public: UnRedoLink(const wxString& from, const wxArrayInt& IDlist, const wxString& to, bool linktype, enum changerelative rel = nochange) : UnRedoFile(wxT(""), IDlist, wxT(""), _("Link")), originfilepath(from), linkfilepath(to), linkage(linktype), relativity(rel) {} ~UnRedoLink(){} bool Undo(); // Undoing a Link means deleting the link bool Redo(); protected: wxString originfilepath; // The link target, ready for redo wxString linkfilepath; // The link, ready for undo bool linkage; // Hard or sym enum changerelative relativity; // Relative or absolute path }; class UnRedoChangeLinkTarget : public UnRedoFile { public: UnRedoChangeLinkTarget(const wxString& link, const wxArrayInt& IDlist, const wxString& dest, const wxString& target) : UnRedoFile(wxT(""), IDlist, wxT(""), _("Change Link Target")), linkname(link), newtarget(dest), oldtarget(target) {} ~UnRedoChangeLinkTarget(){} bool Undo(); // Undoing a ChangeLinkTarget means changing in reverse bool Redo(); protected: wxString linkname; // The name of the link wxString newtarget; // The new target wxString oldtarget; // The original target }; class UnRedoChangeAttributes : public UnRedoFile // Change ownership, group or permissions { public: UnRedoChangeAttributes(const wxString& fpath, const wxArrayInt& IDlist, size_t originalattr, size_t newattr, enum AttributeChange which ) : UnRedoFile(wxT(""), IDlist, wxT(""), _("Change Attributes")), filepath(fpath), OriginalAttribute(originalattr), NewAttribute(newattr), whichattribute(which) {} ~UnRedoChangeAttributes(){} bool Undo(); // Undoing an attribute change means changing in reverse bool Redo(); protected: wxString filepath; size_t OriginalAttribute; size_t NewAttribute; enum AttributeChange whichattribute; // Are we changing permissions, owner or group }; class UnRedoNewDirFile : public UnRedoFile // UnRedo a "New" Dir or File { public: UnRedoNewDirFile(const wxString& newname, const wxString& pth, bool QueryDir, const wxArrayInt& IDlist) : UnRedoFile(wxT(""), IDlist), filename(newname), path(pth) { ItsADir = QueryDir; clustername = (ItsADir ? _("New Directory") : _("New File")); } ~UnRedoNewDirFile(){} bool Undo(); // Undoing a New means ReallyDeleting it bool Redo(); protected: wxString filename; wxString path; }; class UnRedoDup : public UnRedoFile // Duplicates a Dir or File { public: UnRedoDup(const wxString& destpth, const wxString& newpth,const wxString& origname, const wxString& new_name, bool QueryDir, wxArrayInt& IDlist) : UnRedoFile(wxT(""), IDlist), originalname(origname), newname(new_name), destpath(destpth), newpath(newpth) { ItsADir = QueryDir; clustername = (ItsADir ? _("Duplicate Directory") : _("Duplicate File")); } ~UnRedoDup(){} bool Undo(); // Undoing a Dup means ReallyDeleting it bool Redo(); protected: wxString originalname; // The filename (or NULL) wxString newname; // See above wxString destpath; // The original dirname wxString newpath; }; class UnRedoRen : public UnRedoFile // Renames a Dir or File { public: UnRedoRen(const wxString& destpth, const wxString& newpth, const wxString& origname, const wxString& new_name, bool QueryDir, const wxArrayInt& IDlist) : UnRedoFile(wxT(""), IDlist), destpath(destpth), originalname(origname), newpath(newpth), newname(new_name) { ItsADir = QueryDir; clustername = (ItsADir ? _("Rename Directory") : _("Rename File")); while (destpath.Last() == wxFILE_SEP_PATH) destpath.RemoveLast(); // We don't want a terminal '/' while (newpath.Last() == wxFILE_SEP_PATH) newpath.RemoveLast(); } ~UnRedoRen(){} bool Undo(); // Undoing a Rename means ReRenaming it bool Redo(); protected: wxString destpath; // The path before the filename or last segment of dirname wxString originalname; // The filename (or NULL) wxString newpath; wxString newname; }; class UnRedoArchiveRen : public UnRedoFile // Renames within an archive { public: UnRedoArchiveRen(const wxArrayString& orig, const wxArrayString& current, const wxArrayInt& IDlist, MyGenericDirCtrl* actv, bool duplicating, MyGenericDirCtrl* opp = NULL,bool dirs_only = false) : UnRedoFile(wxT(""), IDlist, wxT(""), duplicating ?_("Duplicate") : _("Rename")), originalfilepaths(orig), newfilepaths(current), active(actv), dup(duplicating), other(opp), m_dirs_only(dirs_only) {} ~UnRedoArchiveRen(){} bool Undo(); // Undoing a Rename means ReRenaming it bool Redo(); protected: wxArrayString originalfilepaths; // The filepaths before the original rename, or after Redo wxArrayString newfilepaths; MyGenericDirCtrl* active; // Ptr to (what we hope is still) the view with the still-open archive bool dup; MyGenericDirCtrl* other; // Used if we're Moving between the same archive open in different panes. We only want to undo the second of these if it's still visible bool m_dirs_only; }; class UnRedoExtract : public UnRedoFile { public: UnRedoExtract(const wxArrayString& first, const wxString& second, const wxArrayInt& IDlist) : UnRedoFile(second, IDlist, wxT(""), _("Extract")), filepaths(first), path(second) {} ~UnRedoExtract(){} wxArrayString filepaths; // These are the Extracted filenames, or the terminal segment of the Extracted dir ie it's the name to Redo to wxString path; // Guess what this is wxString trashpath; // Where we dump the unwanted data ;) bool Undo(); // Undoing an Extract means deleting it bool Redo(); // Redoing means undeleting it }; class UnRedoArchivePaste : public UnRedoFile { public: UnRedoArchivePaste(const wxArrayString& first, const wxArrayString& second, const wxString& origpath, const wxString& path, const wxArrayInt& IDlist, MyGenericDirCtrl* pane, const wxString displayname=_("Paste"), bool dirs_only = false) : UnRedoFile(wxT(""), IDlist, wxT(""), displayname + (dirs_only ? _(" dirs") : wxT(""))), originalfilepaths(first), newfilepaths(second), originpath(origpath), destpath(path), destctrl(pane), m_dirs_only(dirs_only) {} ~UnRedoArchivePaste(){} wxArrayString originalfilepaths; wxArrayString newfilepaths; wxString originpath, destpath; MyGenericDirCtrl* destctrl; // Ptr to (what we hope is still) the view with the still-open archive bool m_dirs_only; bool Undo(); // Undoing a Paste means Removing bool Redo(); // Re-doing a Paste means redoing the paste }; class UnRedoArchiveDelete : public UnRedoFile { public: UnRedoArchiveDelete(const wxArrayString& first, const wxArrayString& second, const wxString& origpth, const wxString& destpth, const wxArrayInt& IDlist, MyGenericDirCtrl* pane, const wxString displayname=_("Delete")) : UnRedoFile(wxT(""), IDlist, wxT(""), displayname), originalfilepaths(first), newfilepaths(second), originpath(origpth), destpath(destpth), originctrl(pane) {} ~UnRedoArchiveDelete(){} wxArrayString originalfilepaths; wxArrayString newfilepaths; wxString originpath, destpath; MyGenericDirCtrl* originctrl; // Ptr to (what we hope is still) the view with the still-open archive bool Undo(); // Undoing an Delete means undeleting it bool Redo(); // Redoing means removing it }; class UnRedoCutPasteToFromArchive : public UnRedoFile { public: UnRedoCutPasteToFromArchive(const wxArrayString& orig, const wxArrayString& dests, const wxString origin, const wxString destination, const wxArrayInt& IDlist, MyGenericDirCtrl* first, MyGenericDirCtrl* second, enum archivemovetype wich ) : UnRedoFile(wxT(""), IDlist, wxT(""), _("Move")), originalfilepaths(orig), newfilepaths(dests), originpath(origin), destpath(destination), originctrl(first), destctrl(second), which(wich){} ~UnRedoCutPasteToFromArchive(){} bool Undo(); // Undoing a Move means moving backwards; a Paste means deleting the copy bool Redo(); protected: wxArrayString originalfilepaths; wxArrayString newfilepaths; wxString originpath; wxString destpath; MyGenericDirCtrl* originctrl; // Ptr to (what we hope is still) the view with the still-open archive for Moves out of archive, or the 'real' origin for Moves into MyGenericDirCtrl* destctrl; // Ditto but vice versa for destination enum archivemovetype which; // Are we coming, going or both? }; class UnRedoMoveToFromArchive : public UnRedoFile // Moves back into the archive { public: UnRedoMoveToFromArchive(const wxArrayString& orig, const wxArrayString& dests, const wxString origin, const wxString destination, const wxArrayInt& IDlist, MyGenericDirCtrl* first, MyGenericDirCtrl* second, enum archivemovetype wich ) : UnRedoFile(wxT(""), IDlist, wxT(""), _("Move")), originalfilepaths(orig), newfilepaths(dests), originpath(origin), destpath(destination), originctrl(first), destctrl(second), which(wich){} ~UnRedoMoveToFromArchive(){} bool Undo(); // Undoing a Move means moving backwards; a Paste means deleting the copy bool Redo(); protected: wxArrayString originalfilepaths; wxArrayString newfilepaths; wxString originpath; wxString destpath; MyGenericDirCtrl* originctrl; // Ptr to (what we hope is still) the view with the still-open archive for Moves out of archive, or the 'real' origin for Moves into MyGenericDirCtrl* destctrl; // Ditto but vice versa for destination enum archivemovetype which; // Are we coming, going or both? }; WX_DEFINE_ARRAY(UnRedo*, ArrayOfUnRedos); // Define the array we'll be using class UnRedoImplementer { public: UnRedoImplementer() : m_UnRedoArray(NULL), m_CountarrayIndex(0), m_Successcount(0), m_NextItem(0), m_IsActive(false) {} bool DoUnredos(ArrayOfUnRedos& urarr, size_t first, const wxArrayInt& countarr, bool undoing); void StartItems(); void OnItemCompleted(size_t item); void OnAllItemsCompleted(bool successfully = true); bool IsActive() const { return m_IsActive; } protected: bool IsCompleted() const; size_t GetNextItem(); ArrayOfUnRedos* m_UnRedoArray; wxArrayInt m_CountArray; size_t m_CountarrayIndex; size_t m_Successcount; size_t m_NextItem; bool m_IsUndoing; bool m_IsActive; }; class UnRedoManager { public: UnRedoManager() { UnRedoArray.Alloc(MAX_NUMBER_OF_UNDOS); } ~UnRedoManager(){ ClearUnRedoArray(); } static void ClearUnRedoArray(); static MyFrame *frame; static bool AddEntry(UnRedo*); // Adds a new undoable action to the array static bool ClusterIsOpen; // Is a cluster currently open? static bool Supercluster; // Similarly, but re superclusters static bool StartClusterIfNeeded(); // Start a new cluster if none was open. Returns whether it was needed static void EndCluster(); // Closes the currently-open cluster static int StartSuperCluster(); // Start a Supercluster. Used eg for Cut/Paste combo, where we want undo to do both at once static void ContinueSuperCluster(); // Continue a Supercluster. eg 1 or subsequent Pastes following a cut static void CloseSuperCluster(); // Close a Supercluster. Called eg by Copy, so that a Cut, then an Copy, then a Paste, won't be aggregated static void UndoEntry(int clusters = 1); // Undoes 'clusters' of clusters of stored actions static void RedoEntry(int clusters = 1); // Redoes 'clusters' of clusters of stored actions static void OnUndoSidebar(); // Called by the Undo-button sidebar static void OnRedoSidebar(); // Called by the Redo-button sidebar static bool UndoAvailable(){ return (m_count > 0); } // Used by UpdateUI static bool RedoAvailable(){ return (m_count < UnRedoArray.GetCount()); } static UnRedoImplementer& GetImplementer() { return m_implementer; } protected: static void StartCluster(); // Start a new UnRedoManager cluster static void LoadArray(wxArrayString& namearray, int& index, bool redo); // used by sidebars, to load a clutch of clusters from the main array into the temp one static ArrayOfUnRedos UnRedoArray; // Array of UnRedo pointers static size_t m_count; // Indexes the next spare slot in the Undo array static size_t cluster; // Holds the arbitrary codeno that will be used to identify the next cluster of unredos static size_t currentcluster; // Holds the codeno for the currently-open cluster static size_t currentSupercluster; static UnRedoImplementer m_implementer; }; class DirectoryForDeletions // Sets up and subsequently deletes if appropriate, temp dirs to hold deleted and trashed files/dirs { public: DirectoryForDeletions(); ~DirectoryForDeletions(); void EmptyTrash(bool trash); // Empties trash-can or 'deleted'-can, depending on the bool bool ReallyDelete(wxFileName *PathName); static bool GetUptothemomentDirname(wxFileName& trashdir, enum whichcan trash); // Uses DeletedName or whatever to create unique subdir, using current time static wxString GetDeletedName(){ return DeletedName; } protected: static void CreateCan(enum whichcan); // Create a trash-can or whatever static wxString DeletedName; // Names of the relevant subdirs static wxString TrashedName; static wxString TempfileDir; }; #endif // REDOH ./4pane-6.0/INSTALL0000644000175000017500000000423113205575137012524 0ustar daviddavid *** Installing from a package *** If there's a 4Pane package for your distro e.g. .deb or .rpm, just install this in the usual way. 4Pane depends on the wxWidgets toolkit, so this package must also be installed: it will probably be called libwxgtk2.0 or similar. *** Installing from a tarball *** If there is no package available, or if you prefer to build your own software, you can use the 4Pane tarball. First you'll need to download and build wxWidgets. Get the latest stable version from http://www.wxwidgets.org/downloads/ and extract it. Make a new subdirectory in the wxWidgets source directory, and cd into it. Then in the console do: ../configure --with-gtk --enable-unicode (You can optionally add --enable-debug) Look at the output; the commonest problem is missing the gtk development lib, which will be called something like libgtk2.0-dev. Once configure has worked, do 'make'; wait 10 minutes or so for this to finish, then su; make install; ldconfig You can now build 4Pane in the standard way: extract the tarball, then ./configure; make; su; make install. (For options strange and rare, do ./configure --help or read the file PACKAGERS.) There should now be a desktop shortcut to launch 4Pane; or you can type '4Pane' in a console. If 4Pane fails to run, giving a message like: "Error while loading shared libraries: libwxFOO-2.8.so.0: cannot open shared object file: No such file or directory", the chances are that the name of your distro ends in 'buntu' ;). If so you need the following line in your console (or, more permanently, in your ~/.bashrc file): export LD_LIBRARY_PATH=/usr/local/lib *** Which version of wxWidgets to use? *** Any currently-available version starting from wxGTK-2.8.0. However I suggest you use the most recent stable release. A note about older versions of 4Pane. Prior to version 0.7.0, 4Pane would work with any version of wxWidgets from 2.4.0; but you should have used at least 2.6. Older versions than this will not build using the tarball's 'configure' (there's an alternative tarball/configure that should work: see http://www.4Pane.co.uk/0.6.0/Installing242.htm); and if 4Pane is built on older versions, it can't peek into archives. ./4pane-6.0/MyGenericDirCtrl.cpp0000644000175000017500000031251313566742446015363 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // (Original) Name: dirctrlg.cpp // Purpose: wxGenericDirCtrl class // Builds on wxDirCtrl class written by Robert Roebling for the // wxFile application, modified by Harm van der Heijden. // Further modified for Windows. Further modified for 4Pane // Author: Robert Roebling, Harm van der Heijden, Julian Smart et al // Modified by: David Hart 2003-19 // Created: 21/3/2000 // Copyright: (c) Robert Roebling, Harm van der Heijden, Julian Smart. Alterations (c) David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #include "wx/log.h" #include "wx/app.h" #include "wx/frame.h" #include "wx/scrolwin.h" #include "wx/menu.h" #include "wx/dirctrl.h" #include "wx/config.h" #include "wx/splitter.h" #include "wx/filename.h" #include "wx/sizer.h" #include "wx/dnd.h" #include "wx/dcmemory.h" #include "wx/dragimag.h" #include "wx/clipbrd.h" #include "wx/arrimpl.cpp" #include "wx/dir.h" #include "Devices.h" #include "Archive.h" #include "MyGenericDirCtrl.h" #include "Filetypes.h" #include "MyTreeCtrl.h" #include "MyDirs.h" #include "MyFiles.h" #include "MyFrame.h" #include "Misc.h" #if defined __WXGTK__ #include #endif #if USE_MYFSWATCHER #include "sdk/fswatcher/MyFSWatcher.h" #endif WX_DEFINE_OBJARRAY(FileDataObjArray); // Define the array of (Fake)FileData objects #if wxVERSION_NUMBER < 2900 DEFINE_EVENT_TYPE(FSWatcherProcessEvents) DEFINE_EVENT_TYPE(FSWatcherRefreshWatchEvent) #else wxDEFINE_EVENT(FSWatcherProcessEvents, wxNotifyEvent); wxDEFINE_EVENT(FSWatcherRefreshWatchEvent, wxNotifyEvent); #endif /* Closed folder */ static const char * icon1_xpm[] = { /* width height ncolors chars_per_pixel */ "16 16 6 1", /* colors */ " s None c None", ". c #000000", "+ c #c0c0c0", "@ c #808080", "# c #ffff00", "$ c #ffffff", /* pixels */ " ", " ", " @@@@@ ", " @#+#+#@ ", " @#+#+#+#@@@@@@ ", " @$$$$$$$$$$$$@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @$+#+#+#+#+#+@.", " @$#+#+#+#+#+#@.", " @@@@@@@@@@@@@@.", " ..............", " "}; /* Open folder */ static const char * icon2_xpm[] = { /* width height ncolors chars_per_pixel */ "16 16 6 1", /* colors */ " s None c None", ". c #000000", "+ c #c0c0c0", "@ c #808080", "# c #ffff00", "$ c #ffffff", /* pixels */ " ", " ", " @@@@@ ", " @$$$$$@ ", " @$#+#+#$@@@@@@ ", " @$+#+#+$$$$$$@.", " @$#+#+#+#+#+#@.", "@@@@@@@@@@@@@#@.", "@$$$$$$$$$$@@+@.", "@$#+#+#+#+##.@@.", " @$#+#+#+#+#+.@.", " @$+#+#+#+#+#.@.", " @$+#+#+#+##@..", " @@@@@@@@@@@@@.", " .............", " "}; /* File */ static const char * icon3_xpm[] = { /* width height ncolors chars_per_pixel */ "16 16 3 1", /* colors */ " s None c None", ". c #000000", "+ c #ffffff", /* pixels */ " ", " ", " ........ ", " .++++++.. ", " .+.+.++.+. ", " .++++++.... ", " .+.+.+++++. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " .+.+.+.+.+. ", " .+++++++++. ", " ........... ", " "}; /* Computer */ static const char * icon4_xpm[] = { "16 16 7 1", " s None c None", ". c #808080", "X c #c0c0c0", "o c Black", "O c Gray100", "+ c #008080", "@ c Blue", " ........... ", " .XXXXXXXXXX.o", " .OOOOOOOOO..o", " .OoooooooX..o", " .Oo+...@+X..o", " .Oo+XXX.+X..o", " .Oo+....+X..o", " .Oo++++++X..o", " .OXXXXXXXX.oo", " ..........o.o", " ...........Xo", " .XXXXXXXXXX.o", " .o.o.o.o.o...o", " .oXoXoXoXoXo.o ", ".XOXXXXXXXXX.o ", "............o "}; /* Drive */ static const char * icon5_xpm[] = { "16 16 7 1", " s None c None", ". c #808080", "X c #c0c0c0", "o c Black", "O c Gray100", "+ c Green", "@ c #008000", " ", " ", " ", " ", " ............. ", " .XXXXXXXXXXXX.o", ".OOOOOOOOOOOO..o", ".XXXXXXXXX+@X..o", ".XXXXXXXXXXXX..o", ".X..........X..o", ".XOOOOOOOOOOX..o", "..............o ", " ooooooooooooo ", " ", " ", " "}; /* CD-ROM */ static const char *icon6_xpm[] = { "16 16 10 1", " s None c None", ". c #808080", "X c #c0c0c0", "o c Yellow", "O c Blue", "+ c Black", "@ c Gray100", "# c #008080", "$ c Green", "% c #008000", " ... ", " ..XoX.. ", " .O.XoXXX+ ", " ...O.oXXXX+ ", " .O..X.XXXX+ ", " ....X.+..XXX+", " .XXX.+@+.XXX+", " .X@XX.+.X@@X+", " .....X...#XX@+ ", ".@@@...XXo.O@X+ ", ".@XXX..XXoXOO+ ", ".@++++..XoX+++ ", ".@$%@@XX+++X.+ ", ".............+ ", " ++++++++++++ ", " "}; /* Floppy */ // // I changed this to a floppy disk static const char * icon7_xpm[] = { "16 16 11 1", " s None c None", ". c #a0a0a4", "# c #008686", "a c #0000ff", "b c #0000c0", "c c #dddddd", "d c #ffffff", "e c #c0c0c0", "f c #006bc9", "g c #000080", "h c #969696", "bbbbbbbbbbbbbbbh", "baageeeeeeeeefab", "baagdddddddddfab", "baageeeeeeeedfab", "baagdddddddddfab", "baageeeeeeeddfab", "baagddddddddefab", "baaaaaaaaaaaafab", "baaaaaaaaaaaafab", "baaggggggggggfab", "baag.eeeeegaafab", "baag.aa.eegaafab", "baag.aa..egaafab", "baag.aa..egaafab", "hb#gccccccg##fab", " bbbbbbbbbbbbbh"}; /* Removeable */ static const char * icon8_xpm[] = { "16 16 7 1", " s None c None", ". c #808080", "X c #c0c0c0", "o c Black", "O c Gray100", "+ c Red", "@ c #800000", " ", " ", " ", " ............. ", " .XXXXXXXXXXXX.o", ".OOOOOOOOOOOO..o", ".OXXXXXXXXXXX..o", ".O+@.oooooo.X..o", ".OXXOooooooOX..o", ".OXXXOOOOOOXX..o", ".OXXXXXXXXXXX..o", ".O............o ", " ooooooooooooo ", " ", " ", " "}; #include "bitmaps/include/symlink.xpm" // // Icon for Symlink #include "bitmaps/include/symlinkbroken.xpm" // // Icon for broken Symlinks #include "bitmaps/include/SymlinkToFolder.xpm" // // Icon for Symlink-to-folder #include "bitmaps/include/LockedFolder.xpm" // // Icon for Locked Folder #include "bitmaps/include/usb.xpm" // // Icon for usb drive #include "bitmaps/include/pipe.xpm" // // Icon for FIFO #include "bitmaps/include/blockdevice.xpm" // // Icon for Block device #include "bitmaps/include/chardevice.xpm" // // Icon for Char device #include "bitmaps/connect_no.xpm" // // Icon for Socket #include "bitmaps/include/compressedfile.xpm" // // Icon for compressed files #include "bitmaps/include/tarball.xpm" // // Icon for tarballs et al e.g. .a #include "bitmaps/include/compressedtar.xpm" // // Icon for compressed tarballs, .cpio, packages e.g. rpms #include "bitmaps/include/GhostClosedFolder.xpm" // // Icon for closed folder inside a virtual archive #include "bitmaps/include/GhostOpenFolder.xpm" // // Icon for open folder inside a virtual archive #include "bitmaps/include/GhostFile.xpm" // // Icon for file inside a virtual archive #include "bitmaps/include/GhostCompressedFile.xpm" // // Icon for compressed file inside a virtual archive #include "bitmaps/include/GhostTarball.xpm" // // Icon for archive inside a virtual archive #include "bitmaps/include/GhostCompressedTar.xpm" // // Icon for compressed archive inside a virtual archive #include "bitmaps/include/UnknownFolder.xpm" // // Icon for corrupted folder #include "bitmaps/include/UnknownFile.xpm" // // Icon for corrupted file // Function which is called by quick sort. We want to override the default wxArrayString behaviour, // by using wxStrcoll(), which makes the sort locale-aware (see bug 2863704) static int LINKAGEMODE wxDirCtrlStringCompareFunctionLC_COLLATE(const void *first, const void *second) { wxString strFirst(*((wxString*)(first))); wxString strSecond(*((wxString*)(second))); return wxStrcoll((strFirst.c_str()), (strSecond.c_str())); } // The original, non-local-aware method static int LINKAGEMODE wxDirCtrlStringCompareFunction(const void *first, const void *second) { wxString *strFirst = (wxString *)first; wxString *strSecond = (wxString *)second; return strFirst->CmpNoCase(*strSecond); } static int LINKAGEMODE (*wxDirCtrlStringCompareFunc)(const void *first, const void *second) = &wxDirCtrlStringCompareFunctionLC_COLLATE; void SetDirpaneSortMethod(const bool LC_COLLATE_aware) // If true, make the dirpane sorting take account of LC_COLLATE { if (LC_COLLATE_aware) wxDirCtrlStringCompareFunc = &wxDirCtrlStringCompareFunctionLC_COLLATE; else wxDirCtrlStringCompareFunc = &wxDirCtrlStringCompareFunction; } //----------------------------------------------------------------------------- // wxGenericDirCtrl //----------------------------------------------------------------------------- #if wxVERSION_NUMBER < 2900 DEFINE_EVENT_TYPE(MyUpdateToolbartextEvent) // A custom event-type, used by DisplaySelectionInTBTextCtrl() #else wxDEFINE_EVENT(MyUpdateToolbartextEvent, wxNotifyEvent); #endif #define EVT_MYUPDATE_TBTEXT(fn) \ DECLARE_EVENT_TABLE_ENTRY( \ MyUpdateToolbartextEvent, wxID_ANY, wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction)(wxNotifyEventFunction)&fn, \ (wxObject*) NULL), IMPLEMENT_DYNAMIC_CLASS(MyGenericDirCtrl, wxControl) BEGIN_EVENT_TABLE(MyGenericDirCtrl, wxGenericDirCtrl) EVT_TREE_ITEM_EXPANDED(-1, MyGenericDirCtrl::OnExpandItem) EVT_TREE_ITEM_COLLAPSED(-1, MyGenericDirCtrl::OnCollapseItem) EVT_MENU(SHCUT_CUT, MyGenericDirCtrl::OnShortcutCut) EVT_MENU(SHCUT_COPY, MyGenericDirCtrl::OnShortcutCopy) EVT_MENU(SHCUT_PASTE, MyGenericDirCtrl::OnShortcutPaste) EVT_MENU(SHCUT_HARDLINK, MyGenericDirCtrl::OnShortcutHardLink) EVT_MENU(SHCUT_SOFTLINK, MyGenericDirCtrl::OnShortcutSoftLink) EVT_MENU(SHCUT_TRASH, MyGenericDirCtrl::OnShortcutTrash) EVT_MENU(SHCUT_DELETE, MyGenericDirCtrl::OnShortcutDel) EVT_MENU(SHCUT_RENAME, MyGenericDirCtrl::OnRename) EVT_MENU(SHCUT_DUP, MyGenericDirCtrl::OnDup) EVT_MENU(SHCUT_REPLICATE, MyGenericDirCtrl::OnReplicate) EVT_MENU(SHCUT_SWAPPANES, MyGenericDirCtrl::OnSwapPanes) EVT_MENU(SHCUT_FILTER, MyGenericDirCtrl::OnFilter) EVT_MENU(SHCUT_PROPERTIES, MyGenericDirCtrl::OnProperties) EVT_MENU(SHCUT_SPLITPANE_VERTICAL, MyGenericDirCtrl::OnSplitpaneVertical) EVT_MENU(SHCUT_SPLITPANE_HORIZONTAL, MyGenericDirCtrl::OnSplitpaneHorizontal) EVT_MENU(SHCUT_SPLITPANE_UNSPLIT, MyGenericDirCtrl::OnSplitpaneUnsplit) EVT_MENU(SHCUT_UNDO, MyGenericDirCtrl::OnShortcutUndo) EVT_MENU(SHCUT_REDO, MyGenericDirCtrl::OnShortcutRedo) EVT_MENU(SHCUT_REFRESH, MyGenericDirCtrl::OnRefreshTree) EVT_MENU(SHCUT_GOTO_SYMLINK_TARGET, MyGenericDirCtrl::OnShortcutGoToSymlinkTarget) EVT_MENU(SHCUT_GOTO_ULTIMATE_SYMLINK_TARGET, MyGenericDirCtrl::OnShortcutGoToSymlinkTarget) EVT_SIZE(MyGenericDirCtrl::OnSize) EVT_TREE_SEL_CHANGED (-1, MyGenericDirCtrl::OnTreeSelected) // // EVT_TREE_ITEM_ACTIVATED(-1, MyGenericDirCtrl::OnTreeItemDClicked) // // EVT_MYUPDATE_TBTEXT(MyGenericDirCtrl::DoDisplaySelectionInTBTextCtrl) // // EVT_IDLE(MyGenericDirCtrl::OnIdle) #if defined(__LINUX__) && defined(__WXGTK__) && !USE_MYFSWATCHER EVT_FSWATCHER(wxID_ANY, MyGenericDirCtrl::OnFileWatcherEvent) // // #endif END_EVENT_TABLE() MyGenericDirCtrl::MyGenericDirCtrl(void) : pos(wxDefaultPosition), size(wxDefaultSize) { Init(); } bool MyGenericDirCtrl::Create(wxWindow *parent, const wxWindowID id, const wxString& dir, long style, const wxString& filter, int defaultFilter, const wxString& name ) { if (!wxControl::Create(parent, id, pos, size, style, wxDefaultValidator, name)) return false; SelFlag = false; // // Flags if a selection event is real or from internals DisplayFilesOnly = false; // // NoVisibleItems = false; // // Flags whether the user has filtered out all the items wxColour backgroundcol = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE); SetBackgroundColour(backgroundcol); if (!USE_DEFAULT_TREE_FONT && CHOSEN_TREE_FONT.Ok()) SetFont(CHOSEN_TREE_FONT); // // else #ifdef __WXGTK20__ { wxFont font = GetFont(); font.SetPointSize(font.GetPointSize() - 2); SetFont(font); } // // GTK2 gives a font-size that is c.2 points larger than GTK1.2 #endif Init(); if (fileview==ISLEFT) // // Directory view treeStyle = wxTR_HAS_BUTTONS | wxTR_HIDE_ROOT; else treeStyle = wxTR_HIDE_ROOT; // // File view so no "+-boxes" treeStyle |= wxTR_MULTIPLE; // // Implement multiple selection if (style & wxDIRCTRL_EDIT_LABELS) treeStyle |= wxTR_EDIT_LABELS; if ((style & wxDIRCTRL_3D_INTERNAL) == 0) treeStyle |= wxNO_BORDER; else treeStyle |= wxBORDER_SUNKEN; filterStyle = 0; if ((style & wxDIRCTRL_3D_INTERNAL) == 0) filterStyle |= wxNO_BORDER; else filterStyle |= wxBORDER_SUNKEN; m_filter = filter; // SetFilterIndex(defaultFilter); if (m_filterListCtrl) m_filterListCtrl->FillFilterList(filter, defaultFilter); m_treeCtrl = new MyTreeCtrl(this, NextID++/*wxID_TREECTRL*/, pos, size, treeStyle); // // Originally wxTreeCtrl if (COLOUR_PANE_BACKGROUND) // // { if (fileview == ISLEFT) backgroundcol = BACKGROUND_COLOUR_DV; else backgroundcol = SINGLE_BACKGROUND_COLOUR ? BACKGROUND_COLOUR_DV:BACKGROUND_COLOUR_FV; m_treeCtrl->SetBackgroundColour(backgroundcol); } #if wxVERSION_NUMBER >= 3000 && defined(__WXGTK3__) && !GTK_CHECK_VERSION(3,10,0) else // An early gtk+3, which by default will give the tree a grey background { m_treeCtrl->SetBackgroundColour( GetSaneColour(m_treeCtrl, true, wxSYS_COLOUR_LISTBOX) ); } #endif m_imageList = new wxImageList(16, 16, true); m_imageList->Add(wxIcon(icon1_xpm)); m_imageList->Add(wxIcon(icon2_xpm)); m_imageList->Add(wxIcon(icon3_xpm)); m_imageList->Add(wxIcon(icon4_xpm)); m_imageList->Add(wxIcon(icon5_xpm)); m_imageList->Add(wxIcon(icon6_xpm)); m_imageList->Add(wxIcon(icon7_xpm)); m_imageList->Add(wxIcon(icon8_xpm)); m_imageList->Add(wxIcon(symlink_xpm)); // // m_imageList->Add(wxIcon(symlinkbroken_xpm)); // // m_imageList->Add(wxIcon(SymlinkToFolder_xpm)); // // m_imageList->Add(wxIcon(LockedFolder_xpm)); // // m_imageList->Add(wxIcon(usb_xpm)); // // m_imageList->Add(wxIcon(pipe_xpm)); // // m_imageList->Add(wxIcon(blockdevice_xpm)); // // m_imageList->Add(wxIcon(chardevice_xpm)); // // m_imageList->Add(wxIcon(connect_no_xpm)); // // m_imageList->Add(wxIcon(compressedfile_xpm)); // // m_imageList->Add(wxIcon(tarball_xpm)); // // m_imageList->Add(wxIcon(compressedtar_xpm)); // // m_imageList->Add(wxIcon(ghostclosedfolder_xpm)); // // m_imageList->Add(wxIcon(ghostopenfolder_xpm)); // // m_imageList->Add(wxIcon(ghostfile_xpm)); // // m_imageList->Add(wxIcon(ghostcompressedfile_xpm)); // // m_imageList->Add(wxIcon(ghosttarball_xpm)); // // m_imageList->Add(wxIcon(ghostcompressedtar_xpm)); // // m_imageList->Add(wxIcon(UnknownFolder_xpm)); // // m_imageList->Add(wxIcon(UnknownFile_xpm)); // // m_treeCtrl->AssignImageList(m_imageList); // // m_showHidden = SHOWHIDDEN; return true; } void MyGenericDirCtrl::FinishCreation() // // Separated from Create() so that MyFileDirCtrl can be initialised first { #if defined(__LINUX__) && defined(__WXGTK__) m_eventmanager.SetOwner(this); m_watcher = NULL; // // In case we can't instantiate it here as the eventloop isn't yet available #endif if (fileview == ISLEFT) arcman = new ArchiveStreamMan; // // The twin views share an archive manager else if (partner) arcman = partner->arcman; // // So create in the dirview (which is made first), copy when in fileview CreateTree(); if (fileview == ISLEFT) static_cast(this)->GetNavigationManager().PushEntry(startdir); // // startdir will probably have been empty until the CreateTree() call SelFlag = true; // // Permits future selection events #if defined(__LINUX__) && defined(__WXGTK__) if (wxApp::IsMainLoopRunning()) // If the loop's not running yet, this will happen from OnIdle() { m_watcher = new MyFSWatcher(this); if (USE_FSWATCHER && !(arcman && arcman->IsArchive())) { if (fileview == ISLEFT) m_watcher->SetDirviewWatch(GetActiveDirPath()); else m_watcher->SetFileviewWatch(GetActiveDirPath()); } } Connect(wxID_ANY, FSWatcherProcessEvents, wxNotifyEventHandler(MyGenericDirCtrl::OnProcessStoredFSWatcherEvents), NULL, this); #if USE_MYFSWATCHER Connect(wxID_ANY, wxEVT_FSWATCHER, wxFileSystemWatcherEventHandler(MyGenericDirCtrl::OnFileWatcherEvent), NULL, this); #endif #endif } void MyGenericDirCtrl::OnIdle(wxIdleEvent& WXUNUSED(event)) { #if defined(__LINUX__) && defined(__WXGTK__) if (!m_watcher && !GetActiveDirPath().empty()) // If not already done, and the event-loop is now running { m_watcher = new MyFSWatcher(this); if (USE_FSWATCHER && !(arcman && arcman->IsArchive())) { if (fileview == ISLEFT) m_watcher->SetDirviewWatch(GetActiveDirPath()); else m_watcher->SetFileviewWatch(GetActiveDirPath()); } } if (USE_FSWATCHER && arcman && arcman->IsArchive()) m_eventmanager.ClearStoredEvents(); #endif if (m_StatusbarInfoValid) return; // Call UpdateStatusbarInfo() if needed if (GetPath().IsEmpty()) return; //We must check for emptiness, as this method is called before creation is absolutely finished, whereupon arcman->IsArchive() segs wxArrayString selections; size_t count = GetMultiplePaths(selections); if (arcman && !arcman->IsArchive() && (fileview == ISRIGHT)) // Archives are done in FileGenericDirCtrl::UpdateStatusbarInfo { wxStaticCast(this, FileGenericDirCtrl)->SelectedCumSize = 0; for (size_t n=0; n < count; ++n) { if (SHOW_RECURSIVE_FILEVIEW_SIZE) // Do we use the slow & complete recursive method wxStaticCast(this, FileGenericDirCtrl)->SelectedCumSize += GetDirSizeRecursively(selections.Item(n)); else wxStaticCast(this, FileGenericDirCtrl)->SelectedCumSize += GetDirSize(selections.Item(n)); // or the quick and incomplete one-shot? } } else if (arcman && !arcman->IsArchive() && fileview == ISLEFT) { wxStaticCast(this, DirGenericDirCtrl)->SelectedCumSize = 0; for (size_t n=0; n < count; ++n) wxStaticCast(this, DirGenericDirCtrl)->SelectedCumSize += GetDirSize(selections.Item(n)); } m_StatusbarInfoValid = true; UpdateStatusbarInfo(selections); } #if defined(__LINUX__) && defined(__WXGTK__) void MyGenericDirCtrl::OnProcessStoredFSWatcherEvents(wxNotifyEvent& event) { if (USE_FSWATCHER && !(arcman && arcman->IsArchive())) { int count = event.GetInt(); if (count > 0) // If the count > 0 resend it, decremented. Otherwise do the actual processing { event.SetInt(count - 1); wxPostEvent(this, event); } else m_eventmanager.ProcessStoredEvents(); } } #endif void MyGenericDirCtrl::CreateTree() // // Extracted from Create, reused in ReCreateTreeFromSelection() { if (startdir.IsEmpty()) startdir = wxGetApp().GetHOME(); // // If startdir = null, go straight HOME bool InsideArchive = false; // // Used below as we can't use FileData within an archive ziptype ArchiveType = zt_invalid; // // // // This is all mine if (fileview == ISLEFT) // // If dirview and inside an archive, make sure we're still inside it. If not, come out layer by layer until startdir is found while (arcman->IsArchive() && // // If within an archive, see if we just dclicked inside the current archive !(arcman->IsWithinThisArchive(startdir) || arcman->IsWithinThisArchive(startdir + wxFILE_SEP_PATH))) OnExitingArchive(); // // If not, remove a layer of nested archives & try again InsideArchive = arcman && arcman->IsWithinArchive(startdir); bool success = true; // // ArchiveType = Archive::Categorise(startdir); // // Check if startdir is likely to be an archive if (fileview == ISLEFT && ArchiveType != zt_invalid) { if (arcman && (!arcman->GetArc() || (startdir+wxFILE_SEP_PATH) != arcman->GetArc()->Getffs()->GetRootDir()->GetFilepath())) // // and not this one success = arcman->NewArc(startdir, ArchiveType); // // If so, this Pushes any old arc and creates a new one } else if (InsideArchive) ArchiveType = arcman->GetArchiveType(); // // Otherwise, if we're still inside an archive, revert to its type if (fileview==ISLEFT) { if (!success || (ArchiveType == zt_invalid && !wxDirExists(startdir))) // // If it's not a dir or an archive, or if NewArc failed above { while (startdir.Right(1) == wxFILE_SEP_PATH && startdir.Len() > 1) startdir.RemoveLast(); startdir = startdir.BeforeLast(wxFILE_SEP_PATH); // // If the requested startdir doesn't exist, try its parent if (!wxDirExists(startdir)) { startdir = wxGetApp().GetHOME(); // // If this still doesn't exist, use any passed HOME if (!wxDirExists(startdir)) startdir = wxGetHomeDir(); // // If this doesn't exist either, use $HOME (which surely . . . ) } } MyGenericDirCtrl* active = MyFrame::mainframe->GetActivePane(); if (active) if (active->GetId() == GetId()) DisplaySelectionInTBTextCtrl(startdir); // // If we're the active pane, update the textctrl if (!startdir.IsSameAs(wxFILE_SEP_PATH)) // // Don't want to root-prune while (startdir.Right(1) == wxFILE_SEP_PATH // // Avoid '/' problems && startdir.Len() > 1) startdir.RemoveLast(); // // but don't remove too many --- lest someone enters "///" ? } m_defaultPath = startdir; // // SetTreePrefs(); // // Sets the Tree widths according to prefs wxDirItemData* rootData; if (fulltree && fileview==ISLEFT) rootData = new wxDirItemData(wxT("/"), wxT(""), true); // // The original way else if (fileview==ISLEFT) rootData = new wxDirItemData(/*startdir*/wxT("foo"), wxT(""), true); else rootData = new wxDirItemData(startdir, wxT(""), true); wxString rootName; #if defined(__WINDOWS__) || defined(__WXPM__) || defined(__DOS__) rootName = _("Computer"); #else rootName = _("Sections"); #endif m_rootId = m_treeCtrl->AddRoot(rootName, 3, -1, rootData); m_treeCtrl->SetItemHasChildren(m_rootId); // I've added this unnecessary call (to a protected wxGenericTreeCtrl function) to protect against pathological filenames // e.g. if a file is called "Foo\rBar\rBaz", or if disc corruption results in linefeed-containing garbage, each line of the tree would have 3*correct line-height // and this would persist even after navigating away. So reset the height when the tree is recreated m_treeCtrl->CallCalculateLineHeight(); if (!InsideArchive) // // { FileData startdirFD(startdir); // // if (fileview == ISLEFT || (fileview == ISRIGHT && startdirFD.CanTHISUserExecute())) // // If this is a fileview, check we have exec permission for parent dir. Otherwise it looks horrible ExpandDir(m_rootId); // automatically expand first level } else ExpandDir(m_rootId); // automatically expand first level //Expand and select the default path if (!m_defaultPath.IsEmpty()) // This was set above to the passed param "dir" ExpandPath(m_defaultPath); DoResize(); } MyGenericDirCtrl::~MyGenericDirCtrl() { if (fileview == ISLEFT) { delete arcman; arcman = NULL; } // // else arcman = NULL; // // Needed as Redo sometimes stores subsequently-deleted MyGenericDirCtrls* #if defined(__LINUX__) && defined(__WXGTK__) delete m_watcher; #endif } void MyGenericDirCtrl::Init() { partner = NULL; arcman = NULL; m_showHidden = SHOWHIDDEN; // // m_imageList = NULL; m_currentFilter = 0; SetFilterArray(wxEmptyString, false); // // Default: any file m_treeCtrl = NULL; m_filterListCtrl = NULL; } void MyGenericDirCtrl::ShowHidden(bool show) { m_showHidden = show; wxString path = GetPath(); ReCreateTree(); if (!path.empty()) SetPath(path); } const wxTreeItemId MyGenericDirCtrl::AddSection(const wxString& path, const wxString& name, int imageId) { wxDirItemData *dir_item = new wxDirItemData(path,name,true); wxTreeItemId id = m_treeCtrl->AppendItem(m_rootId, name, imageId, -1, dir_item); m_treeCtrl->SetItemHasChildren(id); return id; } void MyGenericDirCtrl::SetupSections() { #if defined(__WINDOWS__) || defined(__DOS__) || defined(__WXPM__) #ifdef __WIN32__ wxChar driveBuffer[256]; size_t n = (size_t) GetLogicalDriveStrings(255, driveBuffer); size_t i = 0; while (i < n) { wxString path, name; path.Printf(wxT("%c:\\"), driveBuffer[i]); name.Printf(wxT("(%c:)"), driveBuffer[i]); int imageId = GDC_drive; int driveType = ::GetDriveType(path); switch (driveType) { case DRIVE_REMOVABLE: if (path == wxT("a:\\") || path == wxT("b:\\")) imageId = GDC_floppy; else imageId = GDC_removable; break; case DRIVE_FIXED: imageId = GDC_drive; break; case DRIVE_REMOTE: imageId = GDC_drive; break; case DRIVE_CDROM: imageId = GDC_cdrom; break; default: imageId = GDC_drive; break; } AddSection(path, name, imageId); while (driveBuffer[i] != wxT('\0')) i ++; i ++; if (driveBuffer[i] == wxT('\0')) break; } #else // !__WIN32__ int drive; /* If we can switch to the drive, it exists. */ for(drive = 1; drive <= 26; drive++) { wxString path, name; path.Printf(wxT("%c:\\"), (wxChar) (drive + 'a' - 1)); name.Printf(wxT("(%c:)"), (wxChar) (drive + 'A' - 1)); if (wxIsDriveAvailable(path)) { AddSection(path, name, (drive <= 2) ? GDC_floppy : GDC_drive); } } #endif // __WIN32__/!__WIN32__ #elif defined(__WXMAC__) FSSpec volume ; short index = 1 ; while(1) { short actualCount = 0 ; if (OnLine(&volume , 1 , &actualCount , &index) != noErr || actualCount == 0) break ; wxString name = wxMacFSSpec2MacFilename(&volume) ; AddSection(name + wxFILE_SEP_PATH, name, GDC_closedfolder); } #elif defined(__UNIX__) if (fulltree) // //If we're displaying the whole directory tree, need to provide a "My Computer" equivalent AddSection(wxT("/"), wxT("/"), GDC_computer); else // // Otherwise, if just displaying part of the disk, this plonks in the start dir & selects the appropriate icon { DeviceAndMountManager* pDM = MyFrame::mainframe->Layout->m_notebook->DeviceMan; DevicesStruct* ds = pDM->QueryAMountpoint(startdir); treerooticon roottype = ordinary; // Provide a bland default if (ds != NULL) roottype = pDM->deviceman->DevInfo->GetIcon(ds->devicetype); switch(roottype) { case floppytype: AddSection(startdir, startdir, GDC_floppy); break; case cdtype: AddSection(startdir, startdir, GDC_cdrom); break; case usbtype: AddSection(startdir, startdir, GDC_usb); break; case ordinary: if (arcman && arcman->IsArchive()) { AddSection(startdir, startdir, Archive::GetIconForArchiveType(arcman->GetArchiveType(), false)); break; } // Archive. Otherwise fall thru to default default: AddSection(startdir, startdir, GDC_openfolder); break; } } #else #error "Unsupported platform in wxGenericDirCtrl!" #endif } void MyGenericDirCtrl::OnBeginEditItem(wxTreeEvent &event) { // don't rename the main entry "Sections" if (event.GetItem() == m_rootId) { event.Veto(); return; } // don't rename the individual sections if (m_treeCtrl->GetItemParent(event.GetItem()) == m_rootId) { event.Veto(); return; } } void MyGenericDirCtrl::OnEndEditItem(wxTreeEvent &event) { if ((event.GetLabel().IsEmpty()) || (event.GetLabel() == wxT(".")) || (event.GetLabel() == wxT("..")) || (event.GetLabel().First(wxT("/")) != wxNOT_FOUND)) { wxMessageDialog dialog(this, _("Illegal directory name."), _("Error"), wxOK | wxICON_ERROR); dialog.ShowModal(); event.Veto(); return; } wxTreeItemId id = event.GetItem(); wxDirItemData *data = (wxDirItemData*)m_treeCtrl->GetItemData(id); wxASSERT(data); wxString new_name(wxPathOnly(data->m_path)); new_name += wxString(wxFILE_SEP_PATH); new_name += event.GetLabel(); wxLogNull log; if (wxFileExists(new_name)) { wxMessageDialog dialog(this, _("File name exists already."), _("Error"), wxOK | wxICON_ERROR); dialog.ShowModal(); event.Veto(); } if (wxRenameFile(data->m_path,new_name)) { data->SetNewDirName(new_name); } else { wxMessageDialog dialog(this, _("Operation not permitted."), _("Error"), wxOK | wxICON_ERROR); dialog.ShowModal(); event.Veto(); } } void MyGenericDirCtrl::OnExpandItem(wxTreeEvent &event) { wxTreeItemId parentId = event.GetItem(); // VS: this is needed because the event handler is called from wxTreeCtrl // ctor when wxTR_HIDE_ROOT was specified if (!m_rootId.IsOk()) m_rootId = m_treeCtrl->GetRootItem(); ExpandDir(parentId); #if defined(__LINUX__) && defined(__WXGTK__) if (USE_FSWATCHER && m_watcher) // // We've changed the visible dirs, so need to update what's watched // // But not immediately in case it's recursive i.e. '*' on e.g. /usr/lib, which would take a significant time if repeated for each dir // // Also, don't try to watch an archive stream that's just being opened, or a subdir inside one. That'll give wxLogErrors in FileSystemWatcher::Add { // wxLogDebug(wxT("About to SetDirviewWatch from OnExpandItem()")); FileData fd(startdir); if (!fd.IsValid() || (!fd.IsDir() && !fd.IsSymlinktargetADir())) return; if (fulltree) m_watcher->DoDelayedSetDirviewWatch(wxT("/")); else m_watcher->DoDelayedSetDirviewWatch(startdir); } #endif } void MyGenericDirCtrl::OnCollapseItem(wxTreeEvent &event) { CollapseDir(event.GetItem()); //wxLogDebug(wxT("About to SetDirviewWatch from OnCollapseItem()")); #if defined(__LINUX__) && defined(__WXGTK__) if (m_watcher) m_watcher->SetDirviewWatch(startdir); // // We've changed the visible dirs, so need to update what's watched #endif } void MyGenericDirCtrl::CollapseDir(wxTreeItemId parentId) { wxTreeItemId child; wxDirItemData *data = (wxDirItemData *) m_treeCtrl->GetItemData(parentId); if (!data || !data->m_isExpanded) return; data->m_isExpanded = false; wxTreeItemIdValue cookie; /* Workaround because DeleteChildren has disapeared (why?) and * CollapseAndReset doesn't work as advertised (deletes parent too) */ child = m_treeCtrl->GetFirstChild(parentId, cookie); while (child.IsOk()) { m_treeCtrl->Delete(child); /* Not GetNextChild below, because the cookie mechanism can't * handle disappearing children! */ child = m_treeCtrl->GetFirstChild(parentId, cookie); } } void MyGenericDirCtrl::ExpandDir(wxTreeItemId parentId) { wxDirItemData *data = (wxDirItemData *) m_treeCtrl->GetItemData(parentId); if (!data || data->m_isExpanded) return; data->m_isExpanded = true; if (fileview == ISLEFT) // // if we're supposed to be showing directories, rather than files if (parentId == m_treeCtrl->GetRootItem()) { SetupSections(); return; } wxASSERT(data); wxString search,path,filename; wxString dirName(data->m_path); #if defined(__WINDOWS__) || defined(__DOS__) || defined(__WXPM__) // Check if this is a root directory and if so, // whether the drive is avaiable. if (!wxIsDriveAvailable(dirName)) { data->m_isExpanded = false; //wxMessageBox(wxT("Sorry, this drive is not available.")); return; } #endif // This may take a longish time. Go to busy cursor wxBusyCursor busy; #if defined(__WINDOWS__) || defined(__DOS__) || defined(__WXPM__) if (dirName.Last() == ':') dirName += wxString(wxFILE_SEP_PATH); #endif if (dirName.Last() != wxFILE_SEP_PATH) // // I'm speeding things up by taking this out of the loops below dirName += wxString(wxFILE_SEP_PATH); wxArrayString dirs; wxArrayString filenames; // wxDir d; DirBase* d; // // This is the base-class both for mywxDir and for ArcDir (for archives) bool IsArchv = arcman && arcman->IsArchive(); // // if (IsArchv) d = new ArcDir(arcman->GetArc()); // // else d = new mywxDir; // // wxString eachFilename; wxLogNull log; d->Open(dirName); FileGenericDirCtrl* FileCtrl; // // if (fileview==ISRIGHT) // // If this is a fileview, do things differently from normal: use array of FileData* to store & sort the data { FileCtrl = (FileGenericDirCtrl*)this; FileCtrl->CombinedFileDataArray.Clear(); // // Clear the array of FileData* (the place where the stat data will be stored) FileCtrl->FileDataArray.Clear(); // // & the temp one for files FileCtrl->CumFilesize = 0; // // & this dir's cum filesize, to display in statusbar if (d->IsOpened()) { int style = wxDIR_FILES; // // if (!DisplayFilesOnly) style |= wxDIR_DIRS; // // if (m_showHidden) style |= wxDIR_HIDDEN; // // if (GetFilterArray().GetCount() < 2) // // If we're not using multiple filter strings, do things the standard way { m_currentFilterStr = GetFilterArray().Item(0); // // Find the sole filter-string (which may well be "") if (d->GetFirst(&eachFilename, m_currentFilterStr, style)) // // Since wxDir can't (currently) distinguish a dir from a symlink-to-dir, get every filetype at once { do { if ((eachFilename != wxT(".")) && (eachFilename != wxT(".."))) { DataBase* stat=NULL; if (IsArchv) { wxString path(dirName + eachFilename); if (path.Right(1)==wxFILE_SEP_PATH) { FakeDir* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(eachFilename); if (fd) stat = new FakeDir(*fd); } else { FakeFiledata* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(eachFilename); if (fd) stat = new FakeFiledata(*fd); } } else stat = new FileData(dirName + eachFilename); // // Create a new FileData for the entry & add it to the appropriate array if (stat->IsValid()) { if (stat->IsDir() // // Is it a dir? || (TREAT_SYMLINKTODIR_AS_DIR && stat->IsSymlinktargetADir())) // // or a symlink to one, & user wants to display it with dirs FileCtrl->CombinedFileDataArray.Add(stat); // // Yes, so put it in combined array else FileCtrl->FileDataArray.Add(stat); // // No, so put it in file array } else // Invalid, so presumably a corrupt item { if (ReallyIsDir(dirName, eachFilename)) FileCtrl->CombinedFileDataArray.Add(stat); // // It's probably a corrupt dir else FileCtrl->FileDataArray.Add(stat); // // It's not likely to be a dir } } } while (d->GetNext(&eachFilename)); } } else { if (d->GetFirst(&eachFilename, wxEmptyString, style)) // // Otherwise, get ALL the entries that match style, and do the filtering separately { do { if ((eachFilename != wxT(".")) && (eachFilename != wxT(".."))) { bool matches=false; for (size_t n=0; n < GetFilterArray().GetCount(); ++n)// // Go thru the list of filters, applying each in turn until one matches if (wxMatchWild(GetFilterArray().Item(n), eachFilename)) { matches = true; break; } // // Got a match so flag & skip the rest of the for-loop if (matches) // // If there was a match, add to the correct array. Otherwise ignore this entry { DataBase* stat=NULL; if (IsArchv) { wxString path(dirName + eachFilename); if (path.Right(1)==wxFILE_SEP_PATH) { FakeDir* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(eachFilename); if (fd) stat = new FakeDir(*fd); } else { FakeFiledata* fd = arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(eachFilename); if (fd) stat = new FakeFiledata(*fd); } } else stat = new FileData(dirName + eachFilename); // // Create a new FileData for the entry & add it to the appropriate array if (stat->IsValid()) { if (stat->IsDir() // // Is it a dir? || (TREAT_SYMLINKTODIR_AS_DIR && stat->IsSymlinktargetADir())) // // or a symlink to one, & user wants to display it with dirs FileCtrl->CombinedFileDataArray.Add(stat); // // Yes, so put it in combined array else FileCtrl->FileDataArray.Add(stat); // // No, so put it in file array } else // Invalid, so presumably a corrupt item { if (ReallyIsDir(dirName, eachFilename)) FileCtrl->CombinedFileDataArray.Add(stat); // // It's probably a corrupt dir else FileCtrl->FileDataArray.Add(stat); // // It's not likely to be a dir } } } } while (d->GetNext(&eachFilename)); } } FileCtrl->SortStats(FileCtrl->CombinedFileDataArray); // // Sort the dirs FileCtrl->NoOfDirs = FileCtrl->CombinedFileDataArray.GetCount(); // // Store the no of dirs FileCtrl->SortStats(FileCtrl->FileDataArray); // // Sort the files FileCtrl->NoOfFiles = FileCtrl->FileDataArray.GetCount(); // // Store the no of files // Add the sorted dirs size_t i; for (i = 0; i < FileCtrl->CombinedFileDataArray.GetCount(); ++i) { if (FileCtrl->CombinedFileDataArray[i].IsValid()) { wxString eachFilename(FileCtrl->CombinedFileDataArray[i].GetFilename()); // // Note that we take the filenames from the sorted FileDataArray path = dirName + eachFilename; // // if (path.Last() != wxFILE_SEP_PATH) // // path += wxString(wxFILE_SEP_PATH); // // path += eachFilename; wxDirItemData *dir_item = new wxDirItemData(path,eachFilename,true); wxTreeItemId id; if (TREAT_SYMLINKTODIR_AS_DIR && FileCtrl->CombinedFileDataArray[i].IsSymlinktargetADir()) // // id = m_treeCtrl->AppendItem(parentId, eachFilename, GDC_symlinktofolder, -1, dir_item); // // Display as symlink-to-dir else { int imageindex = 0 + (GDC_ghostclosedfolder*IsArchv) + ((!IsArchv && access(path.mb_str(wxConvUTF8), R_OK))*GDC_lockedfolder); // // access() checks if the dir is locked id = m_treeCtrl->AppendItem(parentId, eachFilename, imageindex, -1, dir_item); } m_treeCtrl->SetItemImage(id, IsArchv ? GDC_ghostopenfolder : GDC_openfolder, wxTreeItemIcon_Expanded); } else { wxString name(FileCtrl->CombinedFileDataArray[i].ReallyGetName()); wxDirItemData *dir_item = new wxDirItemData(dirName + name,name,false); m_treeCtrl->AppendItem(parentId, name, GDC_unknownfolder, -1, dir_item); // // An invalid filedata, so presumably a corrupt dir } // Has this got any children? If so, make it expandable. // (There are two situations when a dir has children: either it // has subdirectories or it contains files that weren't filtered // out. The latter only applies to dirctrl with files.) // // if (dir_item->HasSubDirs() || // // This isn't needed for a fileview // // (((GetWindowStyle() & wxDIRCTRL_DIR_ONLY) == 0) && // // dir_item->HasFiles(m_currentFilterStr))) // // { // // m_treeCtrl->SetItemHasChildren(id); // // } } // Add the sorted filenames for (i = 0; i < FileCtrl->FileDataArray.GetCount(); i++) { if (FileCtrl->FileDataArray[i].IsValid()) { FileCtrl->CumFilesize += FileCtrl->FileDataArray[i].Size(); // // Grab the opportunity to update the cumulative files-size wxString eachFilename(FileCtrl->FileDataArray[i].GetFilename());// // Note that we take the filenames from the sorted FileDataArray path = dirName + eachFilename; wxDirItemData *dir_item = new wxDirItemData(path,eachFilename,false); if (FileCtrl->FileDataArray[i].IsRegularFile()) // // If the item is a file { ziptype zt = Archive::Categorise(path); if (zt != zt_invalid) // // There are special icons for archives etc (void)m_treeCtrl->AppendItem(parentId, eachFilename, Archive::GetIconForArchiveType(zt, IsArchv), -1, dir_item); else (void)m_treeCtrl->AppendItem(parentId, eachFilename, IsArchv? GDC_ghostfile : GDC_file, -1, dir_item); // // otherwise use the standard icon } else if (FileCtrl->FileDataArray[i].IsSymlink()) // // If the item is a symlink { if (FileCtrl->FileDataArray[i].IsSymlinktargetADir()) // // If it's pointing to a dir, use the appropriate icon (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_symlinktofolder, -1, dir_item); // // else { if (FileCtrl->FileDataArray[i].IsBrokenSymlink()) (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_brokensymlink, -1, dir_item); else (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_symlink, -1, dir_item); // // If it's pointing to a file, use that icon } } else if (FileCtrl->FileDataArray[i].IsFIFO()) // // FIFO (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_pipe, -1, dir_item); else if (FileCtrl->FileDataArray[i].IsBlkDev()) // // Block device (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_blockdevice, -1, dir_item); else if (FileCtrl->FileDataArray[i].IsCharDev()) // // Char device (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_chardevice, -1, dir_item); else if (FileCtrl->FileDataArray[i].IsSocket()) // // Socket (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_socket, -1, dir_item); else (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_unknownfile, -1, dir_item); // // wtf is this? } else // // An invalid filedata, so presumably a corrupt file (corrupt dirs were dealt with earlier) { wxString name(FileCtrl->FileDataArray[i].ReallyGetName()); if (!ReallyIsDir(dirName, name)) { wxDirItemData *dir_item = new wxDirItemData(path,eachFilename,false); (void)m_treeCtrl->AppendItem(parentId, name, GDC_unknownfile, -1, dir_item); } } } size_t count = FileCtrl->FileDataArray.Count(); // // Merge the 2 arrays, Dir <-- File for (size_t n = 0; n < count; ++n) // // For count iterations, FileCtrl->CombinedFileDataArray.Add(FileCtrl->FileDataArray.Detach(0)); // // transfer array[0], as detaching shifts everything down } } else // // dirview, so do it the standard way { if (d->IsOpened()) { int style = wxDIR_DIRS; if (m_showHidden) style |= wxDIR_HIDDEN; if (GetFilterArray().GetCount() < 2) // // If we're not using multiple filter strings, do things the standard way { m_currentFilterStr = GetFilterArray().Item(0); // // Find the sole filter-string (which may well be "") if (d->GetFirst(&eachFilename, m_currentFilterStr, style)) // // { do { if ((eachFilename != wxT(".")) && (eachFilename != wxT(".."))) { DataBase* stat; if (IsArchv) stat = new FakeDir(eachFilename); // // else stat = new FileData(dirName + eachFilename); // // if (stat->IsValid()) { if (stat->IsDir()) // // Ensure it IS a dir, & not a symlink-to-dir dirs.Add(eachFilename); } else // Invalid, so presumably a corrupt item { if (ReallyIsDir(dirName, eachFilename)) dirs.Add(eachFilename); // // It's probably a corrupt dir } delete stat; } } while (d->GetNext(&eachFilename)); } } else { if (d->GetFirst(&eachFilename, wxEmptyString, style)) // // Otherwise, get ALL the entries that match style, and do the filtering separately { do { if ((eachFilename != wxT(".")) && (eachFilename != wxT(".."))) { bool matches=false; for (size_t n=0; n < GetFilterArray().GetCount(); ++n) // // Go thru the list of filters, applying each in turn until one matches if (wxMatchWild(GetFilterArray().Item(n), eachFilename)) { matches = true; break; } // // Got a match so flag & skip the rest of the for-loop if (matches) // // If there was a match, add to the correct array. Otherwise ignore this entry { DataBase* stat; if (IsArchv) stat = new FakeDir(eachFilename); // // else stat = new FileData(dirName + eachFilename); // // if (stat->IsDir()) // // Ensure it IS a dir, & not a symlink-to-dir dirs.Add(eachFilename); delete stat; } } } while (d->GetNext(&eachFilename)); } } } dirs.Sort((wxArrayString::CompareFunction) (*wxDirCtrlStringCompareFunc)); // Now do the filenames -- but only if we're allowed to if ((GetWindowStyle() & wxDIRCTRL_DIR_ONLY) == 0) { int style = wxDIR_FILES; // // if (m_showHidden) style |= wxDIR_HIDDEN; // // wxLogNull log; d->Open(dirName); if (d->IsOpened()) { if (d->GetFirst(& eachFilename, m_currentFilterStr, style)) // // { do { if ((eachFilename != wxT(".")) && (eachFilename != wxT(".."))) { filenames.Add(eachFilename); } } while (d->GetNext(& eachFilename)); } } dirs.Sort((wxArrayString::CompareFunction) (*wxDirCtrlStringCompareFunc)); } // Add the sorted dirs size_t i; for (i = 0; i < dirs.Count(); i++) { wxString eachFilename(dirs[i]); if (IsArchv) { if (eachFilename.Last() == wxFILE_SEP_PATH) eachFilename = eachFilename.BeforeLast(wxFILE_SEP_PATH); // // path = eachFilename; // // Archives are already Path.ed eachFilename = eachFilename.AfterLast(wxFILE_SEP_PATH); // // and here we *don't* want the path } else path = dirName + eachFilename; wxDirItemData *dir_item = new wxDirItemData(path,eachFilename,true); int imageindex = 0 + (GDC_ghostclosedfolder * IsArchv) + (!IsArchv && access(path.mb_str(wxConvUTF8), R_OK) * GDC_lockedfolder); wxTreeItemId id = m_treeCtrl->AppendItem(parentId, eachFilename, imageindex, -1, dir_item); // // access() checks if the dir is locked m_treeCtrl->SetItemImage(id, IsArchv? GDC_ghostopenfolder : GDC_openfolder, wxTreeItemIcon_Expanded); // Has this got any children? If so, make it expandable. // (There are two situations when a dir has children: either it // has subdirectories or it contains files that weren't filtered // out. The latter only applies to dirctrl with files.) if (dir_item->HasSubDirs() || (IsArchv && arcman->GetArc()->Getffs()->GetRootDir()->HasSubDirs(path)) || // // If it's an archive, we have to use our own method (((GetWindowStyle() & wxDIRCTRL_DIR_ONLY) == 0) && // // I've left this in, but since this is a dir-view, it always is false dir_item->HasFiles(m_currentFilterStr))) // // in which case this is never reached. I've therefore not updated it for multiple filters { m_treeCtrl->SetItemHasChildren(id); } } // Add the sorted filenames /// // It's a dirview so won't happen if ((GetWindowStyle() & wxDIRCTRL_DIR_ONLY) == 0) { for (i = 0; i < filenames.Count(); i++) { wxString eachFilename(filenames[i]); path = dirName; // // if (path.Last() != wxFILE_SEP_PATH) // // path += wxString(wxFILE_SEP_PATH); path += eachFilename; //path = dirName + wxString(wxT("/")) + eachFilename; wxDirItemData *dir_item = new wxDirItemData(path,eachFilename,false); (void)m_treeCtrl->AppendItem(parentId, eachFilename, GDC_file, -1, dir_item); } } } delete d; } void MyGenericDirCtrl::ReCreateTree() { const wxTreeItemId root = m_treeCtrl->GetRootItem(); if (root.IsOk()) ReCreateTreeBranch(&root); } void MyGenericDirCtrl::ReCreateTreeBranch(const wxTreeItemId* ItemToRefresh) // // Implements wxGDC::ReCreateTree, but with parameter { wxCHECK_RET(ItemToRefresh->IsOk(), wxT("Trying to refresh an invalid item")); wxString topitem; wxTreeItemId fv = GetTreeCtrl()->GetFirstVisibleItem(); // // Find the first visible item and cache its path if (fv.IsOk()) { wxDirItemData* data = (wxDirItemData*)GetTreeCtrl()->GetItemData(fv); if (data) topitem = data->m_path; } Freeze(); CollapseDir(*ItemToRefresh); ExpandDir(*ItemToRefresh); Thaw(); if (!topitem.empty()) // // Now make a valiant effort to replicate the previous tree's appearance { fv = FindIdForPath(topitem); if (fv.IsOk()) wxStaticCast(GetTreeCtrl(), MyTreeCtrl)->ScrollToOldPosition(fv); } } // Find the child that matches the first part of 'path'. // E.g. if a child path is "/usr" and 'path' is "/usr/include" // then the child for /usr is returned. wxTreeItemId MyGenericDirCtrl::FindChild(wxTreeItemId parentId, const wxString& path, bool& done) { wxString path2(path); // Make sure all separators are as per the current platform path2.Replace(wxT("\\"), wxString(wxFILE_SEP_PATH)); path2.Replace(wxT("/"), wxString(wxFILE_SEP_PATH)); // Append a separator to foil bogus substring matching path2 += wxString(wxFILE_SEP_PATH); // In MSW or PM, case is not significant #if defined(__WINDOWS__) || defined(__DOS__) || defined(__WXPM__) path2.MakeLower(); #endif wxTreeItemIdValue cookie; wxTreeItemId childId = m_treeCtrl->GetFirstChild(parentId, cookie); while (childId.IsOk()) { wxDirItemData* data = (wxDirItemData*) m_treeCtrl->GetItemData(childId); if (data && !data->m_path.IsEmpty()) { wxString childPath(data->m_path); if (childPath.Last() != wxFILE_SEP_PATH) childPath += wxString(wxFILE_SEP_PATH); // In MSW and PM, case is not significant #if defined(__WINDOWS__) || defined(__DOS__) || defined(__WXPM__) childPath.MakeLower(); #endif if (childPath.Len() <= path2.Len()) { wxString path3 = path2.Mid(0, childPath.Len()); if (childPath == path3) { if (path3.Len() == path2.Len()) done = true; else done = false; return childId; } } } childId = m_treeCtrl->GetNextChild(parentId, cookie); } wxTreeItemId invalid; return invalid; } // Try to expand as much of the given path as possible, // and select the given tree item. bool MyGenericDirCtrl::ExpandPath(const wxString& path) { bool done = false; wxTreeItemId id = FindChild(m_rootId, path, done); wxTreeItemId lastId = id; // The last non-zero id while (id.IsOk() && !done) { ExpandDir(id); id = FindChild(id, path, done); if (id.IsOk()) lastId = id; } if (lastId.IsOk()) { wxDirItemData *data = (wxDirItemData *) m_treeCtrl->GetItemData(lastId); if (data->m_isDir) { m_treeCtrl->Expand(lastId); } if ((GetWindowStyle() & wxDIRCTRL_SELECT_FIRST) && data->m_isDir) { // Find the first file in this directory wxTreeItemIdValue cookie; wxTreeItemId childId = m_treeCtrl->GetFirstChild(lastId, cookie); bool selectedChild = false; while (childId.IsOk()) { wxDirItemData* data = (wxDirItemData*) m_treeCtrl->GetItemData(childId); if (data && data->m_path != wxT("") && !data->m_isDir) { m_treeCtrl->SelectItem(childId); m_treeCtrl->EnsureVisible(childId); selectedChild = true; break; } childId = m_treeCtrl->GetNextChild(lastId, cookie); } if (!selectedChild) { m_treeCtrl->SelectItem(lastId); m_treeCtrl->EnsureVisible(lastId); } } else { m_treeCtrl->SelectItem(lastId); m_treeCtrl->EnsureVisible(lastId); } return true; } else return false; } wxString MyGenericDirCtrl::GetPath() const { #if wxVERSION_NUMBER < 2900 wxTreeItemId id = m_treeCtrl->GetSelection(); #else // From 2.9, an assert prevents the use of GetSelection in a multiple-selection treectrl wxTreeItemId id = m_treeCtrl->GetFocusedItem (); #endif if (id) { wxDirItemData* data = (wxDirItemData*) m_treeCtrl->GetItemData(id); return data->m_path; } else return wxEmptyString; } size_t MyGenericDirCtrl::GetMultiplePaths(wxArrayString& paths) const // // Get an array of selected paths, used as multiple selection is enabled { size_t count; // No of selections wxArrayTreeItemIds selectedIds; // Array in which to store them count = m_treeCtrl->GetSelections(selectedIds); // Make the tree fill the array paths.Alloc(count); // and allocate that much space in the path array for (size_t c=0; c < count; c++) { wxDirItemData* data = (wxDirItemData*) m_treeCtrl->GetItemData(selectedIds[c]); paths.Add(data->m_path); } return count; } wxString MyGenericDirCtrl::GetFilePath() const { #if wxVERSION_NUMBER < 2900 wxTreeItemId id = m_treeCtrl->GetSelection(); #else // From 2.9, an assert prevents the use of GetSelection in a multiple-selection treectrl wxTreeItemId id = m_treeCtrl->GetFocusedItem (); #endif if (id) { wxDirItemData* data = (wxDirItemData*) m_treeCtrl->GetItemData(id); if (data->m_isDir) return wxEmptyString; else return data->m_path; } else return wxEmptyString; } void MyGenericDirCtrl::SetPath(const wxString& path) { wxCHECK_RET(!path.empty(), wxT("Trying to set an empty path")); m_defaultPath = path; if (!m_rootId) return; if (arcman && arcman->IsArchive()) // // If we're in an archive situation if (!arcman->GetArc()->SetPath(path)) // // Tell the archive about the new path. If that takes us out of the archive, clean up { do OnExitingArchive(); while (arcman->IsArchive() && !arcman->GetArc()->SetPath(path)); // If we were inside a nested, child archive, retry } ExpandPath(path); #if defined(__LINUX__) && defined(__WXGTK__) if (USE_FSWATCHER && m_watcher && (fileview == ISRIGHT) && !(arcman && arcman->IsArchive())) { FileData fd(path); if (fd.IsValid()) { if (fd.IsDir() || fd.IsSymlinktargetADir()) m_watcher->SetFileviewWatch(path); else m_watcher->SetFileviewWatch(fd.GetPath()); // This can happen when a file is selected, then F5 pressed } } #endif } void MyGenericDirCtrl::DoResize() { wxSize sz = GetClientSize(); int verticalSpacing = 3; if (m_treeCtrl) { wxSize filterSz ; if (m_filterListCtrl) { #ifdef __WXMSW__ // For some reason, this is required in order for the // correct control height to always be returned, rather // than the drop-down list height which is sometimes returned. wxSize oldSize = m_filterListCtrl->GetSize(); m_filterListCtrl->SetSize(-1, -1, oldSize.x+10, -1, wxSIZE_USE_EXISTING); m_filterListCtrl->SetSize(-1, -1, oldSize.x, -1, wxSIZE_USE_EXISTING); #endif filterSz = m_filterListCtrl->GetSize(); sz.y -= (filterSz.y + verticalSpacing); } if (fileview==ISLEFT) m_treeCtrl->SetSize(0, 0, sz.x, sz.y); // // A fileview will sort itself out if (m_filterListCtrl) { m_filterListCtrl->SetSize(0, sz.y + verticalSpacing, sz.x, filterSz.y); // Don't know why, but this needs refreshing after a resize (wxMSW) m_filterListCtrl->Refresh(); } } } void MyGenericDirCtrl::OnSize(wxSizeEvent& WXUNUSED(event)) { DoResize(); } void MyGenericDirCtrl::SetTreePrefs() // // MINE. Adjusts the Tree width parameters according to prefs { if (fileview==ISLEFT) // If this is a left-side, directory view, set the indent between tree branches, horiz twig spacing { m_treeCtrl->SetIndent(TREE_INDENT); m_treeCtrl->SetSpacing(TREE_SPACING); } else { m_treeCtrl->SetIndent(0); // If this is a right-side, file view, turn off left margin and the prepended horiz lines m_treeCtrl->SetSpacing(0); } } wxString MyGenericDirCtrl::GetActiveDirectory() // // MINE. Returns the root dir if in branch-mode, or the selected dir in Fulltree-mode { if (fileview==ISRIGHT) return partner->GetActiveDirectory(); // This is a dir-view thing if (fulltree) return GetPath(); return startdir; } wxString MyGenericDirCtrl::GetActiveDirPath() // // MINE. Returns selected dir in either mode NB GetPath returns either dir OR file { wxString invalid; if(!this) return invalid; // in case we arrived here when there aren't any tabs if (fileview==ISRIGHT) return partner->GetActiveDirPath(); // This is a dir-view thing return GetPath(); } void MyGenericDirCtrl::OnTreeSelected(wxTreeEvent &event) // // MINE. When change of selected item, tells Fileview to mimic change { if (SelFlag == false) return; // To avoid responding to internal selection events, causing infinite looping wxTreeItemId sel = event.GetItem(); // There's been a selection event. Get the selected item #if wxVERSION_NUMBER > 2603 && !(defined(__WXGTK20__) || defined(__WXX11__)) GetTreeCtrl()->Refresh(); // Recent wxGTK1.2's have a failure-to-highlight problem otherwise #endif if (sel.IsOk() && (partner != NULL)) // Check there IS a valid selection, and a valid partner { wxDirItemData* data = (wxDirItemData*)m_treeCtrl->GetItemData(sel); // Find the referenced data DisplaySelectionInTBTextCtrl(data->m_path); // Take the opportunity to display selection in textctrl if (arcman && arcman->IsArchive() && fileview == ISLEFT) // If we're in an archive situation, & it's a dirview: can't escape from an archive if fileview! { wxString filepath(data->m_path); if (!filepath.IsEmpty() && filepath.GetChar(filepath.Len()-1) != wxFILE_SEP_PATH) filepath << wxFILE_SEP_PATH; if (!arcman->GetArc()->SetPath(filepath)) // Tell the archive about the new path. If that takes us out of the archive, clean up { do OnExitingArchive(); while (arcman->IsArchive() && !arcman->GetArc()->SetPath(filepath)); // If we were inside a nested, child archive, retry } } m_StatusbarInfoValid = false; // Flag to show the new selection's data in the statusbar if (fileview == ISRIGHT) // If this is a fileview { MyFrame::mainframe->Layout->OnChangeDir(data->m_path); // Tell Layout to tell any extant terminal-emulator or commandline of the change wxArrayString filepaths; GetMultiplePaths(filepaths); CopyToClipboard(filepaths, true); // FWIW, copy the filepath(s) to the primary selection too return; // & bug out. We set fileview from dirview, not vice versa. (That comes from DClick) } partner->startdir = data->m_path; partner->ReCreateTreeFromSelection(); // Tell Right partner to Redo itself with new selection wxArrayString filepaths; GetMultiplePaths(filepaths); ((DirGenericDirCtrl*)this)->UpdateStatusbarInfo(filepaths);// Show the new selection's data in the statusbar MyFrame::mainframe->Layout->OnChangeDir(data->m_path); // Tell Layout to tell any extant terminal-emulator or commandline of the change } } void MyGenericDirCtrl::ReCreateTreeFromSelection() // // MINE. On selection/DClick event, this redoes the tree & reselects { SelFlag = false; // Turn off to avoid loops wxASSERT(GetTreeCtrl()); wxString topitem; wxTreeItemId fv = GetTreeCtrl()->GetFirstVisibleItem(); // Find the first visible item and cache its path if (fv.IsOk()) { wxDirItemData* data = (wxDirItemData*)GetTreeCtrl()->GetItemData(fv); if (data) topitem = data->m_path; } Freeze(); GetTreeCtrl()->DeleteAllItems(); // Uproot the old tree CreateTree(); // and recreate from new root Thaw(); // We must thaw before calling ScrollToOldPosition() if (!topitem.empty()) // Now make a valiant effort to replicate the previous tree's appearance { fv = FindIdForPath(topitem); if (fv.IsOk()) wxStaticCast(GetTreeCtrl(), MyTreeCtrl)->ScrollToOldPosition(fv); } #if defined(__LINUX__) && defined(__WXGTK__) if (USE_FSWATCHER && m_watcher && !(arcman && arcman->IsArchive())) { if (fileview == ISRIGHT) { FileData fd(startdir); if (fd.IsDir() || fd.IsSymlinktargetADir()) m_watcher->SetFileviewWatch(startdir); } } #endif SelFlag = true; // Reset flag } void MyGenericDirCtrl::OnTreeItemDClicked(wxTreeEvent &event) // // What to do when a tree-item is double-clicked { wxTreeItemId sel = event.GetItem(); // There's been a dclick event. Get the selected item. if (!sel.IsOk()) return; // Check there IS a valid selection wxDirItemData* data = (wxDirItemData*)m_treeCtrl->GetItemData(sel); // Find the referenced data ziptype zt = Archive::Categorise(data->m_path); // Check if the item is (probably) an archive if (arcman && arcman->IsArchive()) // Check that we didn't just dclick inside an open archive { if (arcman->GetArc()->Getffs()->GetRootDir()->FindSubdirByFilepath(data->m_path) != NULL // If it's a subdir, || zt != zt_invalid) // or a child archive { OnOutsideSelect(data->m_path, false); // If on a subdir just move within it; open a child archive return; } else { ((FileGenericDirCtrl*)this)->OnOpen(event); return; } // Otherwise it's a file, so pass to FileGenericDirCtrl::OnOpen } FileData fd(data->m_path); if (fd.IsRegularFile() || (fd.IsSymlink() && !fd.IsSymlinktargetADir())) // Check if the DClick was on a file { if (zt == zt_invalid) // (We deal with archives differently) { ((FileGenericDirCtrl*)this)->OnOpen(event); return; } // It's a file, so pass to FileGenericDirCtrl::OnOpen } if (fileview==ISRIGHT) // If the dclick is from a Right pane, { if (fd.IsSymlinktargetADir()) // Do things differently if it's a symlink-to-dir { wxString ultdest(fd.GetUltimateDestination()); return OnOutsideSelect(ultdest); } if (zt != zt_invalid // Do things very differently if it's an archive && (fd.IsRegularFile() || (fd.IsSymlink() && !fd.IsSymlinktargetADir()))) // Just in case someone labelled a dir or symlink-to-dir with an archive-y ext! { OnOutsideSelect(data->m_path, false); return; } // If so, peer into it if (partner != NULL) // Otherwise just get Left partner to do the work { partner->GetTreeCtrl()->UnselectAll(); // Remove the current selection, otherwise both become selected partner->SetPath(data->m_path); } return; } // OK, it was a Left-pane dclick if (fulltree) // Are we in full-tree mode m_treeCtrl->Toggle(sel); // If so, we don't want to redo tree, just toggle expansion/collapse of this branch else // We're NOT in full-tree mode { startdir = data->m_path; // Reset Startdir accordingly to new selection ((DirGenericDirCtrl*)ParentControl)->AddPreviouslyVisitedDir(startdir, GetPathIfRelevant()); // Store this root-dir for posterity ReCreateTreeFromSelection(); // Redo the tree with new selection as root } if (partner != NULL) partner->ReCreateTreeFromSelection(); // Tell right-pane partner what to do } void MyGenericDirCtrl::OnOutsideSelect(wxString& path, bool CheckDevices/*=true*/) // // Used to redo the control from outside, eg the floppy-button clicked, or internally after e.g. a DClick { wxString oldpath(path); if (path.IsEmpty()) return; if (fileview == ISRIGHT) // If this is a fileview pane, switch to partner to deal with it { partner->OnOutsideSelect(path, CheckDevices); SetPath(oldpath); return; // Select the originally passed filepath, using the carefully preserved string in case it was an archive (when 'path' will be altered) } // Assuming path isn't root, remove terminal '/'s. It doesn't matter otherwise, but if we're jumping into an archive, the '/' causes problems while (path != wxT("/") && path.Last() == wxFILE_SEP_PATH) path = path.BeforeLast(wxFILE_SEP_PATH); if (arcman->NavigateArchives(path) == Snafu) // This should ensure that any archives are opened/closed as necessary { wxLogError(wxT("Sorry, that selection doesn't seem to exist")); return; } ziptype zt = Archive::Categorise(path); if (!arcman->IsArchive() && zt == zt_invalid) // If we're not already in an archive, and not just about to { if (!wxDirExists(path)) { if (!wxFileExists(path)) // If path is no longer valid, abort { wxLogError(wxT("Sorry, that selection doesn't seem to exist")); return; } else path = path.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // If it's a file (& there's nothing to stop us bookmarking a file), revert to its path } } else if (arcman->IsArchive() && zt == zt_invalid && arcman->GetArc()->Getffs()->GetRootDir()->FindFileByName(path) != NULL) path = path.BeforeLast(wxFILE_SEP_PATH) + wxFILE_SEP_PATH; // Again, if this is a bookmarked fakefile, amputate // Check that any attempt at archive peeking is likely to work, as failure messes up the dirview display if (zt != zt_invalid && !ArchiveStream::IsStreamable(zt)) { switch(zt) { case zt_gzip: case zt_bzip: case zt_lzma: case zt_xz: case zt_lzop: case zt_compress: wxMessageBox(_("This file is compressed, but it's not an archive so you can't peek inside."), _("Sorry")); return; default: wxMessageBox(_("I'm afraid I can't peek inside that sort of archive."), _("Sorry")); return; } } wxString OriginalSelection = GetPathIfRelevant(); startdir = path; // Reset Startdir accordingly to new selection RefreshTree(path, CheckDevices); // so that Refresh() actually changes tree ((DirGenericDirCtrl*)ParentControl)->AddPreviouslyVisitedDir(startdir,OriginalSelection); // Store this root-dir for posterity if (fulltree) { GetTreeCtrl()->UnselectAll(); // Unselect any current items first, else we'll have an ambiguous multiple selection SetPath(oldpath); // Then select the real one; it's not selected otherwise } } void MyGenericDirCtrl::OnRefreshTree(wxCommandEvent& event) // // From Context menu or F5 { RefreshTree(startdir); // Needed to provide the parameter for RefreshTree } void MyGenericDirCtrl::RefreshTree(const wxString& path, bool CheckDevices, bool RetainSelection) // // Refreshes the display to show any outside changes (or following a change of rootitem via OnOutsideSelect) { const wxString selected = GetPath(); // Retrieve the current selection for use below // We need to see if startdir was also selected (as part of a multiple selection) // If so, we don't want to deselect it later bool StartdirWasSelected = false; if (startdir != selected) { wxTreeItemId item = FindIdForPath(startdir); if (item.IsOk()) StartdirWasSelected = GetTreeCtrl()->IsSelected(item); } if (fileview == ISRIGHT) // If this is a fileview pane, switch to partner to deal with it { partner->RefreshTree(path, CheckDevices); if (!selected.empty()) SetPath(selected); // Reinstate original selection. This also ensures it's visible return; } if (CheckDevices) // No point doing this if we've only just done it in calling method --- thus the bool { DevicesStruct* ds = MyFrame::mainframe->Layout->m_notebook->DeviceMan->QueryAMountpoint(path); // Look up whether this is a relevant device if (ds) MyFrame::mainframe->Layout->m_notebook->DeviceMan->Mount(ds->buttonnumber); // If so, (re)Mount it } wxString CopyOfPath(path); // When within an archive, valgrind complains about invalid reads below if I use 'path' directly ReCreateTreeFromSelection(); // Redo the tree (with any new selection as root) if (!selected.empty() && selected != startdir // If we're supposed to, and selection isn't rootitem, && (selected.StartsWith(startdir) || fulltree)) // and is still a child of startdir (which may have just changed), or we're in fulltree mode { SetPath(selected); // reinstate original selection, to preserve (as much as poss) the original pattern of dir-expansion if (RetainSelection && !StartdirWasSelected) // Unless startdir was originally selected... { wxTreeItemId item = FindIdForPath(startdir); // recreating the tree automatically selects startdir too if (item.IsOk()) GetTreeCtrl()->SelectItem(item, false); // This should deselect it } if (!RetainSelection) { wxTreeItemId item = FindIdForPath(selected); // Similarly, if we're not retaining the old path, deselect it if (item.IsOk()) GetTreeCtrl()->SelectItem(item, false); } } if (MyFrame::mainframe->GetActivePane()) MyFrame::mainframe->GetActivePane()->DisplaySelectionInTBTextCtrl(CopyOfPath); // Otherwise put in path MyFrame::mainframe->Layout->OnChangeDir(CopyOfPath); // Tell Layout to tell any extant terminal-emulator or commandline of the change ((DirGenericDirCtrl*)ParentControl)->UpdateStatusbarInfo(CopyOfPath); if (partner) // Keep right-pane partner in synch { if (RetainSelection) { partner->startdir = GetPath(); // This caters both for new dirview startdirs, and startdir != selected above partner->ReCreateTreeFromSelection(); } else { partner->startdir = startdir; // If we're using the navigation tools, the fileview should follow the dirview's startdir partner->ReCreateTreeFromSelection(); } } } MyGenericDirCtrl* MyGenericDirCtrl::GetOppositeDirview(bool OnlyIfUnsplit /*=true*/) // Return a pointer to the dirview of the twin-pane opposite this one { if (OnlyIfUnsplit && (ParentTab->GetSplitStatus() == unsplit)) return NULL; // OTOH if we're not split, don't unless we really want to if (isright) // A MyGenericDirCtrl knows its own parity, so use this to locate the opposite one return ParentTab->LeftorTopDirCtrl; else return ParentTab->RightorBottomDirCtrl; } MyGenericDirCtrl* MyGenericDirCtrl::GetOppositeEquivalentPane() // Return a pointer to the equivalent view of the twin-pane opposite this one { MyGenericDirCtrl* oppositedv = GetOppositeDirview(); if (!oppositedv) return NULL; return (fileview == ISLEFT) ? oppositedv : oppositedv->partner; } void MyGenericDirCtrl::SetFocusViaKeyboard(wxCommandEvent& event) { MyGenericDirCtrl* fv; if (event.GetId() == SHCUT_SWITCH_FOCUS_OPPOSITE) { MyGenericDirCtrl* dv = GetOppositeDirview(); if (!dv) return; if (fileview == ISLEFT) { dv->GetTreeCtrl()->SetFocus(); return; } // Do the easy one first; dirviews don't have selection issues fv = dv->partner; } else //SHCUT_SWITCH_FOCUS_ADJACENT { if (fileview == ISRIGHT) { partner->GetTreeCtrl()->SetFocus(); return; } // As above fv = partner; } // If we're here, the focus destination is a fileview if (fv->GetPath().empty()) // If there was no highlit item, we need to set one. SetFocus() alone doesn't do this { FileGenericDirCtrl* fgdc = wxStaticCast(fv, FileGenericDirCtrl); if (fgdc) fgdc->SelectFirstItem(); } fv->GetTreeCtrl()->SetFocus(); } void MyGenericDirCtrl::RefreshVisiblePanes(wxFont* font/*=NULL*/) // Called e.g. after a change of font { if (font) { GetTreeCtrl()->SetFont(*font); partner->GetTreeCtrl()->SetFont(*font); } wxColour backgroundcolDV = COLOUR_PANE_BACKGROUND ? BACKGROUND_COLOUR_DV : GetSaneColour(GetTreeCtrl(), true, wxSYS_COLOUR_WINDOW); wxColour backgroundcolFV = COLOUR_PANE_BACKGROUND ? BACKGROUND_COLOUR_FV : GetSaneColour(GetTreeCtrl(), true, wxSYS_COLOUR_WINDOW); if (SINGLE_BACKGROUND_COLOUR) backgroundcolFV = backgroundcolDV; if (fileview==ISLEFT) { GetTreeCtrl()->SetBackgroundColour(backgroundcolDV); partner->GetTreeCtrl()->SetBackgroundColour(backgroundcolFV); } else { GetTreeCtrl()->SetBackgroundColour(backgroundcolFV); partner->GetTreeCtrl()->SetBackgroundColour(backgroundcolDV); } if (fileview==ISLEFT) { if (SHOW_TREE_LINES) GetTreeCtrl()->SetWindowStyle(GetTreeCtrl()->GetWindowStyle() & ~wxTR_NO_LINES); else GetTreeCtrl()->SetWindowStyle(GetTreeCtrl()->GetWindowStyle() | wxTR_NO_LINES); } else { if (SHOW_TREE_LINES) partner->GetTreeCtrl()->SetWindowStyle(partner->GetTreeCtrl()->GetWindowStyle() & ~wxTR_NO_LINES); else partner->GetTreeCtrl()->SetWindowStyle(partner->GetTreeCtrl()->GetWindowStyle() | wxTR_NO_LINES); } RefreshTree(startdir, false); partner->RefreshTree(startdir, false); // Refresh each of these 2 panes if (ParentTab->GetSplitStatus() == unsplit) return; // Only 1 visible twin-pane, so we're done MyGenericDirCtrl* oppositepane = GetOppositeDirview(); // Otherwise switch to the opposite split and repeat if (oppositepane == NULL) return; if (font) { oppositepane->GetTreeCtrl()->SetFont(*font); oppositepane->partner->GetTreeCtrl()->SetFont(*font); } oppositepane->GetTreeCtrl()->SetBackgroundColour(backgroundcolDV); oppositepane->partner->GetTreeCtrl()->SetBackgroundColour(backgroundcolFV); if (SHOW_TREE_LINES) oppositepane->GetTreeCtrl()->SetWindowStyle(oppositepane->GetTreeCtrl()->GetWindowStyle() & ~wxTR_NO_LINES); else oppositepane->GetTreeCtrl()->SetWindowStyle(oppositepane->GetTreeCtrl()->GetWindowStyle() | wxTR_NO_LINES); oppositepane->RefreshTree(oppositepane->startdir, false); oppositepane->partner->RefreshTree(oppositepane->startdir, false); } void MyGenericDirCtrl::ReloadDirviewToolbars() // Called after a change of user-defined tools { if (fileview == ISLEFT) ((DirGenericDirCtrl*)this)->CreateToolbar(); // Reload the dirview TB for this pane else ((DirGenericDirCtrl*)partner)->CreateToolbar(); if (ParentTab->GetSplitStatus() == unsplit) return; // Only 1 visible twin-pane, so we're done MyGenericDirCtrl* oppositepane = GetOppositeDirview(); // Otherwise switch to the opposite split and repeat if (oppositepane) ((DirGenericDirCtrl*)oppositepane)->CreateToolbar(); // Reload the dirview TB for this pane } void MyGenericDirCtrl::OnReplicate(wxCommandEvent& event) // Duplicates this pane's filepath in the opposite pane { if (fileview == ISRIGHT) // If this is a fileview pane, switch to partner to deal with it return partner->OnReplicate(event); MyGenericDirCtrl* oppositepane = GetOppositeDirview(); if (oppositepane == NULL) return; FileGenericDirCtrl* Fileview = dynamic_cast(partner); wxCHECK_RET(Fileview, wxT("A partner that isn't a FileGenericDirCtrl")); FileGenericDirCtrl* oppFileview = dynamic_cast(oppositepane->partner); wxCHECK_RET(oppFileview, wxT("A partner that isn't a FileGenericDirCtrl")); wxString OriginalSelection = oppositepane->GetPathIfRelevant(); oppositepane->fulltree = fulltree; // Now we can duplicate ourselves, fulltree-status and path oppositepane->startdir = startdir; oppositepane->SetFilterArray(GetFilterArray()); oppositepane->ReCreateTreeFromSelection(); oppositepane->SetPath(GetPath()); if (!oppositepane->fulltree) // If opposite pane is not in fulltree mode store its startdir for possible returning ((DirGenericDirCtrl*)oppositepane)->AddPreviouslyVisitedDir(oppositepane->startdir, OriginalSelection); if (oppFileview) // Keep right-pane partner in synch { oppFileview->startdir = GetPath(); oppFileview->GetHeaderWindow()->SetSelectedColumn(Fileview->GetHeaderWindow()->GetSelectedColumn()); oppFileview->GetHeaderWindow()->SetSortOrder(Fileview->GetHeaderWindow()->GetSortOrder()); oppFileview->GetHeaderWindow()->SetSelectedColumnImage(Fileview->GetHeaderWindow()->GetSortOrder()); oppFileview->SetIsDecimalSort(Fileview->GetIsDecimalSort()); oppFileview->SetFilterArray(partner->GetFilterArray(), partner->DisplayFilesOnly); oppFileview->ReCreateTreeFromSelection(); } } void MyGenericDirCtrl::OnSwapPanes(wxCommandEvent& event) // Swaps this pane's filepath etc with the opposite pane { if (fileview == ISRIGHT) // If this is a fileview pane, switch to partner to deal with it return partner->OnSwapPanes(event); MyGenericDirCtrl* oppositepane = GetOppositeDirview(false); // Passing false says we really want the answer, even if the tab is unsplit. This lets swapping switch to the hidden twin-pane if (oppositepane == NULL) return; FileGenericDirCtrl* Fileview = dynamic_cast(partner); wxCHECK_RET(Fileview, wxT("A partner that isn't a FileGenericDirCtrl")); FileGenericDirCtrl* oppFileview = dynamic_cast(oppositepane->partner); wxCHECK_RET(oppFileview, wxT("A partner that isn't a FileGenericDirCtrl")); bool oppfulltree = oppositepane->fulltree; // Store the opposite pane's current settings bool oppFilesOnly=false; wxArrayString opppartnerfilter; wxArrayString oppfilter = oppositepane->GetFilterArray(); wxString oppstartdir = oppositepane->startdir; wxString opppath = oppositepane->GetPath(); int opppartnerSelectedCol(0); bool opppartnerReversesort(false); bool opppartnerDecimalsort(false); wxString OriginalSelection = GetPathIfRelevant(); wxString OppOriginalSelection = oppositepane->GetPathIfRelevant(); oppositepane->fulltree = fulltree; // Now we duplicate this pane into opposite, fulltree-status and path oppositepane->SetFilterArray(GetFilterArray()); oppositepane->startdir = startdir; oppositepane->ReCreateTreeFromSelection(); oppositepane->SetPath(GetPath()); if (!oppositepane->fulltree) // If opposite pane is not in fulltree mode store its startdir for possible returning ((DirGenericDirCtrl*)oppositepane)->AddPreviouslyVisitedDir(oppositepane->startdir, OppOriginalSelection); if (oppFileview) // Keep right-pane partner in synch { oppFilesOnly = oppFileview->DisplayFilesOnly; opppartnerfilter = oppFileview->GetFilterArray(); opppartnerSelectedCol = oppFileview->GetHeaderWindow()->GetSelectedColumn(); opppartnerReversesort = oppFileview->GetHeaderWindow()->GetSortOrder(); opppartnerDecimalsort = oppFileview->GetIsDecimalSort(); oppFileview->startdir = GetPath(); oppFileview->GetHeaderWindow()->SetSelectedColumn(Fileview->GetHeaderWindow()->GetSelectedColumn()); oppFileview->GetHeaderWindow()->SetSortOrder(Fileview->GetHeaderWindow()->GetSortOrder()); oppFileview->GetHeaderWindow()->SetSelectedColumnImage(Fileview->GetHeaderWindow()->GetSortOrder()); oppFileview->SetIsDecimalSort(Fileview->GetIsDecimalSort()); oppFileview->SetFilterArray(partner->GetFilterArray(), partner->DisplayFilesOnly); oppFileview->ReCreateTreeFromSelection(); } fulltree = oppfulltree; // Use stores to replicate opposite's settings here startdir = oppstartdir; SetFilterArray(oppfilter); ReCreateTreeFromSelection(); SetPath(opppath); if (!fulltree) // If not in fulltree mode store startdir for possible returning ((DirGenericDirCtrl*)ParentControl)->AddPreviouslyVisitedDir(startdir, OriginalSelection); if (partner) // Keep right-pane partner in synch { partner->startdir = opppath; partner->SetFilterArray(opppartnerfilter, oppFilesOnly); Fileview->GetHeaderWindow()->SetSelectedColumn(opppartnerSelectedCol); Fileview->GetHeaderWindow()->SetSortOrder(opppartnerReversesort); Fileview->GetHeaderWindow()->SetSelectedColumnImage(opppartnerReversesort); Fileview->SetIsDecimalSort(opppartnerDecimalsort); partner->ReCreateTreeFromSelection(); } wxYieldIfNeeded(); // This is needed to give time for an UpdateUI event, to ensure the toolbar appearance is correct } void MyGenericDirCtrl::DisplaySelectionInTBTextCtrl(const wxString& selection) { // In >=wx2.9 we need to post an event to create a delay; otherwise the old textctrl value is sometimes not cleared // and it does no harm in 2.8... if (MyFrame::mainframe && MyFrame::mainframe->SelectionAvailable && MyFrame::mainframe->m_tbText != NULL) { wxNotifyEvent event(MyUpdateToolbartextEvent); event.SetString(selection); wxPostEvent(this, event); } } void MyGenericDirCtrl::DoDisplaySelectionInTBTextCtrl(wxNotifyEvent& event) // Change the value in the toolbar textctrl to match the tree selection { if (MyFrame::mainframe && MyFrame::mainframe->SelectionAvailable && MyFrame::mainframe->m_tbText != NULL) MyFrame::mainframe->m_tbText->ChangeValue(event.GetString()); } bool MyGenericDirCtrl::OnExitingArchive() // // We were displaying the innards of an archive, and now we're not { if (arcman) return arcman->RemoveArc(); // This should remove 1 layer of archive, or the sole archive, or do nothing. False means no longer within any archive else return false; } void MyGenericDirCtrl::CopyToClipboard(const wxArrayString& filepaths, bool primary/*=false*/) const { if (filepaths.empty()) return; wxString selection = filepaths.Item(0); // We just checked that this exists for (size_t n=1; n < filepaths.GetCount(); ++n) // Add any further items, separated by \n selection << wxT('\n') << filepaths.Item(n); if (primary) { // In >=wx2.9 it's possible to add the path(s) to the primary selection #if defined(__WXGTK__) && wxCHECK_VERSION(2,9,0) wxTheClipboard->UsePrimarySelection(true); if (wxTheClipboard->Open()) { wxTheClipboard->SetData(new wxTextDataObject(selection)); wxTheClipboard->Close(); } wxTheClipboard->UsePrimarySelection(false); #endif } else { if (wxTheClipboard->Open()) { wxTheClipboard->SetData(new wxTextDataObject(selection)); wxTheClipboard->Close(); } } } wxString MyGenericDirCtrl::GetPathIfRelevant() // Helper function used to get selection to pass to NavigationManager { wxString selection, path = GetPath(); if (!path.empty()) { FileData stat(path); if (stat.IsValid()) { if (!(stat.IsDir() || stat.IsSymlinktargetADir())) selection = stat.GetPath(); else selection = stat.GetFilepath(); } } return selection; } #if defined(__LINUX__) && defined(__WXGTK__) void MyGenericDirCtrl::OnFileWatcherEvent(wxFileSystemWatcherEvent& event) { try { wxString filepath = event.GetPath().GetFullPath(); wxString newfilepath = event.GetNewPath().GetFullPath(); // For renames switch(event.GetChangeType()) { case wxFSW_EVENT_CREATE: m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_MODIFY: m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_ATTRIB: m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_RENAME: m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_DELETE: /*IN_DELETE, IN_DELETE_SELF or IN_MOVE_SELF (both in & out)*/ m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_UNMOUNT: m_watcher->RemoveWatchLineage(filepath); m_eventmanager.AddEvent(event); break; case wxFSW_EVENT_WARNING: if (event.GetWarningType() == wxFSW_WARNING_OVERFLOW) { WatchOverflowTimer* otimer = m_watcher->GetOverflowTimer(); if (!otimer->IsRunning()) // We'll probably get more warnings after we've already done this { wxString basepath = m_watcher->GetWatchedBasepath(); // filepath will be "" for overflow warnings m_watcher->GetWatcher()->RemoveAll(); // Turn off the current watch, to give inotify a chance to catch up with itself m_eventmanager.ClearStoredEvents(); otimer->SetFilepath(basepath); otimer->SetType(fileview == ISLEFT); //wxLogDebug("Starting the %s overflow timer", basepath); otimer->Start(500, wxTIMER_ONE_SHOT); } } else // Report warnings, but not if they're wxFSW_WARNING_OVERFLOW, which is 1) not interesting, and 2) very, very multiple { wxLogDebug(wxT("FSW WARNING: winID:%i: Type:%i %s"), GetId(), event.GetWarningType(), event.GetErrorDescription().c_str()); } } } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyGenericDirCtrl::OnFileWatcherEvent")); } } MyFSWatcher::MyFSWatcher(wxWindow* owner/* = NULL*/) : m_owner(owner) { m_fswatcher = NULL; m_DelayedDirwatchTimer = new DirviewWatchTimer(this); m_OverflowTimer = new WatchOverflowTimer(this); } MyFSWatcher::~MyFSWatcher() { delete m_fswatcher; delete m_DelayedDirwatchTimer; delete m_OverflowTimer; } void MyFSWatcher::SetDirviewWatch(const wxString& path) { try { if (!CreateWatcherIfNecessary()) return; m_fswatcher->RemoveAll(); if (path.empty()) return; // as things have probably gone pear-shaped DirGenericDirCtrl* owner = wxDynamicCast(m_owner, DirGenericDirCtrl); wxCHECK_RET(owner, wxT("m_owner is not a DirGenericDirCtrl")); wxTreeItemId rootId = owner->GetTreeCtrl()->GetRootItem(); if (!rootId.IsOk()) return; wxArrayString dirs; // Find the visible dirs and watch them owner->GetVisibleDirs(rootId, dirs); wxLogNull NoLogWarningsAboutWrongPaths; bool need_startdir = true; for (size_t n=0; n < dirs.GetCount(); ++n) { m_fswatcher->Add(StrWithSep(dirs.Item(n))); // Usually 'path' is found by GetVisibleDirs(); but not always... if (StripSep(dirs.Item(n)) == StripSep(path)) need_startdir = false; } if (need_startdir) m_fswatcher->Add(StrWithSep(path)); if (!owner->fulltree) // If fulltree, parents are already visible and so are auto-added { wxString parent(path); // Otherwise watch the hidden rootdir too, and all its ancestors; they can't be seen, but what if one were renamed... if (parent != wxT("/")) // Unless 'path' is actually '/', in which case 1) it doesn't have a parent, and 2) it's already added while (true) { wxFileName fn(parent); parent = fn.GetPath(); // GetVisibleDirs() included the original 'path', so start the loop with a GetPath() if (parent == wxT("/")) break; m_fswatcher->Add(StrWithSep(parent), wxFSW_EVENT_RENAME); } } m_WatchedBasepath = path; // Needed if we need to reset due to an inotify stack overflow } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyFSWatcher::SetDirviewWatch")); } } void MyFSWatcher::SetFileviewWatch(const wxString& path) { wxCHECK_RET(!path.empty(), wxT("Trying to watch an empty path")); try { if (!CreateWatcherIfNecessary()) return; if (StripSep(path) == m_WatchedBasepath) // This can happen with e.g. SetPath(). It's not only pointless, but can result in lost events during the change { if (m_fswatcher->GetWatchedPathsCount()) // There are ways (involving UnDo) that result in a blank, unwatched fileview, even though startdir is set (idk how to make it not-set) return; } FileData* fd = new FileData(path); if (!fd->IsValid()) { delete fd; // This happened on some boxes when a usbpen was unmounted, as a race condition which I hope I've solved elsewhere in this commit. But just in case: fd = new FileData(wxGetHomeDir()); } wxASSERT(fd->IsDir() || fd->IsSymlinktargetADir()); // Keep this code for a while, in case there're more ways to arrive here with 'path' holding a file m_fswatcher->RemoveAll(); wxLogNull NoLogWarningsAboutWrongPaths; m_fswatcher->Add(StrWithSep(fd->GetFilepath())); m_WatchedBasepath = StripSep(fd->GetFilepath()); //PrintWatches(wxString(wxT("SetFileviewWatch() end"))); delete fd; } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyFSWatcher::SetFileviewWatch")); } } void MyFSWatcher::RefreshWatch(const wxString& filepath1 /*=wxT("")*/, const wxString& filepath2 /*=wxT("")*/) // Updates after an fsw rename event { try { if (!CreateWatcherIfNecessary()) return; if (!filepath1.empty() && !filepath2.empty()) // A rename { RemoveWatchLineage(StripSep(filepath1)); // Remove the now-defunct lineage of watches AddWatchLineage(StripSep(filepath2)); // and add the new dir and any visible descendant dirs } } catch(...) { wxLogWarning(wxT("Caught an unknown exception in the 'rename' MyFSWatcher::RefreshWatch")); } } void MyFSWatcher::RefreshWatchDirCreate(const wxString& filepath) // Updates after an fsw create (dir) event { wxCHECK_RET(!filepath.empty(), wxT("Passed an empty filepath")); try { if (!CreateWatcherIfNecessary()) return; wxArrayString CurrentWatches; m_fswatcher->GetWatchedPaths(&CurrentWatches); if ((CurrentWatches.Index(filepath) != wxNOT_FOUND) || (CurrentWatches.Index(StrWithSep(filepath)) != wxNOT_FOUND)) { wxLogTrace(wxT("myfswatcher"), wxT("Filepath %s, allegedly newly created, was already watched in RefreshWatch()"), filepath.c_str()); return; } AddWatchLineage(StripSep(filepath)); // Add the new dir and any visible descendant dirs } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyFSWatcher::RefreshWatchDirCreate")); } } void MyFSWatcher::AddWatchLineage(const wxString& filepath) // Add a watch for filepath and all visible descendant dirs { DirGenericDirCtrl* owner = wxDynamicCast(m_owner, DirGenericDirCtrl); wxCHECK_RET(owner && owner->fileview == ISLEFT, wxT("m_owner is not a DirGenericDirCtrl")); try { wxArrayString dirs; // If called from a dirview, find the visible dirs to be watched wxTreeItemId treeId; if (owner) { treeId = owner->FindIdForPath(filepath); if (treeId.IsOk()) owner->GetVisibleDirs(treeId, dirs); } //PrintWatches(wxString(wxT("AddWatchLineage() start. filepath=")) + filepath); wxLogNull NoLogWarningsAboutWrongPaths; bool need_startdir = true; for (size_t n=0; n < dirs.GetCount(); ++n) { m_fswatcher->Add(StrWithSep(dirs.Item(n))); // Usually 'filepath' is found by GetVisibleDirs(); but not always... if (StripSep(dirs.Item(n)) == StripSep(filepath)) need_startdir = false; } if (need_startdir) m_fswatcher->Add(StrWithSep(filepath)); if (!owner->fulltree) // If fulltree, parents are already visible and so are auto-added { wxString parent(filepath); // Otherwise add a wxFSW_EVENT_RENAME watch the hidden rootdir too, and all its ancestors; they can't be seen, but what if one were renamed... if (parent != wxT("/")) // Unless 'filepath' is actually '/', in which case 1) it doesn't have a parent, and 2) it's already added while (true) { wxFileName fn(parent); parent = fn.GetPath(); // GetVisibleDirs() included the original 'filepath', so start the loop with a GetPath() if (parent == wxT("/")) break; m_fswatcher->Add(StrWithSep(parent), wxFSW_EVENT_RENAME); } } //PrintWatches(wxT("AddWatchLineage() end:")); } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyFSWatcher::AddWatchLineage")); } } void MyFSWatcher::RemoveWatchLineage(const wxString& filepath) // Remove all watches starting with this filepath { wxCHECK_RET(!filepath.empty(), wxT("Passed an empty filepath")); try { if (!CreateWatcherIfNecessary()) return; wxArrayString CurrentWatches; int currentcount = m_fswatcher->GetWatchedPaths(&CurrentWatches); wxLogTrace(wxT("myfswatcher"), wxT("RemoveWatchLineage() start: %i watches"), currentcount); if ((CurrentWatches.Index(StripSep(filepath)) == wxNOT_FOUND) && (CurrentWatches.Index(StrWithSep(filepath)) == wxNOT_FOUND)) { wxLogTrace(wxT("myfswatcher"), wxT("Filepath %s wasn't watched in RemoveWatchLineage()"), filepath.c_str()); return; } //PrintWatches(wxT("RemoveWatchLineage() start loop:")); for (int n = currentcount-1; n >= 0; --n) { wxString item = CurrentWatches.Item(n); if ((StripSep(CurrentWatches.Item(n)) == StripSep(filepath)) || (CurrentWatches.Item(n).StartsWith(StrWithSep(filepath)))) { wxLogNull NoLogWarningsAboutWrongPaths; do { m_fswatcher->Remove(item); } while (IsWatched(item)); CurrentWatches.RemoveAt(n); } } wxLogTrace(wxT("myfswatcher"), wxT("RemoveWatchLineage() end: %i watches after removal starting with %s"), m_fswatcher->GetWatchedPathsCount(), filepath.c_str()); //PrintWatches(wxT("RemoveWatchLineage() end:")); } catch(...) { wxLogWarning(wxT("Caught an unknown exception in MyFSWatcher::RemoveWatchLineage")); } } bool MyFSWatcher::IsWatched(const wxString& filepath) const { wxArrayString CurrentWatches; m_fswatcher->GetWatchedPaths(&CurrentWatches); return (CurrentWatches.Index(StrWithSep(filepath)) != wxNOT_FOUND) || (CurrentWatches.Index(StripSep(filepath)) != wxNOT_FOUND); } bool MyFSWatcher::CreateWatcherIfNecessary() { if (m_fswatcher) return true; #if wxVERSION_NUMBER > 2809 if (!wxApp::IsMainLoopRunning()) return false; // Until 2.8.10 wxApp::IsMainLoopRunning always returned false #endif #if USE_MYFSWATCHER m_fswatcher = new MyFileSystemWatcher; #else m_fswatcher = new wxFileSystemWatcher; #endif if (m_owner) m_fswatcher->SetOwner(m_owner); return true; } void MyFSWatcher::DoDelayedSetDirviewWatch(const wxString& path) { // Check we're fully made: I got a segfault once on starting: m_fswatcher was valid, but not m_DelayedDirwatchTimer // If it isn't, ignore: we must be doing an initial expand of startdir, and the timer is irrelevant if (m_DelayedDirwatchTimer) { m_DelayedDirwatchPath = path; m_DelayedDirwatchTimer->Start(200, wxTIMER_ONE_SHOT); } } void MyFSWatcher::OnDelayedDirwatchTimer() { if (!m_DelayedDirwatchPath.empty()) SetDirviewWatch(m_DelayedDirwatchPath); // The timer fired, meaning that there was a, possibly recursive, expansion of a dir m_DelayedDirwatchPath.Clear(); } void MyFSWatcher::PrintWatches(const wxString& msg /*=wxT("")*/) const { wxArrayString CurrentWatches; int currentcount = m_fswatcher->GetWatchedPaths(&CurrentWatches); wxLogTrace(wxT("myfswatcher"), wxT("PrintWatches(): %s Count = %i"), msg.c_str(), currentcount); for (int n = 0; n < currentcount; ++n) wxLogTrace(wxT("myfswatcher"), CurrentWatches.Item(n)); } void WatchOverflowTimer::Notify() { if (m_isdirview) m_watch->SetDirviewWatch(m_filepath); else m_watch->SetFileviewWatch(m_filepath); // We must also force an update here. If not, any changes from the last 500ms won't display if the thread completed during that time MyGenericDirCtrl* gdc = dynamic_cast(m_watch->GetOwner()); if (gdc && !m_isdirview) // Don't update a dirview: it doesn't seem 2b needed and it'll collapse the dir structure gdc->ReCreateTree(); } #endif // defined(__LINUX__) && defined(__WXGTK__) ./4pane-6.0/.build/0000755000175000017500000000000013567211772012653 5ustar daviddavid./4pane-6.0/.build/autogen.sh0000755000175000017500000000031013205575137014643 0ustar daviddavid#! /bin/sh ( # Check if we're running in . or in .build/ if test ! -e .build/ ; then cd .. fi ln -fs .build/configure.ac . aclocal -I .build --install && \ autoconf && \ automake --add-missing ) ./4pane-6.0/.build/configure.ac0000644000175000017500000001001613566742142015136 0ustar daviddaviddnl Process this file with autoconf to produce a configure script. AC_INIT([4Pane],[6.0]) AC_PREREQ(2.59) AC_CONFIG_MACRO_DIRS([.build]) AC_CONFIG_SRCDIR([MyDirs.cpp]) AC_PROG_INSTALL AC_PROG_LN_S dnl For some reason, if AC_PROG_CC/CXX find C(XX)FLAGS empty they maliciously fill both with "-g -02" dnl We append to them in WX_STANDARD_OPTIONS later, causing a confusing duplication or inconsistency in the build output dnl So cache any user-supplied value and reapply it (or "") after these calls _CFLAGS=$CFLAGS _CXXFLAGS=$CXXFLAGS AC_PROG_CC AC_PROG_CXX CFLAGS=$_CFLAGS CXXFLAGS=$_CXXFLAGS AC_PROG_CXXCPP dnl These macros from wxwin.m4 check for a suitable wxWidgets build WX_CONFIG_OPTIONS dnl Supports --wx-prefix, --wx-exec-prefix, --with-wxdir and --wx-config command line options WX_STANDARD_OPTIONS([debug,unicode,wxshared,toolkit]) WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS WX_CONFIG_CHECK([3.0.0],[wxWin=1],[wxWin=0],[core,xrc,xml,adv,html]) WX_DETECT_STANDARD_OPTION_VALUES AS_IF( [test "$wxWin" = 1], [], [AC_MSG_ERROR([ wxWidgets must be installed on your system but wx-config script couldn't be found. Please check that wx-config is in your \$PATH and the wxWidgets version is 3.0.0 or above. ]) ] ) AM_INIT_AUTOMAKE([subdir-objects foreign -Wall -Werror]) dnl If building against gtk2 or 3, check the headers are installed AS_IF( [test "x$WX_PORT" = xgtk3], [FP_CHECK_GTK_HEADERS(3)], [test "x$WX_PORT" = xgtk2], [FP_CHECK_GTK_HEADERS(2)], [AC_MSG_ERROR([ No gtk2 or gtk3 wxWidgets build found in your \$PATH. Please install one and try again. ]) ] ) dnl See if we use the system bzip2 headers/lib instead of our built-in versions (the default) dnl LIBBZ2 gets filled with -lbz2, or nothing if we're using the built-in FP_BZIP2_CHECK(LIBBZ2) dnl Check for the xz/lzma headers, without which we can't build the code for xz archive streams dnl LIBLZMA gets filled with -llzma, or nothing if we're not using xz/lzma FP_LZMA_ARCHIVE_STREAMS(LIBLZMA) dnl We need to link to glib-2 for gtk3 builds that use the built-in FSWatcher i.e. those < wx3.0.3 plus wx3.1.0 AS_IF( [test $WX_VERSION_MAJOR -lt 3], [GLIB2="-lglib-2.0"], [test $WX_VERSION_MAJOR$WX_VERSION_MINOR$WX_VERSION_MICRO -lt 303], [GLIB2="-lglib-2.0"], [test $WX_VERSION_MAJOR$WX_VERSION_MINOR$WX_VERSION_MICRO = 310], [GLIB2="-lglib-2.0"], [GLIB2=] ) dnl link explicitly to required non-wx libs, as needed for non-DT_NEEDED distros AS_IF( [test "x$WX_PORT" = x2], [AC_SUBST([XTRLIBS], ["-lgtk-x11-2.0 -lgobject-2.0 -ldl -lglib-2.0 -lgio-2.0 -lutil $LIBBZ2 $LIBLZMA"])], [test "x$WX_PORT" = x3], [AC_SUBST([XTRLIBS], ["-lgtk-3 -lgobject-2.0 -ldl $GLIB2 -lgio-2.0 -lutil $LIBBZ2 $LIBLZMA"])], [AC_SUBST([XTRLIBS], ["-lutil -ldl $LIBBZ2 $LIBLZMA"])] ) FP_CONTROL_ASSERTS FP_DETECT_GETTEXT FP_GETARG_ENABLE([install_app], [install_app], [--disable-install_app stops make install installing the app], [enable]) FP_GETARG_ENABLE([symlink], [symlink], [--disable-symlink stops make install creating a 4Pane to 4pane symlink], [enable]) FP_GETARG_ENABLE([desktop], [desktop], [--disable-desktop stops make install trying to create a 4Pane desktop shortcut], [enable]) FP_GETARG_ENABLE([locale], [locale], [--disable-locale stops make install trying to install 4Pane's locale files], [enable]) FP_GETARG_ENABLE([install_rc], [install_rc], [--disable-install_rc stops make install installing the resource files], [enable]) FP_GETARG_ENABLE([install_docs], [install_docs], [--disable-install_docs stops make install installing the manual files], [enable]) dnl Provide an easy way of appending to CXXFLAGS etc, as this is currently hard dnl It can be used e.g. for the 'hardening' flags when building packages AC_SUBST([EXTRA_CPPFLAGS]) AC_SUBST([EXTRA_CFLAGS]) AC_SUBST([EXTRA_CXXFLAGS]) AC_SUBST([EXTRA_LDFLAGS]) AC_CONFIG_FILES([Makefile locale/Makefile]) AC_OUTPUT ./4pane-6.0/.build/wxwin.m40000644000175000017500000011754613440442444014277 0ustar daviddaviddnl --------------------------------------------------------------------------- dnl Author: wxWidgets development team, dnl Francesco Montorsi, dnl Bob McCown (Mac-testing) dnl Creation date: 24/11/2001 dnl --------------------------------------------------------------------------- dnl =========================================================================== dnl Table of Contents of this macro file: dnl ------------------------------------- dnl dnl SECTION A: wxWidgets main macros dnl - WX_CONFIG_OPTIONS dnl - WX_CONFIG_CHECK dnl - WXRC_CHECK dnl - WX_STANDARD_OPTIONS dnl - WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS dnl - WX_DETECT_STANDARD_OPTION_VALUES dnl dnl SECTION B: wxWidgets-related utilities dnl - WX_LIKE_LIBNAME dnl - WX_ARG_ENABLE_YESNOAUTO dnl - WX_ARG_WITH_YESNOAUTO dnl dnl SECTION C: messages to the user dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN dnl - WX_STANDARD_OPTIONS_SUMMARY_MSG_END dnl - WX_BOOLOPT_SUMMARY dnl dnl The special "WX_DEBUG_CONFIGURE" variable can be set to 1 to enable extra dnl debug output on stdout from these macros. dnl =========================================================================== dnl --------------------------------------------------------------------------- dnl Macros for wxWidgets detection. Typically used in configure.in as: dnl dnl AC_ARG_ENABLE(...) dnl AC_ARG_WITH(...) dnl ... dnl WX_CONFIG_OPTIONS dnl ... dnl ... dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1]) dnl if test "$wxWin" != 1; then dnl AC_MSG_ERROR([ dnl wxWidgets must be installed on your system dnl but wx-config script couldn't be found. dnl dnl Please check that wx-config is in path, the directory dnl where wxWidgets libraries are installed (returned by dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or dnl equivalent variable and wxWidgets version is 2.3.4 or above. dnl ]) dnl fi dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS" dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY" dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY" dnl dnl LIBS="$LIBS $WX_LIBS" dnl dnl If you want to support standard --enable-debug/unicode/shared options, you dnl may do the following: dnl dnl ... dnl AC_CANONICAL_SYSTEM dnl dnl # define configure options dnl WX_CONFIG_OPTIONS dnl WX_STANDARD_OPTIONS([debug,unicode,shared,toolkit,wxshared]) dnl dnl # basic configure checks dnl ... dnl dnl # we want to always have DEBUG==WX_DEBUG and UNICODE==WX_UNICODE dnl WX_DEBUG=$DEBUG dnl WX_UNICODE=$UNICODE dnl dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS dnl WX_CONFIG_CHECK([2.8.0], [wxWin=1],,[html,core,net,base],[$WXCONFIG_FLAGS]) dnl WX_DETECT_STANDARD_OPTION_VALUES dnl dnl # write the output files dnl AC_CONFIG_FILES([Makefile ...]) dnl AC_OUTPUT dnl dnl # optional: just to show a message to the user dnl WX_STANDARD_OPTIONS_SUMMARY_MSG dnl dnl --------------------------------------------------------------------------- dnl --------------------------------------------------------------------------- dnl WX_CONFIG_OPTIONS dnl dnl adds support for --wx-prefix, --wx-exec-prefix, --with-wxdir and dnl --wx-config command line options dnl --------------------------------------------------------------------------- AC_DEFUN([WX_CONFIG_OPTIONS], [ AC_ARG_WITH(wxdir, [ --with-wxdir=PATH Use uninstalled version of wxWidgets in PATH], [ wx_config_name="$withval/wx-config" wx_config_args="--inplace"]) AC_ARG_WITH(wx-config, [ --with-wx-config=CONFIG wx-config script to use (optional)], wx_config_name="$withval" ) AC_ARG_WITH(wx-prefix, [ --with-wx-prefix=PREFIX Prefix where wxWidgets is installed (optional)], wx_config_prefix="$withval", wx_config_prefix="") AC_ARG_WITH(wx-exec-prefix, [ --with-wx-exec-prefix=PREFIX Exec prefix where wxWidgets is installed (optional)], wx_config_exec_prefix="$withval", wx_config_exec_prefix="") ]) dnl Helper macro for checking if wx version is at least $1.$2.$3, set's dnl wx_ver_ok=yes if it is: AC_DEFUN([_WX_PRIVATE_CHECK_VERSION], [ wx_ver_ok="" if test "x$WX_VERSION" != x ; then if test $wx_config_major_version -gt $1; then wx_ver_ok=yes else if test $wx_config_major_version -eq $1; then if test $wx_config_minor_version -gt $2; then wx_ver_ok=yes else if test $wx_config_minor_version -eq $2; then if test $wx_config_micro_version -ge $3; then wx_ver_ok=yes fi fi fi fi fi fi ]) dnl --------------------------------------------------------------------------- dnl WX_CONFIG_CHECK(VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND dnl [, WX-LIBS [, ADDITIONAL-WX-CONFIG-FLAGS]]]]) dnl dnl Test for wxWidgets, and define WX_C*FLAGS, WX_LIBS and WX_LIBS_STATIC dnl (the latter is for static linking against wxWidgets). Set WX_CONFIG_NAME dnl environment variable to override the default name of the wx-config script dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this dnl case the macro won't even waste time on tests for its existence. dnl dnl Optional WX-LIBS argument contains comma- or space-separated list of dnl wxWidgets libraries to link against. If it is not specified then WX_LIBS dnl and WX_LIBS_STATIC will contain flags to link with all of the core dnl wxWidgets libraries. dnl dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config dnl invocation command in present. It can be used to fine-tune lookup of dnl best wxWidgets build available. dnl dnl Example use: dnl WX_CONFIG_CHECK([2.6.0], [wxWin=1], [wxWin=0], [html,core,net] dnl [--unicode --debug]) dnl --------------------------------------------------------------------------- dnl dnl Get the cflags and libraries from the wx-config script dnl AC_DEFUN([WX_CONFIG_CHECK], [ dnl do we have wx-config name: it can be wx-config or wxd-config or ... if test x${WX_CONFIG_NAME+set} != xset ; then WX_CONFIG_NAME=wx-config fi if test "x$wx_config_name" != x ; then WX_CONFIG_NAME="$wx_config_name" fi dnl deal with optional prefixes if test x$wx_config_exec_prefix != x ; then wx_config_args="$wx_config_args --exec-prefix=$wx_config_exec_prefix" WX_LOOKUP_PATH="$wx_config_exec_prefix/bin" fi if test x$wx_config_prefix != x ; then wx_config_args="$wx_config_args --prefix=$wx_config_prefix" WX_LOOKUP_PATH="$WX_LOOKUP_PATH:$wx_config_prefix/bin" fi if test "$cross_compiling" = "yes"; then wx_config_args="$wx_config_args --host=$host_alias" fi dnl don't search the PATH if WX_CONFIG_NAME is absolute filename if test -x "$WX_CONFIG_NAME" ; then AC_MSG_CHECKING(for wx-config) WX_CONFIG_PATH="$WX_CONFIG_NAME" AC_MSG_RESULT($WX_CONFIG_PATH) else AC_PATH_PROG(WX_CONFIG_PATH, $WX_CONFIG_NAME, no, "$WX_LOOKUP_PATH:$PATH") fi if test "$WX_CONFIG_PATH" != "no" ; then WX_VERSION="" min_wx_version=ifelse([$1], ,2.2.1,$1) if test -z "$5" ; then AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version]) else AC_MSG_CHECKING([for wxWidgets version >= $min_wx_version ($5)]) fi dnl don't add the libraries (4th argument) to this variable as this would dnl result in an error when it's used with --version below dnl DH Also, append WXCONFIG_FLAGS here, otherwise '--toolkit=foo' has no effect WX_CONFIG_WITH_ARGS="$WX_CONFIG_PATH $wx_config_args $5 $WXCONFIG_FLAGS" WX_VERSION=`$WX_CONFIG_WITH_ARGS --version 2>/dev/null` wx_config_major_version=`echo $WX_VERSION | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` wx_config_minor_version=`echo $WX_VERSION | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` wx_config_micro_version=`echo $WX_VERSION | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` wx_requested_major_version=`echo $min_wx_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` wx_requested_minor_version=`echo $min_wx_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` wx_requested_micro_version=`echo $min_wx_version | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` _WX_PRIVATE_CHECK_VERSION([$wx_requested_major_version], [$wx_requested_minor_version], [$wx_requested_micro_version]) if test -n "$wx_ver_ok"; then AC_MSG_RESULT(yes (version $WX_VERSION)) WX_LIBS=`$WX_CONFIG_WITH_ARGS --libs $4` dnl is this even still appropriate? --static is a real option now dnl and WX_CONFIG_WITH_ARGS is likely to contain it if that is dnl what the user actually wants, making this redundant at best. dnl For now keep it in case anyone actually used it in the past. AC_MSG_CHECKING([for wxWidgets static library]) WX_LIBS_STATIC=`$WX_CONFIG_WITH_ARGS --static --libs $4 2>/dev/null` if test "x$WX_LIBS_STATIC" = "x"; then AC_MSG_RESULT(no) else AC_MSG_RESULT(yes) fi dnl starting with version 2.2.6 wx-config has --cppflags argument wx_has_cppflags="" if test $wx_config_major_version -gt 2; then wx_has_cppflags=yes else if test $wx_config_major_version -eq 2; then if test $wx_config_minor_version -gt 2; then wx_has_cppflags=yes else if test $wx_config_minor_version -eq 2; then if test $wx_config_micro_version -ge 6; then wx_has_cppflags=yes fi fi fi fi fi dnl starting with version 2.7.0 wx-config has --rescomp option wx_has_rescomp="" if test $wx_config_major_version -gt 2; then wx_has_rescomp=yes else if test $wx_config_major_version -eq 2; then if test $wx_config_minor_version -ge 7; then wx_has_rescomp=yes fi fi fi if test "x$wx_has_rescomp" = x ; then dnl cannot give any useful info for resource compiler WX_RESCOMP= else WX_RESCOMP=`$WX_CONFIG_WITH_ARGS --rescomp` fi if test "x$wx_has_cppflags" = x ; then dnl no choice but to define all flags like CFLAGS WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4` WX_CPPFLAGS=$WX_CFLAGS WX_CXXFLAGS=$WX_CFLAGS WX_CFLAGS_ONLY=$WX_CFLAGS WX_CXXFLAGS_ONLY=$WX_CFLAGS else dnl we have CPPFLAGS included in CFLAGS included in CXXFLAGS WX_CPPFLAGS=`$WX_CONFIG_WITH_ARGS --cppflags $4` WX_CXXFLAGS=`$WX_CONFIG_WITH_ARGS --cxxflags $4` WX_CFLAGS=`$WX_CONFIG_WITH_ARGS --cflags $4` WX_CFLAGS_ONLY=`echo $WX_CFLAGS | sed "s@^$WX_CPPFLAGS *@@"` WX_CXXFLAGS_ONLY=`echo $WX_CXXFLAGS | sed "s@^$WX_CFLAGS *@@"` fi ifelse([$2], , :, [$2]) else if test "x$WX_VERSION" = x; then dnl no wx-config at all AC_MSG_RESULT(no) else AC_MSG_RESULT(no (version $WX_VERSION is not new enough)) fi WX_CFLAGS="" WX_CPPFLAGS="" WX_CXXFLAGS="" WX_LIBS="" WX_LIBS_STATIC="" WX_RESCOMP="" if test ! -z "$5"; then wx_error_message=" The configuration you asked for $PACKAGE_NAME requires a wxWidgets build with the following settings: $5 but such build is not available. To see the wxWidgets builds available on this system, please use 'wx-config --list' command. To use the default build, returned by 'wx-config --selected-config', use the options with their 'auto' default values." fi wx_error_message=" The requested wxWidgets build couldn't be found. $wx_error_message If you still get this error, then check that 'wx-config' is in path, the directory where wxWidgets libraries are installed (returned by 'wx-config --libs' command) is in LD_LIBRARY_PATH or equivalent variable and wxWidgets version is $1 or above." ifelse([$3], , AC_MSG_ERROR([$wx_error_message]), [$3]) fi else WX_CFLAGS="" WX_CPPFLAGS="" WX_CXXFLAGS="" WX_LIBS="" WX_LIBS_STATIC="" WX_RESCOMP="" ifelse([$3], , :, [$3]) fi AC_SUBST(WX_CPPFLAGS) AC_SUBST(WX_CFLAGS) AC_SUBST(WX_CXXFLAGS) AC_SUBST(WX_CFLAGS_ONLY) AC_SUBST(WX_CXXFLAGS_ONLY) AC_SUBST(WX_LIBS) AC_SUBST(WX_LIBS_STATIC) AC_SUBST(WX_VERSION) AC_SUBST(WX_RESCOMP) dnl need to export also WX_VERSION_MINOR and WX_VERSION_MAJOR symbols dnl to support wxpresets bakefiles (we export also WX_VERSION_MICRO for completeness): WX_VERSION_MAJOR="$wx_config_major_version" WX_VERSION_MINOR="$wx_config_minor_version" WX_VERSION_MICRO="$wx_config_micro_version" AC_SUBST(WX_VERSION_MAJOR) AC_SUBST(WX_VERSION_MINOR) AC_SUBST(WX_VERSION_MICRO) ]) dnl --------------------------------------------------------------------------- dnl Get information on the wxrc program for making C++, Python and xrs dnl resource files. dnl dnl AC_ARG_ENABLE(...) dnl AC_ARG_WITH(...) dnl ... dnl WX_CONFIG_OPTIONS dnl ... dnl WX_CONFIG_CHECK(2.6.0, wxWin=1) dnl if test "$wxWin" != 1; then dnl AC_MSG_ERROR([ dnl wxWidgets must be installed on your system dnl but wx-config script couldn't be found. dnl dnl Please check that wx-config is in path, the directory dnl where wxWidgets libraries are installed (returned by dnl 'wx-config --libs' command) is in LD_LIBRARY_PATH or dnl equivalent variable and wxWidgets version is 2.6.0 or above. dnl ]) dnl fi dnl dnl WXRC_CHECK([HAVE_WXRC=1], [HAVE_WXRC=0]) dnl if test "x$HAVE_WXRC" != x1; then dnl AC_MSG_ERROR([ dnl The wxrc program was not installed or not found. dnl dnl Please check the wxWidgets installation. dnl ]) dnl fi dnl dnl CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS" dnl CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS_ONLY" dnl CFLAGS="$CFLAGS $WX_CFLAGS_ONLY" dnl dnl LDFLAGS="$LDFLAGS $WX_LIBS" dnl --------------------------------------------------------------------------- dnl --------------------------------------------------------------------------- dnl WXRC_CHECK([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) dnl dnl Test for wxWidgets' wxrc program for creating either C++, Python or XRS dnl resources. The variable WXRC will be set and substituted in the configure dnl script and Makefiles. dnl dnl Example use: dnl WXRC_CHECK([wxrc=1], [wxrc=0]) dnl --------------------------------------------------------------------------- dnl dnl wxrc program from the wx-config script dnl AC_DEFUN([WXRC_CHECK], [ AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler]) if test "x$WX_CONFIG_NAME" = x; then AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.]) else AC_MSG_CHECKING([for wxrc]) if test "x$WXRC" = x ; then dnl wx-config --utility is a new addition to wxWidgets: _WX_PRIVATE_CHECK_VERSION(2,5,3) if test -n "$wx_ver_ok"; then WXRC=`$WX_CONFIG_WITH_ARGS --utility=wxrc` fi fi if test "x$WXRC" = x ; then AC_MSG_RESULT([not found]) ifelse([$2], , :, [$2]) else AC_MSG_RESULT([$WXRC]) ifelse([$1], , :, [$1]) fi AC_SUBST(WXRC) fi ]) dnl --------------------------------------------------------------------------- dnl WX_LIKE_LIBNAME([output-var] [prefix], [name]) dnl dnl Sets the "output-var" variable to the name of a library named with same dnl wxWidgets rule. dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets dnl the $lib variable to: dnl 'mine_gtk2ud_test-2.8' dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_RELEASE=28 dnl --------------------------------------------------------------------------- AC_DEFUN([WX_LIKE_LIBNAME], [ wx_temp="$2""_""$WX_PORT" dnl add the [u][d] string if test "$WX_UNICODE" = "1"; then wx_temp="$wx_temp""u" fi if test "$WX_DEBUG" = "1"; then wx_temp="$wx_temp""d" fi dnl complete the name of the lib wx_temp="$wx_temp""_""$3""-$WX_VERSION_MAJOR.$WX_VERSION_MINOR" dnl save it in the user's variable $1=$wx_temp ]) dnl --------------------------------------------------------------------------- dnl WX_ARG_ENABLE_YESNOAUTO/WX_ARG_WITH_YESNOAUTO dnl dnl Two little custom macros which define the ENABLE/WITH configure arguments. dnl Macro arguments: dnl $1 = the name of the --enable / --with feature dnl $2 = the name of the variable associated dnl $3 = the description of that feature dnl $4 = the default value for that feature dnl $5 = additional action to do in case option is given with "yes" value dnl --------------------------------------------------------------------------- AC_DEFUN([WX_ARG_ENABLE_YESNOAUTO], [AC_ARG_ENABLE($1, AC_HELP_STRING([--enable-$1], [$3 (default is $4)]), [], [enableval="$4"]) dnl Show a message to the user about this option AC_MSG_CHECKING([for the --enable-$1 option]) if test "$enableval" = "yes" ; then AC_MSG_RESULT([yes]) $2=1 $5 elif test "$enableval" = "no" ; then AC_MSG_RESULT([no]) $2=0 elif test "$enableval" = "auto" ; then AC_MSG_RESULT([will be automatically detected]) $2="" else AC_MSG_ERROR([ Unrecognized option value (allowed values: yes, no, auto) ]) fi ]) AC_DEFUN([WX_ARG_WITH_YESNOAUTO], [AC_ARG_WITH($1, AC_HELP_STRING([--with-$1], [$3 (default is $4)]), [], [withval="$4"]) dnl Show a message to the user about this option AC_MSG_CHECKING([for the --with-$1 option]) if test "$withval" = "yes" ; then AC_MSG_RESULT([yes]) $2=1 $5 dnl NB: by default we don't allow --with-$1=no option dnl since it does not make much sense ! elif test "$6" = "1" -a "$withval" = "no" ; then AC_MSG_RESULT([no]) $2=0 elif test "$withval" = "auto" ; then AC_MSG_RESULT([will be automatically detected]) $2="" else AC_MSG_ERROR([ Unrecognized option value (allowed values: yes, auto) ]) fi ]) dnl --------------------------------------------------------------------------- dnl WX_STANDARD_OPTIONS([options-to-add]) dnl dnl Adds to the configure script one or more of the following options: dnl --enable-[debug|unicode|shared|wxshared|wxdebug] dnl --with-[gtk|msw|motif|x11|mac|dfb] dnl --with-wxversion dnl Then checks for their presence and eventually set the DEBUG, UNICODE, SHARED, dnl PORT, WX_SHARED, WX_DEBUG, variables to one of the "yes", "no", "auto" values. dnl dnl Note that e.g. UNICODE != WX_UNICODE; the first is the value of the dnl --enable-unicode option (in boolean format) while the second indicates dnl if wxWidgets was built in Unicode mode (and still is in boolean format). dnl --------------------------------------------------------------------------- AC_DEFUN([WX_STANDARD_OPTIONS], [ dnl the following lines will expand to WX_ARG_ENABLE_YESNOAUTO calls if and only if dnl the $1 argument contains respectively the debug,unicode or shared options. dnl be careful here not to set debug flag if only "wxdebug" was specified ifelse(regexp([$1], [\bdebug]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([debug], [DEBUG], [Build in debug mode], [auto])]) ifelse(index([$1], [unicode]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([unicode], [UNICODE], [Build in Unicode mode], [auto])]) ifelse(regexp([$1], [\bshared]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([shared], [SHARED], [Build as shared library], [auto])]) dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-toolkit since it's an option dnl which must be able to accept the auto|gtk1|gtk2|msw|... values ifelse(index([$1], [toolkit]), [-1],, [ AC_ARG_WITH([toolkit], AC_HELP_STRING([--with-toolkit], [Build against a specific wxWidgets toolkit (default is auto)]), [], [withval="auto"]) dnl Show a message to the user about this option AC_MSG_CHECKING([for the --with-toolkit option]) if test "$withval" = "auto" ; then AC_MSG_RESULT([will be automatically detected]) TOOLKIT="" else TOOLKIT="$withval" dnl PORT must be one of the allowed values if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a "$TOOLKIT" != "gtk3" -a \ "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \ "$TOOLKIT" != "osx_carbon" -a "$TOOLKIT" != "osx_cocoa" -a \ "$TOOLKIT" != "dfb" -a "$TOOLKIT" != "x11" -a "$TOOLKIT" != "base"; then AC_MSG_ERROR([ Unrecognized option value (allowed values: auto, gtk1, gtk2, gtk3, msw, motif, osx_carbon, osx_cocoa, dfb, x11, base) ]) fi AC_MSG_RESULT([$TOOLKIT]) fi ]) dnl ****** IMPORTANT ******* dnl Unlike for the UNICODE setting, you can build your program in dnl shared mode against a static build of wxWidgets. Thus we have the dnl following option which allows these mixtures. E.g. dnl dnl ./configure --disable-shared --with-wxshared dnl dnl will build your library in static mode against the first available dnl shared build of wxWidgets. dnl dnl Note that's not possible to do the viceversa: dnl dnl ./configure --enable-shared --without-wxshared dnl dnl Doing so you would try to build your library in shared mode against a static dnl build of wxWidgets. This is not possible (you would mix PIC and non PIC code) ! dnl A check for this combination of options is in WX_DETECT_STANDARD_OPTION_VALUES dnl (where we know what 'auto' should be expanded to). dnl dnl If you try to build something in ANSI mode against a UNICODE build dnl of wxWidgets or in RELEASE mode against a DEBUG build of wxWidgets, dnl then at best you'll get ton of linking errors ! dnl ************************ ifelse(index([$1], [wxshared]), [-1],, [ WX_ARG_WITH_YESNOAUTO( [wxshared], [WX_SHARED], [Force building against a shared build of wxWidgets, even if --disable-shared is given], [auto], [], [1]) ]) dnl Just like for SHARED and WX_SHARED it may happen that some adventurous dnl peoples will want to mix a wxWidgets release build with a debug build of dnl his app/lib. So, we have both DEBUG and WX_DEBUG variables. ifelse(index([$1], [wxdebug]), [-1],, [ WX_ARG_WITH_YESNOAUTO( [wxdebug], [WX_DEBUG], [Force building against a debug build of wxWidgets, even if --disable-debug is given], [auto], [], [1]) ]) dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-wxversion since it's an option dnl which accepts the "auto|2.6|2.7|2.8|2.9|3.0" etc etc values ifelse(index([$1], [wxversion]), [-1],, [ AC_ARG_WITH([wxversion], AC_HELP_STRING([--with-wxversion], [Build against a specific version of wxWidgets (default is auto)]), [], [withval="auto"]) dnl Show a message to the user about this option AC_MSG_CHECKING([for the --with-wxversion option]) if test "$withval" = "auto" ; then AC_MSG_RESULT([will be automatically detected]) WX_RELEASE="" else wx_requested_major_version=`echo $withval | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\1/'` wx_requested_minor_version=`echo $withval | \ sed 's/\([[0-9]]*\).\([[0-9]]*\).*/\2/'` dnl both vars above must be exactly 1 digit if test "${#wx_requested_major_version}" != "1" -o \ "${#wx_requested_minor_version}" != "1" ; then AC_MSG_ERROR([ Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9, 3.0) ]) fi WX_RELEASE="$wx_requested_major_version"".""$wx_requested_minor_version" AC_MSG_RESULT([$WX_RELEASE]) fi ]) if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[[dbg]] DEBUG: $DEBUG, WX_DEBUG: $WX_DEBUG" echo "[[dbg]] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE" echo "[[dbg]] SHARED: $SHARED, WX_SHARED: $WX_SHARED" echo "[[dbg]] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT" echo "[[dbg]] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE" fi ]) dnl --------------------------------------------------------------------------- dnl WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS dnl dnl Sets the WXCONFIG_FLAGS string using the SHARED,DEBUG,UNICODE variable values dnl which were specified. dnl Thus this macro needs to be called only once all options have been set. dnl --------------------------------------------------------------------------- AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS], [ if test "$WX_SHARED" = "1" ; then WXCONFIG_FLAGS="--static=no " elif test "$WX_SHARED" = "0" ; then WXCONFIG_FLAGS="--static=yes " fi if test "$WX_DEBUG" = "1" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=yes " elif test "$WX_DEBUG" = "0" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--debug=no " fi dnl The user should have set WX_UNICODE=UNICODE if test "$WX_UNICODE" = "1" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=yes " elif test "$WX_UNICODE" = "0" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--unicode=no " fi if test -n "$TOOLKIT" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT " fi if test -n "$WX_RELEASE" ; then WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE " fi dnl strip out the last space of the string WXCONFIG_FLAGS=${WXCONFIG_FLAGS% } if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[[dbg]] WXCONFIG_FLAGS: $WXCONFIG_FLAGS" fi ]) dnl --------------------------------------------------------------------------- dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG]) dnl dnl Sets WX_$RESULTVAR to the value of $RESULTVAR if it's defined. Otherwise, dnl auto-detect the value by checking for the presence of STRING in dnl $WX_SELECTEDCONFIG (which is supposed to be set by caller) and set dnl WX_$RESULTVAR to either 0 or 1, also outputting "yes" or "no" after MSG. dnl --------------------------------------------------------------------------- AC_DEFUN([_WX_SELECTEDCONFIG_CHECKFOR], [ if test -z "$$1" ; then dnl The user does not have particular preferences for this option; dnl so we will detect the wxWidgets relative build setting and use it AC_MSG_CHECKING([$3]) dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2 dnl string or to 0 otherwise. dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it dnl doesn't work; we use 'expr STRING : REGEXP' instead WX_$1=$(expr "$WX_SELECTEDCONFIG" : ".*$2.*") if test "$WX_$1" != "0"; then WX_$1=1 AC_MSG_RESULT([yes]) else WX_$1=0 AC_MSG_RESULT([no]) fi else dnl Use the setting given by the user WX_$1=$$1 fi ]) dnl --------------------------------------------------------------------------- dnl WX_DETECT_STANDARD_OPTION_VALUES dnl dnl Detects the values of the following variables: dnl 1) WX_RELEASE dnl 2) WX_UNICODE dnl 3) WX_DEBUG dnl 4) WX_SHARED (and also WX_STATIC) dnl 5) WX_PORT dnl from the previously selected wxWidgets build; this macro in fact must be dnl called *after* calling the WX_CONFIG_CHECK macro. dnl dnl Note that the WX_VERSION_MAJOR, WX_VERSION_MINOR symbols are already set dnl by WX_CONFIG_CHECK macro dnl --------------------------------------------------------------------------- AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], [ dnl IMPORTANT: WX_VERSION contains all three major.minor.micro digits, dnl while WX_RELEASE only the major.minor ones. WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR" if test $WX_RELEASE -lt 26 ; then AC_MSG_ERROR([ Cannot detect the wxWidgets configuration for the selected wxWidgets build since its version is $WX_VERSION < 2.6.0; please install a newer version of wxWidgets. ]) fi dnl The wx-config we are using understands the "--selected_config" dnl option which returns an easy-parseable string ! WX_SELECTEDCONFIG=$($WX_CONFIG_WITH_ARGS --selected_config) if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[[dbg]] Using wx-config --selected-config" echo "[[dbg]] WX_SELECTEDCONFIG: $WX_SELECTEDCONFIG" fi dnl we could test directly for WX_SHARED with a line like: dnl _WX_SELECTEDCONFIG_CHECKFOR([SHARED], [shared], dnl [if wxWidgets was built in SHARED mode]) dnl but wx-config --selected-config DOES NOT outputs the 'shared' dnl word when wx was built in shared mode; it rather outputs the dnl 'static' word when built in static mode. if test "$WX_SHARED" = "1"; then STATIC=0 elif test "$WX_SHARED" = "0"; then STATIC=1 fi dnl Now set the WX_UNICODE, WX_DEBUG, WX_STATIC variables _WX_SELECTEDCONFIG_CHECKFOR([UNICODE], [unicode], [if wxWidgets was built with UNICODE enabled]) _WX_SELECTEDCONFIG_CHECKFOR([DEBUG], [debug], [if wxWidgets was built in DEBUG mode]) _WX_SELECTEDCONFIG_CHECKFOR([STATIC], [static], [if wxWidgets was built in STATIC mode]) dnl init WX_SHARED from WX_STATIC if test "$WX_STATIC" != "0"; then WX_SHARED=0 else WX_SHARED=1 fi AC_SUBST(WX_UNICODE) AC_SUBST(WX_DEBUG) AC_SUBST(WX_SHARED) dnl detect the WX_PORT to use if test -z "$TOOLKIT" ; then dnl The user does not have particular preferences for this option; dnl so we will detect the wxWidgets relative build setting and use it AC_MSG_CHECKING([which wxWidgets toolkit was selected]) WX_GTKPORT1=$(expr "$WX_SELECTEDCONFIG" : ".*gtk1.*") WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*") WX_GTKPORT3=$(expr "$WX_SELECTEDCONFIG" : ".*gtk3.*") WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*") WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*") WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*") WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*") WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*") WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*") WX_BASEPORT=$(expr "$WX_SELECTEDCONFIG" : ".*base.*") WX_PORT="unknown" if test "$WX_GTKPORT1" != "0"; then WX_PORT="gtk1"; fi if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi if test "$WX_GTKPORT3" != "0"; then WX_PORT="gtk3"; fi if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi if test "$WX_BASEPORT" != "0"; then WX_PORT="base"; fi dnl NOTE: backward-compatible check for wx2.8; in wx2.9 the mac dnl ports are called 'osx_cocoa' and 'osx_carbon' (see above) WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*") if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi dnl check at least one of the WX_*PORT has been set ! if test "$WX_PORT" = "unknown" ; then AC_MSG_ERROR([ Cannot detect the currently installed wxWidgets port ! Please check your 'wx-config --cxxflags'... ]) fi AC_MSG_RESULT([$WX_PORT]) else dnl Use the setting given by the user WX_PORT=$TOOLKIT fi AC_SUBST(WX_PORT) if test "$WX_DEBUG_CONFIGURE" = "1"; then echo "[[dbg]] Values of all WX_* options after final detection:" echo "[[dbg]] WX_DEBUG: $WX_DEBUG" echo "[[dbg]] WX_UNICODE: $WX_UNICODE" echo "[[dbg]] WX_SHARED: $WX_SHARED" echo "[[dbg]] WX_RELEASE: $WX_RELEASE" echo "[[dbg]] WX_PORT: $WX_PORT" fi dnl Avoid problem described in the WX_STANDARD_OPTIONS which happens when dnl the user gives the options: dnl ./configure --enable-shared --without-wxshared dnl or just do dnl ./configure --enable-shared dnl but there is only a static build of wxWidgets available. if test "$WX_SHARED" = "0" -a "$SHARED" = "1"; then AC_MSG_ERROR([ Cannot build shared library against a static build of wxWidgets ! This error happens because the wxWidgets build which was selected has been detected as static while you asked to build $PACKAGE_NAME as shared library and this is not possible. Use the '--disable-shared' option to build $PACKAGE_NAME as static library or '--with-wxshared' to use wxWidgets as shared library. ]) fi dnl now we can finally update the options to their final values if they dnl were not already set if test -z "$UNICODE" ; then UNICODE=$WX_UNICODE fi if test -z "$SHARED" ; then SHARED=$WX_SHARED fi if test -z "$TOOLKIT" ; then TOOLKIT=$WX_PORT fi dnl respect the DEBUG variable adding the optimize/debug flags and also dnl define a BUILD variable in case the user wants to use it dnl dnl NOTE: the CXXFLAGS are merged together with the CPPFLAGS so we dnl don't need to set them, too dnl DH: I've fixed this section to prepend flags to avoid clobbering user-supplied values; dnl DH: Added a -g to release builds dnl DH: Applied release flags even when $DEBUG is undefined as (to prevent duplication) I prevent automake from using its ones if test "$DEBUG" = "1"; then BUILD="debug" CXXFLAGS="-g -O0 $CXXFLAGS" CFLAGS="-g -O0 $CFLAGS" elif test "$DEBUG" = "0" || test -z "$DEBUG"; then BUILD="release" CXXFLAGS="-g -O2 $CXXFLAGS" CFLAGS="-g -O2 $CFLAGS" fi ]) dnl --------------------------------------------------------------------------- dnl WX_BOOLOPT_SUMMARY([name of the boolean variable to show summary for], dnl [what to print when var is 1], dnl [what to print when var is 0]) dnl dnl Prints $2 when variable $1 == 1 and prints $3 when variable $1 == 0. dnl This macro mainly exists just to make configure.ac scripts more readable. dnl dnl NOTE: you need to use the [" my message"] syntax for 2nd and 3rd arguments dnl if you want that m4 avoid to throw away the spaces prefixed to the dnl argument value. dnl --------------------------------------------------------------------------- AC_DEFUN([WX_BOOLOPT_SUMMARY], [ if test "x$$1" = "x1" ; then echo $2 elif test "x$$1" = "x0" ; then echo $3 else echo "$1 is $$1" fi ]) dnl --------------------------------------------------------------------------- dnl WX_STANDARD_OPTIONS_SUMMARY_MSG dnl dnl Shows a summary message to the user about the WX_* variable contents. dnl This macro is used typically at the end of the configure script. dnl --------------------------------------------------------------------------- AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG], [ echo echo " The wxWidgets build which will be used by $PACKAGE_NAME $PACKAGE_VERSION" echo " has the following settings:" WX_BOOLOPT_SUMMARY([WX_DEBUG], [" - DEBUG build"], [" - RELEASE build"]) WX_BOOLOPT_SUMMARY([WX_UNICODE], [" - UNICODE mode"], [" - ANSI mode"]) WX_BOOLOPT_SUMMARY([WX_SHARED], [" - SHARED mode"], [" - STATIC mode"]) echo " - VERSION: $WX_VERSION" echo " - PORT: $WX_PORT" ]) dnl --------------------------------------------------------------------------- dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN, WX_STANDARD_OPTIONS_SUMMARY_MSG_END dnl dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info dnl about the configuration of the package which used the wxpresets. dnl dnl Typical usage: dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN dnl echo " - Package setting 1: $SETTING1" dnl echo " - Package setting 2: $SETTING1" dnl ... dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_END dnl dnl --------------------------------------------------------------------------- AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN], [ echo echo " ----------------------------------------------------------------" echo " Configuration for $PACKAGE_NAME $PACKAGE_VERSION successfully completed." echo " Summary of main configuration settings for $PACKAGE_NAME:" WX_BOOLOPT_SUMMARY([DEBUG], [" - DEBUG build"], [" - RELEASE build"]) WX_BOOLOPT_SUMMARY([UNICODE], [" - UNICODE mode"], [" - ANSI mode"]) WX_BOOLOPT_SUMMARY([SHARED], [" - SHARED mode"], [" - STATIC mode"]) ]) AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG_END], [ WX_STANDARD_OPTIONS_SUMMARY_MSG echo echo " Now, just run make." echo " ----------------------------------------------------------------" echo ]) dnl --------------------------------------------------------------------------- dnl Deprecated macro wrappers dnl --------------------------------------------------------------------------- AC_DEFUN([AM_OPTIONS_WXCONFIG], [WX_CONFIG_OPTIONS]) AC_DEFUN([AM_PATH_WXCONFIG], [ WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5]) ]) AC_DEFUN([AM_PATH_WXRC], [WXRC_CHECK([$1],[$2])]) ./4pane-6.0/.build/DONT_README0000644000175000017500000000051713205575137014357 0ustar daviddavidThis is how to regenerate the 4Pane build setup. It's highly unlikely that you'll need to do so (thus the name of this file, which you ignored). But if that unlikelihood occurs, the easy way is to run the autogen.sh script which is in this dir. You'll need to have automake installed. Then proceed as normal with ./configure and make./4pane-6.0/.build/4Pane.m40000644000175000017500000001620013205575137014060 0ustar daviddaviddnl --------------------------------------------------------------------------- dnl FP_GETARG_ENABLE dnl dnl Macro arguments: dnl $1 = the name of the --enable feature dnl $2 = the name of the variable associated dnl $3 = the description of that feature dnl $4 = the default value for that feature dnl $5 = additional action to do in case option is given with "yes" value dnl --------------------------------------------------------------------------- AC_DEFUN([FP_GETARG_ENABLE], [AC_ARG_ENABLE($1, AC_HELP_STRING([--enable-$1], [$3 (default is $4)]), [], [enableval="$4"]) if test "$enableval" = "no" || test "$enableval" = "disable" ; then dnl Show a message to the user about this option AC_MSG_CHECKING([for the --enable-$1 option]) AC_MSG_RESULT([disable both install and uninstall]) $2=no AM_CONDITIONAL([AMINSTALL_$1], [false]) AM_CONDITIONAL([AMUNINSTALL_$1], [false]) elif test "$enableval" = "install_only" ; then AC_MSG_CHECKING([for the --enable-$1 option]) AC_MSG_RESULT([disable uninstall only]) $2=install_only AM_CONDITIONAL([AMINSTALL_$1], [true]) AM_CONDITIONAL([AMUNINSTALL_$1], [false]) elif test "$enableval" = "uninstall_only" ; then AC_MSG_CHECKING([for the --enable-$1 option]) AC_MSG_RESULT([disable install only]) $2=uninstall_only AM_CONDITIONAL([AMINSTALL_$1], [false]) AM_CONDITIONAL([AMUNINSTALL_$1], [true]) else dnl Anything else is install both. No need to burble about it $2=yes AM_CONDITIONAL([AMINSTALL_$1], [true]) AM_CONDITIONAL([AMUNINSTALL_$1], [true]) $5 fi ]) dnl --------------------------------------------------------------------------- dnl FP_BZIP2_CHECK($BZIP2) dnl Should we use the system bzip2 headers/lib or use our built-in versions dnl The default is built-in but, e.g. for packaging, allow to use system ones dnl --------------------------------------------------------------------------- AC_DEFUN([FP_BZIP2_CHECK], [AC_ARG_WITH([builtin_bzip2], AC_HELP_STRING([--with-builtin_bzip2, whether to use built-in support for bzip2 archive peeking (if no, requires the bzip2 headers to be installed)]), [], [withval=yes] ) AS_IF( [test "x$withval" = "xno"], [ dnl We don't want tar.bz2 streaming to use our built-in bzip. Check that the system headers are available AC_CHECK_HEADER([bzlib.h], [$1="-lbz2"], [AC_MSG_ERROR([the bzip2 headers are missing. You need to install them, or else configure --with-builtin_bzip2=yes])] ) AC_MSG_CHECKING([for --with-builtin_bzip2]) AC_MSG_RESULT([no]) AC_SUBST([BZIP2_FLAGS],[-DUSE_SYSTEM_BZIP2]) AM_CONDITIONAL([AMBUILTIN_BZIP], [false]) ], [ AC_MSG_CHECKING([for --with-builtin_bzip2]) AC_MSG_RESULT([yes]) AM_CONDITIONAL([AMBUILTIN_BZIP], [true]) $1="" ] ) ]) dnl --------------------------------------------------------------------------- dnl FP_LZMA_ARCHIVE_STREAMS($LIBLZMA) dnl Building 4Pane will fail if liblzma-dev/xz-devel isn't installed unless you dnl either pass -DNO_LZMA_ARCHIVE_STREAMS to 'make', or disable with this macro dnl --------------------------------------------------------------------------- AC_DEFUN([FP_LZMA_ARCHIVE_STREAMS], [AC_ARG_ENABLE([lzma_streams], AC_HELP_STRING([--enable-lzma_streams, whether to build with support for xz archive peeking (if yes, requires the xz/lzma headers to be installed)]), [], [enableval=yes] ) AS_IF( [test "x$enableval" != "xno" && test "x$enableval" != "xdisable"], [ dnl We want xz archive streaming support. Check that it's available AC_CHECK_HEADER([lzma.h], [$1="-llzma"], [AC_MSG_ERROR([the lzma headers are missing. You need to install them, or else configure --disable-lzma_streams])] ) ], [ AC_MSG_CHECKING([for the --enable-lzma_streams option]) AC_MSG_RESULT([disable]) AC_SUBST([XZFLAGS],[-DNO_LZMA_ARCHIVE_STREAMS]) $1="" ] ) ]) dnl --------------------------------------------------------------------------- dnl FP_CHECK_GTK_HEADERS dnl Check that the gtk2 or 3 headers exist dnl --------------------------------------------------------------------------- AC_DEFUN([FP_CHECK_GTK_HEADERS], [ dnl Try pkgconfig first AC_PATH_PROG(PKG_CONFIG, pkg-config, no) > /dev/null AS_IF([test x$PKG_CONFIG != xno], [if pkg-config --atleast-pkgconfig-version 0.7 ; then AS_IF([$PKG_CONFIG --exists gtk+-$1.0], [AC_MSG_CHECKING([for gtk$1 headers]) AC_MSG_RESULT([yes]) GTKPKG_CFLAGS=`$PKG_CONFIG --cflags gtk+-$1.0` AC_SUBST([GTKPKG_CFLAGS]) GTKPKG_LDFLAGS=`$PKG_CONFIG --libs gtk+-$1.0` AC_SUBST([GTKPKG_LDFLAGS]) ], [AC_MSG_ERROR([gtk headers not found. You probably need to install the devel package e.g. libgtk$1.0-dev])] ) fi ], [AC_MSG_ERROR([pkgconfig is missing. Please install it])] ) ]) dnl --------------------------------------------------------------------------- dnl FP_CONTROL_ASSERTS dnl Since wx3 wxAsserts are turned on by default even in release builds dnl so turn them off here. NB must be _after_ the WX_STANDARD_OPTIONS call dnl --------------------------------------------------------------------------- AC_DEFUN([FP_CONTROL_ASSERTS], AS_IF( [echo "$CXXFLAGS" | grep -q "O0"], [ : ], [ CFLAGS="$CFLAGS -DNDEBUG" CXXFLAGS="$CXXFLAGS -DNDEBUG" ] ) ) dnl --------------------------------------------------------------------------- dnl FP_DETECT_GETTEXT dnl Ensure msgfmt, part of the gettext package, is installed dnl --------------------------------------------------------------------------- AC_DEFUN([FP_DETECT_GETTEXT], msgfmt=`which msgfmt` AS_IF( [test -f "$msgfmt"], [ AM_CONDITIONAL([AMMSGFMT_AVAILABLE], [true]) AC_SUBST([MSGFMT],["$msgfmt"]) ], [ AM_CONDITIONAL([AMMSGFMT_AVAILABLE], [false]) [AC_MSG_WARN([gettext not installed on your system so translations will not be compiled.])] ] ) ) ./4pane-6.0/MyNotebook.cpp0000666000175000017500000006002613566743443014304 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: MyNotebook.cpp // Purpose: Notebook stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2019 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" #if defined (__WXGTK__) #include #endif #include "wx/notebook.h" #include "Configure.h" #include "Misc.h" #include "Redo.h" #include "Devices.h" #include "Bookmarks.h" #include "Accelerators.h" #include "MyFrame.h" #include "MyGenericDirCtrl.h" #include "MyDirs.h" #include "MyFiles.h" #include "MyNotebook.h" MyNotebook::MyNotebook(wxSplitterWindow *main, wxWindowID id, const wxPoint& pos, const wxSize& size, long style) : wxNotebook((wxWindow*)main, id, pos, size, style) { nextpageno = 0; TemplateNoThatsLoaded = -1; #if defined (__WXGTK__) #if !defined (__WXGTK3__) // I find the default tab-size too clunky. Removing the border improves them imho g_object_set (m_widget, "tab_vborder", (guint)false, NULL); // In >=2.7.0 gtk_notebook_set_tab_vborder is deprecated and so not available :( #endif #endif BookmarkMan = new Bookmarks; // Set up bookmarks DeleteLocation = new DirectoryForDeletions; // Set up the Deleted and Trash subdirs UnRedoMan = new UnRedoManager; // The sole instance of UnRedoManager UnRedoManager::frame = MyFrame::mainframe; // Tell UnRedoManager's (static) pointer where it is DeviceMan = new DeviceAndMountManager; // Organises things to do with mounting partitions & devices LaunchFromMenu = new LaunchMiscTools; // Launches user-defined external programs & scripts from the Tools menu } MyNotebook::~MyNotebook() { MyFrame::mainframe->SelectionAvailable = false; // We don't want any change-of-focus events causing a new write to the command line! delete LaunchFromMenu; delete DeviceMan; delete UnRedoMan; delete DeleteLocation; delete BookmarkMan; } void MyNotebook::LoadTabs(int TemplateNo /*=-1*/, const wxString& startdir0 /*=""*/, const wxString& startdir1 /*=""*/) // Load the default tabs, or if TemplateNo > -1, load that tab template { wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) return; wxString Path; if (TemplateNo >= 0) { Path.Printf(wxT("/Tabs/Template_%c/"), wxT('a') + TemplateNo); // If we're loading a template, adjust path approprately TemplateNoThatsLoaded = TemplateNo; // and optimistically store the template's no } else Path = wxT("/Tabs/"); long selectedpage = 0; if (TemplateNo == -1) // If we're not loading a tab template, load these user prefs. If it is, don't or it'll override { config->Read(Path + wxT("alwaysshowtabs"), &AlwaysShowTabs, 0); config->Read(Path + wxT("equalsizedtabs"), &EqualSizedTabs, 1); config->Read(Path + wxT("showcommandline"), &showcommandline, 0); config->Read(Path + wxT("showterminal"), &showterminal, 0); config->Read(Path + wxT("saveonexit"), &saveonexit, 0); config->Read(Path + wxT("selectedpage"), &selectedpage, 0); config->Read(wxT("/Tabs/NoOfExistingTemplates"), &NoOfExistingTemplates, 0); } long numberoftabs, tabdatano; // Now find the no of tab pages preferred, & load each with its correct tabdata. Default is 1, using tabdata 'a' config->Read(Path + wxT("numberoftabs"), &numberoftabs, 1); #if defined (__WXGTK__) ShowTabs(numberoftabs > 1 || AlwaysShowTabs); // Show the tab of each page if >1, or if user always wants to EqualWidthTabs(EqualSizedTabs); // Similarly equalise the tab-head width if requested #endif // We MUST Show the frame before creating the tabs // If not, & there's >1 tab loaded, the window construction gets confused & wxFindWindowAtPointer fails MyFrame::mainframe->Show(); wxString key, prefix(wxT("TabdataForPage_")); for (int n=0; n < numberoftabs; ++n) // Create the key for every page, from page_a to page_('a'+numberoftabs-1) { key.Printf(wxT("%c"), wxT('a') + n); // Make key hold a, b, c etc config->Read(Path+prefix+key, &tabdatano, 0); // Load the flavour of tabdata to use for this page if (!n) CreateTab(tabdatano, -1, TemplateNo, wxEmptyString, startdir0, startdir1); // Create this tab. Any user-provided startdir override should only be for page 0 else CreateTab(tabdatano, -1, TemplateNo); } size_t tab; if ((size_t)selectedpage < GetPageCount()) SetSelection(selectedpage); // Set the tab selection if (GetPageCount()) MyFrame::mainframe->SelectionAvailable = true; // Flags, eg to updateUI, that it's safe to use GetActivePane, because there's at least one pane for (tab=0; tab < GetPageCount(); ++tab) // We can now safely unhide the tabs GetPage(tab)->Show(); #if defined (__WXX11__) size_t count = GetPageCount(); // X11 has a strange bug, that means that the initially-selected page doesn't 'take' if (count > 1) // Instead you get the last never-selected tab's contents visible in each of the other tabs, until you change downwards { for (size_t n=0; n < count; ++n) SetSelection(n); // So Select every one first, then Select the correct one. This has to be done *after* the tabs are Show()n SetSelection(selectedpage); } #endif //WXX11 MyFrame::mainframe->GetMenuBar()->Check(SHCUT_SAVETABS_ONEXIT, saveonexit); // Set the menu item check according to bool DoLoadTemplateMenu(); // Get the correct no of loadable templates listed on the menu } void MyNotebook::DoLoadTemplateMenu() // Get the correct no of loadable templates listed on the menu { // Find the LoadTemplate menu wxMenuItem* p_menuitem = MyFrame::mainframe->GetMenuBar()->FindItem(LoadTabTemplateMenu); wxMenu* submenu = p_menuitem->GetSubMenu(); // Use this menuitem ptr to get ptr to submenu itself wxASSERT(submenu); for (size_t count=submenu->GetMenuItemCount(); count > 0; --count) // Get rid of all the entries in this menu, so that we don't duplicate them submenu->Destroy(submenu->GetMenuItems().Item(count-1)->GetData()); wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } NoOfExistingTemplates = wxMin(NoOfExistingTemplates, MAX_NO_TABS); // Sanity check, in case config has become corrupted for (int n=0; n < NoOfExistingTemplates; ++n) { wxString Path; Path.Printf(wxT("/Tabs/Template_%c/title"), wxT('a') + n); // Get path to this template wxString title; title.Printf(wxT("Template %c"), wxT('a') + n); // Make a default title to display config->Read(Path, &title); // Overwrite with the title that was previously chosen, if it exists submenu->Append(SHCUT_TABTEMPLATERANGE_START + n, title); // Append the title to the menu } } void MyNotebook::DeleteTemplate() // Delete an existing template { if (!NoOfExistingTemplates) return; wxConfigBase* config = wxConfigBase::Get(); if (config==NULL) { wxLogError(_("Couldn't load configuration!?")); return; } wxArrayString Choices; for (int n=0; n < NoOfExistingTemplates; ++n) { wxString Path; Path.Printf(wxT("/Tabs/Template_%c/title"), wxT('a') + n); // Get path to this template wxString title; title.Printf(wxT("Template %c"), wxT('a') + n); // Make a default title to display config->Read(Path, &title); // Overwrite with the title that was previously chosen, if it exists Choices.Add(title); // Add the title to the stringarray } int ans = wxGetSingleChoiceIndex(_("Which Template do you wish to Delete?"),_("Delete Template"), Choices); if (ans == wxID_CANCEL) return; if (!config->Exists( wxString::Format(wxT("/Tabs/Template_%c"), wxT('a') + ans) ) ) return; config->DeleteGroup( wxString::Format(wxT("/Tabs/Template_%c"), wxT('a') + ans) ); // if necessary, renumber to compensate for the deleted template config->SetPath(wxT("/Tabs")); for (int n=ans+1; n < NoOfExistingTemplates; ++n) config->RenameGroup( wxString::Format(wxT("Template_%c"), wxT('a') + n), wxString::Format(wxT("Template_%c"), wxT('a') + n-1) ); if (TemplateNoThatsLoaded >= 0) { if (TemplateNoThatsLoaded > ans) TemplateNoThatsLoaded--; // We've deleted a lower one, so we need to dec the currently-loaded marker to compensate else if (TemplateNoThatsLoaded == ans) TemplateNoThatsLoaded = -1; // If we've deleted the current-loaded template that's equivalent to saying there's none loaded } config->SetPath(wxT("/")); config->Write(wxT("/Tabs/NoOfExistingTemplates"), --NoOfExistingTemplates); // Dec & save template index config->Flush(); DoLoadTemplateMenu(); // Update loadable templates listed on the menu BriefMessageBox msg(wxT("Template Deleted"), AUTOCLOSE_TIMEOUT / 1000, _("Success")); } void MyNotebook::LoadTemplate(int TemplateNo) // Triggered by a menu event, loads the selected tab template { if (TemplateNo < 0 || TemplateNo >= MAX_NO_TABS) return; MyFrame::mainframe->SelectionAvailable = false; // Turn off UpdateUI for a while so we can safely . . . for (size_t n = GetPageCount(); n>0; --n) // Kill any existing tabs DeletePage(n-1); nextpageno = 0; // Reset the pageno count LoadTabs(TemplateNo); // Load the requested template } void MyNotebook::SaveAsTemplate() // Save the current tab setup as a template { if (TemplateNoThatsLoaded >=0 && TemplateNoThatsLoaded < MAX_NO_TABS) // Is there a template loaded? { wxString title, titlepath; titlepath.Printf(wxT("/Tabs/Template_%c/title"), wxT('a') + TemplateNoThatsLoaded); // If so, find its title wxConfigBase::Get()->Read(titlepath, &title); TabTemplateOverwriteDlg dlg; wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("TabTemplateOverwriteDlg")); // Ask if we want to overwrite this template, or SaveAs a different one if (!title.IsEmpty()) // If there is a title for this template, use it in the dlg { wxString msg; msg.Printf(wxT("There is a Template loaded, called %s"), title.c_str()); // Use title to correct the static message ((wxStaticText*)dlg.FindWindow(wxT("Static")))->SetLabel(msg); // Adjust the label to add the template name dlg.GetSizer()->Fit(&dlg); } else title.Printf(wxT("Template %c"), wxT('a') + TemplateNoThatsLoaded); // Otherwise create a default title int ans = dlg.ShowModal(); if (ans==wxID_CANCEL) { BriefMessageBox msg(_("Template Save cancelled"), AUTOCLOSE_TIMEOUT / 1000, _("Cancelled")); return; } if (ans==XRCID("Overwrite")) { SaveDefaults(TemplateNoThatsLoaded, title); // This should overwrite the current template BriefMessageBox msg(wxT("Template Overwritten"), AUTOCLOSE_TIMEOUT / 1000, _("Success")); return; } } // Otherwise SaveAs a new template, as though it wasn't one already // If there isn't a template loaded, or if we're falling through from above, save as new template wxString workingtitle; workingtitle.Printf(wxT("Template %c"), wxT('a') + NoOfExistingTemplates); wxString title = wxGetTextFromUser(_("What would you like to call this template?"), _("Choose a template label"), workingtitle); if (title.IsEmpty()) { BriefMessageBox msg(_("Save Template cancelled"), AUTOCLOSE_TIMEOUT / 1000, _("Cancelled")); return; } TemplateNoThatsLoaded = NoOfExistingTemplates++; wxConfigBase::Get()->Write(wxT("/Tabs/NoOfExistingTemplates"), NoOfExistingTemplates); // Inc & save template index wxConfigBase::Get()->Flush(); SaveDefaults(NoOfExistingTemplates-1, title); DoLoadTemplateMenu(); // Update loadable templates listed on the menu BriefMessageBox msg(wxT("Template Saved"), AUTOCLOSE_TIMEOUT / 1000, _("Success")); } void MyNotebook::SaveDefaults(int TemplateNo /*=-1*/, const wxString& title /*=wxT("")*/) { wxConfigBase* config = wxConfigBase::Get(); if (!config) return; int width, height; MyFrame::mainframe->GetSize(&width, &height); config->Write(wxT("/Misc/AppHeight"), (long)height); // Save 4Pane's initial size config->Write(wxT("/Misc/AppWidth"), (long)width); wxString Path; if (TemplateNo >= 0) { Path.Printf(wxT("/Tabs/Template_%c/"), wxT('a') + TemplateNo); // If we're saving a template, adjust path approprately config->Write(Path + wxT("title"), title); // Save the title by which this template will be known (default is 'Template a' etc) } else Path = wxT("/Tabs/"); config->Write(Path + wxT("showcommandline"), MyFrame::mainframe->Layout->CommandlineShowing); config->Write(Path + wxT("showterminal"), MyFrame::mainframe->Layout->EmulatorShowing); if ( MyFrame::mainframe->Layout->EmulatorShowing) config->Write(Path + "terminalheight", MyFrame::mainframe->Layout->bottompanel->GetSize().GetHeight()); config->Write(Path + wxT("saveonexit"), saveonexit); config->Write(Path + wxT("selectedpage"), GetSelection()); if (TemplateNo < 0) // Don't save these settings for templates, otherwise loading a tab template would (unexpectedly) override the user's current choices { config->Write(Path + wxT("alwaysshowtabs"), AlwaysShowTabs); config->Write(Path + wxT("equalsizedtabs"), EqualSizedTabs); } long numberoftabs = GetPageCount(); config->Write(Path + wxT("numberoftabs"), numberoftabs); // Save the no of tabs displayed wxString key, prefix(wxT("TabdataForPage_")); for (int n=0; n < numberoftabs; ++n) // Create the key for every page, from page_a to page_('a'+numberoftabs-1) { key.Printf(wxT("%c"), wxT('a') + n); // Make key hold a, b, c etc MyTab* tab = (MyTab*)GetPage(n); config->Write(Path+prefix+key, n); // Save the type of tabdata to use for this page tab->StoreData(n); // Tell the tab to update its tabdata with the current settings tab->tabdata->Save(n, TemplateNo); // Now tell tabdata to save itself } config->Flush(); } void MyNotebook::CreateTab(int tabtype /*=0*/, int after /*= -1*/, int TemplateNo /*=-1*/, const wxString& pgName /*=""*/, const wxString& startdir0 /*=""*/, const wxString& startdir1 /*=""*/) { if (GetPageCount() >= (size_t)MAX_NO_TABS) { wxLogError(_("Sorry, the maximum number of tabs are already open.")); return; } wxString pageName(pgName); // Add panel as notebook page wxPanel* page = new MyTab(this, -1, tabtype, TemplateNo, pageName, startdir0, startdir1); // Create the 'paper' of the new page if (pageName.IsEmpty()) pageName = ((MyTab*)page)->tabdata->tabname; // The tab may have come with a previously-saved name if (pageName.IsEmpty()) pageName.Printf(wxT("Page %u"), nextpageno+1); // If not, & there isn't one offered by the caller, invent a sensible name if (after == -1) // -1 flags to append, not insert { if (AddPage(page, pageName, true)) ++nextpageno; else return; // If page couldn't be created, bug out } else // else Insert it { if (InsertPage(after, page, pageName, true)) ++nextpageno; else return; // If page couldn't be created, bug out } } void MyNotebook::AppendTab() { CreateTab(GetPageCount()); // By passing GetPageCount(), the correct tabdata should be used SetSelection(GetPageCount() - 1); // Select it #if defined (__WXGTK__) ShowTabs(GetPageCount() > 1 || AlwaysShowTabs); // Show the tab of each page if now >1, or if user always wants to #endif MyFrame::mainframe->SelectionAvailable = true; // Flags, eg to updateUI, that it's safe to use GetActivePane, because there's at least one pane } void MyNotebook::InsertTab() { if (!GetPageCount()) return AppendTab(); // If there isn't a page yet, we can't very well insert int page = GetSelection(); // We're trying to insert after the selected tab, so find it if (page == -1) return; // If it's invalid, abort CreateTab(page+1, page+1); // Use CreateTab to do the creation SetSelection(page+1); // Select the new tab #if defined (__WXGTK__) ShowTabs(GetPageCount() > 1 || AlwaysShowTabs); // Show the tab of each page if now >1, or if user always wants to #endif } void MyNotebook::DelTab() { int page = GetSelection(); // We're trying to delete the selected tab, so find it if (page != -1) DeletePage(page); // -1 would have meant no selection, so presumably the notebook is empty #if defined (__WXGTK__) ShowTabs(GetPageCount() > 1 || AlwaysShowTabs); // Show the tab of each page if now >1, or if user always wants to #endif if (!GetPageCount()) MyFrame::mainframe->SelectionAvailable = false; // If we've just deleted the only tab, tell the frame } void MyNotebook::DuplicateTab() { int page = GetSelection(); // We're trying to insert after the selected tab, so find it if (page == -1) return; // If it's not valid, take fright // The rest is a cut-down, amended version of CreateTab() if (GetPageCount() >= (size_t)MAX_NO_TABS) { wxLogError(_("Sorry, the maximum number of tabs are already open.")); return; } wxString pageName(GetPageText(page)); // Get the name of the tab we're duplicating pageName += _(" again"); // Derive from it an exciting new name MyTab* currenttab = (MyTab*)GetPage(page); // Find current tab currenttab->StoreData(currenttab->tabdatanumber); // Tell it to update its tabdata with the current settings Tabdata* oldtabdata = currenttab->tabdata; // Get the tabdata to be copied // Add panel as notebook page wxPanel *duppage = new MyTab(oldtabdata, this, -1, -1, pageName); // Create the 'paper' of the new page, using the copyctor version ((MyTab*)duppage)->tabdatanumber = currenttab->tabdatanumber; if (InsertPage(page + 1, duppage, pageName, true)) { duppage->Show(); SetSelection(page+1); ++nextpageno; } // Insert, Select & Show it #if defined (__WXGTK__) ShowTabs(true); // Show the tab heads now, as by definition there must be >1 tab #endif } void MyNotebook::OnSelChange(wxNotebookEvent& event) { int page = event.GetSelection(); if (page==-1) return; // Find the new page index MyTab* tab = (MyTab*)GetPage(page); MyGenericDirCtrl* activepane = tab->GetActivePane(); // & thence the active pane if (!activepane) return; wxString path = activepane->GetPath(); activepane->DisplaySelectionInTBTextCtrl(path); // So we can now set the TBTextCtrl MyFrame::mainframe->Layout->OnChangeDir(path); // & the Terminal etc if necessary // Now make sure there's a highlit pane, ideally the correct one. And just one, so kill all highlights first, then set the active one tab->SwitchOffHighlights(); wxFocusEvent sfe(wxEVT_SET_FOCUS); activepane->GetTreeCtrl()->GetEventHandler()->AddPendingEvent(sfe); } void MyNotebook::ShowContextMenu(wxContextMenuEvent& event) { wxPoint pt = ScreenToClient(wxGetMousePosition()); #if defined (__WXX11__) int page = GetSelection(); if (page == wxNOT_FOUND) return; #else int page = HitTest(pt, NULL); if (page == wxNOT_FOUND) return; if (page != GetSelection()) SetSelection(page); // This wasn't needed in earlier versions, as the rt-click used to change the selection before the contextmenu event arrived #endif int shortcuts[] = { SHCUT_NEWTAB, SHCUT_DELTAB, SHCUT_INSERTTAB, wxID_SEPARATOR, SHCUT_RENAMETAB, SHCUT_DUPLICATETAB #if defined (__WXGTK__) ,wxID_SEPARATOR, SHCUT_ALWAYS_SHOW_TAB, SHCUT_SAME_TEXTSIZE_TAB #endif }; wxMenu menu; MyFrame::mainframe->AccelList->AddToMenu(menu, shortcuts[0], _("&Append Tab")); // Do SHCUT_NEWTAB separately, as it makes more sense here to call it Append for (size_t n=1; n < sizeof(shortcuts)/sizeof(int); ++n) MyFrame::mainframe->AccelList->AddToMenu(menu, shortcuts[n], wxEmptyString, (n > 6 ? wxITEM_CHECK : wxITEM_NORMAL)); #if defined (__WXGTK__) menu.Check(SHCUT_ALWAYS_SHOW_TAB, AlwaysShowTabs); menu.Check(SHCUT_SAME_TEXTSIZE_TAB, EqualSizedTabs); #endif menu.SetTitle(wxT("Tab Menu")); // This doesn't seem to work with wxGTK-2.4.2, but no harm leaving it in! PopupMenu(&menu, pt.x, pt.y); } void MyNotebook::RenameTab() { int page = GetSelection(); // Find which tab we're supposed to be renaming if (page == -1) return; wxString text = wxGetTextFromUser(_("What would you like to call this tab?"),_("Change tab title")); if (text.IsEmpty()) return; // as it will be if the user Cancelled, or was just playing silly-buggers SetPageText(page, text); MyTab* tab = (MyTab*)GetPage(page); tab->tabdata->tabname = text; // Since this is a user-chosen name, store it in case the settings are to be saved } wxString MyNotebook::CreateUniqueTabname() const { const static int enormous = 1000; int largest(0); for (size_t n = 0; n < GetPageCount(); ++n) { wxString name = GetPageText(n); wxString num; long li; name.StartsWith(wxT("Page "), &num); if (num.ToLong(&li)) largest = wxMax(largest, li); } for (int n = GetPageCount(); n < enormous; ++n) { if (n > largest) { wxString name = wxString::Format(wxT("Page %i"), n); return name; } } return wxString::Format(wxT("Page %zu"), GetPageCount()+1); // We've exceeded the enormous int, presumably because someone renamed to 'Page 2345', so default to 'Page ' } #if defined (__WXGTK__) void MyNotebook::OnLeftDown(wxMouseEvent& event) { // Recent gtks have refused to change the selection on a mouse-click unless the notebook had focus // This is probably because of lots of other focus/child-focus events delaying things // So do it here too. It doesn't seem to do any harm wxPoint pt = ScreenToClient(wxGetMousePosition()); int page = HitTest(pt, NULL); if (page == wxNOT_FOUND) return; if (page != GetSelection()) SetSelection(page); event.Skip(); } void MyNotebook::OnAlwaysShowTab(wxCommandEvent& WXUNUSED(event)) { AlwaysShowTabs = !AlwaysShowTabs; wxConfigBase::Get()->Write(wxT("Tabs/alwaysshowtabs"), AlwaysShowTabs); ShowTabs(GetPageCount() > 1 || AlwaysShowTabs); } void MyNotebook::ShowTabs(bool show_tabs) { gtk_notebook_set_show_tabs(GTK_NOTEBOOK(m_widget), (gboolean) show_tabs); } void MyNotebook::EqualWidthTabs(bool equal_tabs) { #if !defined (__WXGTK3__) g_object_set (m_widget, "homogeneous", (gboolean)equal_tabs, NULL); // In 2.7.0 gtk_notebook_set_homogeneous_tabs is deprecated and so not available :( wxConfigBase::Get()->Write(wxT("Tabs/equalsizedtabs"), equal_tabs); #endif } #endif // defined __WXGTK__ BEGIN_EVENT_TABLE(MyNotebook,wxNotebook) EVT_MENU(SHCUT_NEWTAB, MyNotebook::OnAppendTab) EVT_MENU(SHCUT_INSERTTAB, MyNotebook::OnInsTab) EVT_MENU(SHCUT_DELTAB, MyNotebook::OnDelTab) EVT_MENU(SHCUT_RENAMETAB, MyNotebook::OnRenTab) EVT_MENU(SHCUT_DUPLICATETAB, MyNotebook::OnDuplicateTab) EVT_MENU_RANGE(SHCUT_PREVIOUS_TAB,SHCUT_NEXT_TAB, MyNotebook::OnAdvanceSelection) #if defined (__WXGTK__) EVT_MENU(SHCUT_ALWAYS_SHOW_TAB, MyNotebook::OnAlwaysShowTab) EVT_MENU(SHCUT_SAME_TEXTSIZE_TAB, MyNotebook::OnSameTabSize) EVT_LEFT_DOWN(MyNotebook::OnLeftDown) #endif EVT_NOTEBOOK_PAGE_CHANGED(-1, MyNotebook::OnSelChange) EVT_LEFT_DCLICK(MyNotebook::OnButtonDClick) #if defined (__WXX11__) EVT_RIGHT_UP(MyNotebook::OnRightUp) // EVT_CONTEXT_MENU doesn't seem to work in X11 #endif EVT_CONTEXT_MENU(MyNotebook::ShowContextMenu) END_EVENT_TABLE() //----------------------------------------------------------------------------------------------------------------------- ./4pane-6.0/Mounts.h0000644000175000017500000001475613205575137013146 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Mounts.h // Purpose: Mounting partitions // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef MOUNTSH #define MOUNTSH #include "wx/wx.h" class MountPartitionDialog : public wxDialog // Select partition & mount-point { public: MountPartitionDialog(){} bool Init(DeviceAndMountManager* dad, wxString device = wxEmptyString); wxComboBox* PartitionsCombo; wxTextCtrl* FstabMountptTxt; wxComboBox* MountptCombo; protected: void OnBrowseButton(wxCommandEvent& event); void OnButtonPressed(wxCommandEvent& event){ if (event.GetId() == wxID_OK) SaveMountptHistory(); EndModal(event.GetId()); } void OnSelectionChanged(wxCommandEvent& WXUNUSED(event)){ DisplayMountptForPartition(); } void DisplayMountptForPartition(bool GetDataFromMtab=false); // This enters the correct mountpt for the selected partition, in the fstab version of the dialog void LoadMountptHistory() const; void SaveMountptHistory() const; DeviceAndMountManager* parent; wxString historypath; private: DECLARE_EVENT_TABLE() }; class MountSshfsDlg : public MountPartitionDialog { struct SshfsNetworkStruct { wxString user; // Holds the remote username wxString hostname; wxString remotedir; // Holds any non-default remote 'root' dir wxString localmtpt; // Holds any local mountpt bool idmap; bool readonly; wxString otheroptions; SshfsNetworkStruct(const wxString& u, const wxString& h, const wxString& rm, const wxString& lm, bool map, bool ro, const wxString& o) : user(u), hostname(h), remotedir(rm), localmtpt(lm), idmap(map), readonly(ro), otheroptions(o) {} bool IsEqualTo(const SshfsNetworkStruct* s) const // Only compare the combo data: we don't want duplicates of these just because of e.g. a readonly mount { return ((user==s->user) && (hostname==s->hostname) && (remotedir==s->remotedir)); } }; WX_DEFINE_ARRAY(SshfsNetworkStruct*, ArrayofSshfsNetworkStructs); public: MountSshfsDlg(){} bool Init(); wxComboBox* UserCombo; wxComboBox* HostnameCombo; wxComboBox* RemotedirCombo; wxCheckBox* Idmap; wxCheckBox* Readonly; wxTextCtrl* OtherOptions; protected: void OnSelectionChanged(wxCommandEvent& event); void OnOK(wxCommandEvent& event); void OnOKUpdateUI(wxUpdateUIEvent& event); ArrayofSshfsNetworkStructs SshfsHistory; }; class MountSambaDialog : public MountPartitionDialog { public: MountSambaDialog(){} ~MountSambaDialog(){ ClearNetworkArray(); } bool Init(); void OnUpdateUI(wxUpdateUIEvent& event); wxComboBox* IPCombo; wxComboBox* HostnameCombo; wxComboBox* SharesCombo; wxTextCtrl* Username; wxRadioBox* RwRadio; wxTextCtrl* Password; wxStaticText* AlreadyMounted; bool InFstab, IsMounted; wxString AtMountPt, FstabMt; // These hold data for any share that is in fstab, and/or is already mounted protected: bool FindData(); void GetFstabShares(); bool GetSharesForServer(wxArrayString& array, wxString& hostname, bool findprinters = false); // Return hostname's available shares void LoadSharesForThisServer(int sel); // Fill the relevant combo with available shares for the displayed server void GetMountptForShare(); // Enter into MountptTxt any known mountpoint for the selection in SharesCombo void OnSelectionChanged(wxCommandEvent& event); void ClearNetworkArray(){ for (int n = (int)NetworkArray.GetCount(); n > 0; --n ) { NetworkStruct* item = NetworkArray.Item(n-1); delete item; NetworkArray.RemoveAt(n-1);} } ArrayofNetworkStructs NetworkArray; private: DECLARE_EVENT_TABLE() }; class MountLoopDialog : public MountSambaDialog // For mounting iso-images { public: MountLoopDialog(){} bool Init(); wxTextCtrl* ImageTxt; protected: void OnIsoBrowseButton(wxCommandEvent& event); void OnSelectionChanged(wxCommandEvent& WXUNUSED(event)){ DisplayMountptForImage(); } void DisplayMountptForImage(); // This enters the correct mountpt for the selected Image if it's in fstab private: DECLARE_EVENT_TABLE() }; class MountNFSDialog : public MountSambaDialog { public: MountNFSDialog(){} bool Init(); wxRadioBox* MounttypeRadio; // Hard or soft protected: bool FindData(); // Query the network to find NFS servers void GetFstabShares(); // But check in /etc/fstab first void OnAddServerButton(wxCommandEvent& event); void LoadExportsForThisServer(int sel); // Fill the relevant combo with available exports for the displayed server bool GetExportsForServer(wxArrayString& exports, wxString& server); // Return server's available exports void OnSelectionChanged(wxCommandEvent& event); void OnGetMountptForShare(wxCommandEvent& WXUNUSED(event)){ GetMountptForShare(); } void GetMountptForShare(); // Enter into MountptTxt any known mountpoint for the selection in SharesCombo void SaveIPAddresses() const; private: DECLARE_EVENT_TABLE() }; class UnMountPartitionDialog : public MountPartitionDialog // Unmount a mounted partition { public: UnMountPartitionDialog(){} void Init(DeviceAndMountManager* dad); // Everything else uses the base class methods & variables. Init is different as it enters the Mounted partitions, not the unmounted }; class UnMountSambaDialog : public MountPartitionDialog // Unmount a network mount { enum MtType { MT_invalid = -1, MT_nfs, MT_sshfs, MT_samba }; public: UnMountSambaDialog(){} ~UnMountSambaDialog(){ for (int n=(int)Mntarray.GetCount(); n > 0; --n) { PartitionStruct* item = Mntarray.Item(n-1); delete item; Mntarray.RemoveAt(n-1); } } size_t Init(); void DisplayMountptForShare(); // Show mountpt corresponding to a share or export void OnSelectionChanged(wxCommandEvent& WXUNUSED(event)){ DisplayMountptForShare(); } void SearchForNetworkMounts(); // Scans mtab for established NFS & samba mounts bool IsNfs() const { return m_Mounttype == MT_nfs; } bool IsSshfs() const { return m_Mounttype == MT_sshfs; } bool IsSamba() const { return m_Mounttype == MT_samba; } protected: enum MtType ParseNetworkFstype(const wxString& type) const; // Is this a mount that we're interested in: nfs, sshfs or samba ArrayofPartitionStructs Mntarray; enum MtType m_Mounttype; // Stores the type of the current selection DECLARE_EVENT_TABLE() }; #endif // MOUNTSH ./4pane-6.0/LICENCE0000644000175000017500000000117313566741061012463 0ustar daviddavidI copied sections of code from the wxWidgets source, and some from other places, especially http://wxcode.sourceforge.net/index.php. These retain their original wxWindows licence (see http://www.wxwidgets.org/about/). rsvg.cpp is an altered version of rsvg-convert.c taken from https://gitlab.gnome.org/GNOME/librsvg.git and retains its original copyright and GPL-2+ license. Otherwise 4Pane is covered by the GNU General Public Licence v.3 (http://www.gnu.org/licenses/gpl.html). If there are 4Pane classes or other parts of the code that you wish to use in your code under a different licence, please contact me: david@4pane.co.uk ./4pane-6.0/Misc.h0000644000175000017500000003752713535521565012557 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Misc.h // Purpose: Misc stuff // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef MISCH #define MISCH #include "wx/wx.h" #include "wx/dirctrl.h" #if wxVERSION_NUMBER >= 3000 #include #endif #include #include extern wxString GetCwd(); extern bool SetWorkingDirectory(const wxString& dir); extern wxColour GetSaneColour(wxWindow* win, bool bg, wxSystemColour type); extern void UnexecuteImages(const wxString& filepath); extern void KeepShellscriptsExecutable(const wxString& filepath, size_t perms); extern bool IsThreadlessMovePossible(const wxString& origin, const wxString& destination); #if wxVERSION_NUMBER > 3101 extern wxFontWeight LoadFontWeight(const wxString& configpath); #else extern int LoadFontWeight(const wxString& configpath); #endif extern void SaveFontWeight(const wxString& configpath, int fontweight); // A class that displays a plain message, rather like wxMessageBox, but without buttons. It autocloses after a user-defined no of seconds class BriefMessageBox; class MyBriefMessageTimer : public wxTimer // Used by BriefMessageBox. Notify() kills the BriefMessageBox when the timer 'fires' { public: void Setup(wxDialog* ptrtobox ){ p_box = ptrtobox; } protected: void Notify(){ p_box->EndModal(wxID_CANCEL); } wxDialog* p_box; }; class BriefMessageBox : public wxDialog // Displays a message dialog for a defined time only { public: BriefMessageBox(wxString Message, double secondsdisplayed = -1, wxString Caption = wxEmptyString); protected: MyBriefMessageTimer BriefTimer; }; enum // for FileDirDlg { FD_MULTIPLE = 0x0001, FD_SHOWHIDDEN = 0x0002, FD_RETURN_FILESONLY = 0x0004 }; class FileDirDlg : public wxDialog // A dialog that can select both files and dirs { public: FileDirDlg(){} FileDirDlg(wxWindow* parent, int style=FD_MULTIPLE | FD_SHOWHIDDEN, wxString defaultpath=wxEmptyString, wxString label =_( "File and Dir Select Dialog" )); wxString GetFilepath(){ return filepath; } // Get a single filepath size_t GetPaths(wxArrayString& filepaths); // Get multiple filepaths. Returns number found protected: void OnSelChanged(wxTreeEvent& event); void OnHome(wxCommandEvent& event); void OnHidden(wxCommandEvent& event); #if !defined(__WXGTK3__) void OnEraseBackground(wxEraseEvent& event); #endif wxString filepath; wxGenericDirCtrl* GDC; wxTextCtrl* Text; int SHCUT_HOME; bool filesonly; DECLARE_DYNAMIC_CLASS(FileDirDlg) }; class PasswordManager : public wxEvtHandler { public: const wxString GetPassword(const wxString& cmd, wxWindow* caller = NULL); // Returns the password, first asking the user for it if need be void ForgetPassword() { m_password.Clear(); } // Clear the stored pw, presumably because it was rejected by su static PasswordManager& Get() { if (!ms_instance) ms_instance = new PasswordManager; return *ms_instance; } static void Release() { delete ms_instance; ms_instance = NULL; } protected: void SetPasswd(const wxString& password); // Encrypts and stores the password wxString GetPasswd() const; // Decrypts and returns the password void OnPasswordTimer(wxTimerEvent& WXUNUSED(event)) { m_password.Clear(); } wxTimer m_timer; bool m_extendLife; // If true, extend the life of the password every time it's used wxString m_password; wxString m_key; private: PasswordManager() : wxEvtHandler() { m_timer.SetOwner(this); Connect(wxEVT_TIMER, wxTimerEventHandler(PasswordManager::OnPasswordTimer), NULL, this); } static PasswordManager* ms_instance; }; class ExecInPty // Wrapper for ExecuteInPty() { #define ERROR_RETURN_CODE -1 // We're always executing wxEXEC_SYNC #define CANCEL_RETURN_CODE -2 // If the user cancelled in the password dialog public: ExecInPty(wxTextCtrl* caller = NULL) : m_caller(caller) {} long ExecuteInPty(const wxString& cmd); wxTextCtrl* GetCallerTextCtrl() { return m_caller; } // Get calling textctrl. May return NULL wxArrayString& GetOutputArray() { return m_outputArray; } wxArrayString& GetErrorsArray() { return m_errorsArray; } // 'Process' interface void AddInputString(const wxString& input) { m_inputArray.Add(input); } // User-input from caller void WriteOutputToTextctrl(); // The caller wants any pty output protected: void InformCallerOnTerminate(); // Let the caller know we're finished int CloseWithError(int fd, const wxString& msg, int errorcode = ERROR_RETURN_CODE); // Close on error or empty password wxTextCtrl* m_caller; wxArrayString m_inputArray; wxArrayString m_outputArray; wxArrayString m_errorsArray; }; extern long ExecuteInPty(const wxString& cmd, wxArrayString& output, wxArrayString& errors); extern long ExecuteInPty(const wxString& cmd); #if wxVERSION_NUMBER >= 3000 class HtmlHelpController : public wxHtmlHelpController { public: HtmlHelpController(int style=wxHF_DEFAULT_STYLE, wxWindow *parentWindow=NULL) : wxHtmlHelpController(style, parentWindow){} virtual ~HtmlHelpController() {} virtual bool DisplaySection(const wxString& section) { return Display(section); } bool Display(const wxString& x); void OnCloseWindow(wxCloseEvent& evt); }; #endif class ThreadSuperBlock; class ThreadBlock; class UnRedo; struct PasteData { PasteData(const wxString& o, const wxString& d, const wxString& dl, const wxString& ow, bool p = false) : origin(o.c_str()), dest(d.c_str()), del(dl.c_str()), overwrite(ow.c_str()), precreated(p) {} PasteData& operator=(const PasteData& pdata) { origin=pdata.origin; dest=pdata.dest; del=pdata.del; overwrite=pdata.overwrite; precreated= pdata.precreated; return *this; } wxString origin; wxString dest; wxString del; wxString overwrite; bool precreated; }; class PasteThread : public wxThread { public: PasteThread(wxWindow* caller, int ID, const std::vector& pdata, bool ismoving = false) : wxThread(), m_caller(caller), m_ID(ID), m_PasteData(pdata), m_ismoving(ismoving) {} virtual ~PasteThread() { m_PasteData.clear(); } void SetUnRedoType(enum UnRedoType type) { m_fromunredo = type; } void* Entry(); void OnExit(); protected: virtual bool ProcessEntry(const PasteData& data); bool CopyFile(const wxString& origin, const wxString& destination); // Does an interruptable copy wxWindow* m_caller; int m_ID; std::vector m_PasteData; wxArrayString m_successfulpastes; // These are the ones that didn't fail/weren't cancelled, and so can be UnRedone bool m_ismoving; enum UnRedoType m_fromunredo; wxArrayString m_needsrefreshes; // For passing overwritten filepaths that FSWatcher may fail with, as a delete is followed by a paste }; class PastesCollector // Collects a clipboardful of Paste/Move data and, when fully loaded, feeds it to PasteThread { public: PastesCollector() : m_moving(false) {} ~PastesCollector() { m_PasteData.clear(); } void SetParent(ThreadSuperBlock* tsb) { m_tsb = tsb; } void SetIsMoves(bool moving) {m_moving = moving; } bool GetIsMoves() const { return m_moving; } void Add(const wxString& origin, const wxString& dest, const wxString& originaldest, bool createddir = false); void AddPreCreatedItem(const wxString& origin, const wxString& dest) { Add(origin, dest, wxT(""), true); } void StartThreads(); size_t GetCount() const { return m_PasteData.size(); } protected: void DoStartThread(const std::vector& pastedata, ThreadBlock* block, int threadID); bool m_moving; // Is it for Moves instead of Pastes? std::vector m_PasteData; ThreadSuperBlock* m_tsb; }; class ThreadData { public: ThreadData() : ID(0), completed(false), thread(NULL) {} ~ThreadData(); int ID; bool completed; wxThread* thread; }; class ThreadBlock { public: ThreadBlock(size_t count, unsigned int firstID, ThreadData* data, ThreadSuperBlock* parent = NULL) : m_count(count), m_firstID(firstID), m_successes(0), m_failures(0), m_parent(parent), m_data(data) {} virtual ~ThreadBlock() { delete[] m_data; } bool Contains(unsigned int ID) const; bool IsCompleted() const; // Have all the block's threads completed (or been aborted) void AbortThreads() const; virtual void CompleteThread(unsigned int ID, const wxArrayString& successes, const wxArrayString& array); // Set that ThreadData as completed (or aborted) size_t GetCount() const { return m_count; } size_t GetFirstID() const { return m_firstID; } ThreadSuperBlock* GetParent() const { return m_parent; } void SetSuperblock(ThreadSuperBlock* tsb) { m_parent = tsb; } wxThread* GetThreadPointer(unsigned int ID) const; void SetThreadPointer(unsigned int ID, wxThread* thread); protected: virtual void OnBlockCompleted(); // Any action to be taken when all the threads have completed size_t m_count; unsigned int m_firstID; size_t m_successes; size_t m_failures; ThreadSuperBlock* m_parent; ThreadData* m_data; }; class ThreadSuperBlock // Manages a collection of items to be threaded { public: ThreadSuperBlock(unsigned int firstID) : m_count(0), m_FirstThreadID(firstID), m_fromunredo(URT_notunredo), m_redoID(-1), m_successes(0), m_failures(0), m_overallsuccesses(0), m_overallfailures(0), m_messagetype(_("completed")) { m_collector.SetParent(this); } virtual ~ThreadSuperBlock(); void StoreBlock(ThreadBlock* block); bool Contains(unsigned int ID) const; bool IsCompleted() const; // Have all the contained block's threads completed (or been aborted) void CompleteThread(unsigned int ID, const wxArrayString& successes, const wxArrayString& stringarray); // Set that ThreadData as completed (or aborted) void SetThreadPointer(unsigned int ID, wxThread* thread); int GetBlockForID(unsigned int containedID) const; // Returns the block index or wxNOT_FOUND UnRedoType GetUnRedoType() const { return m_fromunredo; } void SetFromUnRedo(UnRedoType unredotype) { m_fromunredo = unredotype; } size_t GetUnRedoId() const { return m_redoID; } void SetUnRedoId(size_t ID) { m_redoID = ID; } void AddSuccesses(size_t successes) { m_successes += successes; } void AddFailures(size_t failures) { m_failures += failures; } void AddOverallSuccesses(size_t successes) { m_overallsuccesses += successes; } void AddOverallFailures(size_t failures) { m_overallfailures += failures; } void SetMessageType(const wxString& type) { m_messagetype = type; } virtual void OnCompleted() {} // Any action to be taken when all the blocks have completed void AbortThreads() const; void AddToCollector(const wxString& origin, const wxString& dest, const wxString& originaldest) { m_collector.Add(origin, dest, originaldest); } void AddPreCreatedItem(const wxString& origin, const wxString& dest) { m_collector.AddPreCreatedItem(origin, dest); } bool GetCollectorIsMoves() const { return m_collector.GetIsMoves(); } void SetCollectorIsMoves(bool moves) { m_collector.SetIsMoves(moves); } void StartThreads() { m_collector.StartThreads(); } PastesCollector& GetCollector() { return m_collector; } protected: PastesCollector m_collector; size_t m_count; unsigned int m_FirstThreadID; std::vector m_blocks; enum UnRedoType m_fromunredo; // Is this tsb being used by the UnRedoManager? If so, is it an undo or a redo? size_t m_redoID; // If so, this stores the ID of the unredo size_t m_successes; // The individual successes/failures i.e. every file, every dir plus all the files in that dir... size_t m_failures; size_t m_overallsuccesses; // Overall successes/failures of the items initially passed to the superblock i.e. +/-1 for a file, and +/-1 for a dir too, ignoring its contents size_t m_overallfailures; wxString m_messagetype; // Is it a paste, is it an unredo...? }; class PasteThreadStatuswriter : public wxEvtHandler { public: PasteThreadStatuswriter(); void StartTimer() { m_timer.Start(100); } void OnTimer(wxTimerEvent& event) { PrintCumulativeSize(); } void SetTotalSize(wxULongLong total) { m_expectedsize = total; } // This is the total size of the files to be pasted void OnProgress(unsigned int size){ m_cumsize += size; } // A paste thread has reported that some bytes have been processed void PasteFinished() { m_timer.Stop(); } protected: void PrintCumulativeSize(); // Prints progress-to-date to the statusbar wxTimer m_timer; wxULongLong m_cumsize; wxULongLong m_expectedsize; }; class PasteThreadSuperBlock : public ThreadSuperBlock // Manages a clipboardful of Pastes/Moves. When all threads have completed, passes the collected unredos to the manager { public: virtual ~PasteThreadSuperBlock(); PasteThreadSuperBlock(unsigned int firstID) : ThreadSuperBlock(firstID), m_DestID(0) {} wxArrayString& GetSuccessfullyPastedFilepaths() { return m_SuccessfullyPastedFilepaths; } void StoreUnRedoPaste(UnRedo* entry, const wxString& filepath) { m_UnRedos.push_back( std::make_pair(entry, filepath) ); } void StoreChangeMtimes(const wxString& filepath, time_t referencetime) { m_ChangeMtimes.push_back( std::make_pair(filepath, referencetime) ); } void ReportProgress(unsigned int size) { m_StatusWriter.OnProgress(size); } virtual void OnCompleted(); // Any action to be taken when all the blocks have completed void DeleteAfter(const wxString& dirname) { if (!dirname.empty()) m_DeleteAfter.Add(dirname); } // In a Move, a dir will need 2b deleted in OnCompleted() const wxString GetTrashdir() const { return m_trashdir; } void SetTrashdir(const wxString& trashdir); void StartThreadTimer() { m_StatusWriter.StartTimer(); } void SetTotalExpectedSize(wxULongLong total) { m_StatusWriter.SetTotalSize(total); } protected: int m_DestID; // The ID of the destination pane; may need updating in OnCompleted() wxString m_DestPath; // Which path may need selecting in OnCompleted() wxArrayString m_DeleteAfter; // Which moved dirpaths may need deleting in OnCompleted() wxString m_trashdir; // Used to store/coordinate any trashdir used when files are being overwritten wxArrayString m_SuccessfullyPastedFilepaths; std::deque< std::pair > m_UnRedos; std::vector< std::pair > m_ChangeMtimes; // Stores original mod-times for pasted fpaths for feeding to FileData::ModifyFileTimes PasteThreadStatuswriter m_StatusWriter; }; class ThreadsManager /*: public wxEvtHandler*/ { public: ThreadSuperBlock* StartSuperblock(const wxString& type = wxT("")); // Create a superblock, in which future blocks will be stored. This helps multiple blocks report a combined success-count ThreadBlock* AddBlock(size_t count, const wxString& type, int& threadID, ThreadSuperBlock* tsb = NULL); // Reserve a block of 'count' items, each of which will later contain a thread. Returns the index of the first of these void AbortThreadSuperblock(ThreadSuperBlock* tsb); // Kill a tsb that's not going to be used. Called by UnRedoImplementer::StartItems when undoing a simple paste bool IsActive() const; bool PasteIsActive() const; void CancelThread(int threadtype) const; void OnThreadProgress(unsigned int ID, unsigned int size); void OnThreadAborted(unsigned int ID) { OnThreadCompleted(ID); } void OnThreadCompleted(unsigned int ID, const wxArrayString& array = wxArrayString(), const wxArrayString& successes = wxArrayString()); wxCriticalSection& GetPasteCriticalSection() { return m_PastingCritSection; } void SetThreadPointer(unsigned int ID, wxThread* thread); static size_t GetCPUCount(); static ThreadsManager& Get() { if (!ms_instance) ms_instance = new ThreadsManager; return *ms_instance; } static void Release() { delete ms_instance; ms_instance = NULL; } protected: int GetSuperBlockForID(unsigned int containedID) const; // Returns the superblock index or wxNOT_FOUND unsigned int m_nextfree; // The index of the first unused thread ID std::vector m_sblocks; wxCriticalSection m_PastingCritSection; private: ThreadsManager() : m_nextfree(1) {} ~ThreadsManager(); static ThreadsManager* ms_instance; }; #endif //MISCH ./4pane-6.0/Otherstreams.h0000644000175000017500000001007113205575137014323 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: Otherstreams.h // Purpose: xz and lmza1 archive streams // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: GPL v3 ///////////////////////////////////////////////////////////////////////////// #ifndef _OTHERSTREAMS_H__ #define _OTHERSTREAMS_H__ #ifndef NO_LZMA_ARCHIVE_STREAMS // Allows compilation where liblzma-dev/xz-libs xz-devel is unavailable #include "wx/defs.h" #if wxUSE_STREAMS #include "wx/stream.h" #include #ifndef IN_BUF_MAX #define IN_BUF_MAX 4096 #define OUT_BUF_MAX 4096 #endif typedef lzma_ret (* dl_lzma_stream_decoder) (lzma_stream*, uint64_t, uint32_t); typedef lzma_ret (* dl_lzma_alone_decoder) (lzma_stream*, uint64_t); typedef lzma_ret (* dl_lzma_code) (lzma_stream*, lzma_action); typedef void (* dl_lzma_end) (lzma_stream*); typedef lzma_ret (* dl_lzma_easy_encoder) (lzma_stream*, uint32_t, lzma_check); typedef lzma_bool (* dl_lzma_lzma_preset) (lzma_options_lzma*, uint32_t); typedef lzma_ret (* dl_lzma_alone_encoder) (lzma_stream*, const lzma_options_lzma*); class XzInputStream : public wxFilterInputStream { public: XzInputStream(wxInputStream& stream, bool use_lzma1 = false); virtual ~XzInputStream(); wxInputStream& ReadRaw(void* pBuffer, size_t size); off_t TellRawI(); off_t SeekRawI(off_t pos, wxSeekMode sm = wxFromStart); void* GetHandleI() {return m_lzStream;} protected: virtual size_t OnSysRead(void *buffer, size_t bufsize); // dlopen()ed symbols dl_lzma_stream_decoder lzma_stream_decoder; dl_lzma_alone_decoder lzma_alone_decoder; dl_lzma_code lzma_code; dl_lzma_end lzma_end; void* m_lzStream; unsigned char m_pBuffer[IN_BUF_MAX]; int m_nBufferPos; }; class XzOutputStream : public wxFilterOutputStream { public: XzOutputStream(wxOutputStream& stream, bool use_lzma1 = false); virtual ~XzOutputStream(); wxOutputStream& WriteRaw(void* pBuffer, size_t size); off_t TellRawO(); off_t SeekRawO(off_t pos, wxSeekMode sm = wxFromStart); void* GetHandleO() {return m_lzStream;} virtual bool Close(); protected: virtual size_t OnSysWrite(const void *buffer, size_t bufsize); // dlopen()ed symbols dl_lzma_easy_encoder lzma_easy_encoder; dl_lzma_lzma_preset lzma_lzma_preset; dl_lzma_alone_encoder lzma_alone_encoder; dl_lzma_code lzma_code; dl_lzma_end lzma_end; void* m_lzStream; char m_pBuffer[OUT_BUF_MAX]; int m_nBufferPos; }; class XzStream : public XzInputStream, XzOutputStream { public: XzStream(wxInputStream& istream, wxOutputStream& ostream) : XzInputStream(istream), XzOutputStream(ostream) {} virtual ~XzStream(){} }; class WXEXPORT XzClassFactory: public wxFilterClassFactory { public: XzClassFactory(); wxFilterInputStream *NewStream(wxInputStream& stream) const { return new XzInputStream(stream); } wxFilterOutputStream *NewStream(wxOutputStream& stream) const { return new XzOutputStream(stream); } wxFilterInputStream *NewStream(wxInputStream *stream) const { return new XzInputStream(*stream); } wxFilterOutputStream *NewStream(wxOutputStream *stream) const { return new XzOutputStream(*stream); } const wxChar * const *GetProtocols(wxStreamProtocolType type = wxSTREAM_PROTOCOL) const; private: DECLARE_DYNAMIC_CLASS(XzClassFactory) }; // Lzma streams. These use liblzma too, just like xz // The only difference is in the en/decoder initialisation, so we only need to pass a bool to the xzstream ctors class LzmaInputStream : public XzInputStream { public: LzmaInputStream(wxInputStream& stream) : XzInputStream(stream, true) {} virtual ~LzmaInputStream() {} }; class LzmaOutputStream : public XzOutputStream { public: LzmaOutputStream(wxOutputStream& stream) : XzOutputStream(stream, true) {} virtual ~LzmaOutputStream() {} }; #endif // wxUSE_STREAMS #endif // ndef NO_LZMA_ARCHIVE_STREAMS #endif // _OTHERSTREAMS_H__ ./4pane-6.0/ExecuteInDialog.h0000644000175000017500000000512113205575137014654 0ustar daviddavid///////////////////////////////////////////////////////////////////////////// // Name: ExecuteInDialog.h // Purpose: Displays exec output in a dialog // Part of: 4Pane // Author: David Hart // Copyright: (c) 2016 David Hart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef EXECUTEINDIALOGH #define EXECUTEINDIALOGH #include "wx/wx.h" #include "wx/process.h" #include "wx/txtstrm.h" class CommandDisplay; class DisplayProcess : public wxProcess // Executes a command, displaying output in a textctrl. Adapted from the exec sample { // Very similar to MyPipedProcess in Tools.cpp, but enough differences to make derivation difficult public: DisplayProcess(CommandDisplay* display); bool HasInput(); void OnKillProcess(); void SetPid(long pid) { m_pid = pid; } protected: void OnTerminate(int pid, int status); bool AlreadyCancelled() const { return m_WasCancelled; } long m_pid; // Stores the process's pid, in case we want to kill it bool m_WasCancelled; CommandDisplay* m_parent; wxTextCtrl* m_text; }; class CommandDisplay : public wxDialog // A dialog with a textctrl that displays output from a wxExecuted command { enum timertype { wakeupidle=5000, endmodal }; public: void Init(wxString& command); // Do the ctor work here, as otherwise wouldn't be done under xrc. Also calls RunCommand() void AddInput(wxString input); // Displays input received from the running Process void OnProcessTerminated(DisplayProcess *process); void OnProcessKilled(DisplayProcess *process); // Similar to OnProcessTerminated but Detaches rather than deletes, following a Cancel int exitstatus; wxTextCtrl* text; protected: void RunCommand(wxString& command); // Do the Process/Execute things to run the command void AddAsyncProcess(DisplayProcess *process); void OnCancel(wxCommandEvent& event); void SetupClose(); // Re-labels Cancel button as Close, & starts the endmodal timer if desired void OnProcessTimer(wxTimerEvent& event); // Called by timer to generate wakeupidle events void OnEndmodalTimer(wxTimerEvent& event); // Called when the one-shot shutdown timer fires void OnIdle(wxIdleEvent& event); void OnAutocloseCheckBox(wxCommandEvent& event); DisplayProcess* m_running; wxTimer m_timerIdleWakeUp; // The idle-event-wake-up timer wxTimer shutdowntimer; // The shutdown timer private: DECLARE_EVENT_TABLE() }; #endif //EXECUTEINDIALOGH ./4pane-6.0/compile0000755000175000017500000001632713367740426013066 0ustar daviddavid#! /bin/sh # Wrapper for compilers which do not understand '-c -o'. scriptversion=2018-03-07.03; # UTC # Copyright (C) 1999-2018 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . nl=' ' # We need space, tab and new line, in precisely that order. Quoting is # there to prevent tools from complaining about whitespace usage. IFS=" "" $nl" file_conv= # func_file_conv build_file lazy # Convert a $build file to $host form and store it in $file # Currently only supports Windows hosts. If the determined conversion # type is listed in (the comma separated) LAZY, no conversion will # take place. func_file_conv () { file=$1 case $file in / | /[!/]*) # absolute file, and not a UNC file if test -z "$file_conv"; then # lazily determine how to convert abs files case `uname -s` in MINGW*) file_conv=mingw ;; CYGWIN*) file_conv=cygwin ;; *) file_conv=wine ;; esac fi case $file_conv/,$2, in *,$file_conv,*) ;; mingw/*) file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` ;; cygwin/*) file=`cygpath -m "$file" || echo "$file"` ;; wine/*) file=`winepath -w "$file" || echo "$file"` ;; esac ;; esac } # func_cl_dashL linkdir # Make cl look for libraries in LINKDIR func_cl_dashL () { func_file_conv "$1" if test -z "$lib_path"; then lib_path=$file else lib_path="$lib_path;$file" fi linker_opts="$linker_opts -LIBPATH:$file" } # func_cl_dashl library # Do a library search-path lookup for cl func_cl_dashl () { lib=$1 found=no save_IFS=$IFS IFS=';' for dir in $lib_path $LIB do IFS=$save_IFS if $shared && test -f "$dir/$lib.dll.lib"; then found=yes lib=$dir/$lib.dll.lib break fi if test -f "$dir/$lib.lib"; then found=yes lib=$dir/$lib.lib break fi if test -f "$dir/lib$lib.a"; then found=yes lib=$dir/lib$lib.a break fi done IFS=$save_IFS if test "$found" != yes; then lib=$lib.lib fi } # func_cl_wrapper cl arg... # Adjust compile command to suit cl func_cl_wrapper () { # Assume a capable shell lib_path= shared=: linker_opts= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. eat=1 case $2 in *.o | *.[oO][bB][jJ]) func_file_conv "$2" set x "$@" -Fo"$file" shift ;; *) func_file_conv "$2" set x "$@" -Fe"$file" shift ;; esac ;; -I) eat=1 func_file_conv "$2" mingw set x "$@" -I"$file" shift ;; -I*) func_file_conv "${1#-I}" mingw set x "$@" -I"$file" shift ;; -l) eat=1 func_cl_dashl "$2" set x "$@" "$lib" shift ;; -l*) func_cl_dashl "${1#-l}" set x "$@" "$lib" shift ;; -L) eat=1 func_cl_dashL "$2" ;; -L*) func_cl_dashL "${1#-L}" ;; -static) shared=false ;; -Wl,*) arg=${1#-Wl,} save_ifs="$IFS"; IFS=',' for flag in $arg; do IFS="$save_ifs" linker_opts="$linker_opts $flag" done IFS="$save_ifs" ;; -Xlinker) eat=1 linker_opts="$linker_opts $2" ;; -*) set x "$@" "$1" shift ;; *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) func_file_conv "$1" set x "$@" -Tp"$file" shift ;; *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) func_file_conv "$1" mingw set x "$@" "$file" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -n "$linker_opts"; then linker_opts="-link$linker_opts" fi exec "$@" $linker_opts exit 1 } eat= case $1 in '') echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand '-c -o'. Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file 'INSTALL'. Report bugs to . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac ofile= cfile= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as 'compile cc -o foo foo.c'. # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. # Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then test "$cofile" = "$ofile" || mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: ./4pane-6.0/locale/0000755000175000017500000000000013567046234012734 5ustar daviddavid./4pane-6.0/locale/ar/0000755000175000017500000000000012250631513013322 5ustar daviddavid./4pane-6.0/locale/ar/LC_MESSAGES/0000755000175000017500000000000013567054715015126 5ustar daviddavid./4pane-6.0/locale/ar/LC_MESSAGES/ar.po0000644000175000017500000055275113564776072016113 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # كريم أولاد الشلحة , 2011 # Tahera AlShareefa , 2018 # Tawfik Yngwie , 2018 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-10-11 21:59+0000\n" "Last-Translator: Tahera AlShareefa \n" "Language-Team: Arabic (http://www.transifex.com/davidgh/4Pane/language/ar/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ar\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "&قص" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&نسخ" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "&أرسل إلى سلة المهملات" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&حذÙ" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "حذ٠نهائيا" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "&تغيير الإسم" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&مكرر" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&خصائص" #: Accelerators.cpp:214 msgid "&Open" msgstr "&قتح" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "ÙØªØ­ & بـ" #: Accelerators.cpp:214 msgid "&Paste" msgstr "&لصق" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "إنشاء &وصلة" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "انشيء وصلة &رمزية" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "حذ٠التبويب" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "غير إسم &التبويب" #: Accelerators.cpp:215 msgid "Und&o" msgstr "تراجع" #: Accelerators.cpp:215 msgid "&Redo" msgstr "إعادة" #: Accelerators.cpp:215 msgid "Select &All" msgstr "إختر &الكل" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&مل٠أو مسار جديد" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&تبويب جديد" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&أض٠تبويب" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "تكرار &هذا اللسان" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "&تبديل الأجزاء" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "تقسيم الأجزاء &عموديا" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "تقسيم الأجزاء &Ø£Ùقيا" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "&إلغاء تقسيم الاجزاء" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&ملحق" #: Accelerators.cpp:217 msgid "&Size" msgstr "&حجم" #: Accelerators.cpp:217 msgid "&Time" msgstr "&وقت" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&صلاحيات" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&مالك" #: Accelerators.cpp:218 msgid "&Group" msgstr "&مجموعة" #: Accelerators.cpp:218 msgid "&Link" msgstr "&وصلة" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "عرض &كل الأعمدة" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&عدم عرض كل الاعمدة" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Ø­ÙØ¸ &إعدادات الجزء" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Ø­ÙØ¸ إعدادات الجزء عنذ &الخروج" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "&Ø­ÙØ¸ النمط كقالب" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "حذ&٠القالب" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "&إنعاش العرض" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "إطلاق &الطرÙية" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&ترشيح العرض" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "عرض/Ø¥Ø®ÙØ§Ø¡ المجلدات Ùˆ Ø§Ù„Ù…Ù„ÙØ§Øª المخÙية" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&أض٠إشارات" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "&إدارة الإشارات" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "&ضم القسم" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "&أزل ضم القسم" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "ضم صورة &ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "ضم &NFS export" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "ضم &Samba share" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "غير مستعمل" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "عرض &محاكي الطرÙية" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "عرض سطر-&أوامر" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&ذهاب إلى المل٠المحدد" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "Ø£ÙØ±Øº &سلة المهملات" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "حذ٠&نهائيا Ø§Ù„Ù…Ù„ÙØ§Øª 'Ø§Ù„Ù…Ø­Ø°ÙˆÙØ©'" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "إست&خراج الأرشي٠أو ضغط الملÙ(ات)" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "أنشيء &أرشي٠جديد" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "&أض٠إلى أرشي٠موجود" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "&إختبار سلامة الأرشي٠أو Ø§Ù„Ù…Ù„ÙØ§Øª المضغوطة" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&ضغط Ø§Ù„Ù…Ù„ÙØ§Øª" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&عرض عمودي لأحجام المسار" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Ø¥Ø­Ù†ÙØ¸ بالأهدا٠المتعلقة بالوص&لة الرمزية" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "&إعداد 4جزء" #: Accelerators.cpp:228 msgid "E&xit" msgstr "Ø®&روج" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "مساعدة سياق-حساس" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "&مساعدة" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&أسئلة الشائعة" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&حول 4جزء" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "حرّر" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "ÙØ§ØµÙ„ جديد" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "إعادة البرنامج السابق" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "انتقل إلى البوابة التالية" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "قص المختارة حاليا" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "نسخ المختارة حاليا" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "أرسÙÙ„ إلى المهملات" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "أض٠لسان جديد" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "Ù…&Ù„Ù" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&حرر" #: Accelerators.cpp:502 msgid "&View" msgstr "ا&عرض" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "Ø£_لسنة" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "علا&مات" #: Accelerators.cpp:502 msgid "&Archive" msgstr "أرش&ÙŠÙ" #: Accelerators.cpp:502 msgid "&Mount" msgstr "ضم" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "أدو&ات" #: Accelerators.cpp:502 msgid "&Options" msgstr "&خيارات" #: Accelerators.cpp:502 msgid "&Help" msgstr "Ù…&ساعدة" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "الحركة" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "إختصار" #: Accelerators.cpp:675 msgid "Default" msgstr "تلقائي" #: Accelerators.cpp:694 msgid "Extension" msgstr "ملحق" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "حجم" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "الوقت" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "صلاحيات" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "مالك" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "مجموعة" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "وصلة" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "عرض كل الأعمدة" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "إظهار الملÙ: عرض كل الأعمدة" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "عدم عرض كل الأعمدة" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "إظهار الملÙ: عدم عرض كل الأعمدة" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "حرر العلامات" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "علامة: ÙØ§ØµÙ„ جديد" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Ùقدان التغيرات?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "هل أنت متأكد؟" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "أووبسÙÙ!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "أووبس" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "تم ضغط الملÙ(ات)" #: Archive.cpp:1228 msgid "Compression failed" msgstr "ÙØ´Ù„ الضغط" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "تم ÙÙƒ ضغط الملÙ(ات)" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "ÙØ´Ù„ ÙÙƒ الضغط" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "ÙØ´Ù„ التحقق" #: Archive.cpp:1242 msgid "Archive created" msgstr "تم إنشاء الارشيÙ" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "ÙØ´Ù„ إنشاء الأرشيÙ" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "تم Ø¥Ø¶Ø§ÙØ© الملÙ(ات) إلى الأرشيÙ" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "ÙØ´Ù„ Ø£Ø¶Ø§ÙØ© الأرشيÙ" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "تم إستخراج الأرشيÙ" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "ÙØ´Ù„ الإستخراج" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "ألصق" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "حرك" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "أسÙ" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "مجلدات العلامات" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "ÙØ§ØµÙ„" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "تم التكرار" #: Bookmarks.cpp:204 msgid "Moved" msgstr "تم التحريك" #: Bookmarks.cpp:215 msgid "Copied" msgstr "تم النسخ" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "إعادة تسمية مجلد الجذر" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "حرر العلامات" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "ÙØ§ØµÙ„ جديد" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "مجلد جديد" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "ÙØ´Ù„ تحميل شريط القائمة!?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "ÙØ´Ù„ العتور على القائمة!?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "علامات" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "تم Ø¥Ø¶Ø§ÙØ© العلامة" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Ùقدان كل التغيرات?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "تم Ø¥Ø¶Ø§ÙØ© المجلد" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "تم Ø¥Ø¶Ø§ÙØ© Ø§Ù„ÙØ§ØµÙ„" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "أووبس?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "تم الإلصاق" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "تم حذ٠المجلد" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "تم حذ٠العلامة" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "مرحبابكم ÙÙŠ 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "هنا" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "ØªØµÙØ­ ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "ØªØµÙØ­ ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "ØªØµÙØ­ ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "ت&شغيل برنامج" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "إذهب إلى مسار المنزل" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "إذهب إلى مسارالوثائق" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "إختصارات" #: Configure.cpp:2041 msgid "Tools" msgstr "أدوات" #: Configure.cpp:2043 msgid "Add a tool" msgstr "أض٠أداة" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "حرر أداة" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "حذ٠اداة" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "أجهزة" #: Configure.cpp:2052 msgid "Automount" msgstr "ضم الألي" #: Configure.cpp:2054 msgid "Mounting" msgstr "تركيب" #: Configure.cpp:2056 msgid "Usb" msgstr "Usb" #: Configure.cpp:2058 msgid "Removable" msgstr "جزء قابل للإزالة" #: Configure.cpp:2060 msgid "Fixed" msgstr "غير قابل للتغيير" #: Configure.cpp:2062 msgid "Advanced" msgstr "متقدÙÙ…" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "متقدم غير قابل للإزالة" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "متقدم قابل للإزالة" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "lvm متقدم" #: Configure.cpp:2072 msgid "The Display" msgstr "العرض" #: Configure.cpp:2074 msgid "Trees" msgstr "الأشجار" #: Configure.cpp:2076 msgid "Tree font" msgstr "شجرة الخط" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Ù…ØªÙØ±Ù‚ات" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "حقيقي" #: Configure.cpp:2085 msgid "Emulator" msgstr "محاكي" #: Configure.cpp:2088 msgid "The Network" msgstr "الشبكة" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "منوعات" #: Configure.cpp:2093 msgid "Numbers" msgstr "أرقام" #: Configure.cpp:2095 msgid "Times" msgstr "الوقت" #: Configure.cpp:2097 msgid "Superuser" msgstr "المستخدم الخارق" #: Configure.cpp:2099 msgid "Other" msgstr "أخرى" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr " أنقر عند الإنتهاء" #: Configure.cpp:2477 msgid " Edit this Command " msgstr " حرر هذا الأمر" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "حذ٠الامر \"%s\"?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "إختر ملÙ" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "أجهزة الذاتية التركيب" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "تركيب الأجهزة" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "أجهزة Usb" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "أجهزة القابلة للإزالة" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "الاجهزة الثابتة" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "عرض" #: Configure.cpp:2739 msgid "Display Trees" msgstr "عرض الأشجار" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "عرض شجرة الخط" #: Configure.cpp:2739 msgid "Display Misc" msgstr "عرض Ù…ØªÙØ±Ù‚ات" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "طرÙية حقيقية" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "محاكي الطرÙية" #: Configure.cpp:2740 msgid "Networks" msgstr "شبكات" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "عدم ØªÙØ¹ÙŠÙ„ Ø§Ù„Ù…ØªÙØ±Ù‚ات" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "(تجاهل)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "الخط المبدئي" #: Configure.cpp:4036 msgid "Delete " msgstr "حذÙ" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "هل أنت متأكد؟" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "قائمة" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "عرض" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "ÙØ´Ù„" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "تحذير" #: Devices.cpp:843 msgid "Floppy" msgstr "محرك أقراص مرنة" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "إلغاء" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "إغلاق" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "الدليل" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "مقبس" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "تطبيقات" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr " D H " #: MyDirs.cpp:664 msgid " D " msgstr " D " #: MyDirs.cpp:672 msgid "Dir: " msgstr "دليل:" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "أخرى ..." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr " D F" #: MyFiles.cpp:1044 msgid " R" msgstr " R" #: MyFiles.cpp:1045 msgid " H " msgstr " H " #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "تحذير!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "قص" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "نسخ" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "تراجع" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "تراجع عن الإجراء" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "لسان جديد" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "عَنْ" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "خطأ" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "تم بنجاح" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "حاسوب" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Ø£Ùلغي" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "إجراء" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "اعرض" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "اخÙÙŠ" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "عناصر" #: Tools.cpp:2880 msgid " item " msgstr "عنصر" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "أول" #: Tools.cpp:3267 msgid "other" msgstr "أخرى" #: Tools.cpp:3267 msgid "next" msgstr "لاحق" #: Tools.cpp:3267 msgid "last" msgstr "أخير" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "حذÙ" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "مل٠جديد" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "مواÙÙ‚" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "تغيير" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "استخدم القيمة البدئية" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "أضÙ" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr " kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr " gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr " gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "أمر" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "الحاليّ" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "امسح" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "لا شيء" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "الأجهزة المتنقلة USB" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "ثوان" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "إسم" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "&حدد" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "ØªØµÙØ­" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "استخدام هذا الاسم وكلمة السر" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "اسم المستخدم" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "كلمة السر" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "أزل ضم القسم" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "هذه قائمة بالأقسام الموصولة من مل٠mtab" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "نقطة ضم هذا القسم" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "هذه نقطة ضم القسم المحدد" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "أدخل مسار أو قائمة Ø§Ù„Ù…Ù„ÙØ§Øª للبحث\n(أو إستعمل واحد من الإختصارات)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "تطابق كامل الكلمات Ùقط" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w تطابق كامل الكلمات Ùقط" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i تجاهل الحالة" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "لا تهتم بالبحث داخل Ø§Ù„Ù…Ù„ÙØ§Øª الثنائية" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "-n لحق يتطابق مع رقم-سطر" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "تجاهل Ø§Ù„Ù…Ù„ÙØ§Øª الثنائية" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "لا تحاول البحث ÙÙŠ أجهزة, fifos, sockets Ùˆ شبيهاتها" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "تجاهل أجهزة, fifos إلخ" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "ماذا ØªÙØ¹Ù„ مع المسارات؟" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "تطابق الأسماء" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/zh_CN/0000777000175000017500000000000013565000465013733 5ustar daviddavid./4pane-6.0/locale/zh_CN/LC_MESSAGES/0000777000175000017500000000000013567054715015531 5ustar daviddavid./4pane-6.0/locale/zh_CN/LC_MESSAGES/zh_CN.po0000644000175000017500000053767513565000500017072 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Magical Mike <1751634419@qq.com>, 2018 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-07-04 04:15+0000\n" "Last-Translator: Magical Mike <1751634419@qq.com>\n" "Language-Team: Chinese (China) (http://www.transifex.com/davidgh/4Pane/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: zh_CN\n" "Plural-Forms: nplurals=1; plural=0;\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "剪切(&U)" #: Accelerators.cpp:213 msgid "&Copy" msgstr "å¤åˆ¶(&C)" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "移动至垃圾篓(&T)" #: Accelerators.cpp:213 msgid "De&lete" msgstr "删除(&L)" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "永久性删除" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "é‡å‘½å(M)" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "å¤åˆ¶(&D)" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "属性(&E)" #: Accelerators.cpp:214 msgid "&Open" msgstr "打开(&O)" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "" #: Accelerators.cpp:214 msgid "&Paste" msgstr "粘贴(&P)" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "制造硬链接(&H)" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "制造符å·é“¾æŽ¥(&S)" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "删除标签(&D)" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "é‡å‘½å标签(&R)" #: Accelerators.cpp:215 msgid "Und&o" msgstr "撤销(&O)" #: Accelerators.cpp:215 msgid "&Redo" msgstr "é‡åš(&R)" #: Accelerators.cpp:215 msgid "Select &All" msgstr "选择所有项(&A)" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "新建文件或文件夹(&N)" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "新建标签(&N)" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "æ’入标签(&I)" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "剪切此标签(&U)" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "显示æ¯å•个标签头(&H)" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "" #: Accelerators.cpp:217 msgid "&Extension" msgstr "" #: Accelerators.cpp:217 msgid "&Size" msgstr "" #: Accelerators.cpp:217 msgid "&Time" msgstr "" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "" #: Accelerators.cpp:218 msgid "&Owner" msgstr "" #: Accelerators.cpp:218 msgid "&Group" msgstr "" #: Accelerators.cpp:218 msgid "&Link" msgstr "" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "" #: Accelerators.cpp:228 msgid "E&xit" msgstr "" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "" #: Accelerators.cpp:502 msgid "&Edit" msgstr "" #: Accelerators.cpp:502 msgid "&View" msgstr "" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "" #: Accelerators.cpp:502 msgid "&Archive" msgstr "" #: Accelerators.cpp:502 msgid "&Mount" msgstr "" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "" #: Accelerators.cpp:502 msgid "&Options" msgstr "" #: Accelerators.cpp:502 msgid "&Help" msgstr "" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "" #: Accelerators.cpp:675 msgid "Default" msgstr "" #: Accelerators.cpp:694 msgid "Extension" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "" #: Archive.cpp:1228 msgid "Compression failed" msgstr "" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "" #: Archive.cpp:1242 msgid "Archive created" msgstr "" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "" #: Bookmarks.cpp:215 msgid "Copied" msgstr "" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "" #: Configure.cpp:2041 msgid "Tools" msgstr "" #: Configure.cpp:2043 msgid "Add a tool" msgstr "" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "" #: Configure.cpp:2052 msgid "Automount" msgstr "" #: Configure.cpp:2054 msgid "Mounting" msgstr "" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/fr/0000755000175000017500000000000012250631522013327 5ustar daviddavid./4pane-6.0/locale/fr/LC_MESSAGES/0000755000175000017500000000000013567054715015133 5ustar daviddavid./4pane-6.0/locale/fr/LC_MESSAGES/fr.po0000644000175000017500000056263113564777425016126 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # bttfmcf , 2012 # Rachid Bell , 2018 # Smrman, 2018-2019 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2019-08-25 20:08+0000\n" "Last-Translator: Smrman\n" "Language-Team: French (http://www.transifex.com/davidgh/4Pane/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Maj" #: Accelerators.cpp:213 msgid "C&ut" msgstr "C&ouper" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Copier" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Mettre à la &Corbeille" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Supprimer" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Supprimer définitivement" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "&Renommer" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Dupliquer" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&Propriétés" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Ouvrir" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Ouvrir &avec..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Coller" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Créer un &lien matériel" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Créer un &lien symbolique" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "&Supprimer l'onglet" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "&Renommer l'onglet" #: Accelerators.cpp:215 msgid "Und&o" msgstr "&Défaire" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Refaire" #: Accelerators.cpp:215 msgid "Select &All" msgstr "&Tout sélectionner" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Nouveau Fichier ou Répertoire" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&Nouvel Onglet" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&Insérer un Onglet" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "&Dupliquer cet Onglet" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Donner la même &largeur à tous les onglets" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "&Répliquer dans le Panneau Opposé" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "&Échanger les panneaux" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Diviser les Panneaux &Verticalement" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Diviser les Panneaux &Horizontalement" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "&Réunir les Panneaux" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Extension" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Taille" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Temps" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Permissions" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Propriétaire" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Groupe" #: Accelerators.cpp:218 msgid "&Link" msgstr "&Lien" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Afficher &toutes les colonnes" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&Cacher toutes les colonnes" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Sauvegarder les Paramètres des &Panneaux" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Sauvegarder les Paramètres des Panneaux lors de la fermeture" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "&Sauvegarder cette disposition comme modèle" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "&Supprimer un modèle" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "&Raffraîchir l'affichage" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "Lancer le &Terminal" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&Filtrer l'Affichage" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Afficher/Masquer les répertoires et fichiers Cachés" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&Ajouter aux favoris" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "&Gérer les favoris" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "&Monter une Partition" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "&Démonter une Partition" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Monter une image &ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Monter un partage &Samba" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "&Démonter" #: Accelerators.cpp:224 msgid "Unused" msgstr "Non utilisé" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Montrer l'émulateur de &Terminal" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Afficher la ligne de commande" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&GoTo fichier sélectionné" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "Vider la &Corbeille" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Supprimer définitivement les fichiers 'Supprimés'" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "&Extraire une archive ou des fichiers compressés" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Créer une &Nouvelle Archive" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "&Ajouter à une archive existante" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "&Tester l'intégrité d'une archive ou des fichiers compressés" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&Compresser les fichiers" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&Afficher les tailles récursives des répertoires&" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "&Configurer 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "&Quitter" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&FAQ" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&À Propos de 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Configurer les raccourcis" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Aller à la cible du lien symbolique" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Éditer" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Nouveau Séparateur" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Répéter le programme précédent " #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Naviguer dans le panneau opposé" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Naviguer dans le panneau adjacent" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Basculer aux Paneaux" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Basculer dans l'Émulateur de Terminal" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Basculer en Ligne de commande" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Passer à la fenêtre précédente" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Aller à l'onglet précédent" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Aller à l'onglet suivant" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Coller comme Modèle de &Dossier" #: Accelerators.cpp:231 msgid "&First dot" msgstr "&Permier point" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "&Avant-dernier point" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "&Dernier point" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Monter par Ssh en utilisant ssh&fs" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "Montrer les &Prévisualisations" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "A&nnuler la Copie" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Tri par nom de fichier avec support des décimales" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Coupe la sélection en cours" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Copie la sélection en cours" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Mettre à la corbeille" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Tuer, mais peut être ressuscitable" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Supprimer avec un préjudice extrême" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Coller le contenu du presse-papier" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Supprimer l'onglet actuellement sélectionné" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Renommer l'onglet actuellement sélectionné" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Ajouter un nouvel onglet" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Insérer un nouvel onglet après l'onglet actuellement sélectionné" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Masquer la barre des onglets quand il n'y en a un seul" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Copier le chemin de ce panneau dans le panneau opposé" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Toujours sauvegarder la disposition du panneau lors de la fermeture" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Ajouter l'object selectionné à vos favoris" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Réarranger, Renommer ou Supprimer des favoris" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Rechercher le ou les fichiers correspondants" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Chercher Dans les Fichiers" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Afficher/Masquer l'Émulateur de Terminal" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Afficher/Masquer la ligne de commandes" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "Vider la corbeille interne de 4Pane" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Supprimer le dossier 'Supprimé' de 4Pane" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Lors de la modification d'un lien symbolique, garder la même destination" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Fermer le programme" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Annuler l'action en cours" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\nLes tableaux dans ImplementDefaultShortcuts() n'ont pas la même taille !" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Basculer dans le mode Fulltree" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Impossible de charger la configuration !?" #: Accelerators.cpp:502 msgid "&File" msgstr "&Fichier" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Éditer" #: Accelerators.cpp:502 msgid "&View" msgstr "&Vue" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Onglets" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "&Favoris" #: Accelerators.cpp:502 msgid "&Archive" msgstr "&Archive" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Monter" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "&Outils" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Options" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Aide" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "&Colonnes à Afficher" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "&Charger un Modèle d'Onglet" #: Accelerators.cpp:673 msgid "Action" msgstr "Action" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Raccourci" #: Accelerators.cpp:675 msgid "Default" msgstr "Défaut" #: Accelerators.cpp:694 msgid "Extension" msgstr "Extension" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "Taille" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Temps" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Permissions" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Propriétaire" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Groupe" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Lien" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Afficher toutes les colonnes" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Masquer toutes les colonnes" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Favoris : Éditer" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Favoris : Nouveau Séparateur" #: Accelerators.cpp:697 msgid "First dot" msgstr "Premier point" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "Dernier point" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "Les extensions commencent au dernier point" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Êtes-vous sûr?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Aucun" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Oups!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Choisir le Répertoire dans lequel enregistrer l'Archive" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "Le répertoire dans lequel vous voulez créer l'archive ne semble pas exister.\nUtiliser le répertoire actuel?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Oops" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Choisir le répertoire dans lequel Extraire l'archive" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Fichier(s) compressé(s)" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Échec de la compression" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Fichier(s) décompressé(s)" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Échec de la décompression" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Fichier(s) vérifié" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Échec de la vérification" #: Archive.cpp:1242 msgid "Archive created" msgstr "Archive crée" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Échec de la création de l'archive" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Fichier(s) ajouté(s) à l'archive" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Échec de l'ajout de l'archive" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archive extraite" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Échec de l'extraction" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archive vérifiée" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "Dans quel répertoire voulez-vous extraire ces fichiers ?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "Dans quel répertoire voulez-vous faire l'extraction ?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Extraction de l'archive en cours" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Je crains que vous n'avez pas la permission de créer dans ce répertoire\n Ré-essayer?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Aucune entrée !" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Désolé, %s existe déjà\n Ré-essayer ?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Je crains que vous n'avez pas la permission d'écrire dans ce répertoire" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Je crains que vous n'avez pas la permission d'accéder aux fichiers dans ce répertoire" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Pas de Sortie!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Pour une raison inconnue, la création du répertoire de sauvegarde a échouée. Sorry!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Désolé, la sauvegarde a échouée" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Désolé, la suppression des objets a échouée" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Coller" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Déplacer" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "J'ai peur que votre version de zlib est trop ancienne pour faire cela :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Librairie manquante" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Ce fichier est compressé, mais ce n'est pas une archive donc vous ne pouvez pas le lire." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Désolé" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "J'ai peur de ne pas pouvoir regarder à l’intérieur de ce type d'archive." #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Dossier des Favoris" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Séparateur" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Dupliqué" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Déplacé" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Copié" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Renommer le Dossier" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Éditer le Favori" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "Nouveau Séparateur" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "Nouveau Dossier" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Impossible de charger la barre de Menu !?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Impossible de trouver le menu !?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Favoris" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Désolé, impossible de localiser ce dossier" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Favori ajouté" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Perdre toutes les modifications ?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Désolé, le dossier %s existe déjà\n Réessayer ?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Dossier ajouté" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Séparateur ajouté" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Désolé, le dossier %s existe déjà\n Changer de nom ?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Oops ?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Comment voulez-vous nommer le Dossier ?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Collé" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Désolé, vous n'avez pas le droit de déplacer le dossier principal" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Désolé, vous n'avez pas le droit de déplacer le dossier principal" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Supprimer le dossier %s et tout ce qu'il contient ?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Dossier supprimé" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Favori supprimé" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Bienvenue sur 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane est un Gestionnaire de Fichiers dont le but est d'être rapide et complet sans superflu." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Veuillez cliquer sur Suivant pour configurer 4Pane pour votre système." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "Ici" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "Favoris : Nouveau Séparateur" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Ajouter un raccourci vers 4Pane sur votre bureau" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Je crains que vous n'ayez pas les permissions pour Copier ce fichier.\nVoulez-vous essayer à nouveau?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "On dirait que ce fichier n'est pas un fichier de configuration 4Pane valide.\nÊtes-vous absolument certain que vous voulez l'utiliser?" #: Configure.cpp:198 msgid "Fake config file!" msgstr "Faux fichier de configuration !" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "&Lancer un programme" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Aller dans le répertoire d'accueil" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Raccourcis" #: Configure.cpp:2041 msgid "Tools" msgstr "Outils" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Ajouter un outil" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Éditer un outil" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Supprimer un outil" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Appareils" #: Configure.cpp:2052 msgid "Automount" msgstr "Montage automatique" #: Configure.cpp:2054 msgid "Mounting" msgstr "" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Choisir un fichier" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Outils définis par l'utilisateur" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "Appareils USB" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "Affichage" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "Réseaux" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Ignoré)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Supprimer cet appareil ?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "Police par défaut" #: Configure.cpp:4036 msgid "Delete " msgstr "Supprimé " #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Êtes-vous sûr(e) ?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Cela semble être une adresse IP invalide" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Ce serveur est déjà dans la liste" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Veuillez saisir la commande à utiliser, y compris les options requises" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr " menu" #: Devices.cpp:305 msgid "&Display " msgstr "&Afficher " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Cacher " #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "&Éjecter" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "Montage automatique" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "Fichier" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "Vous devez saisir une commande valide. Ré-essayer ?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "Supprimer cet éditeur ?" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Annuler" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "Aide RegEx" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Fermer" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Répertoire" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Socket" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Supprimer %s ?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "couper" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Impossible de créer le répertoire" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Fichiers, taille totale" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Sous-répertoires" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "Déplacé" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "supprimé" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "supprimé" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Ajouter" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Chemin jusqu'au dossier samba" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane vous permet de faire (et d'annuler) la plupart des opérations" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "Quel est le nombre d'annulations possibles maximum?" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "Quand vous Collez/Déplacez/Renommez/Supprimez/etc des fichiers, la procédure est stockée pour qu'il y ait moyen de l' annuler, et de la refaire si besoin. Ceci est le nombre maximum d'annulations\nNotez que si vous supprimez le contenu d'un dossier qui contenait 100 fichiers, cela contera comme 100 procédures! Donc je vous recommande de mettre un grand nombre ici: au moins 10000" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "Le nombre d'objets dans un menu déroulant." #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "(voir l'infobulle)" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "Autre..." #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "secondes" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "Ajouter des bouton même pour les emplacements vides" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "Que faire si 4Pane a monté un appareil USB?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "Voulez-vous le démonter avant de quitter? Ceci ne s'applique qu'aux périphériques amovibles, et uniquement si votre distribution ne les démonte pas automatiquement." #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "Pour plus d’informations, lisez l'infobulle." #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "Quel fichier contient les données de la partition?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "Liste des partitions connues. Par défaut : /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "Quel dossier contient les données de l'appareil?" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "Contient des \"fichiers\", comme hda1, sda1. Pour l'instant /dev/" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "Quel fichier(s) contient/nent les infos de la disquette" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "Les informations sur les disquettes se trouvent généralement dans /sys/block/fd0, /sys/block/fd1 etc.\nNe mettez pas le bit 0, 1 ici, uniquement /sys/block/fd ou autre" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Localiser" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Options" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "Ne pas compresser" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Essayez de vérifier l’intégrité de l'archive une fois celle-ci créée. Non garantie, mais mieux que rien. Cependant, Prend beaucoup de temps pour les grandes archives." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "Supprimer les fichiers source une fois qu'ils ont été ajoutés à l'archive. Pour les utilisateurs courageux seulement, à moins que les fichiers ne soient pas importants!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "Supprimer les fichiers source" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Naviguer" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Plus rapide" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Extraire les Fichiers Compressés" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "Si un fichier porte le même nom qu'un fichier extrait, écrasez-le automatiquement." #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "Écraser les fichiers existants" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Décompresser les archives aussi" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Extraire une Archive" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Archive à Extraire" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Vérifier les Fichiers Compressés" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Fichier(s) Compressés à Verifier" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "&Vérifier les Fichiers Compressés" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Vérifier une Archive" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Archive à Vérifier" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Souhaitez-vous Extraire une Archive ou Décompresser des fichiers?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "&Extraire une Archive" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Propriétés" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Monter une Partition" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Lecture Seule" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "Aucun fichiers du système de fichier ne doit être exécuté" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Fichiers non exécutables" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Utilisateur distant" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "@" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Nom d'hôte" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr ":" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Répertoire distant" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Autres options:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Monter un fichier iso" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Choisissez un serveur" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Ajouter manuellement un autre serveur" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "Monter en lecture-écriture" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "Monter en lecture seule" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "Ajouter un serveur NFS" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "Adresse IP du nouveau serveur" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "Serveurs disponibles" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "Adresse IP" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Nom d'hôte" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "Nom d'utilisateur" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "Mot de passe" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Démonter une partition" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "Exécuter en tant que super-utilisateur" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "nécessite des privilèges supplémentaires" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "Recherche rapide" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "nom" #: moredialogs.xrc:12778 msgid "path" msgstr "chemin" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/Makefile.am0000644000175000017500000000135713205575137014774 0ustar daviddavid all-local: clean-local @if ! test -f $(MSGFMT) ; then \ echo "msgfmt not found. You probably need to install the gettext package"; \ exit 1; \ else \ ## The complexity is because of 'make distcheck' which builds in a subdir, so we have to mkdir before we can msgfmt. $(srcdir) is ../../locale and $(builddir) '.' ## The 'find' output is e.g. ./fr.po which we cut to get 'fr' find $(srcdir) -path *LC_MESSAGES/*.po -execdir sh -c 'echo {} | cut -d/ -f2 | cut -d. -f1' \; | xargs -I {} -- sh -c '$(MKDIR_P) $(abs_builddir)/{}/LC_MESSAGES && $(MSGFMT) $(srcdir)/{}/LC_MESSAGES/{}.po -o $(abs_builddir)/{}/LC_MESSAGES/4Pane.mo' ; \ fi distclean-local: clean-local clean-local: @`find $(builddir) -path *LC_MESSAGES/*.mo -execdir rm -f {} \;` ./4pane-6.0/locale/Makefile.in0000666000175000017500000003051413567046157015014 0ustar daviddavid# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ VPATH = @srcdir@ am__is_gnu_make = { \ if test -z '$(MAKELEVEL)'; then \ false; \ elif test -n '$(MAKE_HOST)'; then \ true; \ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ true; \ else \ false; \ fi; \ } am__make_running_with_option = \ case $${target_option-} in \ ?) ;; \ *) echo "am__make_running_with_option: internal error: invalid" \ "target option '$${target_option-}' specified" >&2; \ exit 1;; \ esac; \ has_opt=no; \ sane_makeflags=$$MAKEFLAGS; \ if $(am__is_gnu_make); then \ sane_makeflags=$$MFLAGS; \ else \ case $$MAKEFLAGS in \ *\\[\ \ ]*) \ bs=\\; \ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ esac; \ fi; \ skip_next=no; \ strip_trailopt () \ { \ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ }; \ for flg in $$sane_makeflags; do \ test $$skip_next = yes && { skip_next=no; continue; }; \ case $$flg in \ *=*|--*) continue;; \ -*I) strip_trailopt 'I'; skip_next=yes;; \ -*I?*) strip_trailopt 'I';; \ -*O) strip_trailopt 'O'; skip_next=yes;; \ -*O?*) strip_trailopt 'O';; \ -*l) strip_trailopt 'l'; skip_next=yes;; \ -*l?*) strip_trailopt 'l';; \ -[dEDm]) skip_next=yes;; \ -[JT]) skip_next=yes;; \ esac; \ case $$flg in \ *$$target_option*) has_opt=yes; break;; \ esac; \ done; \ test $$has_opt = yes am__make_dryrun = (target_option=n; $(am__make_running_with_option)) am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : subdir = locale ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/.build/4Pane.m4 \ $(top_srcdir)/.build/wxwin.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) am__v_P_0 = false am__v_P_1 = : AM_V_GEN = $(am__v_GEN_@AM_V@) am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; am__v_GEN_1 = AM_V_at = $(am__v_at_@AM_V@) am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ am__v_at_1 = SOURCES = DIST_SOURCES = am__can_run_installinfo = \ case $$AM_UPDATE_INFO_DIR in \ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) am__DIST_COMMON = $(srcdir)/Makefile.in DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BZIP2_FLAGS = @BZIP2_FLAGS@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ EXTRA_CFLAGS = @EXTRA_CFLAGS@ EXTRA_CPPFLAGS = @EXTRA_CPPFLAGS@ EXTRA_CXXFLAGS = @EXTRA_CXXFLAGS@ EXTRA_LDFLAGS = @EXTRA_LDFLAGS@ GREP = @GREP@ GTKPKG_CFLAGS = @GTKPKG_CFLAGS@ GTKPKG_LDFLAGS = @GTKPKG_LDFLAGS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ LDFLAGS = @LDFLAGS@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PKG_CONFIG = @PKG_CONFIG@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ WX_CFLAGS = @WX_CFLAGS@ WX_CFLAGS_ONLY = @WX_CFLAGS_ONLY@ WX_CONFIG_PATH = @WX_CONFIG_PATH@ WX_CPPFLAGS = @WX_CPPFLAGS@ WX_CXXFLAGS = @WX_CXXFLAGS@ WX_CXXFLAGS_ONLY = @WX_CXXFLAGS_ONLY@ WX_DEBUG = @WX_DEBUG@ WX_LIBS = @WX_LIBS@ WX_LIBS_STATIC = @WX_LIBS_STATIC@ WX_PORT = @WX_PORT@ WX_RESCOMP = @WX_RESCOMP@ WX_SHARED = @WX_SHARED@ WX_UNICODE = @WX_UNICODE@ WX_VERSION = @WX_VERSION@ WX_VERSION_MAJOR = @WX_VERSION_MAJOR@ WX_VERSION_MICRO = @WX_VERSION_MICRO@ WX_VERSION_MINOR = @WX_VERSION_MINOR@ XTRLIBS = @XTRLIBS@ XZFLAGS = @XZFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build_alias = @build_alias@ builddir = @builddir@ datadir = @datadir@ datarootdir = @datarootdir@ docdir = @docdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign locale/Makefile'; \ $(am__cd) $(top_srcdir) && \ $(AUTOMAKE) --foreign locale/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): tags TAGS: ctags CTAGS: cscope cscopelist: distdir: $(BUILT_SOURCES) $(MAKE) $(AM_MAKEFLAGS) distdir-am distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ dist_files=`for file in $$list; do echo $$file; done | \ sed -e "s|^$$srcdirstrip/||;t" \ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ case $$dist_files in \ */*) $(MKDIR_P) `echo "$$dist_files" | \ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ sort -u` ;; \ esac; \ for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ if test -d $$d/$$file; then \ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d "$(distdir)/$$file"; then \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ test -f "$(distdir)/$$file" \ || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile all-local installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: if test -z '$(STRIP)'; then \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ install; \ else \ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-local mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic distclean-local dvi: dvi-am dvi-am: html: html-am html-am: info: info-am info-am: install-data-am: install-dvi: install-dvi-am install-dvi-am: install-exec-am: install-html: install-html-am install-html-am: install-info: install-info-am install-info-am: install-man: install-pdf: install-pdf-am install-pdf-am: install-ps: install-ps-am install-ps-am: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: .MAKE: install-am install-strip .PHONY: all all-am all-local check check-am clean clean-generic \ clean-local cscopelist-am ctags-am distclean distclean-generic \ distclean-local distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-dvi \ install-dvi-am install-exec install-exec-am install-html \ install-html-am install-info install-info-am install-man \ install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ uninstall-am .PRECIOUS: Makefile all-local: clean-local @if ! test -f $(MSGFMT) ; then \ echo "msgfmt not found. You probably need to install the gettext package"; \ exit 1; \ else \ find $(srcdir) -path *LC_MESSAGES/*.po -execdir sh -c 'echo {} | cut -d/ -f2 | cut -d. -f1' \; | xargs -I {} -- sh -c '$(MKDIR_P) $(abs_builddir)/{}/LC_MESSAGES && $(MSGFMT) $(srcdir)/{}/LC_MESSAGES/{}.po -o $(abs_builddir)/{}/LC_MESSAGES/4Pane.mo' ; \ fi distclean-local: clean-local clean-local: @`find $(builddir) -path *LC_MESSAGES/*.mo -execdir rm -f {} \;` # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: ./4pane-6.0/locale/pl/0000755000175000017500000000000012250631524013335 5ustar daviddavid./4pane-6.0/locale/pl/LC_MESSAGES/0000755000175000017500000000000013567054715015137 5ustar daviddavid./4pane-6.0/locale/pl/LC_MESSAGES/pl.po0000644000175000017500000055063613565000251016111 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Dawid Runowski , 2019 # Tomasz PrzybyÅ‚ , 2014-2015 # Michael Smith , 2018 # Tomasz "Ludvick" Niedzielski , 2013 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2019-01-07 12:23+0000\n" "Last-Translator: Dawid Runowski \n" "Language-Team: Polish (http://www.transifex.com/davidgh/4Pane/language/pl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pl\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "PrzesuniÄ™cie" #: Accelerators.cpp:213 msgid "C&ut" msgstr "Wytnij" #: Accelerators.cpp:213 msgid "&Copy" msgstr "Kopiuj" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "PrzenieÅ› do Kosza" #: Accelerators.cpp:213 msgid "De&lete" msgstr "UsuÅ„" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "UsuÅ„ trwale" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "ZmieÅ„ nazwÄ™" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "Duplikuj" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "WÅ‚aÅ›ciwoÅ›ci" #: Accelerators.cpp:214 msgid "&Open" msgstr "Otwórz" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Otwórz za pomocÄ…..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "Wklej" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Utwórz dowiÄ…zanie trwaÅ‚e" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Utwórz dowiÄ…zanie symboliczne" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "UsuÅ„ zakÅ‚adkÄ™" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "ZmieÅ„ nazwÄ™ zakÅ‚adki" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Przywróć" #: Accelerators.cpp:215 msgid "&Redo" msgstr "Ponów" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Zaznacz wszystko" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "Nowy plik lub katalog" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "Nowa zakÅ‚adka" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "Wstaw zakÅ‚adkÄ™" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Duplikuj tÄ™ zakÅ‚adkÄ™" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "Pokazuj nawet pojedynczy nagłówek zakÅ‚dki" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Nadaj wszystkim zakÅ‚adkom równÄ… szerokość" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "Replikuj do przeciwnej zakÅ‚adki" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "ZamieÅ„ panele" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Rozmieść panele pionowo" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Rozmieść panele poziomo" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "Cofnij rozmieszczenie paneli" #: Accelerators.cpp:217 msgid "&Extension" msgstr "Rozszerzenie" #: Accelerators.cpp:217 msgid "&Size" msgstr "Wielkość" #: Accelerators.cpp:217 msgid "&Time" msgstr "Czas" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "Uprawnienia" #: Accelerators.cpp:218 msgid "&Owner" msgstr "WÅ‚aÅ›ciciel" #: Accelerators.cpp:218 msgid "&Group" msgstr "Grupa" #: Accelerators.cpp:218 msgid "&Link" msgstr "DowiÄ…zanie" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Pokaż wszystkie kolumny" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "Nie pokazuj wszystkich kolumn" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Zapisz ustawienia paneli" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Zapisz ustawienia paneli przy wyjÅ›ciu" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "Zapisz ukÅ‚ad jako szablon" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "UsuÅ„ szablon" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "OdÅ›wież widok" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "Uruchom terminal" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "Filtruj widok" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Pokaż/Ukryj ukryte pliki i katalogi" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "Dodaj do zakÅ‚adek" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "ZarzÄ…dzaj zakÅ‚adkami" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "Zamontuj partycjÄ™" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "Odmontuj partycjÄ™" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Zamontuj obraz ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "Zamontuj NFS export" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Zamontuj katalog Samby " #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "Odmontuj podłączenie sieciowe" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "Odmontuj" #: Accelerators.cpp:224 msgid "Unused" msgstr "Nieużywany" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Pokaż emulator terminalu" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Pokaż liniÄ™ komend" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "Przejdź do wybranego pliku" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "Opróżnij Kosz" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Trwale usuÅ„ 'usuniÄ™te' pliki" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "Rozpakuj archiwum lub skompresowany plik" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Utwórz nowe archiwum" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "Dodaj do istniejÄ…cego archiwum" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "Sprawdź integralność archiwum lub skompresowanego pliku" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "Kompresuj pliki" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "WyÅ›wietl rekursywnie wielkość folderów " #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Zachowaj wzglÄ™dne cele Symlink" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "Konfiguruj 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "WyjÅ›cie" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Pomoc kontekstowa" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "Zawartość pomocy" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "FAQ" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "O programie 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Konfiguruj skróty" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Przejdź do celu dowiÄ…zania sykmbolicznego" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Idź do Symlink Ultimate Target" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Edycja" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Nowy separator" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Powtórz poprzedni program" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Przejdź do przeciwnego panelu" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Przejdź do sÄ…siedniego panelu" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Przejdź do paneli" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Przełącz do Terminala" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Przełącz do Linii poleceÅ„" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Przejdź do paska narzÄ™dzi Textcontrol" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Idź do poprzedniej zakÅ‚adki" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Idź do nastÄ™pnej zakÅ‚adki" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "Pierwszy punkt" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "Przedostatni punkt" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "Ostatni punkt" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Zamontuj ssh&fs używajÄ…c SSH " #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "Pokaż poprzednie" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "Anuluj wklejani" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Wytnij wybrane elementy" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Kopiuje do bieżącego miejsca" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "PrzenieÅ› do Kosza" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Wklej zawartość schowka" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "UsuÅ„ zaznaczonÄ… zakÅ‚adkÄ™" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "ZmieÅ„ nazwÄ™ zaznaczonej zakÅ‚adki" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Dodaj nowÄ… zakÅ‚adkÄ™" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Wstaw nowÄ… zakÅ‚adkÄ™ za zaznaczonÄ…" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Ukryj nagłówek pojedynczej zakÅ‚adki" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Szukaj w plikach" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Pokaż/Ukryj emulator terminala" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Pokaż/Ukryj liniÄ™ poleceÅ„" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Zamknij program" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "Pokaż podglÄ…d grafiki i pliku tekstowego" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Anuluj bieżącÄ… operacjÄ™" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Ustawienie nie mogÅ‚o zostać zaÅ‚adowan" #: Accelerators.cpp:502 msgid "&File" msgstr "Plik" #: Accelerators.cpp:502 msgid "&Edit" msgstr "Edycja" #: Accelerators.cpp:502 msgid "&View" msgstr "Widok" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "Karty" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "ZakÅ‚adki" #: Accelerators.cpp:502 msgid "&Archive" msgstr "Archiwum" #: Accelerators.cpp:502 msgid "&Mount" msgstr "Zamontuj" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "NarzÄ™dzia" #: Accelerators.cpp:502 msgid "&Options" msgstr "Opcje" #: Accelerators.cpp:502 msgid "&Help" msgstr "Pomoc" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "Akcja" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Skrót" #: Accelerators.cpp:675 msgid "Default" msgstr "DomyÅ›lny" #: Accelerators.cpp:694 msgid "Extension" msgstr "Rozszerzenie" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "Pokaż kolumnÄ™ Rozszerzenie" #: Accelerators.cpp:694 msgid "Size" msgstr "Wielkość" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "Pokaż kolumnÄ™ Wielkość" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Czas" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "Pokaż kolumnÄ™ Czas" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Uprawnienia" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "Pokaż kolumnÄ™ Uprawnienia" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "WÅ‚aÅ›ciciel" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Grupa" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "Pokaż kolumnÄ™ grupy" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "ÅÄ…cze" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "Pokaż kolumnÄ™ ÅÄ…cze" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Pokaż wszystkie kolumny" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Widok plików: Pokaż wszystkie kolumny" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Ukryj wszystkie kolumny" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Widok plików: Ukryj wszystkie kolumny" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "ZakÅ‚adki: Edycja" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "ZakÅ‚adki: Nowy separator" #: Accelerators.cpp:697 msgid "First dot" msgstr "Pierwszy punkt" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Porzucić wprowadzone zmiany?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Czy jesteÅ› pewien?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "CoÅ› poszÅ‚o źle!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Wybierz plik(i) i/lub katalogi" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Wybierz lokalizacjÄ™ do przechowywania archiwum" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Oops" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "Nie można znaleźć poprawnego archiwum do dołączenia" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Nawiguj do archwium w celu weryfikacji" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "Nie znaleziono rpm2cpio w systemie..." #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "Nie można odnaleźć poprawnego archiwum do dekompresji.\nSpróbować ponownie?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Plik(i) skompresowano" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Błąd podczas kompresji" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Plik(i) zdekompresowano" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Błąd podczas dekompresji" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Plik(i) zweryfikowano" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Weryfikacje siÄ™ nie udaÅ‚a" #: Archive.cpp:1242 msgid "Archive created" msgstr "Archiwum utworzone" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Błąd podczas tworzenia archiwum" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Plik(i) dodane do archiwu" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Dodawanie do archiwum siÄ™ nie udaÅ‚o" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archiwum wyodrÄ™bniono" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "WyodrÄ™bnienie plików siÄ™ nie udaÅ‚o" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archiwum zweryfikowane" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "Do którego katalogu chciaÅ‚byÅ› wyodrÄ™bnić te pliki?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "Do którego katalogu chciaÅ‚byÅ› to wyodrÄ™bnić?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "wyodrÄ™bnianie z archiwum" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Niestety nie masz wystarczajÄ…cych uprawnieÅ„, żeby tworzyć w tym katalogu Spróbować ponownie?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Niestety nie udaÅ‚o siÄ™ utworzyć pliku dir do kopi zapasowej. Przepraszamy!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "WystÄ…piÅ‚ błąd podczas tworzenia kopii zapasowej. Przepraszamy" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "Nie mogÄ™ zajrzeć do tego rodzaju archwium, dopóki nie zainstalujesz liblzma." #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Przepraszamy" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Foldery z zakÅ‚adkami" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Przeniesiono" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Skopiowano" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "ZmieÅ„ nazwÄ™ folderu" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Edytuj zakÅ‚adkÄ™" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "NowyFolder" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "ZakÅ‚adki" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Witaj w 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane, to menadżer plików, który ma być szybki i w peÅ‚ni funkcjonalny, bez zbÄ™dnych dodatków." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "NaciÅ›nij Dalej, by skonfigurować 4Pane." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "JeÅ›li już posiadasz plik konfiguracyjny, którego chciaÅ‚byÅ› użyć, kliknij" #: Configure.cpp:69 msgid "Here" msgstr "Tutaj" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "RozejrzaÅ‚em siÄ™ nieco po Twoim systemie i stworzyÅ‚em konfiguracjÄ™, która powinna dziaÅ‚ać." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "PeÅ‚niejszÄ… konfiguracjÄ™ możesz przeprowadzić w dowolnym czasie, używajÄ…c menu Opcje > Konfiguruj 4Pane. " #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Umieść skrót do 4Pane na pulpicie" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "" #: Configure.cpp:2041 msgid "Tools" msgstr "" #: Configure.cpp:2043 msgid "Add a tool" msgstr "" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "" #: Configure.cpp:2052 msgid "Automount" msgstr "" #: Configure.cpp:2054 msgid "Mounting" msgstr "" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "Zlokalizuj" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Wielkość:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/da/0000755000175000017500000000000012120710621013276 5ustar daviddavid./4pane-6.0/locale/da/LC_MESSAGES/0000755000175000017500000000000013567054715015110 5ustar daviddavid./4pane-6.0/locale/da/LC_MESSAGES/da.po0000644000175000017500000072676213205575137016053 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # DavidGH , 2011 # Joe Hansen , 2011 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Danish (http://www.transifex.com/davidgh/4Pane/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: da\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Skift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "K&lip" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Kopier" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Send til &papirkurv" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Slet" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Slet permanent" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "&Omdøb" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Dupliker" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&Egenskaber" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Ã…bn" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Ã…bn %med..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Indsæt" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Lav en &hÃ¥rd henvisning" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Lav en &symbolsk henvisning" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "&Slet faneblad" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "&Omdøb faneblad" #: Accelerators.cpp:215 msgid "Und&o" msgstr "&Fortryd" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Gendan" #: Accelerators.cpp:215 msgid "Select &All" msgstr "&Vælg alle" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Ny fil eller mappe" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "Nyt faneblad" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&Indsæt faneblad" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "&Dupliker dette faneblad" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "Vis lige &enkeltfanebladshoved" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Giv alle fanebladshoveder ens &bredde" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "&Repliker i modsat panel" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "&Ombyt panelerne" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Opdel paneler &lodret" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Opdel paneler &vandret" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "Fjern &opsplitning af paneler" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Filendelse" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Størrelse" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Tid" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Rettigheder" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Ejer" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Gruppe" #: Accelerators.cpp:218 msgid "&Link" msgstr "&Henvisning" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Vis &alle kolonner" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&Fjern visning af alle kolonner" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Gem &panelopsætning" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Gem panelopsætning ved &afslutning" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "&Gem layout som skabelon" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "&Slet en skabelon" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "&Opdater visning" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "Start &terminal" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&Filtervisning" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Vis/skjul skjulte mapper og filer" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&Tilføj til bogmærker" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "&HÃ¥ndter bogmærker" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "&Monter en partition" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "&Demonter en partition" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Monter et &ISO-aftryk" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "Monter en &NFS-eksport" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Monter en &Sambadeling" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Vis &terminalemulator" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Vis &kommandolinje" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&GÃ¥ til valgt fil" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "Tøm &papirkurven" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Slet &permanent »slettede« filer" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "&Udpak arkiv eller komprimerede filer" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Opret et &nyt arkiv" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "&Tilføj til et eksisterende arkiv" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "&Test integritet pÃ¥ arkiv eller komprimerede filer" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&Pak filer" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&Vis rekursiv mappestørrelser" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "&Bevar relative mÃ¥l for symbolske henvisninger" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "&Konfigurer 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "&Afslut" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Kontekstafhængig hjælp" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "&Hjælpindhold" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&OSS" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&Om 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Konfigurer genveje" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "GÃ¥ til mÃ¥l for symbolsk henvisning" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "GÃ¥ til mÃ¥l for symbolsk henvisning ultimate" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Rediger" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Nyt adskillelsestegn" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Gentag forrige program" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Klipper den aktuelle markering" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Kopier den aktuelle markering" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Send til papirkurven" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Dræb, men kan mÃ¥ske komme til live igen" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Slet med stor omhu" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Indsæt indholdet af udklipsholderen" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Lav hÃ¥rd henvisning af indholdet i udklipsholderen hertil" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Lav blød henvisning af indholdet i udklipsholderen hertil" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Slet det aktuelt valgte faneblad" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Omdøb det aktuelt valgte faneblad" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Tilføj et nyt faneblad" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Indsæt et nyt faneblad efter den aktuelt valgte" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Skjul hovedet pÃ¥ et enkelt faneblad" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Kopier denne sides sti til det modsatte panel" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Ombyt en sides sti med den anden" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Gem layout pÃ¥ paneler indenfor hvert faneblad" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Gem altid layoutet pÃ¥ paneler ved afslutning" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Gem disse faneblade som en genindlæsbar skabelon" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Tilføj det aktuelt valgte punkt til dine bogmærker" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Omarranger, omdøb eller slet bogmærker" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Find ens filer" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Søg indeni filer" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Vis/skjul terminalemulatoren" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Vis/skjul kommandolinjen" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "Tøm 4Panes egen papirkurv" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Slet 4Panes mappe: »Slettet«" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Hvorvidt mappestørrelser skal kalkuleres rekursivt i filvisninger" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Ved flytning af en relativ symbolsk henvisning, bevar dens mÃ¥l" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Luk dette program" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\nTabellerne i ImplementDefaultShortcuts() er ikke af ens størrelse!" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Skift tilstand for fuldtræ" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Kunne ikke indlæse konfiguration!?" #: Accelerators.cpp:502 msgid "&File" msgstr "&Fil" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Rediger" #: Accelerators.cpp:502 msgid "&View" msgstr "&Visning" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Faneblade" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "&Bogmærker" #: Accelerators.cpp:502 msgid "&Archive" msgstr "&Arkiv" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Monter" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "&Værktøjer" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Indstillinger" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Hjælp" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "&Kolonner der skal vises" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "&Indlæs en fanebladsskabelon" #: Accelerators.cpp:673 msgid "Action" msgstr "Handling" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Genvej" #: Accelerators.cpp:675 msgid "Default" msgstr "Standard" #: Accelerators.cpp:694 msgid "Extension" msgstr "Filendelse" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "(Fjern)Vis kolonne for filendelser" #: Accelerators.cpp:694 msgid "Size" msgstr "Størrelse" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "(Fjern)vis kolonne for filstørrelse" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Tid" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "(Fjern)Vis kolonne for filernes tidsstempel" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Rettigheder" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "(Fjern)Vis kolonne for filrettigheder" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Ejer" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "(Fjern)Vis kolonne for filejer" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Gruppe" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "(Fjern)Vis kolonne for filgrupper" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Henvisning" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "(Fjern)Vis kolonne for filhenvisninger" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Vis alle kolonner" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Filvisning: Vis alle kolonner" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Fjern visning af alle kolonner" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Filvisning: Fjern alle kolonner" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Bogmærker: Rediger" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Bogmærker: Nyt adskillelsestegn" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Mist ændringer?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Er du sikker?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Indtast den nye etiket der skal vises for dette menupunkt" #: Accelerators.cpp:958 msgid "Change label" msgstr "Ændr etiket" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "Indtast hjælpestrengen der skal vises for dette menupunkt\nAfbryd vil rydde strengen" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "Ændr hjælpestreng" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "Jeg kan ikke finde denne fil eller mappe.\nForsøg med knappen Gennemse." #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Oops!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Vælg filer og/eller mapper" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Vælg mappen hvori arkivet skal gemmes" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Led efter arkivet hvor der skal tilføjes til" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "Mappen, hvori du ønsker at oprette arkivet, ser ikke ud til at eksistere.\nBrug den aktuelle mappe?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "Arkivet, hvori du forsøger at tilføje, ser ikke ud til at eksistere.\nForsøg igen?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Oops" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "Ingen relevante pakkede filer blev valgt.\nForsøg igen?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Find arkivet der skal verificeres" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Vælg mappen hvori arkivet skal udpakkes til" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "Kunne ikke oprette den ønskede modtagelsesmappe.\nForsøg igen?" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "Kan ikke finde et gyldig arkiv at udpakke.\nForsøg igen?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "Kan ikke finde et gyldigt arkiv at verificere.\nForsøg igen?" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Filer pakket" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Pakning mislykkedes" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Filer pakket ud" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Udpakning mislykkedes" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Verifikation mislykkedes" #: Archive.cpp:1242 msgid "Archive created" msgstr "Arkiv oprettet" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Arkivoprettelse mislykkedes" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Filer tilføjet til arkiv" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Arkivtilføjelse mislykkedes" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Arkiv udpakket" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Udpakning mislykkedes" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "Til hvilken mappe ønsker du at udpakke disse filer?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "Til hvilken mappe ønsker du denne udpakket?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Udpakker fra arkiv" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Beklager, du har ikke oprettelsesrettighed i denne mappe\n Forsøg igen?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Ingen post!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Beklager, %s findes allerede\n Forsøg igen?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Beklager, du har ikke rettighed til at skrive til denne mappe" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Beklager, du har ikke rettighed til filerne i denne mappe" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Ingen afslutning!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Af en eller anden Ã¥rsag mislykkedes forsøget pÃ¥ at oprette en mappe til modtagelse af sikkerhedskopien. Beklager!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Beklager, sikkerhedskopiering mislykkedes" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Beklager, fjernelse af punkter mislykkedes" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Indsæt" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Flyt" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Beklager, du skal være administrator (root) for at udpakke tegn eller blokenheder" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Din zlib er for gammel til, at du kan udføre dette :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Filen er pakket, men den er ikke et arkiv, sÃ¥ du kan ikke kigge indenfor." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Beklager" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Bogmærkemapper" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Adskillelsestegn" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Duplikeret" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Flyttet" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Kopieret" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Omdøb mappe" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Rediger bogmærke" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "Nyt adskillelsestegn" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "Ny mappe" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Kunne ikke indlæse menubjælke!?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Kunne ikke finde menu!?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Dette afsnit findes ikke i ini-filen!?" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Bogmærker" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Beklager, kunne ikke lokalisere den mappe" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Bogmærke tilføjet" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Mist alle ændringer?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "Hvilken etiket ønsker du til den nye mappe?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Beklager, der er allerede en mappe med navnet %s\n Forsøg igen?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Mappe tilføjet" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Adskillelsestegn tilføjet" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Beklager, der er allerede en mappe med navnet %s\n Ændr navnet?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Oops?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Hvad vil du kalde mappen?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "Hvilken etiket skal mappen have?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Indsat" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Ændr mappetiketten nedenfor" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Beklager, du har ikke tilladelse til at flytte hovedmappen" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Beklager, du har ikke tilladelse til at slette hovedmappen" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "Tsk tsk!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Slet mappe %s og hele dens indhold?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Mappe slettet" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Bogmærke slettet" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Velkommen til 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane er en filhÃ¥ndtering, som forsøger at være hurtig og have alle væsentlige funktioner." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Klik venligst Fremad for at konfigurere 4Pane til dit system." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "Eller hvis der allerede er en konfigurationsfil, som du ønsker at kopiere, klik" #: Configure.cpp:69 msgid "Here" msgstr "Her" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Ressourcer lokaliseret. Tryk venligst pÃ¥ Fremad" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "Jeg har kigget pÃ¥ dit system, og oprettet en konfiguration som bør virke." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "Du kan selv lave en fuld konfiguration pÃ¥ ethvert tidspunkt fra Indstillinger > Konfigurer 4Pane." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Placer en genvej til 4Pane pÃ¥ skrivebordet" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Find konfigurationsfilen der skal kopieres" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Beklager du har ikke rettighed til at kopiere denne fil.\nØnsker du at forsøge igen?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Find ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Find ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Find ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "&Kør et program" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "GÃ¥ til hjemmemappe" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "GÃ¥ til mappen for dokumenter" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Hvis du ser denne besked (og det burde du ikke!), er det fordi konfigurationsfilen ikke kunne gemmes.\nDen tætteste Ã¥rsag vil være forkerte rettigheder eller en skrivebeskyttet partition." #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Genveje" #: Configure.cpp:2041 msgid "Tools" msgstr "Værktøjer" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Tilføj et værktøj" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Rediger et værktøj" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Slet et værktøj" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Enheder" #: Configure.cpp:2052 msgid "Automount" msgstr "Monter automatisk" #: Configure.cpp:2054 msgid "Mounting" msgstr "Monterer" #: Configure.cpp:2056 msgid "Usb" msgstr "Usb" #: Configure.cpp:2058 msgid "Removable" msgstr "Ekstern" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fast" #: Configure.cpp:2062 msgid "Advanced" msgstr "Avanceret" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Avanceret faste" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Avanceret eksterne" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "Avanceret lvm" #: Configure.cpp:2072 msgid "The Display" msgstr "Skærmen" #: Configure.cpp:2074 msgid "Trees" msgstr "Træer" #: Configure.cpp:2076 msgid "Tree font" msgstr "Skrifttype for træ" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Div." #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminaler" #: Configure.cpp:2083 msgid "Real" msgstr "Reel" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulator" #: Configure.cpp:2088 msgid "The Network" msgstr "Netværket" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Diverse" #: Configure.cpp:2093 msgid "Numbers" msgstr "Tal" #: Configure.cpp:2095 msgid "Times" msgstr "Tid" #: Configure.cpp:2097 msgid "Superuser" msgstr "Superbruger" #: Configure.cpp:2099 msgid "Other" msgstr "Andet" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr " Stop gtk2's tilfangetagelse af F10-tasten" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "Hvis denne er slÃ¥et fra, vil gtk2 fange tryk pÃ¥ F10-tasten, sÃ¥ du kan ikke bruge den som en genvej (Tasten er standard for »Ny fil eller mappe«)." #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "Beklager, der er ikke plads til endnu en undermenu her\nJeg anbefaler, at du placerer den et andet sted" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Indtast navnet pÃ¥ den nye undermenu, som skal tilføjes til " #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "Beklager, en menu med dette navn findes allerede\n Forsøg igen?" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "Beklager, du har ikke tilladelse til at slette rootmenuen" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "Slet menu »%s« og hele menuens indhold?" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "Jeg kan ikke finde en kørbar kommando »%s«.\nFortsæt alligevel?" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Jeg kan ikke finde en kørbar kommando »%s« i din STI.\nFortsæt alligevel?" #: Configure.cpp:2471 msgid " Click when Finished " msgstr " Klik nÃ¥r færdig " #: Configure.cpp:2477 msgid " Edit this Command " msgstr " Rediger denne kommando " #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "Slet kommando »%s«?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Vælg en fil" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Brugerdefinerede værktøjer" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "Enheder som automatisk monteres" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "Enhedsmontering" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "Enheders usb" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "Eksterne enheder" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "Faste enheder" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "Avanceret enheder faste" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "Avanceret enheder eksterne" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "Avanceret enheder LVM" #: Configure.cpp:2739 msgid "Display" msgstr "Vis" #: Configure.cpp:2739 msgid "Display Trees" msgstr "Vis træer" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "Vis skrifttype for træ" #: Configure.cpp:2739 msgid "Display Misc" msgstr "Vis div." #: Configure.cpp:2740 msgid "Real Terminals" msgstr "Reelle terminaler" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Terminalemulator" #: Configure.cpp:2740 msgid "Networks" msgstr "Netværk" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "Div. fortryd" #: Configure.cpp:2741 msgid "Misc Times" msgstr "Div. tid" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "Div. superbruger" #: Configure.cpp:2741 msgid "Misc Other" msgstr "Div. andet" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "Der er ugemte ændringer pÃ¥ siden »%s«.\n Ønsker du at lukke alligevel?" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "Valgt skrift for træ" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "Standardskrift for træ" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Ignoreret)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Slet denne enhed?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "Valgt skrift for terminalemulator" #: Configure.cpp:3829 msgid "Default Font" msgstr "Standardskrift" #: Configure.cpp:4036 msgid "Delete " msgstr "Slet " #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Er du sikker?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Det ligner ikke en gyldig ip-adresse" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Den server er allerede pÃ¥ listen" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Indtast venligst kommandoen, inklusive alle krævede tilvalg" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "Kommando til en andet gui su-program" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "Hvert metanøglemønster skal være unikt. Forsøg igen?" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "Slet denne værktøjsbjælkeknap?" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "Find filstien der skal tilføjes" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr " menu" #: Devices.cpp:305 msgid "&Display " msgstr "&Vis " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Fjern " #: Devices.cpp:308 msgid "&Mount " msgstr "&Monter " #: Devices.cpp:308 msgid "&UnMount " msgstr "&Demonter " #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "Monter en dvd-&ram" #: Devices.cpp:347 msgid "Display " msgstr "Vis " #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "Demonter dvd-&ram" #: Devices.cpp:354 msgid "&Eject" msgstr "&Skub ud" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "Hvilken montering ønsker du at fjerne?" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "Demonter en dvd-ram-disk" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "Klik eller træk hertil for at starte " #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "Beklager du har ikke rettighed til at læse denne fil" #: Devices.cpp:581 msgid "Failed" msgstr "Mislykkedes" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "Filer kunne ikke Ã¥bnes pÃ¥ grund af manglende læserettighed" #: Devices.cpp:592 msgid "Warning" msgstr "Advarsel" #: Devices.cpp:843 msgid "Floppy" msgstr "Floppy" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, det drev ser ikke ud til at være tilgængeligt.\n\n MÃ¥ du have en god dag!" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, den partition ser ikke ud til at være tilgængelig.\n\n Hav en god dag!" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Beklager, du skal være administrator (root) for at demontere partitioner af typen non-fstab" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "Beklager, kunne ikke demontere" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "\n(Du skal su til root)" #: Devices.cpp:1435 msgid "The partition " msgstr "Partitionen " #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr " har ikke et fstab-indgang.\nHvor vil du montere den?" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "Monter en non-fstab-partition" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "Monteringspunktet for denne enhed findes ikke. Opret det?" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "Beklager, du skal være administrator (root) for at montere non-fstab-partitioner" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "Oops, kunne ikke montere\nDer var et problem med /etc/mtab" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "Oops, kunne ikke montere\n Forsøg med indsættelse af en funktionsdygtig disk" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "Oops, kunne ikke montere pÃ¥ grund af en fejl " #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "Oops, kunne ikke montere\nHar du de korrekte rettigheder?" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "Jeg kan ikke finde filen med listen over partitionerne, " #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "\n\nDu skal bruge Konfigurer for at løse dette" #: Devices.cpp:1662 msgid "File " msgstr "Fil " #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "Jeg kan ikke finde filen med listen over scsi-punkter, " #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "Du skal indtaste en gyldig kommando. Forsøg igen?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "Ingen app indtastet" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "Den filsti ser ikke ud til at eksistere pÃ¥ nuværende tidspunkt.\n Brug den alligevel?" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "App ikke fundet" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "Slet denne redigering?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Afbryd" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "Vælg venligst den korrekte ikontype" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "Jeg er bange for, at du ikke har læserettighed til denne fil" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "Et problem opstod: Modtagelsesmappen findes ikke! Beklager." #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "Et problem opstod: Den indgÃ¥ende mappe findes ikke! Beklager." #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "Der er allerede en mappe i arkivet med det navn " #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "\nJeg foreslÃ¥r du enten omdøber den, eller den indgÃ¥ende mappe" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "Af en eller anden Ã¥rsag mislykkedes forsøget pÃ¥ at oprette en mappe til midlertidig gemning af den overskrevet fil. Beklager!" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "Begge filer har det samme ændringstidspunkt" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "Den aktuelle fil blev ændret den " #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "Den indgÃ¥ende fil blev ændret den " #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "Det virker som om, at du ønsker at overskrive denne mappe med sig selv" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "Beklager, det navn er optaget. Forsøg venligst igen." #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "Nej, ideen er at du ændrer navnet" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "Beklager, jeg kunne ikke duplikere filen. MÃ¥ske et rettighedsproblem?" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "Beklager, jeg kunne ikke lave plads til den indgÃ¥ende mappe. MÃ¥ske et rettighedsproblem?" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "Beklager, en usandsynlig filsystemfejl opstod :-(" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "Sletning af symbolsk henvisning mislykkedes!?!" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "Dupliker flere gange" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "Bekræft duplikation" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "Hjælp til regulære udtryk" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Lykkedes\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "Proces mislykkedes\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "Proces afbrudt\n" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "Beklager, kunne ikke afbryde\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "Kørsel af »%s« mislykkedes." #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Luk" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Regulær fil" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Symbolsk henvisning" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Ødelagt symbolsk henvisning" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Tegnenhed" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Blokenhed" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Mappe" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Sokkel" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "Ukendt type?!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Programmer" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "Beklager, du har ikke ret til at slette root-mappen" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "Suk!" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "Slet mappe %s?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "Beklager, jeg kunne ikke finde den mappe!?" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "Jeg kan ikke finde et kørbart program »%s«.\nFortsæt alligevel?" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Jeg kan ikke finde et kørbart program »%s« i din STI.\nFortsæt alligevel?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Beklager, der er allerede et program ved navn %s\n Forsøg igen?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Bekræft venligst" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "Du indtastede ikke en filendelse!" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "For hvilke filendelser ønsker du, at dette program skal være standard?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "For hvilke filendelser ønsker du, at %s skal være standard" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "Erstat %s\nmed %s\nsom standardkommando for filer af typen %s?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "Beklager, jeg kunne ikke finde programmet!?" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Slet %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Rediger programdataene" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Beklager, du har ikke tilladelse til at køre denne fil." #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "Beklager, du har ikke tilladelse til at køre denne fil.\nVil du forsøge at læse den?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "Brug ikke længere %s som standardkommando for filer af typen %s?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Vis skjulte" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "klip" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "Du har ikke indtastet et monteringspunkt.\nForsøg igen?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "Monteringspunktet for denne partition findes ikke. Opret den?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Monteret pÃ¥ " #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Umuligt at oprette mappe " #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Oops, kunne ikke oprette mappen" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "Oops, jeg har ikke nok rettigheder til at oprette mappen" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "Demontering administrator (root) er VIRKELIG en dÃ¥rlig ide!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Kunne ikke demontere " #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr " demonteret" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "Oops, kunne ikke demontere pÃ¥ grund af fejl " #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Oops kunne ikke demontere" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "Det anmodede monteringspunkt findes ikke. Opret det?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Oops, kunne ikke montere\nEr du sikker pÃ¥, at filen er et gyldigt aftryk?" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "Denne eksport er allerede monteret pÃ¥ " #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "Monteringspunktet for denne eksport findes ikke. Opret den?" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "Monteringspunktet for denne deling findes ikke. Opret den?" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "Beklager, du skal være administrator (root) for at montere non-fstab-eksporter" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "Oops, kunne ikke montere\nKører NFS?" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "Denne deling er allerede monteret pÃ¥ " #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "Beklager, du har brug for at være administrator (root) for at montere delinger af typen non-fstab" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "Ingen montering af denne type fundet" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "Del eller eksporter til demonter" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Monteringspunkt" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr " Demonteret" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "Vælg en mappe som skal bruges som monteringspunkt" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "Vælg et aftryk til montering" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "Beklager, jeg kan ikke finde redskabet showmount. Brug venligst Konfigurer > Netværk til at indtaste dens filsti" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Jeg kan ikke finde redskabet »showmount«. Dette betyder sikkert, at NFS ikke er korrekt installeret.\nMÃ¥ske er der et STI- eller rettighedsproblem" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "Jeg kender ikke til nogen NFS-servere pÃ¥ dit netværk.\nØnsker du at fortsætte, og skrive nogle ind selv?" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "Ingen aktuelle monteringer fundet" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "Du kan ikke henvise indeni en mappe med mindre du ændrer henvisningens navn." #: MyDirs.cpp:118 msgid "Not possible" msgstr "Ikke muligt" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "Tilbage til forrige mappe" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "Genindtast mappe" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "Vælg tidligere besøgt mappe" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "Vis fuldt træ" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "Op til højere mappe" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Hjem" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "Hmm. Det ser ud til, at den mappe ikke længere findes!" #: MyDirs.cpp:664 msgid " D H " msgstr " D H " #: MyDirs.cpp:664 msgid " D " msgstr " D " #: MyDirs.cpp:672 msgid "Dir: " msgstr "Mappe: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Filer, størrelse i alt" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Undermapper" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "Beklager, du kan ikke oprette indeni et arkiv.\nDu kan dog oprette det nye element udenfor, og sÃ¥ flytte det ind." #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "Beklager, du har ikke rettighed til at oprette i denne mappe" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "&Skjul skjulte mapper og filer\tCtrl+H" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "&Vis skjulte mapper og filer\tCtrl+H" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "flyttet" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "Beklager, du har ikke de korrekte rettigheder til at udføre denne flytning.\nØnsker du at forsøge med Kopier i steden for?" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "Beklager, du har ikke de korrekte rettigheder til at udføre denne flytning" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "Beklager, du kan ikke oprette henvisniger inden i et arkiv.\nDu kan dog oprette den nye henvisning udenfor, og sÃ¥ flytte den ind." #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "Beklager, du har ikke rettighed til at oprette henvisninger i denne mappe" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "Opret en ny %s-henvisning fra:" #: MyDirs.cpp:1033 msgid "Hard" msgstr "HÃ¥rd" #: MyDirs.cpp:1033 msgid "Soft" msgstr "Blød" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "Angiv venligst en filendelse som skal tilføjes" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "Angiv venligst et navn som henvisningen skal kaldes" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "Angiv venligst et andet navn for henvisningen" #: MyDirs.cpp:1112 msgid "linked" msgstr "henvist" #: MyDirs.cpp:1122 msgid "trashed" msgstr "i papirkurv" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "slettet" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "Beklager, du har ikke rettighed til at slette fra denne mappe" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "Smid i papirkurv: " #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Slet: " #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n Til:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "Af en eller anden Ã¥rsag mislykkedes forsøget pÃ¥ at oprette en mappe, der skulle modtage sletningen. Beklager!" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "Beklager, sletning mislykkedes" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr " Du har ikke tilladelse til at slette fra denne mappe.\nDu kan forsøge at slette enkeltvis." #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr " Du har ikke tilladelse til at slette fra en undermappe i denne mappe.\nDu kan forsøge at slette enkeltvis." #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr " Filstien var ugyldig." #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "For " #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr " af punkterne, du har ikke tilladelse til at slette fra denne mappe." #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr " af punkterne, du har ikke tilladelse til at slette fra en undermappe i denne mappe." #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr " af punkterne, filstien var ugyldig." #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr " \nDu kan forsøge at slette enkeltvis." #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "Beklager, punktet kunne ikke slettes." #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "Jeg beklager " #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr " punkterne kunne ikke slettes." #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "Beklager, kun " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr " af " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr " punkter kunne slettes." #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "Klip mislykkedes" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "Sletning mislykkedes" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "Slet permanent (du kan ikke fortryde!): " #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "Er du HELT sikker?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "slettet uden mulighed for gendannelse" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "Sletning mislykkedes!?!" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "? Aldrig hørt om det!" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "Sletning af mappe mislykkedes!?!" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "Filen ser ikke ud til at findes!?!" #: MyDirs.cpp:1757 msgid "copied" msgstr "kopieret" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "indsat" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "Lav en &symbolsk henvisning" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "Lav en &hÃ¥rd henvisning" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "Udpak fra arkiv" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "&Slet fra arkiv" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "&Omdøb mappe inden i arkiv" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "Dupliker mappe inden i arkiv" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "Omdøb &fil inden i arkiv" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "Dupliker fil indeni arkiv" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "&Slet mappe" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "Send mappe til &papirkurven" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "&Slet symbolsk henvisning" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "Send symbolsk henvisnig til &papirkurven" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "&Slet fil" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "Send fil til &papirkurven" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Andet..." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "Ã…bn med brug af &rootprivilegier med...." #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "Ã…bn med brug af &rootprivilegier" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "Ã…bn &med...." #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "&Omdøb mappe" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "&Dupliker mappe" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "&Omdøb fil" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "&Dupliker fil" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "Opret et nyt arkiv" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "Tilføj til et eksisterende arkiv" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "Test integritet pÃ¥ arkiv eller komprimerede filer" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Pak filer" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "&Skjul skjulte mapper og filer" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "&Vis skjulte mapper og filer" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "Kolonner der skal vises" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "Fjern opsplitning af paneler" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "&Repliker i modsat panel" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "Ombyt panelerne" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "Beklager, du kan ikke oprette inden i et arkiv.\nDu kan dog oprette det nye element udenfor, og sÃ¥ flytte det ind." #: MyFiles.cpp:588 msgid "New directory created" msgstr "Ny mappe oprettet" #: MyFiles.cpp:588 msgid "New file created" msgstr "Ny fil oprettet" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "Jeg tror ikke, du virkelig ønsker at duplikere root, gør du?" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "Jeg tror ikke, du virkelig ønsker at omdøbe root, gør du?" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "Beklager, du har ikke tilladelse til at duplikere i denne mappe" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "Beklager du har ikke tilladelse til at omdøbe i denne mappe" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Dupliker " #: MyFiles.cpp:665 msgid "Rename " msgstr "Omdøb " #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "Nej. Ideen er, at du angiver et NYT navn" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "duplikeret" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "omdøbt" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "Beklager, det virkede ikke. Forsøg igen?" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "Beklager, dette navn er ugyldigt\n Forsøg igen?" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "Beklager, en af disse findes allerede\n Forsøg igen?" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "Beklager, af en eller anden Ã¥rsag mislykkedes denne handling\nForsøg igen?" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "Beklager, det navn er allerede brugt.\n Forsøg igen?" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Ã…bn med " #: MyFiles.cpp:1043 msgid " D F" msgstr " D F" #: MyFiles.cpp:1044 msgid " R" msgstr " R" #: MyFiles.cpp:1045 msgid " H " msgstr " H " #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr " af filer og undermapper" #: MyFiles.cpp:1077 msgid " of files" msgstr " af filer" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "Det nye mÃ¥l for henvisningen ser ikke ud til at findes.\nForsøg igen?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "Af en eller anden Ã¥rsag ser ændringen af den symbolske henvisnings mÃ¥l ud til at være mislykkedes. Beklager!" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr " ændringer udført, " #: MyFiles.cpp:1693 msgid " failures" msgstr " fejl" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "Vælg en anden fil eller mappe for det nye mÃ¥l" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Advarsel!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "Beklager, du har ikke tilladelse til at skrive til mappen, der indeholder din valgte konfigurationsfil; afbryder." #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "Kan ikke initialisere hjælpesystemet; afbryder." #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Fortryd flere handlinger pÃ¥ en gang" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Gendan flere handlinger pÃ¥ en gang" #: MyFrame.cpp:743 msgid "Cut" msgstr "Klip" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Klik for at klippe markering" #: MyFrame.cpp:744 msgid "Copy" msgstr "Kopier" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Klike for at kopiere markering" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Klik for at indsætte markering" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Fortryd" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Fortryd en handling" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Gendan" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Gendan en tidligere fortryd handling" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Nyt faneblad" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Opret et nyt faneblad" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Slet faneblad" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Sletter det aktuelt valgte faneblad" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Om" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Fejl" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Lykkedes" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Computer" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Afsnit" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "Ugyldigt mappenavn." #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "Filnavn findes allerede." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "Handling ikke tilladt." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "Hvilken skabelon ønsker du at slette?" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Slet skabelon" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "Gemning af skabelon afbrudt" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Afbrudt" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "Hvad vil du kalde denne skabelon?" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "Vælg en skabelonetiket" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "Gemning af skabelon afbrudt" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "Beklager, det maksimale antal faneblade er allerede Ã¥ben." #: MyNotebook.cpp:346 msgid " again" msgstr " igen" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "&Tilføj faneblad" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "Hvad vil du kalde dette faneblad?" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "Ændre fanebladsnavn" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "Ugyldigt kolonneindeks" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "Ugyldig kolonne" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr " Gendan: " #: Redo.cpp:258 msgid " Undo: " msgstr " Fortryd: " #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr " ----- MERE ----- " #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr " -- FORRIGE -- " #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "fortrudt" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "gendannet" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "handling" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr " fortrudt" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr " gendannet" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "Beklager, du kan ikke oprette din slettede undermappe i papirkurven. MÃ¥ske et rettighedsproblem?\nJeg foreslÃ¥r, at du bruger konfigurer til at vælge en anden placering" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Beklager, du kan ikke oprette din sletttede undermappe. MÃ¥ske et rettighedsproblem?\nJeg foreslÃ¥r, at du bruger konfigurer til at vælge en anden placering." #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Beklager, du kan ikke oprette din midlertidige filundermappe. MÃ¥ske et rettighedsproblem?\nJeg foreslÃ¥r, at du bruger konfigurer til at vælge en anden placering." #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "Tømning af papirkurven i 4Pane vil permanent slette alle filer, som er blevet gemt der!\n\n Fortsæt?" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "Papirkurv tømt" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "Tømning af 4Panes slettede kurv vil ske automatisk, nÃ¥r 4Pane bliver lukket ned\nUdførelse af det for tidligt vil slette alle filer gemt der. Alle fortryd/gendan data vil mistes!\n\n Fortsæt?" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "Gemte filer slettet permanent" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "Du kan ikke lave en hÃ¥rd henvisning til en mappe." #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "Du kan ikke lave en hÃ¥rd henvisning til en anden enhed eller partition." #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "\nØnsker du at lave en symbolsk henvisning i steden for?" #: Tools.cpp:60 msgid "No can do" msgstr "Kan ikke lade sig gøre" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "Beklager, intet resultat." #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr " Hyg dig!\n" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Vis" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Skjul" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "GÃ¥ til valgt filsti" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Ã…bn valgt fil" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr " punkter " #: Tools.cpp:2880 msgid " item " msgstr " punkt " #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Gentag: " #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "Beklager, der er ikke plads til endnu en kommando her\nJeg foreslÃ¥r, at du forsøger at placere den i en anden undermenu" #: Tools.cpp:3077 msgid "Command added" msgstr "Kommando tilføjet" #: Tools.cpp:3267 msgid "first" msgstr "først" #: Tools.cpp:3267 msgid "other" msgstr "anden" #: Tools.cpp:3267 msgid "next" msgstr "næste" #: Tools.cpp:3267 msgid "last" msgstr "sidst" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "Indtast venligst" #: Tools.cpp:3342 msgid "parameter" msgstr "parameter" #: Tools.cpp:3355 msgid "ran successfully" msgstr "kørte" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "Brugerdefineret værktøj" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "returnerede med afslutningskode" #: Devices.h:432 msgid "Browse for new Icons" msgstr "Find nye ikoner" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "Dialog til fil- og mappevalg" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Slet" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "Ændr henvisningsmÃ¥l" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Ny mappe" #: Redo.h:226 msgid "New File" msgstr "Ny fil" #: Redo.h:242 msgid "Duplicate Directory" msgstr "Dupliker mappe" #: Redo.h:242 msgid "Duplicate File" msgstr "Dupliker fil" #: Redo.h:261 msgid "Rename Directory" msgstr "Omdøb mappe" #: Redo.h:261 msgid "Rename File" msgstr "Omdøb fil" #: Redo.h:281 msgid "Duplicate" msgstr "Dupliker" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Omdøb" #: Redo.h:301 msgid "Extract" msgstr "Udpak" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "Indtast forsinkelse for værktøjstip" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "Angiv ønsket forsinkelse for værktøjstip, i sekunder" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "Deaktiver værktøjstip" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "O.k." #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "Klik nÃ¥r færdig" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "Klik for at afbryde" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "Ny enhed opdaget" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "En enhed er blevet tilføjet, som jeg endnu ikke har set." #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "Ønsker du at konfigurere den?" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "Konfigurer den ikke nu, men spørg mig næste gang den dukker op" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "»Jeg ønsker ikke at blive spurgt om denne enhed«. Hvis du ændrer din mening, kan den konfigureres fra Konfigurer." #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "Konfigurer ny enhed" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "Enhedsknude" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "Monteringspunkt for enheden" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "Hvad vil du kalde den?" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Enhedstype" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "Enhed er skrivebeskyttet" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "Hverken spørg om eller indlæs enheden" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "Producentens navn" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "Monteringspunkt for denne enhed" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "Hvad er navnet pÃ¥ mappen som denne enhed er automatisk monteret pÃ¥? Det vil sikkert se ud som /mnt/usb-[MinPenNavn]-FlashDisk:0:0:0p1" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "Konfigurer ny enhedstype" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "Konfigurer 4Pane" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "Klik nÃ¥r konfigurering er færdig" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "Brugerdefinerede kommandoer er eksterne programmer som du kan\nstarte fra 4Pane. Det kan være værktøjer som »df«, eller ethvert\nandet program eller kørbart skript.\nf.eks. starter »gedit %f« den aktuelt valgte fil i gedit." #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "De følgende parametre er tilgængelige:\n%s vil sende den valgte fil eller mappe til programmet\n%f (%d) vil kun sende den valgte fil (mappe)\n%a sener alle det aktive panels valgte punkter\n%b vil sende en markering fra bgge filvisningspaneler.\n%p vil spørge efter en parameter for at sende til programmet.\n\nFor at forsøge at køre en kommando som superbruger, sÃ¥ brug præfiks f.eks. gksu eller sudo" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "PÃ¥ de følgende undersider kan du tilføje, redigere eller slette værktøjer." #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "Dette afsnit hÃ¥ndterer enheder. De kan være enten faste\nf.eks. dvdrw-drev, eller eksterne f.eks. usb'er.\n\n4Pane kan normalt udlede en distributions opførsel og\nkonfigurere sig selv sÃ¥ 4Pane tilpasses. Hvis dette\nmislykkes, eller du ønsker at lave ændringer, kan du gøre\ndette pÃ¥ de følgende undersider." #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "Det er her, du kan forsøge at fÃ¥ tingene til at virke\nhvis noget er gÃ¥et galt, fordi du har en meget gammel,\neller meget moderne opsætning.\n\nDet er ikke sandsynligt, at du fÃ¥r brug for dette afsnit\nmen hvis du gør, sÃ¥ læs værktøjsfifene." #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "Her kan du konfigurere udseendet pÃ¥ 4Pane.\n\nDen første underside hÃ¥ndterer mappe- og filtræet,\n den anden skrifttypen, og den tredje diverse ting." #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "Disse to undersider hÃ¥ndterer terminaler. Den første er\nfor rigtige terminaler, den anden for terminalemulatoren." #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "Endelig, fire sider med diverse ting." #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "Disse punkter hÃ¥ndterer mappe- og filtræet" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "Billedpunkter mellem overmappen" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "mappe- og udvidelsesboksen" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "Der er en »udvidelsesboks« (i gtk2 reelt en trekant) mellem overmappen og filnavnet. Denne kontrol angiver antallet af billedpunkter mellem overmappen og trekanten." #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "Billedpunkter mellem" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "Udvidelsesboksen og navn" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "Der er en »udvidelsesboks« (i gtk2 reelt en trekant) mellem overmappen og filnavnet. Denne kontrol angiver antallet af billedpunkter mellem trekanten og filnavnet." #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "Vis skjulte filer og mapper i panelet pÃ¥ en netop oprettet fanebladsvisning. Du kan ændre denne for individuelle paneler fra kontekstmenuen, eller Ctrl-H" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr " Som standard, vis skjulte filer og mapper" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "Hvis aktiveret sorteres viste filer/mapper pÃ¥ en mÃ¥de, som er egnet til det sprog, du har indstillet. Det kan dog resultere i at skjulte filer (nÃ¥r vist) ikke vises adskilt" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr " Sorter filer pÃ¥ en lokal mÃ¥de" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "Vis en symbolsk henvisning til en mappe med de normale mapper i filvisningen, ikke sammen med filerne" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr " Opfat en symbolsk henvisning til en mappe som en normal mappe" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "Ønsker du synlige linjer mellem hver mappe og dets undermapper? Vælg hvilken du foretrækker, men den normale stil er »Ja« i gtk1, men »Nej« i nogle versioner af gtk2" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr " Vis linjer i mappetræet" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "I filvisningen giv linjer skiftevis forskellig baggrundsfarver, resulterende i en stribet fremtoning" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr " Farvelæg linjer skiftevis i en filvisning" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "Klik for at vælge farverne som de skiftevis linjer skal have" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "Fremhæv forsigtigt kolonnehovedet for en filvisning, eller over værktøjsbjælken pÃ¥ en mappevisning for at flage hvilket panel der aktuelt er i fokus. Klik pÃ¥ knappen Konfigurer for at ændre graden af fremhævelse" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr " Fremhæv panelet i fokus" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "Klik for at ændre graden af fremhævelse for hver paneltype" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "Her kan du konfigurer skriftypen brugt af træet" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "Klik pÃ¥ knappen Ȯndr« for at vælge en anden skrift eller størrelse" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "Knappen »Brug standard« vil nulstille til systemets standard" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "Det er sÃ¥dan her at terminalens emulatorskrifttype ser ud" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "Ændr til en skrifttype efter dit valg" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "Fremtoningen med brug af standardskrifttype" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "Vend tilbage til systemets standardskrifttype" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "Det er her, du kan se hvilken fil eller mappe, der er valgt. Du kan ogsÃ¥ bruge Ctrl-C for at kopiere den til brug i eksterne programmer. Ændringer i denne indstilling vil ikke træde i kraft, før 4Pane er genstartet." #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr " Vis den aktuelt valgte filsti i værktøjsbjælken" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "4Pane gemmer filer og mapper i papirkurven, fremfor at slette dem. Derudover vil du mÃ¥ske gerne blive spurgt før dette sker; hvis det er tilfældet, sÃ¥ afkryds denne boks" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr " Spørg efter bekræftelse før filer sendes til papirkurven" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "4Pane gemmer slettede filer og mapper i sin egen slettekurv" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr " Spørg efter bekræftelse før sletning af filer" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "Lav kurvene for filer der er slettede, og filer der er lagt i papirkurven i denne mappe" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "Her kan du tilføje/fjerne ikonerne pÃ¥ værktøjsbjælken, som repræsenterer redigeringsprogrammer og lignende programmer. Disse Ã¥bnes nÃ¥r der klikkes, eller du kan trække filer over pÃ¥ en og Ã¥bne dem med det program." #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "Det er her du kan tilføje/fjerne knapper fra den lille værktøjsbjælke i toppen af hver mappevisning" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "Konfigurerer hvorvidt og hvor længe værktøjstip er vist. Dette er kun delvist effektivt: Det virker i øjeblikket ikke for værktøjsfif i værktøjsbjælken." #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "Vælg hvilket terminalprogram der skal startes op med Ctrl-T" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "Enten en af de følgende" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "Eller indtast dit eget valg" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "Indtast den præcise kommando som vil starte en terminal.\nVælg en som findes pÃ¥ dit system ;)" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "Hvilket terminalprogram bør starte andre programmer op?" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "Indtast den præcise kommando som vil starte et andet program op i terminalen.\nVælg en terminal som findes pÃ¥ dit system ;)" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "Hvilket terminalprogram bør starte et brugerdefineret værktøj op?" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "Indtast den præcise kommando som vil starte et andet program op i terminalen. Terminalen holdes Ã¥ben, nÃ¥r programmet afsluttes.\nVælg en terminal som findes pÃ¥ dit system ;)" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "Konfigurer prompten og skrifttypen for terminalemulatoren" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "Prompt. Se værktøjsfif for detaljer" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "Dette er prompten for den indbyggede terminal, som tilgÃ¥s med Ctrl-M eller Ctrl-F6. Du kan bruge normale tegn, men der er ogsÃ¥ de følgende tilvalg:\n%H = værtsnavn %h = værtsnavn op til punktummet\n%u = brugernavn\n%w = cwd %W = kun sidste segment af cwd\n%$ giver enten $, eller # hvis root" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Ændr" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Brug standard" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "Aktuelt kendte og mulige nfs-servere" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "Dette er ip-adresser pÃ¥ servere, som er kendte eller har været pÃ¥ dit netværk" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "Slet den fremhævede server" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "Indtast en anden serveradresse" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "Skriv adressen pÃ¥ en anden server her (f.eks. 192.168.0.2), og klik sÃ¥ »Tilføj«" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Tilføj" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "Filsti for showmount" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Sti til sambamappe" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "Hvor er filer som smbclient og findsmb gemt? Sikkert i /usr/bin/ (eller der er lavet symbolsk henvisning derfra)" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane giver dig mulighed for fortryd (og gendan) for de fleste handlinger." #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "Hvad er det maksimale antal fortrydelser?" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "(NB: Se værktøjsfiffet)" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "Uanset om du indsætter/flytter/omdøber/sletter/med mere pÃ¥ dine filer, sÃ¥ gemmes oplysningerne sÃ¥ du senere kan fortryde og ogsÃ¥ gendanne igen hvis du ønsker det. Dette er det maksimale antal af den slags fortrydelser\nBemærk at hvis du sletter indholdet af en mappe med 100 filer, sÃ¥ tæller det som 100 gange! SÃ¥ jeg foreslÃ¥r, at dette antal skal være rimeligt stort: Mindst 10.000" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "Antallet af punkter ad gangen pÃ¥ et rullegardin." #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "(Se værktøjsfif)" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "Denne refererer til rullegardinerne for fortryd og gendan, og mappevisningens værktøjsbjælkeknapper til navigering til den seneste viste mapper.\nHvad er det maksimale antal punkter, der skal vises per menuside? Jeg foreslÃ¥r 15. Du kan gÃ¥ til forrige punkter en side ad gangen." #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "Nogle beskeder vises kort, og forsvinder sÃ¥." #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "I hvor mange sekunder skal de vare?" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "Der er nogle dialoger, som giver besked om veludført gennemførelse eller »Oops, det virkede ikke«, og som automatisk lukker sig selv efter nogle fÃ¥ sekunder. Dette tal er antallet af sekunder, som en besked om fuldførelse skal vare." #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "Der er nogle dialoger, som giver besked om veludført gennemførelse eller »Oops, det virkede ikke«, og som automatisk lukker sig selv efter nogle fÃ¥ sekunder. Dette tal er antallet af sekunder, som en besked om fejl skal vare. Varigheden skal være længere end ved gennemførelse for at give mulighed for at læse beskeden." #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "Beskeder i statusbjælken" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "Nogle procedurer for eksempel montering af en partition, giver en besked om fuldførelse i statusbjælken. Dette tal afgør hvor lang tid en sÃ¥dan besked bevares" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr " kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr " gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr " gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "Indtast dit eget valg af program, inklusiv nødvendige tilvalg. Det er bedst, hvis programmet er tilgængeligt pÃ¥ dit system..." #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "Klik for at konfigurere opførelsen for træk og slip" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "Klik for at konfigurere statusbjælkens afsnit" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "Kommando der skal køres:" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "Klik for at finde programmet der skal køres" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "Kør i en terminal" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "Hold terminal Ã¥ben" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "Opdater panel efter" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "Opdater ogsÃ¥ modsat panel" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "Etiket der skal vises i menuen:" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "Tilføj den til denne menu:" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "Dette er menuerne som aktuelt er tilgængelige. Vælg en, eller tilføj en ny en." #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "Tilføj en ny menu eller undermenu til listen" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "Slet den aktuelt valgte menu eller undermenu" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Klik for at tilføje det nye værktøj" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Vælg en kommando, klik sÃ¥ »Rediger denne kommando«" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Etiket i menu" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Vælg etiketten pÃ¥ kommandoen du ønsker at redigere. Du kan ogsÃ¥ redigere denne, hvis du ønsker det." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Kommando" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "Kommandoen der skal redigeres" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "Vælg et punkt, klik sÃ¥ »Slet denne kommando«" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Vælg etiketten pÃ¥ kommandoen du ønsker at slette" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "Kommandoen der skal slettes" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Dobbeltklik pÃ¥ et punkt for at ændre det" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "Vælg farver" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "Farverne vist nedenfor vil blive brugt alternativt i et filvisningspanel" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "Vælg panelfremhævelse" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "Et panel kan valgfrit blive fremhævet nÃ¥r det er i fokus. Her kan du ændre graden af fremhævelse." #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "For en mappevisning er fremhævelsen en tynd linje over værktøjsbjælken." #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "For en filvisning er farveændringen pÃ¥ hovedet, som er meget tykkere." #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "SÃ¥ jeg foreslÃ¥r, at du gør filvisningens »forskydning« mindre, da forskellen er mere tydelig" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr " Fokus pÃ¥ mappevisning" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "Basislinje" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "Fokus pÃ¥ filvisning" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "Indtast en genvej" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "Tryk pÃ¥ tasterne du ønsker at bruge til denne funktion:" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Aktuel" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Ryd" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "Klik her hvis du ikke ønsker en genvej til denne handling" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "Ctrl+Skift+Alt+M" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "Et klik her vil gÃ¥ til standardacceleratoren set ovenfor" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "Ændr etiket" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "Dupliker accelerator" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "Denne kombination af taster er allerede i brug af:" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "Hvad ønsker du at gøre?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "Vælg andre taster" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "Snup den anden genvejs taster" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "Give op" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "Returner til dialogen for at foretage et andet valg af taster" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "Brug din markering alligevel. Du fÃ¥r en mulighed for at lave et nyt valg for den genvej, som i øjeblikket bruger tasterne." #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "Genvejen vil gÃ¥ tilbage til sin forrige indstilling, hvis nogen" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "Hvordan registreres eksterne enheder?" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "Indtil 2.4-kernen blev usb-drev og lignende ikke registreret overhovedet. 2.4-kerner introducerede usb-lagermetoden. De nyeste distributioner med 2.6-kerner bruger normal udev/hal-sysemet. Ind imellem bruget nogle fÃ¥ distributioner (det vil sige SuSE 9.2) noget underligt noget der involverede /etc/mtab" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "Den oprindelige, usb-lager, metode" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "Ved at kigge i mtab" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "Den nye, udev/hal, metode" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "Floppydrev monteres automatisk" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "Dvd-rom-drev med mere monteres automatisk" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "Eksterne enheder monteres automatisk" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "Hvilken fil (hvis nogen) indeholder data om en nylig indsat enhed?" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "Floppydrev" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "Dette gælder for det meste for distributioner, som ikke har automatisk montering, nogle af dem indsætter enhedsinformation direkte i /etc/mtab eller /etc/fstab." #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "ingen" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "Supermonteringer" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "Cd-rom'er med mere" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "USB-enheder" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "Tjek hvor ofte for nyligt indsatte usb-enheder?" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "4pane tjekker for hvorvidt eksterne enheder er blevet fjernet, eller nye tilføjet. Hvor ofte bør dette ske?" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "sekunder" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "Hvordan skal flerkorts usb-læsere vises?" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "Flerkortslæsere registreres normalt som en adskilt enhed for hver plads.\nSom standard vises kun pladser med et kort indsat.\nHvis du afkrydser her, vil hver tom plads ogsÃ¥ fÃ¥ en knap, sÃ¥ en 13-plads enhed vil altid have 13 knapper!" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr " Tilføj knapper selv for tomme pladser" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "Hvad skal gøres hvis 4Pane har monteret en usb-enhed?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "Ønsker du at afmontere før afslutning? Dette gælder kun for eksterne enheder, og kun hvis din distribution ikke automatisk monterer" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr " Spørg før afmontering af den ved afslutning" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "Hvilken fil indeholder partitionsdata?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "Listen over kendte partitioner. Standard: /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "Hvilken mappe indeholder enhedsdata?" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "Indeholder »filer« som hda1, sda1. Aktuelt /dev/" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "Hvilke filer indeholder floppyinfo" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "Floppyinfo kan normalt findes i /sys/block/fd0, /sys/block/fd1 et cetera.\nPlacer ikke 0, 1 bit her, kun /sys/block/fd eller noget" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "Hvilken fil indeholder cd/dvd-rom info" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "Information om faste enheder som cd-rom'er kan normalt findes i /proc/sys/dev/cdrom/info. Udskift informationen hvis den har ændret sig" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "Genindlæs standarder" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "2.4 kerner: usb-storage" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "2.4 kerner registrerer eksterne enheder og tilføjer en mappe kaldt /proc/scsi/usb-storage-0, storage-1 et cetera.\nIndsæt delen /proc/scsi/usb-storage- her" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "2.4 kerner: Ekstern enhedsliste" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "2.3 kerner har en liste for tilføjede/tidligere tilføjede eksterne enheder.\nSikkert /proc/scsi/scsi" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "Hvilken enhedsknude er angivet for eksterne enheder som usb-drev? Sikkert /dev/sda, sdb1 et cetera\nIndsæt /dev/sd bit her" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "2.6 kerner: Ekstern enhedsinfomappe" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "I 2.6 kerner kan nogen eksternenhedsinfo findes her\nSikkert /sys/bus/scsi/devices" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "Hvad er LVM-præfikset?" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "Efter hvilket navn er Logical Volume Management »partitioner« kaldt for\neksempel dm-0. Indsæt kun delen dm-" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "Yderligere LVM-sager. Se værktøjsfiffet" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "Hvor er filerne proc »block«? Disse er krævet for at hjælpe til med at\nhÃ¥ndtere LVM-ting. Sikkert /dev/.udevdb/block@foo. Indtast bare bit'en\n'/dev/.udevdb/block@'" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "Faste drev bør være fundet automatisk, men hvis en\nmangler, eller du ønsker at ændre nogle data, sÃ¥ kan\ndu gøre det her." #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "Falsk, brug denne til test af denne version af filen" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "Konfigurer knapper for mappevisningsværktøjsbjælken" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "Dette er knapperne pÃ¥ højre side af den lille værktøjsbjælke i hver mappevisning.\nDe fungerer som bogmærker: Klik pÃ¥ en »gÃ¥r« til dens modtagelsesfilsti" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "Aktuelle knapper" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "Konfigurer for eksempel en redigering" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Navn" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "Dette er kun en etiket, sÃ¥ du vil være i stand til at genkende den. for eksempel kwrite" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "Ikon der skal bruges" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "Opstartskommando" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "Dette er strengen, som starter programmet. For eksempel kwrite eller /opt/gnome/bin/gedit" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "Arbejdsmappe (valgfri)" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "Du kan valgfrit tilbyde en arbejdsmappe. Hvis du gør det, vil kommandoen blive kørt fra denne mappe. De fleste kommandoer har ikke brug for dette; specielt vil det ikke være nødvendigt for kommandoer, som kan startes uden en sti for eksempel kwrite" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "For eksempel, hvis indsat med flere filer, kan GEdit Ã¥bne dem i faneblade." #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "Accepter flere inddata" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Vælg ikon" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "Aktuel\nmarkering" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "Klik pÃ¥ et ikon for at vælge det\neller gennemse for at søge efter andre" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "Nyt ikon" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "Tilføj dette ikon?" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "Kofigurer redigeringsprogrammet med mere" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "Disse programmer kan startes ved at klikke pÃ¥ en knap\npÃ¥ værktøjsbjælken eller ved at trække en fil hen pÃ¥\nknappen. Et indlysende eksempel vil være et\ntekstbehandlingsprogram som kwrite, men det kan være\nethvert program, du mÃ¥tte ønske." #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "Konfigurer en lille værktøjsbjælkeikon" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "Filsti" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "Indtast filstien som du ønsker at gÃ¥ til, nÃ¥r der klikkes pÃ¥ knappen" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "Klik for at finde den nye filsti" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "(Klik for at ændre)" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "Konfigurer træk og slip" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "Vælg hvilke taster der skal gøre det følgende:" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "Ændr disse værdier for at ændre følsomheden ved træk og slip" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Vandret" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "Hvor langt mod venstre og højre skal musen bevæge sig før træk og slip udløses? Standardværdi 10" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Lodret" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "Hvor langt op og ned skal musen bevæge sig før træk og slip udløses? Standardværdi 15" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "Hvor mange linjer skal rulles per klik pÃ¥ musehjulet" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "Hvis det ikke kan udledes af din systemopsætning, dette bestemmer kun hvor sensitiv musehjulet er, under træk og slip" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "Konfigurer statusbjælken" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "Statusbjælken har fire afsnit. Her kan du justere deres størrelsesforhold" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "(Ændringer træder ikke i kraft før du genstarter 4Pane)" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "Hjælp til menupunkt" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Standard 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "Kontekstafhængige hjælpebeskeder nÃ¥r du bevæger dig over et menupunkt" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "Beskeder ved gennemførelse" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "(Standard 3)" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "Beskeder som »slettede 15 filer«. Disse beskeder vises efter et indstillet antal sekunder." #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "Filstier" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "(Standard 8)" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "Information om den aktuelt valgte fil eller mappe: normalt dens type, navn og størrelse" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filtre" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "Hvad viser panelet i fokus: D=mapper F=filer H=skjulte filer R=rekursiv undermappestørrelse.\nAlle filtre vises ogsÃ¥. Det vil sige f*.txt for tekstfiler begyndende med »f«" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "Eksporter data" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "Det er her, hvis du mÃ¥tte ønske det, at du kan eksportere dele af dine konfigurationsdata til en fil med navnet 4Pane.conf." #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "Hvis du er fristet, tryk F1 for flere detaljer." #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "Fravælg alle typer af data du ikke ønsker at eksportere" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "Værktøjer f.eks. »df -h« som tilbydes som standard. Se manualen for yderligere detaljer" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr " Brugerdefinerede værktøjsdata" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Hvike tekstprogrammer for eksempel gedit, kwrite skal som standard have en ikon tilføjet til værktøjsbjælken" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr " Tekstbehandleres data" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr " Enhedsmonterede data" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr " Terminalrelaterede data" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Lokaliser" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "Kan ikke læse" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "Spring kun den her fil over" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "Spring alle andre filer over hvor jeg ikke har læserettigheder" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "Tsk Tsk!" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "Du ser ud til at forsøge at flette" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "Lad som om" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "for en af dens efterkommere" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Dette er bestemt ulovligt og sikkert ogsÃ¥ umoralsk" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Klik for at undskylde" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "Hvad ønsker du, at det nye navn skal være?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Indtast det nye navn" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "Overskriv eller omdøb" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "Overskriv alle filer nÃ¥r der er et navnesammenfald" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "GÃ¥ straks til omdøbningsdialogen nÃ¥r der er et navnesammenfald" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Spring dette punkt over" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "Spring alle filer over hvor der er navnesammenfald" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "Omdøb eller afbryd" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "Der er allerede en mappe med det navn her." #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Omdøb eller spring over" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "Der er allerede en mappe med det navn her" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "GÃ¥ straks til omdøbningsdialogen for alle navne der har en konflikt" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "Spring alle punker over hvor der er et navnesammenfald" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "Forespørg duplikat i arkiv" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "Der er allerede en fil med dette navn i arkivet" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "Indeni et arkiv har du lov til at have to identiske punkter med det samme navn. Hvis det er det, du vil (og du har sikkert en god grund til det :/ ) sÃ¥ klik pÃ¥ denne knap" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "Dupliker ved a omdøbe i arkivet" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "Beklager, du kan ikke foretage en direkte duplikering inden i et arkiv" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "Vil du dupliere ved at omdøbe i steden for?" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "Lav en kopi af hvert punkt eller punkter, med brug af et andet navn" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Tilføj til arkiv" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "Der er allerede et punkt her med det navn" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "Slet den oprindelig fil fra arkivet, og ersat den med den indgÃ¥ende fil." #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "Det er tilladt inden i et arkiv at have flere filer med det samme navn. Klik pÃ¥ denne knap, hvis det er det, du ønsker (du har sikkert en god grund :/ )" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "Overskriv eller tilføj til arkiv" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "Inden i et arkiv har du ikke lov til at have to filer med det samme navn. Klik pÃ¥ denne knap, hvis det er det, du ønsker (du har sikkert en god grund :/ )" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "Inden i et arkiv har du ikke lov til at have to filer med det samme navn. Klik pÃ¥ denne knap, hvis det er det, du ønsker (du har sikkert en god grund :/ )" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "Erstat den aktuelle mappe med den indgÃ¥ende" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "Erstat den aktuelle mappe med den indgÃ¥ende, og gør dette for alle andre sammenfald" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "Inden i et arkiv har du lov til at have to mapper med det samme navn. Klik pÃ¥ denne knap, hvis det er det, du ønsker (du har sikkert en god grund :/ )" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "Inden i et arkiv har du ikke lov til at have to mapper med det samme navn. Klik pÃ¥ denne knap, hvis det er det, du ønsker (du har sikkert en god grund :/ )" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Afbryd for alle punkter" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "Du forsøger at overskrive denne fil med sig selv" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Betyder det:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "eller:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Lav en henvisning" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Dette er, hvad du forsøger at henvise til" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Lav henvisningen i den følgende mappe:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "Hvad vil du gerne kalde henvisningen?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Behold det samme navn" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "Brug de følgende filendelser" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "Brug det følgende navn" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "Indtast filendelsen som du gerne vil tilføje til det oprindelige filnavn" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "Indtast navnet du ønsker at give denne henvisning" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "Afkryds denne boks hvis du ønsker at lave relative symbolske henvisninger for eksempel til ../../foo i steden for /path/to/foo" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "Lav relativ" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "Afkryds denne boks hvis du ønsker, at disse valg automatisk skal anvendes pÃ¥ resten af de valgte punkter" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Anvend pÃ¥ alle" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "Hvis du har ændret din mening om hvilken type henvisning du ønsker, sÃ¥ vælg igen her." #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "Jeg ønsker at lave en hÃ¥rd henvisning" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "Jeg ønsker at lave en blød henvisning" #: dialogs.xrc:2173 msgid "Skip" msgstr "Spring over" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "Vælg et navn for det nye punkt" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "Ønsker du en ny fil eller en ny mappe?" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "Lav en ny fil" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "Lav en ny mappe" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "Vælg et navn for den nye mappe" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Tilføj et bogmærke" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "Dette er bogmærket som vil blive oprettet" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "Hvilken etiket ønsker du at give dette bogmærke?" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "Tilføj den til den følgende mappe:" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "Klik hvis du ønsker at gemme dette bogmærke i en anden mappe, eller for at oprette en ny mappe" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Rediger et bogmærke" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "Udfør alle krævede ændringer nedenfor" #: dialogs.xrc:2595 msgid "Current Path" msgstr "Aktuel sti" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "Dette er den aktuelle sti" #: dialogs.xrc:2620 msgid "Current Label" msgstr "Aktuel etiket" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "Dette er den aktuelle etiket" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "HÃ¥ndter bogmærker" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Opret en ny mappe" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "Indsæt et nyt adskillelsestegn" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "Rediger det markerede punkt" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "Slet det markerede punkt" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Ã…bn med:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "Indtast stien og navnet pÃ¥ programmet der skal bruges, hvis du kender den. Hvis ikke, sÃ¥ gennemse, eller vælg fra listen nedenfor." #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "Klik for at finde programmet der skal bruges" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "Rediger det valgte program" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "Fjern det valgte program fra mappen" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "Tilføj programmet til den valgte mappe nedenfor" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "Tilføj en mappe til træet nedenfor" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "Fjern den valgte mappe fra træet nedenfor" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "Klik pÃ¥ et program for at vælge det" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "Afkryds boksen for at Ã¥bne filen med dette program inden i en terminal" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Ã…bn i terminal" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Afkryds boksen hvis du i fremtiden ønsker at dette program automatisk skal kaldes for at starte denne filtype" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Brug altid det valgte program til denne slags fil" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Tilføj et program" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "Dette navn skal være unik. Hvis du ikke indtaster et, vil enden af filstien blive brugt.\nFor eksempel /usr/local/bin/foo vil blive kaldt »foo«" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "Hvor er programmet? For eksempel /usr/local/bin/gs\n(undertiden vil kun filnavnet virke)" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "Indtast navnet pÃ¥ programmet. Hvis navnet er i din STI, bør du kunne nøjes med at skrive navnet for eksempel kwrite. Ellers skal du bruge den fulde sti, for eksempel /usr/X11R6/bin/foo" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "Filendelser som programemt skal starte? For eksempel txt eller htm,html" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "Dette er valgfrit. Hvis du indtaster en eller flere filendelser, vil dette program blive tilbudt, nÃ¥r du højreklikker pÃ¥ filer med disse filendelser. Du skal ogsÃ¥ indtaste en, hvis du ønsker, at dette program skal være standard for opstart af præcis denne slags filer. SÃ¥ hvis du ønsker at alle filer med filendelsen »txt«, ved dobbeltklik, skal startes med dette program, sÃ¥ skriv txt her.\nDu kan indtaste mere end en filendelse, adskilt af komma. For eksempel htm,html" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "Tilføj en ny gruppe for at kategorisere programmer" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "Til hvilke filendelser ønsker du, at programmet skal være standard." #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "Dette er filendelserne, du kan vælge blandt" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "Du kan enten bruge de to første knapper, eller vælge med brug af musen (& Ctrl-tast for ikketilstødende valg)" #: dialogs.xrc:3581 msgid "All of them" msgstr "Dem alle" #: dialogs.xrc:3582 msgid "Just the First" msgstr "Kun den første" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "Vælg med musen (+skift-tast)" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Gem skabelon" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "Der er allerede indlæst en skabelon." #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "Ønsker du at overskrive denne, eller gemme som en ny skabelon?" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "Indtast filterstrengen" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "Indtasten streng som skal bruges som et filter, eller brug historikken. Flere filtre kan adskilles af enten | eller et komma. For eksempel Pre*.txt eller *.jpg | *.png eller *htm,*html" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "Vis kun filer, ikke mapper" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "Vis kun filer" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "Nulstil filteret, sÃ¥ at alle filer vises det vil sige *" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "Brug det valgte filter pÃ¥ alle paneler i dette faneblad" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "Anvend for alle synlige paneler" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "Omdøbning af flere" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "Du kan enten ændre foo.bar til, for eksempel, foo1.bar eller new.foo.bar" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "eller udføre noget mere komplekst med et regulært udtryk" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr " Brug et regulært udtryk" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "Erstat" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "Indtast teksten eller det regulære udtryk som du ønsker erstattet" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "Indtast i teksten det du ønsker at erstatte" #: dialogs.xrc:4076 msgid "With" msgstr "Med" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "Erstat alle resultater i et navn" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr " resultater i navn" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "Hvordan (ellers) at oprette nye navne:" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "Hvis du har brugt et regulært udtryk ovenfor, er dette mÃ¥ske ikke nødvendigt. Men hvis du ikke gjorde, eller nogle sammenfald er tilbage, sÃ¥ er det sÃ¥dan her du kommer videre." #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "Ændre med dele af navnet?" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "Foranstil tekst (valgfri)" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "Indtast en foranstillet tekst" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "Tilføj tekst (valgfri)" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "Indtast en test der skal tilføjes" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "Forøgelse starter med:" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "Hvis der stadig er et navnesammenfald, pÃ¥ trods af alt du har gjort ovenfor, tilføjer dette et tal eller et bogstav til oprettelse af et nyt navn. SÃ¥ joe.txt vil blive til joe0.txt (eller joe.txt0 hvis du har valgt at ændre filendelsen." #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "Hvis denne boks er afkrydset vil en forøgelse kun ske, hvis den er krævet for at undgÃ¥ et navnesammenfald. Hvis den ikke er, vil det ske alligevel." #: dialogs.xrc:4392 msgid " Only if needed" msgstr " Kun hvis krævet" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "Tilføj med et" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "Afgør hvorvidt »joe« ændres til »joe0« eller »joeA«" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "Versalfølsom" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "Ønsker du at »joe« skal blive til »joeA« eller »joea«" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "Bekræft omdøbning" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "Er du sikker pÃ¥, at du ønsker at lave disse ændringer?" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "Find filer" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "Indtast søgestrengen. For eksempel *foo[ab]r" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "Dette er mønsteret, der skal søges efter. Hvis du indtaster »foo«, vil bÃ¥de sti/foo og sti/foobar/reststi blive fundet. Alternativt kan du bruge jokertegnene *, ? og [ ]. Hvis du gør det, vil søgningen kun returnere præcise resultater, for eksempel kan du indtaste *foo[ba]r* for at finde sti/foobar/reststi" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr " -b Basenavn" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "Hvis afkrydset, vil mønsteret »foo« give resultat for bÃ¥de foo og Foo (og FoO og...)" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr " -i Ignorer store/smÃ¥ bogstaver" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "Locate søger i en database, som normalt opdateres en gang om dagen. Hvis denne boks er afkrydset, bliver hvert resultat tjekket for at være sikre pÃ¥, at det stadig findes, og ikke er blevet slettet siden sidste opdatering. Hvis der er mange resultater, kan det tage lang tid at udføre." #: moredialogs.xrc:86 msgid " -e Existing" msgstr " -e Afslutter" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "Hvis afkrydes opfattes mønsteret som et regulært udtryk, ikke bare den normale glob" #: moredialogs.xrc:97 msgid " -r Regex" msgstr " - r Regex" #: moredialogs.xrc:158 msgid "Find" msgstr "Find" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Sti" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "Indtast stien hvorfra søgning skal begynde (eller brug en af genvejene)" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "Indtast stien hvorfra der skal søges" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "Søg i den aktuelle mappe og nedenfor" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "Aktuel mappe" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "Søg i din hjemmemappe og nedenfor" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "Søg i hele mappetræet" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Root ( / )" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "Tilføj til kommandostrengen. Enlige anførelsestegn vil blive brugt til at beskytte metategn." #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Tilvalg" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "Disse tilvalg bruges for hele kommandoen. Vælg en du mÃ¥tte ønske." #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "MÃ¥ler tider 8for -amin, -atime, -cmin, -ctime, -mmin og -mtime) fra starten af i dag fremfor fra 24 timer siden" #: moredialogs.xrc:415 msgid "-daystart" msgstr "-daystart" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "Behandl hver mappes indhold før mappen selv. Med andre ord, søg fra bunden af." #: moredialogs.xrc:426 msgid "-depth" msgstr "-depth" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "Dereferer symbolske henvisninger (det vil sige se pÃ¥ det der henvises til, ikke henvisningen i sig selv). Kræver -noleaf." #: moredialogs.xrc:437 msgid "-follow" msgstr "-follow" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "GÃ¥ ned i det antal valgte niveauer af mapper under startstien. »-maxdepth 0« betyder at kun test og handlinger bruges pÃ¥ kommandolinjeparametrene." #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "-maxdepth" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "Start ikke søgning før nede i den valgte dybde for hver mappegren. »-mindepth 1« betyder at alle filer skal behandles undtagen kommandolinjeparametrene." #: moredialogs.xrc:470 msgid "-mindepth" msgstr "-mindepth" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "Optimer ikke ved at antage at mapper indeholder 2 færre undermapper end deres hÃ¥rde henvisnings antal" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "-noleaf" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "GÃ¥ ikke ned i mapper pÃ¥ andre filsystemer. -mount er et synonym" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "-xdev (-mount)" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "HJJJÆLP!!" #: moredialogs.xrc:542 msgid "-help" msgstr "-help" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "Tilføj disse valg til kommandostrengen" #: moredialogs.xrc:580 msgid "Operators" msgstr "Operatører" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "Er her for fuldstændighedens skyld, men det er normalt nemmere at skrive dem direkte i kommandostrengen." #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "Vælg en ad gangen." #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "Logisk AND de to omkringliggende udtryk. Da det er standard, er den eneste grund til at bruge den for at fremhæve." #: moredialogs.xrc:645 msgid "-and" msgstr "-and" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "Logisk OR de omkringliggende udtryk" #: moredialogs.xrc:656 msgid "-or" msgstr "-or" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "Udelad det følgende udtryk" #: moredialogs.xrc:667 msgid "-not" msgstr "-not" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "Brugt (med luk parentes) til at ændre forrang. Det vil sige at sikre at to udtryk af typen -path køres før en -prune. Den »undviges« automatik med en baglæns skrÃ¥streg." #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "Ã…bn parentes" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "PÃ¥ samme mÃ¥de som Ã¥bn parentes, »undviges« denne automatisk med en baglæns skrÃ¥streg." #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "Luk parentes" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "Adskiller listepunkter med et komma. Hvis du ikke kan se brugen for dig, sÃ¥ er du i godt selskab." #: moredialogs.xrc:707 msgid "List ( , )" msgstr "Vis ( , )" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "Indtast navnet der skal findes. For eksempel *.txt eller /urs/s*" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "Ignorer store/smÃ¥ bogstaver" #: moredialogs.xrc:852 msgid "This is a" msgstr "Dette er et/en" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "Regulært udtryk" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "Symbolsk henvisning" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "Returner resultater" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "Returner alle resultater (standard)" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "Ignorer resultater" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "Normalt ØNSKER du at se resultaterne, men nogle gange vil du ignorere for eksempel en specifik mappe. Hvis det er ønsket, sÃ¥ indtast mappens sti og vælg sti og ignorer." #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "For at filtrere efter tid, vælg en af de følgende:" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "Filer der blev" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "TilgÃ¥et" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "Ændret" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "Status ændret" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "Mere end" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "Præcis" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "Mindre end" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "Indtast antallet af minutter eller dage" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minutter siden" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Dage siden" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "tidligere end filen:" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "Indtast stinavnet pÃ¥ filen der skal sammenlignes med" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "Filer som sidst blev tilgÃ¥et" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "Indtast antallet af dage" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "dage siden ændringer" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "Tilføj til kommandostrengen." #: moredialogs.xrc:1325 msgid "Size and type" msgstr "Størrelse og type" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "Vælg op til en (ad gangen) blandt de følgende:" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "Filer med størrelsen" #: moredialogs.xrc:1435 msgid "bytes" msgstr "byte" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "Blok pÃ¥ 512-byte" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "kilobyte" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "Tomme filer" #: moredialogs.xrc:1511 msgid "Type" msgstr "Type" #: moredialogs.xrc:1531 msgid "File" msgstr "Fil" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "Symbolsk henvisning" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Datakanal" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "Blk speciel" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "Tegn speciel" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "Tilføj til kommandostrengen" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "Ejer og rettigheder" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Bruger" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Efter navn" #: moredialogs.xrc:1675 msgid "By ID" msgstr "Efter id" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "Indtast ejernavn som skal findes. Det vil sige root" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "Indtast id'et der skal sammenlignes med" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "Ingen gruppe" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Andre" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Læs" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Skriv" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "Kør" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Speciel" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "klæbende" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "eller indtast oktal" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "Indtast den oktale streng der skal findes. Det vil sige 0664" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "Find alle" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "Kun præcis søgning" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "Find hver angivet" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Handlinger" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "Hvad skal der ske med resultaterne. Standarden er at udskrive dem." #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "Skriv resultaterne til standarduddata, hvert fulgt af en ny linje" #: moredialogs.xrc:2200 msgid " print" msgstr " udskriv" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "Det samme som »Udskriv«, men tilføjer en terminl »\\0« til hver string i steden for en ny linje" #: moredialogs.xrc:2227 msgid " print0" msgstr " udskriv0" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "Viser resultaterne i formatet »ls -dils« pÃ¥ standarduddata" #: moredialogs.xrc:2254 msgid " ls" msgstr " ls" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "Kør den følgende kommando for hvert resultat" #: moredialogs.xrc:2292 msgid "exec" msgstr "kør" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "Kør den følgende kommando, spørg først for hvert resultat" #: moredialogs.xrc:2303 msgid "ok" msgstr "o.k." #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Kommando der skal køres" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "Det her er den kommando der skal køres. {} ; vil automatisk blive tilføjet" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "Udsend hver streng som i udskriv, men med brug af det følgende format: Se »man find (1)« for de byzantinske detaljer." #: moredialogs.xrc:2360 msgid "printf" msgstr "printf" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "Formatstreng" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "fls" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "Udsend hver streng som udskrift, men til den følgende fil" #: moredialogs.xrc:2423 msgid "fprint" msgstr "fprint" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "Svarer til fprint, men null-afsluttet" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "fprint0" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "Destinationsfilen" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "Filstien til destinationsfilen. Den vil blive oprettet/afkortet som behørigt." #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "Opfører sig som printf, men til den følgende fil" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "fprintf" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Kommando:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Det er her, at kommandoen Find vil blive bygget. Brug enten dialogsiderne eller indtast ting direkte" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Generelle indstillinger" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "Dette er Fuld Grep-notebogen.\nDer er ogsÃ¥ en Hurtig Grep-dialog\nsom vil kunne bruges for de fleste søgninger" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "Klik her for at gÃ¥ til Hurtig Grep-dialogen" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "Afkryds tjekboksen for at gøre Hurtig Grep til standarden fremadrettet" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "Gør Hurtig Grep til standarden" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "Syntaks: grep [tilvalg] [MønsterAtFinde] [Filer at søge]" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "Vælg de tilvalg du ønsker fra de første 4 faneblade. I de sidste 2 indtastes søgemønsteret\nog stien eller filerne, der skal søges efter. Alternativt kan du skrive direkte i kommandoboksen." #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "Vælg de tilvalg du har brug for" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w find kun hele ord" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "Ignorer store/smÃ¥ bogstaver, bÃ¥de i mønstre og i filnavne" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i Ignorer store/smÃ¥ bogstaver" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "-x returner kun hele linjeresultater" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "-v returner kun linjer som IKKE giver resultat" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Mappeindstillinger" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "Indstillinger pÃ¥ mapper" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr " Gør hvad med mapper?" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "Forsøg at ramme navnene (standarden)" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr " -r Rekursiv ind i dem" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "Ignorer dem" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Filindstillinger" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "Indstillinger for filer" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "Indtast det maksimale antal resultater" #: moredialogs.xrc:3071 msgid "matches found" msgstr "resultater" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr " Gør hvad med binære filer?" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "Rapporter dem som indeholder et resultat (standarden)" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "Opfat dem som tekstfiler" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "Søg igennem den binære fil, vis alle linjer som resulterer i mønsteret. Dette resulterer normalt i affald" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr " -D skip Ignorer enheder, sokler, FIFO'er" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Uddataindstillinger" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "Indstillinger i forhold til uddata" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "-c udskriv kun antal resultater" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "Udskriver kun navnene pÃ¥ filerne som indeholder resultater, ikke selve resultaterne" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "-H udskriv filnavnet for hvert resultat" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "-n præfiks et resultat med dets linjenummer" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "-s udskriv ikke fejlbeskeder" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "-B Vis" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "Indtast antallet af kontekstlinjer du ønsker at se" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "linjer med indledende kontekst" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "-0 udskirv kun resultatafsnittet af linjen" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "Udskriv kun navnene pÃ¥ de filer som indeholder INGEN resultater" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "-L Udskriv kun filnavne uden resultat" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "-h Udskriv ikke filnavne hvis flere filer" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "Præfiks hvert resultat med dennes linjeforskydning indenfor filen, i byte" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "-b præfiks et resultat med dennes byteforskydning" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "Ingen uddata overhovedet, hverken resultater eller fejl, men afslut med statussen 0 ved første resultat" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "-q udskriv ingen uddata overhovedet" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "-A Vis" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "linjer med efterfølgende kontekst" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "-C Vis" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "linjere med bÃ¥de foranstillet og efterfølgende kontekst" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "Viser inddata som aktuelt kommer fra standardinddata (eller en datakanal) som inddata, der kommer fra dette filnavn. Det vil sige, hvis der vises indholdet af et arkiv" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr " Lav visningen foregive at inddata kom fra fil:" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Mønster" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "Hvis dit søgemønster begynder med et minustegn. For eksempel -foo vil greb forsøge at finde en ikkeeksisterende indstilling »-foo«. Tilvalget -e beskytter mod dette." #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "-e Brug denne hvis dit mønster begynder med et minustegn" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "Regulært udtryk der skal findes" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "Indtast navnet der skal søges efter. For eksempel foobar eller f.*r" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "Opfat ikke mønsteret som et regulært udtryk men som en liste af faste strenge, adskilte af nye linjer, hvor alle skal findes. Det vil sige, som om fgrep blev brugt" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "-F Opfat mønster som om fgrep blev brugt" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "-P opfat mønster som et Perlregulært udtryk" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "Frem for at indtaste mønsteret i boksen ovenfor, udpak den fra denne fil" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "-f indlæs i steden for mønster fra fil:" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "Tilføj til kommandostrengen. Mønsteret vil blive givet enlige anførelsestegn for at beskytte metategn." #: moredialogs.xrc:3835 msgid "Location" msgstr "Placering" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "Indtast stien eller listen af filer der skal søges efter (eller brug en af genvejene)" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "Indtast stien hvor der skal søges fra. Hvis du bruger genvejene til højre, kan du tilføje en /*, hvis behovet er der" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "Dette vil være greps kommandostreng" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Det er her, at greps kommandostreng vil blive bygget. Brug enten dialogsiderne, eller indtast ting direkte" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "Hvis afkrydset vil dialogen automatisk lukke 2 sekunder efter den sidste indtastning er lavet" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "Autolukning" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Arkiver filer" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "Filer der skal gemmes i arkivet" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "Find en anden fil" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "Tilføj filen eller mappen i den ovenstÃ¥ende boks til listen til venstre" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "Navn til arkivet" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "Indtast kun hoveddelen af navnet, ikke filendelsen for eksempel foo, ikke foo.tar.gz" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "(Tilføj ikke en filendelse)" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "Opret i denne mappe" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "Led efter en egnet mappe" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "Opret arkivet med brug af Tar" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "Gem ikke i arkivet navnet pÃ¥ en symbolsk henvisning, gem filen som henvisningen peger pÃ¥" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Forsøg at verificere integriteten pÃ¥ arkivet nÃ¥r først arkivet er oprettet. Det er ikke en garanti, men bedre end ingenting. Tager dog lang tid for meget store arkiver." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "Verificer efterfølgende" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "Slet kildefilerne nÃ¥r de først er tilføjet til arkivet. Kun for modige brugere, med mindre filerne ikke er vigtige!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "Brug zip bÃ¥de til at arkivere filerne og pakke dem. Den pakker dÃ¥rligere end gzip eller bzip2, sÃ¥ brug den af kompabilitetsgrunde til dÃ¥rligere operativsystemer som ikke har disse programmer." #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "Brug zip i steden for" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "Tilføj filer til eksisterende arkiv" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "Arkiv hvortil der skal tilføjes" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "Sti og navn pÃ¥ arkivet. Hvis ikke allerede i punktlisten, skriv den ind eller gennemse." #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Gennemse" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "Fjern reference til symbolske henvisninger" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "Verificer arkiv efterfølgende" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "Slet kildefiler efterfølgende" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Pak filer" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "Filer til pakning" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "Hvilket program til pakning? Bzip2 siges at pakke hÃ¥rdere (i det mindste for større filer) men tage længere tid.\nHvis du af en eller anden grund ønsker at bruge zip, er denne tilgængelig fra Arkiv > Opret." #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Hurtigere" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "Gælder kun for gzip. Jo højere værdi, jo bedre pakning, men længere tidsforløb." #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Mindre" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "Normal opførelse er ikke at overskrive eksisterende pakkede filer med det samme navn. Afkryds denne boks hvis du ønsker at tilsidesætte denne opførelse." #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "Overskriv alle eksisterende filer" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "Hvis afkrydset vil alle filer i alle valgte mapper (og deres undermapper) blive pakket. Eller bliver mapper ignoreret." #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "Rekursivt pak alle filer i alle valgte mapper" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Udpak komprimerede filer" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "Komprimerede filer til udtrækning" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "Hvis en markering er en mappe, udpak alle pakkede filer inden i og dens undermapper" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "Rekursiv til mapper" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "Hvis en fil har det samme navn som en udpakket fil sÃ¥ overskriv den automatisk" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "Overskriv eksisterende filer" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "Fjern komprimering, men udpak ikke, valgte arkiver. Hvis ej afkrydset, bliver arkiver ignoreret" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Udpak ogsÃ¥ arkiver" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Udpak et arkiv" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Arkiv til udpakning" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Mappe hvortil der skal udpakkes" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "Hvis der allerede findes filer med det samme navn som et af de udpakkede fra arkivet, sÃ¥ overskriv dem." #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Verificer komprimerede filer" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Komprimerede filer til verificering" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Verificer et arkiv" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Arkiv til verificering" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Ønsker du at udpakke et arkiv, eller fjerne komprimering fra filer?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "Ønsker du at verificere et arkiv, eller komprimerede filer?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Egenskaber" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Generelt" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Navn:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Sted:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Type:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Størrelse:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "TilgÃ¥et:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "Admin ændret:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Ændret:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Bruger:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Gruppe:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "Anvend ændring i rettigheder eller ejerskab pÃ¥ hver indeholdt fil og undermappe" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "Anvend ændringer pÃ¥ alle underniveauer" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "Esoterisk" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "Enheds-id:" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode:" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "Antal af hÃ¥rde henvisninger:" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "Antal 512B blokke:" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "Blokstørrelse:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "Ejer-id:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "Gruppe-id:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "HenvisningsmÃ¥l:" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "For at ændre mÃ¥let, skriv enten navnet pÃ¥ en anden fil eller mappe, eller brug knappen Gennemse" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "Gennemse for at vælge et andet mÃ¥l for den symbolske henvisning" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "Første henvisningsmÃ¥l:" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "Ultimativt mÃ¥l:" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "GÃ¥ til henvisningen som er det umiddelbare mÃ¥l for denne" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "GÃ¥ til filen som er det ultimative mÃ¥l for denne henvisning" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "Monter en fstab-partition" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "Partiiton der skal monteres" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "Dette er listen over kendte, umonterede partitioner i fstab" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "Monteringspunkt for partitionen" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "Dette er monteringspunktet, der svarer til den valgte partition, taget fra fstab" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "Hvis en partition ikke er i fstab, vil den ikke være vist ovenfor. Klik pÃ¥ denne knap for alle kendte partitioner" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Monter en partition" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "Dette er listen over kendte, umonterede partitioner. Hvis du tror, at du kender en anden, kan du skrive den ind." #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "Hvis der er en fstab-post for denne enhed, vil monteringspunktet automatisk være blevet indtastet. Hvis ikke, skal du selv indtaste et (eller gennemse)." #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "Find et monteringspunkt" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Monteringsindstillinger" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "Ingen skrivning til filsystemet vil være tilladt" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Skrivebeskyttet" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "Alle skrivninger til filsystemet mens det er monteret vil være synkrone" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "Synkron skrivning" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "Filtilgangstider vil ikke blive opdateret nÃ¥r filerne tilgÃ¥es" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "Ingen opdatering af filtilgangstider" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Filer ikke eksekverbare" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "Ingen specialfiler for enhed i filsystemet vil kunne tilgÃ¥s" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "Skjul specialfiler for enhed" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "Setuid- og Setgidrettigheder pÃ¥ filer i filsystemet vil blive ignoreret" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Ignorer Setuid/Setgid" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "Monter en dvd-ram-disk" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "Enhed til montering" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "Dette er enhedsnavnet for dvd-ram-drevet" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "Dette er de behørige monteringspunkter i fstab. Du kan angive dine egne, hvis du ønsker det" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Monter et iso-aftryk" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Aftryk til montering" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Monteringspunkt for aftrykket" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Allerede\nmonteret" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "Monter en NFS-eksport" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Vælg en server" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "Dette er listen over NFS-servere, som aktuelt er aktive pÃ¥ netværket. Hvis du kender til endnu en, sÃ¥ brug knappen til højre for at tilføje den." #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Manuelt tilføje endnu en server" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "Eksporter til montering" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "Dette er eksporterne, som er tilgængelige pÃ¥ den ovenstÃ¥ende server" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr " allerede monteret" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "HÃ¥rd montering" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "Blød montering" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "Tilføj en NFS-server" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "IP-adresse pÃ¥ den nye server" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "Indtast adressen. Den skal se nogenlunde sÃ¥dan ud 192.168.0.2" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "Gem denne adresse til fremtidig brug" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "Monter en Sambadeling" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "Tilgængelige servere" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "IP-adresse" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "Dette er IP-adresserne pÃ¥ de kendte kilder til sambadelinger pÃ¥ netværket" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Værtsnavn" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "Dette er værtsnavnene pÃ¥ de kendte kilder til sambadelinger pÃ¥ netværket" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "Deling til montering" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "Dette er delingerne tilgængelige pÃ¥ den ovenstÃ¥ende server" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "Brug dette navn og adgangskode" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Forsøg at montere anonymt" #: moredialogs.xrc:11695 msgid "Username" msgstr "Brugernavn" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Indtast dit sambabrugernavn for denne deling" #: moredialogs.xrc:11720 msgid "Password" msgstr "Adgangskode" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Indtast den tilsvarende adgangskode (hvis der er en)" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Demonter en partition" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "Dette er listen over monterede partitioner fra mtab" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "Monteringspunkt for denne partition" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "Dette er monteringspunkter svarende til den valgte partition" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "Hurtig Grep" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "Dette er dialogen til Hurtig Grep.\nDen viser kun de mest udbredte\ntilvalg blandt greps mange tilvalg." #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "Klik her for at gÃ¥ til Fuld Grep-dialogen" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "Afkryds boksen for at gøre Fuld Grep standarden fremover" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "Gør Fuld Grep til standarden" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "Indtast stien eller listen over filer til søgning\n(eller brug en af genvejene)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "Match kun hele ord" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w match kun hele ord" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "Foretag en søgning uden versalfølsomhed" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i ignorer versalfølsomhed" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "Spild ikke tid pÃ¥ at søge i binære filer" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "-n præfiks resultat med linjenummer" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Ignorer binære filer" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "Forsøg ikke at søge i enheder, fifo'er, sokler og lignende" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "Ignorer enheder, fifo'er med mere" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "Gør hvad med mapper?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "Match navnene" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "Rekursiv ind i dem" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/it/0000755000175000017500000000000012120710621013326 5ustar daviddavid./4pane-6.0/locale/it/LC_MESSAGES/0000755000175000017500000000000013567054715015140 5ustar daviddavid./4pane-6.0/locale/it/LC_MESSAGES/it.po0000666000175000017500000100006013564777714016125 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # DavidGH , 2012 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-06-09 20:30+0000\n" "Last-Translator: redtide \n" "Language-Team: Italian (http://www.transifex.com/davidgh/4Pane/language/it/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: it\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "&Taglia" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Copia" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "&Sposta nel Cestino" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Elimina" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Eli&mina permanentemente" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Rin&omina" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Duplica" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&Proprietà" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Apri" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Apri &con..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Incolla" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Crea &Hard-Link" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Crea Sym&link" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "Chiu&di Scheda" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "&Rinomina Scheda" #: Accelerators.cpp:215 msgid "Und&o" msgstr "&Annulla" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Ripeti" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Seleziona tutto" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Nuovo File o Directory" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&Nuova Scheda" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&Inserisci Scheda" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "D&uplica questa Scheda" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "&Mostra anche singola intestazione scheda" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Imposta stessa &larghezza a tutte le schede" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "&Replica nel Riquadro Adiacente" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "&Scambia riquadri" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Suddividi Riquadri &Verticalmente" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Suddividi Riquadri &Orizzontalmente" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "&Unisci riquadri" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Estensione" #: Accelerators.cpp:217 msgid "&Size" msgstr "Dimen&sione" #: Accelerators.cpp:217 msgid "&Time" msgstr "Da&ta" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Permessi" #: Accelerators.cpp:218 msgid "&Owner" msgstr "Pr&oprietario" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Gruppo" #: Accelerators.cpp:218 msgid "&Link" msgstr "Co&llegamento" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "&Mostra tutte le colonne" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&Nascondi tutte le colonne" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Salva Impostazioni &Riquadri" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Salva Impostazioni Riquadri in &Uscita" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "&Salva disposizione come modello" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "&Elimina un modello" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Aggiorna &Visualizzazione" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "&Esegui Terminale" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "Imposta &Filtro" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Mostra/Nascondi dirs e files Nascosti" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&Aggiungi ai Segnalibri" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "&Gestisci Segnalibri" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "&Monta una Partizione" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "&Smonta una Partizione" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Monta una immagine &ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "Monta volume &NFS" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Monta una &Condivisione Samba" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "Smo&nta una Rete" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "&Smonta" #: Accelerators.cpp:224 msgid "Unused" msgstr "Non usato" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Mostra Emulatore &Terminale" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Mostra &Linea di Comando" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&Vai al file selezionato" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "&Svuota Cestino" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "&Elimina permanentemente i files cancellati" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "&Estrai archivio o files compressi" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Crea &Nuovo Archivio" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "&Aggiungi ad un archivio esistente" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "&Test Integrità Archivio o Files Compressi" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&Comprimi Files" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&Mostra dimensioni dir ricorsive" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Mantieni &Destinazioni dei Collegamenti Simbolici" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "&Configura 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "&Esci" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Guida contestuale" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "&Sommario" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "FA&Q" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&Informazioni" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Imposta scorciatoie" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Apri destinazione" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Apri il file di destinazione finale" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Modifica" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Nuovo separatore" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Ripeti programma precedente" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Naviga nel riquadro opposto" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Naviga nel riquadro adiacente" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Passa ai Riquadri" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Passa all'Emulatore Terminale" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Passa alla Linea di Comando" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Passa alla barra degli strumenti" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Passa alla finestra precedente" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Vai a Scheda Precedente" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Vai a Scheda Sucessiva" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Incolla come Modello Director&y" #: Accelerators.cpp:231 msgid "&First dot" msgstr "P&rimo punto" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "Penultimo punto" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "&Ultimo punto" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Monta usando ssh&fs" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "Mostra Ante&prime" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "&Annullato" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Ordina per nome" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Taglia la selezione corrente" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Copia la selezione corrente" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Sposta nel cestino" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Elimina con possibilità di ripristino" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Elimina senza possibilità di ripristino" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Incolla il contenuto degli appunti" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Crea Hardlink dagli Appunti a qui" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Collega simbolicamente il contenuto degli appunti qui" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Elimina la scheda selezionata" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Rinomina la scheda selezionata" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Aggiungi una nuova Scheda" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Inserisci una nuova Scheda dopo quella selezionata" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Nascondi intestazione per una singola scheda" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Copia il percorso nel riquadro adiacente" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Scambia i percorsi nei riquadri" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Salva la disposizione dei riquadri in ogni scheda" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Salva sempre la disposizione dei riquadri in uscita" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Salva disposizione come modello" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Aggiungi l'oggetto selezionato ai segnalibri" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Riordina, rinomina o elimina segnalibri" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "Individua corrispondenze di file. Molto più veloce di 'cerca'" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Cerca corrispondenza file(s)" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Cerca nei files" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Mostra/Nascondi Emulatore Terminale" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Mostra/Nascondi linea di comando" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "Svuota cestino interno a 4Pane" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Elimina cartella 'Deleted' di 4Pane" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Se calcolare le dimensioni delle dir in modo ricorsivo" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Mantieni collegamento simbolico allo spostamento" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Chiudi questa applicazione" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "Incolla solo la struttura della directory dagli appunti" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "Una estensione inizia dal primo . nel nome del file" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "Una estensione inizia dal penultimo . nel nome del file" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "Una estensione inizia dall'ultimo . nel nome del file" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "Mostra anteprime di immagini e file" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Annulla il processo corrente" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "Ordina file come foo1 e foo2 in ordine decimale" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\nGli arrays in ImplementDefaultShortcuts() hanno una dimensione differente!" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Alterna visualizzazione ad albero" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Impossibile caricare le impostazioni!?" #: Accelerators.cpp:502 msgid "&File" msgstr "&File" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Modifica" #: Accelerators.cpp:502 msgid "&View" msgstr "&Visualizza" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Schede" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "Segna&libri" #: Accelerators.cpp:502 msgid "&Archive" msgstr "A&rchivio" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Dispositivi" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "S&trumenti" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Opzioni" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Aiuto" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "&Colonne da visualizzare" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "&Carica modello scheda" #: Accelerators.cpp:673 msgid "Action" msgstr "Azione" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Collegamento" #: Accelerators.cpp:675 msgid "Default" msgstr "Predefinito" #: Accelerators.cpp:694 msgid "Extension" msgstr "Estensione" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "Mostra/Nascondi colonna Estensione" #: Accelerators.cpp:694 msgid "Size" msgstr "Dimensione" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "Mostra/Nascondi colonna Dimensione" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Data di modifica" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "Mostra/Nascondi colonna Data" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Permessi" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "Mostra/Nascondi colonna Permessi" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Proprietario" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "Mostra/Nascondi colonna Proprietario" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Gruppo" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "Mostra/Nascondi colonna Gruppo" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Collegamento" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "Mostra/Nascondi colonna Collegamento" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Mostra tutte le colonne" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Vista files: Mostra tutte le colonne" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Nascondi tutte le colonne" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Vista files: Nascondi tutte le colonne" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Segnalibri: Modifica" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Segnalibri: Nuovo Separatore" #: Accelerators.cpp:697 msgid "First dot" msgstr "Primo punto" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "Le estensioni iniziano dal Primo punto" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "Penultimo punto" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "Le estensioni iniziano dal Penultimo punto" #: Accelerators.cpp:698 msgid "Last dot" msgstr "Ultimo punto" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "Le estensioni iniziano dall'Ultimo punto" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Perdere le modifiche?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Sei sicuro?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Nessuno" #: Accelerators.cpp:939 msgid "Same" msgstr "Uguale" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Inserisci la nuova etichetta per questo menù" #: Accelerators.cpp:958 msgid "Change label" msgstr "Cambia etichetta" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "Inserisci l'etichetta per la descrizione di questo menù\nAnnulla per nessuna etichetta" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "Cambia etichetta di aiuto" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "Non riesco a trovare questo file/cartella.\nProva usando il pulsante Sfoglia." #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Oops!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Scegli files e/o cartelle" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Scegli la cartella nella quale memorizzare l'archivio" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Sfoglia per l'archivio per la concatenazione" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "La cartella nella quale vuoi creare l'archivio non esiste.\nUso quella corrente?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "L'archivio scelto per la concatenazione risulta inesistente.\nRitentare?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "Non trovo l'eseguibile di 7z nel tuo sistema" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Oops" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "Non trovo un archivio valido per la concatenazione" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "Nessun file compresso selezionato.\nRitentare?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Sfoglia per l'archivio da verificare" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Scegli la cartella dove estrarre l'archivio" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "Creazione della cartella di destinazione fallita.\nRitentare?" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "Non trovo rpm2cpio nel tuo sistema..." #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "Non trovo ar nel tuo sistema..." #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "Non trovo un archivio valido da estrarre.\nRitentare?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "Non trovo un archivio valido da verificare.\nRitentare?" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Files compressi" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Compressione fallita" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Files decompressi" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Decompressione fallita" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "File verificati" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Verifica fallita" #: Archive.cpp:1242 msgid "Archive created" msgstr "Archivio creato" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Creazione archivio fallita" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Files aggiunti all'archivio" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Aggiunta archivio fallita" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archivio estratto" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Estrazione fallita" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archivio verificato" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "In quale cartella vuoi estrarre i files?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "In quale cartella devo estrarlo?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Estrazione dall'archivio" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Non hai i permessi per la creazione in questa cartella\n Riprovare?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Nessuna Voce!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Spiacente, %s già esistente.\n Riprovare?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Non hai i permessi per la scrittura in questa cartella" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Non hai i permessi per l'accesso a questa cartella" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Nessuna Uscita!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Spiacente, creazione della cartella per contenere il backup fallita. Spiacente!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Spiacente, ripristino fallito" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Spiacente, rimozione oggetti fallita" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Incolla" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Muovi" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Spiacente, devi utilizzare l'utente root per estrarre periferiche a blocchi o a caratteri" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Sembra che la tua zlib è troppo datata per questa azione :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "Per qualche motivo non posso aprire l'archivio :(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "Questo tipo di archivio richiede l'installazione della liblzma." #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Libreria mancante" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Il file è compresso ma non un archivio visualizzabile." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Spiacente" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "Temo di non poter leggere il contenuto di questo tipo di archivio." #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Segnalibri Cartelle" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Separatore" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Duplicato" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Spostato" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Copiato" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Rinomina cartella" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Modifica Segnalibro" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "Nuovo Separatore" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "Nuova Cartella" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Non posso caricare la Barra dei menù!" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Non trovo il menù!" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Questa Sezione è inesistente nel file ini!" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Segnalibri" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Spiacente, cartella non trovata" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Segnalibri aggiunto" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Perdere i cambiamenti?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "Quale etichetta vuoi assegnare alla nuova cartella?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Spiacente, cartella %s già esistente.\n Ritentare?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Cartella aggiunta" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Separatore aggiunto" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Spiacente, cartella %s già esistente.\n Cambiare il nome?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Oops?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Come vuoi nominare la cartella?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "Quale etichetta utilizzare per la cartella?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Incollato" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Modifica il nome della cartella" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Spiacente, non sei autorizzato a spostare la cartella principale" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Spiacente, non sei autorizzato ad eliminare la cartella principale" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "Tsk tsk!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Elimino la cartella %s e tutto il suo contenuto?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Cartella cancellata" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Segnalibro cancellato" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Benvenuto in 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane è un File Manager creato per essere leggero, veloce e ricco di funzionalità." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Premi Successivo per configurare 4Pane per il tuo sistema." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "Oppure, se esiste una configurazione da importare, clicca" #: Configure.cpp:69 msgid "Here" msgstr "Qui" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Risorse trovate con successo. Premi Successivo" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "Ho controllato il tuo sistema e creato una impostazione di base." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "Puoi personalizzare in ogni momento le impostazioni dal menù Opzioni > Configura 4Pane." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Crea un collegamento a 4Pane sulla scrivania" #: Configure.cpp:158 msgid "&Next >" msgstr "&Avanti >" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Sfoglia per il file di impostazioni da copiare" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Non hai i permessi per copiare questo file.\nVuoi ritentare la copia?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "Questo file non sembra un valido file di configurazione di 4Pane.\nSicuro di volerlo usare?" #: Configure.cpp:198 msgid "Fake config file!" msgstr "File di configurazione non valido!" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Non trovo i file di risorse. Probabilmente un problema di installazione :(\nVuoi provare a localizzarli manualmente?" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "Non trovo i file di risorse!" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Sfoglia per ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Non trovo i file bitmap. Probabilmente un problema di installazione :(\nVuoi provare a localizzarli manualmente?" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "Non trovo i file di bitmap!" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Sfoglia per ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Non trovo i file del manuale d'uso. Probabilmente un problema di installazione :(\nVuoi provare a localizzarli manualmente?" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "Non trovo i file della Guida." #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Sfoglia per ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "Esegui &Programma" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "Installa pacchetto deb come root:" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "Rimuovi pacchetto deb come root:" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "Elenca i file forniti da uno specifico pacchetto deb" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "Elenca pacchetti deb installati corrispondenti al nome:" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "Mostra se il pacchetto deb è installato:" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "Mostra quale pacchetto ha installato il file selezionato" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "Istalla pacchetto rpm come root:" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "Rimuovi un pacchetto rpm come root:" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "Interroga il pacchetto rpm selezionato" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "Elenca i file forniti dal pacchetto rpm selezionato" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "Interroga rpm" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "Elenca file forniti dal pacchetto rpm" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "Crea cartella come root:" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Vai alla Cartella Personale" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "Vai alla Cartella Documenti" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Se visualizzi questo messaggio (non dovrebbe succedere!), è a causa del mancato salvataggio del file di impostazioni.\nProbabilmente a causa di permessi in scrittura o di partizione a sola lettura." #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Collegamenti" #: Configure.cpp:2041 msgid "Tools" msgstr "Strumenti" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Aggiungi uno strumento" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Modifica uno strumento" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Elimina uno strumento" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Dispositivi" #: Configure.cpp:2052 msgid "Automount" msgstr "Automount" #: Configure.cpp:2054 msgid "Mounting" msgstr "Montaggio" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "Removibile" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fisso" #: Configure.cpp:2062 msgid "Advanced" msgstr "Avanzato" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Fisso avanzato" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Removibile avanzato" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "LVM avanzato" #: Configure.cpp:2072 msgid "The Display" msgstr "Visualizzazione" #: Configure.cpp:2074 msgid "Trees" msgstr "Alberi" #: Configure.cpp:2076 msgid "Tree font" msgstr "Carattere albero" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Varie" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminali" #: Configure.cpp:2083 msgid "Real" msgstr "Reale" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulatore" #: Configure.cpp:2088 msgid "The Network" msgstr "Rete" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Varie" #: Configure.cpp:2093 msgid "Numbers" msgstr "Valori" #: Configure.cpp:2095 msgid "Times" msgstr "Tempi" #: Configure.cpp:2097 msgid "Superuser" msgstr "Super utente" #: Configure.cpp:2099 msgid "Other" msgstr "Altro" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "Blocca l'intercettazione del tasto F10 in GTK2" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "Se deselezionato, GTK2 intercetta la pressione del tasto F10, in tal caso non puoi utilizzarlo come tasto rapido (predefinito per \"Nuovo file o cartella\")." #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "Spiacente, non c'è spazio per un altro sottomenù qui\nTi consiglio di collocarlo altrove" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Inserisci il nome di un nuovo sotto menu da aggiungere a " #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "Spiacente, menù con stesso nome già esistente\n Ritentare?" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "Spiacente, non sei autorizzato ad eliminare il menù principale" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "Eliminare il menù \"%s\" e tutto il suo contenuto?" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "Non trovo il comando eseguibile \"%s\".\nContinuo lo stesso?" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Non trovo il comando eseguibile \"%s\" in PATH.\nContinuo lo stesso?" #: Configure.cpp:2471 msgid " Click when Finished " msgstr " Clicca al termine " #: Configure.cpp:2477 msgid " Edit this Command " msgstr " Modifica questo Comando " #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "Eliminare il comando \"%s\"?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Scegli un file" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Strumenti personalizzati" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "Dispositivi Automounting" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "Dispositivi Mount" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "Periferiche USB" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "Periferiche removibili" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "Periferiche fisse" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "Periferiche Avanzate" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "Periferiche fisse avanzate" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "Periferiche removibili avanzate" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "Periferiche LVM avanzate" #: Configure.cpp:2739 msgid "Display" msgstr "Visualizza" #: Configure.cpp:2739 msgid "Display Trees" msgstr "Visualizzazione Alberi" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "Visualizzazione Carattere albero" #: Configure.cpp:2739 msgid "Display Misc" msgstr "Visualizzazione Varie" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "Terminali Reali" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Emulatore Terminale" #: Configure.cpp:2740 msgid "Networks" msgstr "Reti" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "Misc Annulla" #: Configure.cpp:2741 msgid "Misc Times" msgstr "Misc Tempi" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "Misc Super utente" #: Configure.cpp:2741 msgid "Misc Other" msgstr "Misc Altro" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "Le impostazioni nella pagina \"%s\" non sono state salvate.\n Chiudere perdendo i cambiamenti?" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "Carattere Icona Selezionato" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "Carattere albero predefinito" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Ignorato)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Eliminare questo Dispositivo?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "Carattere emulatore terminale selezionato" #: Configure.cpp:3829 msgid "Default Font" msgstr "Carattere Predefinito" #: Configure.cpp:4036 msgid "Delete " msgstr "Elimina " #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Sei SICURO?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Non sembra essere un indirizzo ip valido" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Quel server è già in lista" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Inserisci il comando da utilizzare, incluse le opzioni richieste" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "Comando per un diverso programma \"su\" in finestra" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "Ogni chiave di ricerca dev'essere univoca. Ritentare?" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "Hai scelto di non esportare alcun tipo di dato! Azione annullata." #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "Eliminare questo pulsante dalla Barra?" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "Sfoglia per il percorso al file da aggiungere" #: Devices.cpp:221 msgid "Hard drive" msgstr "Disco fisso" #: Devices.cpp:221 msgid "Floppy disc" msgstr "Floppy disc" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "CD o DVDRom" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "CD o masterizzatore DVD" #: Devices.cpp:221 msgid "USB Pen" msgstr "Penna USB" #: Devices.cpp:221 msgid "USB memory card" msgstr "Memoria USB" #: Devices.cpp:221 msgid "USB card-reader" msgstr "Lettore carte USB" #: Devices.cpp:221 msgid "USB hard drive" msgstr "Disco fisso USB" #: Devices.cpp:221 msgid "Unknown device" msgstr "Dispositivo sconosciuto" #: Devices.cpp:301 msgid " menu" msgstr " menù" #: Devices.cpp:305 msgid "&Display " msgstr "&Mostra " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Nascondi " #: Devices.cpp:308 msgid "&Mount " msgstr "&Monta " #: Devices.cpp:308 msgid "&UnMount " msgstr "&Smonta " #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "Monta un DVD-&RAM" #: Devices.cpp:347 msgid "Display " msgstr "Visualizzazione" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "Smonta un DVD-&RAM" #: Devices.cpp:354 msgid "&Eject" msgstr "&Espelli" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "Quale montaggio vuoi eliminare?" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "Smonta un disco DVD-RAM" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "Clicca o trascina qui per invocare " #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "Temo tu non abbia i permessi per leggere questo file" #: Devices.cpp:581 msgid "Failed" msgstr "Fallito" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "Lettura fallita a causa di mancanza di permessi in lettura" #: Devices.cpp:592 msgid "Warning" msgstr "Attenzione" #: Devices.cpp:843 msgid "Floppy" msgstr "Floppy" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, quel dispositivo non sembra disponibile.\n\n Buona giornata!" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, quella partizione non sembra disponibile.\n\n Buona giornata!" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Spiacente, devi essere amministratore per poter smontare partizioni non fstab" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "Spiacente, smontaggio fallito" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "\n(Devi essere amministratore)" #: Devices.cpp:1435 msgid "The partition " msgstr "La partizione" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr " non ha una voce in fstab.\nDove vorresti montarlo?" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "Monta una partizione non fstab" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "Il mount-point per questo dispositivo non esiste. Crearlo?" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "Spiacente, devi essere amministratore per poter montare partizioni non fstab" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "Oops, montaggio fallito\nC'è stato un problema con /etc/mtab" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "Oops, montaggio fallito\n Prova inserendo un disco funzionante" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "Oops, montaggio fallito a causa di un errore " #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "Oops, montaggio fallito\nHai i permessi per farlo?" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "Non trovo il file con la lista delle partizioni, " #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "\n\nUsa Configura per risolvere il problema" #: Devices.cpp:1662 msgid "File " msgstr "File" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "Non trovo il file con la lista con le voci scsi, " #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "Devi inserire un comando valido. Ritentare?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "Nessuna applicazione specificata" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "Il percorso al file sembra attualmente inesistente.\n Lo uso lo stesso?" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "Applicazione non trovata" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "Eliminare questo Editor?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Annulla" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "Seleziona un tipo corretto di icona" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "Temo che tu non abbia i permessi in lettura per il file" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "Sembra esserci un problema: la directory di destinazione non esiste! Spiacente." #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "Sembra esserci un problema: la directory di origine non esiste! Spiacente." #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "Esiste già una directory nell'archivio con lo stesso nome" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "\nTi suggerisco di rinominarla, oppure rinomina quella di origine" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "Per qualche motivo, il tentativo di creare una directory per il salvataggio temporaneo è fallito. Spiacente!" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "Entrambi i files hanno la stessa data di Modifica" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "Il file corrente è stato modificato il " #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "Il file di origine è stato modificato il " #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "Sembra tu voglia sovrascrivere questa directory con se stessa" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "Spiacente, nome già esistente. Ritenta per favore." #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "No, l'idea è quella che tu ne CAMBI il nome" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "Spiacente, non posso duplicare il file. Forse un problema di permessi?" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "Spiacente, non posso fare spazio per la directory di origine. Forse un problema di permessi?" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "Spiacente, si è verificato un errore di filesystem non plausibile :-(" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "Eliminazione Symlink Fallita!" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "Duplicati Molteplici" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "Conferma Duplicazione" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "Aiuto RegEx" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Successo\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "Azione fallita\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "Processo annullato con successo\n" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "SIGTERM fallito.\nEseguo SIGKILL\n" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "Processo terminato con successo\n" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "Spiacente, annullamento fallito\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "Esecuzione di '%s' fallita." #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Chiudi" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Semplice File" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Collegamento Simbolico" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Collegamento Simbolico Rotto" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Dispositivo a Caratteri" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Dispositivo a Blocchi" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Directory" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Socket" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "Tipo sconosciuto!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Applicazioni" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "Spiacente, non sei autorizzato ad eliminare la cartella radice" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "Sigh!" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "Eliminare la cartella %s?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "Spiacente, Non riesco a trovare la cartella!" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "Non riesco a trovare l'eseguibile \"%s\".\nProcedere ugualmente?" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Non riesco a trovare l'eseguibile \"%s\" nel tuo PATH.\nProcedere ugualmente?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Spiacente, applicazione %s già esistente\n Ritentare?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Prego confermare" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "Non hai inserito una Estensione!" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "Per quale(i) estensione(i) vuoi che sia resa predefinita questa applicazione?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "Per quali Estensioni vuoi che %s sia predefinito?" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "Sostituisco %s\ncon %s\ncome comando predefinito per il tipo di files %s?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "Spiacente, non trovo l'applicazione!" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Eliminare %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Modifica Dati Applicazione" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Spiacente, non hai i permessi per eseguire questo file." #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "Spiacente, non hai i permessi per eseguire questo file.\nVuoi tentare di leggerlo?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "Non usare più %s come comando predefinito per il tipo di files %s?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "Creazione directory temporanea fallita" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Mostra nascosti" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "taglia" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "%zu oggetti " #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "Non hai inserito un mount-point.\nRitentare?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "Il mount-point per questa partizione non esiste. Crearlo?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "Oops, smontaggio della partizione fallito." #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr " Il messaggio di errore era:" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Montato con successo in " #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Impossibile creare la directory " #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Oops, creazione directory fallita" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "Oops, non ho abbastanza permessi per creare la directory" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "Oops, creazione directory fallita." #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "Smontare la root è VERAMENTE una pessima idea!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "Oops, smontaggio della partizione fallito." #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Smontaggio fallito" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr " smontato con successo" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "Oops, smontaggio fallito a causa di errore " #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Oops, smontaggio fallito" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "Il mount-point richiesto non esiste. Crearlo?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Oops, montaggio fallito.\nSicuro che il file sia una immagine valida?" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "Montaggio fallito a causa di un errore " #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "Montaggio non riuscito" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "Questo export è già montato in " #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "Il mount-point per questo Export non esiste. Crearlo?" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "Il mount-point per questa condivisione non esiste. Crearlo?" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "Spiacente, devi avere privilegi root per montare exports non fstab" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "Oops, montaggio fallito.\nNFS è in esecuzione?" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "Il mount-point richiesto non esiste. Crearlo?" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "Il mount-point richiesto non è una directory" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "Il mount-point richiesto non è accessibile" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "Il mount-point selezionato non è vuoto. Procedere lo stesso?" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "Montaggio fallito su SSH a causa di un errore:" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "Montaggio ssh non riuscito a causa di un errore " #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "Smontaggio fallito usando ssh su %s" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "Questa condivisione è già montata su " #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "Questa condivisione è già montata su %s\nVuoi montarla anche su %s?" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "Spiacente, devi avere privilegi root per montare condivisioni non fstab" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "Oops, montaggio fallito a causa di un errore:" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "Non trovo nessun Mount di questo tipo" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "Smonta una Rete" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "Condivisione o Export da Smontare" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Mount-Point" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr " smontato con successo" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "Smontaggio fallito con messaggio:" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "Scegli una directory da usare come mount-point" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "Scegli una immagine da montare" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Non riesco a trovare l'applicazione \"smbclient\". Probabilmente Samba non è installato correttamente.\nAltrimenti dev'esserci un problema di permessi o di PATH" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Non riesco ad eseguire l'applicazione \"findsmb\". Probabilmente Samba non è installato correttamente.\nAltrimenti dev'esserci un problema di permessi o di PATH" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Non trovo il comando \"showmount\". Probabilmente NFS non è installato correttamente.\nIn alternativa potrebbe esserci un problema di permessi o di PATH" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "Ricerca condivisioni samba..." #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "Non trovo un server samba attivo.\nSe ne conosci uno, inserisci il suo indirizzo, es.: 192.168.0.3" #: Mounts.cpp:1315 msgid "No server found" msgstr "Nessun server trovato" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "Non riesco a trovare il comando showmount. Usa Configura 4Pane > Rete per impostare il suo percorso" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Non trovo il comando \"showmount\". Probabilmente NFS non è installato correttamente.\nIn alternativa potrebbe esserci un problema di permessi o di PATH" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "Non sono a conoscenza di alcun server NFS nella tua rete.\nVuoi continuare inserendone uno?" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "Nessun mount trovato" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "Non puoi creare un collegamento in una directory se prima non cambi il nome al collegamento." #: MyDirs.cpp:118 msgid "Not possible" msgstr "Impossibile" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "Torna alla cartella precedente" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "Rientra nella cartella" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "Seleziona una cartella già visitata" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "Mostra Albero Completo" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "Apre la cartella di livello superiore" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Home" #: MyDirs.cpp:499 msgid "Documents" msgstr "Documenti" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "Hmm. Sembra che la directory non esista più!" #: MyDirs.cpp:664 msgid " D H " msgstr " D N " #: MyDirs.cpp:664 msgid " D " msgstr " D " #: MyDirs.cpp:672 msgid "Dir: " msgstr "Dir: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Files, Dimensione:" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Sotto directories" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "Ritenta a breve" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "Ora sono occupato" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "Temo tu non possa Creare dall'interno di un archivio.\nPotresti invece creare un nuovo elemento all'esterno, quindi spostarlo all'interno." #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "Temo che tu non abbia i permessi di scrittura in questa directory" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "&Nascondi files e cartelle nascosti" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "&Mostra files e cartelle nascosti" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "spostato" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "Temo che tu non abbia i permessi per compiere questo spostamento.\nVuoi tentare la copia in alternativa?" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "Temo che tu non abbia i permessi per questo spostamento" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "Temo tu non possa creare collegamenti all'interno di un archivio.\nComunque puoi crearlo all'esterno per poi inserirlo." #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "Temo tu non abbia i permessi per creare collegamenti in questa directory" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "Crea nuovo collegamento %s da:" #: MyDirs.cpp:1033 msgid "Hard" msgstr "Hard" #: MyDirs.cpp:1033 msgid "Soft" msgstr "Soft" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "Per favore, aggiungi una estensione da accodare" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "Per favore, immetti un nome per il collegamento" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "Per favore, immetti un altro nome per il collegamento" #: MyDirs.cpp:1112 msgid "linked" msgstr "collegato" #: MyDirs.cpp:1122 msgid "trashed" msgstr "cestinato" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "eliminato" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "Temo che tu non abbia i permessi per la eliminazione da questa directory" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "Almeno uno degli oggetti da cancellare risulta inesistente" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "Il file da cancellare risulta inesistente" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "Oggetto non trovato" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "Temo tu non abbia i permessi per spostare questi oggetti." #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "\nPuoi comunque cancellarli permanentemente." #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "Temo tu non abbia i permessi per spostare %s." #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "\nPuoi comunque cancellarlo permanentemente." #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "Temo tu non abbia i permessi per spostare %u su %u oggetti selezionati." #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "\n\nVuoi cancellare altri oggetti?" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "Eliminare nel Cestino: " #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Eliminare: " #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "%zu oggetti, da: " #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n In:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "Spiacente, per qualche motivo la creazione di una dir per mantenere i files cancellati è fallita!" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "Spiacente, Eliminazione fallita" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr " Non hai i permessi per cancellare da questa directory.\nPuoi provare a cancellare un po per volta." #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr " Non hai i permessi di eliminazione da una sotto directory di quest'ultima.\nPuoi provare a cancellare una parte per volta." #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr " Il percorso del file non è valido." #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "Per" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr " degli oggetti, non hai i permessi di cancellazione da questa directory." #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr " degli oggetti, non hai i permessi di cancellazione da una sottodirectory di questa directory." #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr " degli oggetti, percorso non valido." #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr " \nPuoi provare a cancellare un po alla volta." #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "Non riesco ad eliminare questo oggetto." #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "Temo " #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr " oggetti non possono essere eliminati." #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "Temo solamente " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr " di " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr " oggetti possono essere eliminati." #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "Taglia fallito" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "Eliminazione fallita" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "Eliminare permanentemente (Non potrai ripristinarlo!):" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "Sei ASSOLUTAMENTE sicuro?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "irrevocabilmente eliminato" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "Eliminazione Fallita!" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "? Mai sentito!" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "Eliminazione cartella fallita!" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "Il File sembra inesistente!" #: MyDirs.cpp:1757 msgid "copied" msgstr "copiato" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "Struttura directory incollata" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "incollato" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "Crea Sym&link" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "Crea &Hard-Link" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "Estrai dall'archivio" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "&Elimina dall'archivio" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "Rino&mina Cartella nell'archivio" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "Duplica Cartella nell'archivio" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "Rino&mina File nell'archivio" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "Duplica File nell'archivio" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "E&limina Cartella" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "Invia Cartella al Ces&tino" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "E&limina Symlink" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "Invia Symlink al Ces&tino" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "E&limina File" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "Invia File al Ces&tino" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Altro . . ." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "Apri con privile&gi superutente con . . . . " #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "Apri con privile&gi superutente" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "&Apri con . . . . " #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "Rino&mina Cartella" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "&Duplica Cartella" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "Rino&mina File" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "&Duplica File" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "Crea Nuovo Archivio" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "Aggiungi ad Archivio Esistente" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "Test integrità Archivio o Files Compressi" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Files Compressi" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "&Nascondi files e cartelle nascosti" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "&Mostra files e cartelle nascosti" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "&Ordina i nomi normalmente" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "&Ordina i nomi per suffisso numerico" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "L'estensione del file comincia da..." #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "Definizione estensione..." #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "Colonne da visualizzare" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "Unisci Riquadri" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "Repl&ica nel Riquadro Adiacente" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "Scambia i Riquadri" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "Temo tu non possa creare oggetti all'interno di un archivio.\nComunque puoi crearne uno all'esterno per poi inserirlo." #: MyFiles.cpp:588 msgid "New directory created" msgstr "Nuova cartella creata" #: MyFiles.cpp:588 msgid "New file created" msgstr "Nuovo file creato" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "Non credo tu voglia realmente duplicare la root, giusto?" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "Non credo tu voglia realmente rinominare la root, giusto?" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "Temo tu non abbia i permessi per Duplicare in questa directory" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "Temo tu non abbia i permessi per Rinominare in questa directory" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Duplica" #: MyFiles.cpp:665 msgid "Rename " msgstr "Rinomina " #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "No, l'idea è quella di specificare un NUOVO nome" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "duplicato" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "rinominato" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "Spiacente, non funziona. Ritentare?" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "Spiacente, questo nome non accettabile.\n Ritentare?" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "Spiacente, uno di questi esiste già.\n Ritentare?" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "Spiacente, operazione fallita\nRitentare?" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "Spiacente, nome già esistente.\n Ritentare?" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Apri con " #: MyFiles.cpp:1043 msgid " D F" msgstr " D F" #: MyFiles.cpp:1044 msgid " R" msgstr " R" #: MyFiles.cpp:1045 msgid " H " msgstr " N " #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr " di files e sottodirectories" #: MyFiles.cpp:1077 msgid " of files" msgstr " di files" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "La nuova destinazione per il collegamento è inesistente.\nRitentare?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "Spiacente, per qualche motivo, il cambiamento di destinazione del collegamento non è andato a buon fine." #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr " alterazioni eseguite con successo, " #: MyFiles.cpp:1693 msgid " failures" msgstr " fallimenti" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "Scegli file/directory differente per la nuova destinazione" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Attenzione!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "Spiacente, creazione della directory per il tuo file di configurazione fallita; azione annullata." #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "Spiacente, non hai i permessi per scrivere nella directory contenente il tuo file di impostazioni; operazione annullata." #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "Non è possibile inizializzare il sistema di aiuto; azione annullata." #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Annulla diverse azioni alla volta" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Ripeti diverse azioni alla volta" #: MyFrame.cpp:743 msgid "Cut" msgstr "Taglia" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Clicca per tagliare la selezione" #: MyFrame.cpp:744 msgid "Copy" msgstr "Copia" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Clicca per copiare la selezione" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Clicca per incollare la selezione" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Annulla" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Annulla una azione" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Ripeti" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Ripeti una precedente azione annullata" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Nuova Scheda" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Crea una nuova Scheda" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Elimina Scheda" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Elimina la Scheda selezionata" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "Suggerimento con anteprima" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "Mostra anteprime di immagini e testi in un 'tooltip'" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Informazioni" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Errore" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Successo" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Computer" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Sezioni" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "Nome cartella non valido." #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "Nome file già esistente." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "Operazione non permessa." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "Quale Modello vuoi eliminare?" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Elimina Modello" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "Salvataggio Modello annullato" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Annullato" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "Come vuoi chiamare questo Modello?" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "Scegli una etichetta per il Modello" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "Salva Modello annullato" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "Spiacente, raggiunto il limite massimo di schede aperte." #: MyNotebook.cpp:346 msgid " again" msgstr " copia" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "Aggiungi Scheda" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "Come vuoi chiamare questa Scheda?" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "Cambia titolo alla scheda" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "Indice colonna non valido" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "Colonna non valida" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr " *** Collegamento simbolico interrotto ***" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "Decompressione stream lzma fallita" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "Decompressione xz fallita" #: Redo.cpp:258 msgid " Redo: " msgstr " Ripeti: " #: Redo.cpp:258 msgid " Undo: " msgstr " Annulla: " #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr " (%zu oggetti) " #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr " ---- SEGUE ---- " #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr " -- PRECEDENTE -- " #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "incompiuto" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "rifatto" #: Redo.cpp:590 msgid " actions " msgstr "azioni" #: Redo.cpp:590 msgid " action " msgstr " azione " #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "azione" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr " incompiuto" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr " rifatto" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "Creazione directory per memorizzazione delle eliminazioni fallita" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "Spiacente, non puoi creare la sottodirectory Trashed che hai selezionato. Probabilmente per un problema di permessi.\nTi suggerisco di usare Configura 4Pane per scegliere un'altra destinazione." #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Spiacente, non è possibile creare la sotto cartella per i files eliminati. Probabilmente causa problemi di permessi.\nTi consiglio di usare Configura 4Pane e scegliere un'altra destinazione." #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Spiacente, non è possibile creare la sotto cartella per i files temporanei. Probabilmente causa problemi di permessi.\nTi consiglio di usare Configura 4Pane e scegliere un'altra destinazione." #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "Svuotando il Cestino di 4Pane eliminerà permanentemente tutti i files salvati al suo interno!\n\n Continuare?" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "Cestino svuotato" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "Lo svuotamento del cestino di 4Pane avviene automaticamente alla chiusura di 4Pane\nFarlo prematuramente eliminerà definitivamente tutti i files in esso contenuti. Tutti i dati di Annulla-Ripeti andranno perduti!\n\n Continuare?" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "File memorizzati cancellati definitivamente" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "Un file con lo stesso nome è già presente nel percorso di destinazione. Spiacente" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "Temo tu non abbia abbastanza permessi per scrivere nella directory di destinazione. Spiacente" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "Non puoi creare un hardlink a una directory." #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "Non puoi creare un hardlink a un altro dispositivo o partizione." #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "\nVuoi invece creare un collegamento simbolico?" #: Tools.cpp:60 msgid "No can do" msgstr "Non si può" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "Spiacente, non trovo alcuna corrispondenza." #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr " Buona giornata!\n" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "Apri la finestra di 'locate'" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "Apri la finestra di 'find'" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "Apri la finestra di 'greo'" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Mostra" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Nascondi" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "Non hai aggiunto le opzioni di questa pagina al comando di ricerca. Se la pagina cambia, verranno ignorate.\nIgnoro queste opzioni?" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "Non hai aggiunto le opzioni di questa pagina al comando di Grep. Se la pagina cambia, verranno ignorate.\nIgnoro queste opzioni?" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "Vai al percorso selezionato" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Apri il file selezionato" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "Spiacente, non è possibile richiamare il super-utente con questo metodo nel contesto attuale.\n" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "Devi eseguire ogni comando usando 'sudo'" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "Altrimenti puoi usare: su -c \"\"" #: Tools.cpp:2880 msgid " items " msgstr " oggetti" #: Tools.cpp:2880 msgid " item " msgstr " oggetto " #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Ripeti: " #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "Spiacente, non c'è più spazio per un altro comando qui\nTi suggerisco di inserirlo in un sotto menù differente" #: Tools.cpp:3077 msgid "Command added" msgstr "Comando aggiunto" #: Tools.cpp:3267 msgid "first" msgstr "primo" #: Tools.cpp:3267 msgid "other" msgstr "altro" #: Tools.cpp:3267 msgid "next" msgstr "successivo" #: Tools.cpp:3267 msgid "last" msgstr "ultimo" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "Comando definito dall'utente malformato: non ha senso usare contemporaneamente i modificatori '%c' e 'b'. Azione annullata" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "Comando definito dall'utente malformato: puoi usare un solo modificatore per parametro. Azione annullata" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "Comando definito dall'utente malformato: il modificatore '%c' dev'essere seguito da 's','f','d' oppure 'a'. Azione annullata" #: Tools.cpp:3337 msgid "Please type in the" msgstr "Inserisci nel" #: Tools.cpp:3342 msgid "parameter" msgstr "parametro" #: Tools.cpp:3355 msgid "ran successfully" msgstr "eseguito con successo" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "Strumento personalizzato" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "ritornato col codice di uscita" #: Devices.h:432 msgid "Browse for new Icons" msgstr "Sfoglia per nuove Icone" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "Finestra di selezione Files e Directory" #: Misc.h:265 msgid "completed" msgstr "completato" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Elimina" #: Redo.h:150 msgid "Paste dirs" msgstr "Incolla dirs" #: Redo.h:190 msgid "Change Link Target" msgstr "Cambia Collegamento Destinazione" #: Redo.h:207 msgid "Change Attributes" msgstr "Cambia Attributi" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Nuova Directory" #: Redo.h:226 msgid "New File" msgstr "Nuovo File" #: Redo.h:242 msgid "Duplicate Directory" msgstr "Duplica Directory" #: Redo.h:242 msgid "Duplicate File" msgstr "Duplica File" #: Redo.h:261 msgid "Rename Directory" msgstr "Rinomina Directory" #: Redo.h:261 msgid "Rename File" msgstr "Rinomina File" #: Redo.h:281 msgid "Duplicate" msgstr "Duplica" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Rinomina" #: Redo.h:301 msgid "Extract" msgstr "Estrai" #: Redo.h:317 msgid " dirs" msgstr " dirs" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "Inserisci Ritardo Messaggio a comparsa" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "Imposta il ritardo del Messaggio a comparsa, in secondi" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "Disabilita Messaggi a comparsa" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "Clicca al termine" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "&Annulla" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "Clicca per annullare" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "Nuova periferica rilevata" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "E' stato inserito un dispositivo a me sconosciuto." #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "Vuoi configurarlo?" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "&Sì" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr " N&on ora" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "Non impostarlo ora, chiedi in seguito" #: configuredialogs.xrc:205 msgid "&Never" msgstr "&Mai" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "\"Non assillarmi riguardo questo dispositivo\". Se cambi idea, puoi impostarlo da Configura 4Pane." #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "Configura nuovo dispositivo" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "Devicenode" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "Mount-point del dispositivo" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "Come vuoi chiamarlo?" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Tipo dispositivo" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "Dispositivo a sola lettura" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "Non avvisare per un dispositivo e non caricarlo" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "Ignora questo dispositivo" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "&ANNULLA" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "Nome del fabbricante" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "Questo è il nome (oppure ID) della periferica. Puoi modificarlo con qualcosa di più semplice da ricordare se vuoi" #: configuredialogs.xrc:577 msgid "Model name" msgstr "Nome modello" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "Mount-point per questo dispositivo" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "Qual'è il nome della directory nella quale viene montato automaticamente questo dispositivo? Probabilmente qualcosa di simile a /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "Configura il tipo del nuovo dispositivo" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "Etichetta per questo dispositivo" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "Se questo è un tipo di periferica inusuale non incluso nella lista standard, inserisci un nome che lo descriva al meglio" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "Qual'è la miglior descrizione corrispondente?" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "Seleziona un equivalente più prossimo al nuovo tipo. Questo determinerà quale icona verrà utilizzata nella toolbar" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "Configura 4Pane" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "&Finito" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "Clicca a fine impostazioni" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "I comandi definiti dall'utente sono programmi esterni che puoi\nrichiamare da 4Pane. Possono essere strumenti come 'df' o qualsiasi altro\nprogramma avviabile oppure uno script eseguibile.\nEs.: 'gedit %f' apre il file selezionato in gedit." #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "I seguenti sono i parametri disponibili:\n%s passa il file selezionato, o directory, all'applicazione\n%f (%d) specifica esclusivamente il file (directory) selezionato\n%a passa tutti gli oggetti selezionati nei riquadri attivi\n%b passa una selezione da entrambi le viste files dei riquadri\n%p visualizza il prompt per la richiesta di un parametro da passare all'applicazione\n\nPer eseguire un comando come superutente, usare come prefisso gksu oppure sudo." #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "Nelle seguenti sotto pagine puoi Aggiungere, Modificare oppure Eliminare strumenti." #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "Questa sezione è dedicata ai dispositivi.\nQuesti possono essere sia fissi come lettori DVDRW o removibili come penne USB.\n\n4Pane è in grado di rilevarli e configurarli automaticamente.\nNel caso di mancato riconoscimento o di impostazioni personalizzate,\npuoi agire tramite le seguenti sotto pagine." #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "Qui è dove puoi tentare di rendere funzionale il sistema\nse qualcosa fallisce a causa di un sistema obsoleto\noppure molto recente.\n\nProbabilmente non hai necessità dell'utilizzo di questa sezione\naltrimenti leggi i suggerimenti a comparsa." #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "Questa sezione imposta l'apparenza di 4Pane.\n\nLa prima sotto pagina è dedicata agli alberi di files e directories,\nla seconda per i caratteri e la terza per impostazioni generiche." #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "Queste due sotto pagine sono dedicate ai terminali.\nLa prima per quelli reali, l'altra per l'emulatore terminale." #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "In fine, quattro pagine per impostazioni generiche." #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "Queste opzioni riguardano gli alberi di files e directories" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "Pixels tra cartella superiore" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "e nodo di espansione" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "Il nodo di espansione (in gtk2 viene rappresentato da un triangolino) si trova tra la cartelle superiore e il nome del file. Questo spincontrol imposta il numero di pixels tra la cartella e il triangolo." #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "Pixels tra" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "nodo di espansione e nome" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "Il nodo di espansione (in gtk2 viene rappresentato da un triangolino) si trova tra la cartelle superiore e il nome del file. Questo spincontrol imposta il numero di pixels tra triangolo e nome del file" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "Mostra files e cartelle nascoste nei riquadri in una nuova vista a schede. Puoi cambiare questa visualizzazione per ogni riquadro dal menù contestuale oppure con Ctrl+H" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr " Mostra files e cartelle nascosti come predefinito" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "Se selezionato, i files/cartelle visualizzati saranno disposti in modo appropriato in base alla lingua in uso nel sistema. Tuttavia, potrebbe disporre i files nascosti (se visualizzati) non separatamente" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr " Ordina i files in base alla localizzazione" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "Mostra il collegamento a cartella assieme alle cartelle normali nella vista files, non sotto i files" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr " Tratta un symlink come una directory normale" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "Vuoi visualizzare delle linee tra ogni cartella e sotto cartella? Scegli come preferisci, lo stile predefinito è 'Si' in GTK1 e 'No' in alcune versioni di GTK2" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr " Mostra linee nell'albero delle directories" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "Scegli i colori da usare come sfondo per il riquadro. Hai diversi colori come scelta per la vista file e per le directory" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr " Colore di sfondo di un riquadro" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "&Seleziona Colori" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "Clicca per scegliere il colore di sfondo da utilizzare" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "In una vista files, crea delle linee colorate alternate, risultando un effetto striato" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr " Colora alternativamente le linee nella vista files" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "Se&leziona Colori" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "Clicca per selezionarte i colori da utilizzare nelle righe alternate" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "Evidenzia leggermente l'intestazione di colonna in una vista files, o sopra la barra degli strumenti di una vista cartelle, per mostrare qual'è il riquadro attivo. Clicca il pulsante 'Configura' per cambiare l'intensità di evidenziazione" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr " Evidenzia riquadro attivo" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "C&onfigura" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "Clicca per alterare l'intensità di evidenziazione per ogni tipo di riquadro" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "Nelle versioni antecedenti la 1.1, 4Pane aggiornava lo stato dei file/directory modificati dal programma stesso ma non dall'esterno.\nOra con l'utilizzo di inotify, 4Pane informa le modifiche effettuate in entrambi i casi. Deseleziona la casella se preferisci il metodo precedente." #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr " Usa inotify per monitorare il filesystem" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "&Applica" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "Qui puoi impostare il carattere usato dall'albero" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "Clicca il pulsante 'Cambia' per selezionare un carattere o dimensione differente" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "Il pulsante 'Usa Predefinito' ripristinerà le impostazioni predefinite di sistema" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "Così è come si presenta il carattere dell'emulatore terminale" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "Ca&mbia" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "Cambia il carattere a tua scelta" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "Apparenza usando il carattere predefinito" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "Usa &Predefinito" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "Ripristina il carattere predefinito di sistema" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "Se il percorso selezionato nella dirview attiva è /home/nomeutente/Documenti, la barra del titolo visualizzerà '4Pane [Documenti]' invece di '4Pane' solamente." #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr " Mostra il percorso selezionato nella barra del titolo" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "Qui è dove puoi vedere quale file o cartella viene selezionato. Puoi anche usare Ctrl-C per copiarlo e utilizzarlo in applicazioni esterne. Il cambiamento di questa opzione non avrà effetto fino al prossimo riavvio di 4pane" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr " Mostra il percorso selezionato nella barra degli strumenti" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "4Pane fornisce delle icone predefinite per azioni come 'Copia' e 'Annulla'. Seleziona questa casella per usare in alternativa il tuo tema di icone" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr " Usa le icone di sistema onde possibile" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "4Pane mantiene i files e cartelle cestinati invece di eliminarli. In questo modo puoi avere una richiesta di conferma prima dell'invio al cestino; in tal caso seleziona questa casella" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr " Chiedi conferma prima di inviare i files al Cestino" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "4Pane mantiene i files e cartelle eliminati in un suo contenitore" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr " Chiedi conferma prima di Eliminare i files" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "Crea un contenitore per i files cestinati/eliminati in questa cartella" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "Configura editor della barra degli s&trumenti" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "Qui è dove puoi aggiungere/rimuovere le icone nella barra degli strumenti riguardante gli editors e applicazioni simili. Questi vengono eseguiti al click, oppure, trascinandoci sopra uno o più files, questi ultimi verranno aperti con l'applicazione scelta." #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "Configura Ante&prime" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "Qui puoi impostare le dimensioni delle anteprime di immagini, testi e il loro tempo di azione" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "Configura Pul&santi piccoli" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "Qui puoi aggiungere/rimuovere i pulsanti dalla piccola barra degli strumenti nella parte superiore di ogni vista delle directories" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "Configura &Suggerimenti" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "Configura se e per quanto tempo i suggerimenti vengono visualizzati. Questo è solo parzialmente implementato: al momento non funziona per i suggerimenti sulla barra degli strumenti." #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "Seleziona il Terminale per l'applicazione da eseguire con Ctrl-T" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "Uno dei seguenti" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "Oppure uno a tua scelta" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "Inserisci l'esatto comando per eseguire il terminale.\nScegline uno presente nel tuo sistema ;)" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "Quale Terminale dovrebbe eseguire gli altri programmi?" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "Inserisci l'esatto comando per eseguire un altro programma all'interno del terminale.\nScegline uno presente nel tuo sistema ;)" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "Quale Terminale dovrebbe eseguire uno Strumento Definito dall'Utente?" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "Inserisci l'esatto comando per eseguire un altro programma all'interno del terminale, mantenendo il terminale aperto al termine del programma.\nScegline uno presente nel tuo sistema ;)" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "Configura il Prompt e Carattere per l'emulatore terminale" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "Prompt. Vedi suggerimento per i dettagli" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "Questo è il prompt del terminale interno accessibile tramite Ctrl-M o Ctrl-F6. Puoi usare caratteri normali, ma esistono anche le seguenti opzioni:\n%H = hostname %h = hostname fino al punto\n%u = nome utente\n%w = cwd %W = solamente l'ultimo segmento di cwd\n%$ visualizza $, oppure # se root" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Cambia" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Usa Predefinito" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "Attuali possibili servers NFS conosciuti" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "Questi sono gli indirizzi IP dei servers riconosciuti, o rilevati in precedenza, nella tua rete" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "Elimina server selezionato" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "Inserisci un altro indirizzo server" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "Scrivi qui un altro indirizzo server (es.: 192.168.0.2), quindi clicca su 'Aggiungi'" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Aggiungi" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "Percorso per showmount" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "Qual'è il percorso per l'assistente NFS showmount? Probabilmente /usr/sbin/showmount" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Percorso directory Samba" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "Dove vengono memorizzati i files come smbclient e findsmb? Probabilmente in /usr/bin/ (o collegati simbolicamente da li)" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane permette di annullare (e ripetere) più operazioni" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "Qual'è il valore massimo di annullamenti?" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "(Vedi suggerimento a comparsa)" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "Ogni volta che Incolli/Muovi/Rinomini/Elimini/ecc i files, i vari passaggi vengono registrati per poter esser successivamente annullati o ripetuti a piacimento. Questo è il valore massimo di azioni memorizzate da impostare.\nNota che puoi eliminare il contenuto di una cartella con 100 files, questo vale come 100 procedure! Per questo suggerisco un valore abbastanza alto: almeno 10000" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "Quantità di voci da mantenere in un menu a discesa." #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "(Vedi suggerimento a comparsa)" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "Questo si riferisce ai pulsanti a discesa per Annulla e Ripeti e per la barra degli strumenti della vista cartelle per navigare tra le recenti.\nQual'è il valore massimo di voci da visualizzare nel menù? Suggerisco 15. Puoi visualizzare le azioni precedenti o successive una pagina per volta." #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "Alcuni messaggi vengono visualizzati temporaneamente, dopo di che spariscono." #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "Per quanti secondi dovrebbero restare visibili?" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "Messaggi di Successo" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "Alcune finestre di dialogo visualizzano un messaggio di avvenuto successo o azione fallita, chiudendosi automaticamente dopo alcuni secondi. Imposta qui quanti secondi deve rimanere un messaggio di Successo." #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "Messaggi di Azione Fallita" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "Alcune finestre di dialogo visualizzano un messaggio di avvenuto successo o azione fallita, chiudendosi automaticamente dopo alcuni secondi. Imposta qui quanti secondi deve rimanere un messaggio di Azione Fallita." #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "Messaggi della Barra di Stato" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "Alcune azioni quali il montaggio di una partizione. fanno apparire i risultati nella barra di stato. Qui viene definita la durata della visualizzazione di tali messaggi." #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "Quale front-end vuoi utilizzare per gestire i vari task come root?" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "Seleziona questa casella per permettere a 4Pane di eseguire i comandi come root, utilizzando su oppure sudo (dipendentemente dalla distribuzione o impostazione di sistema in uso)" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr " Proprio di 4Pane" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "Dovrebbe chiamare:" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "Alcune distribuzioni (ubuntu o simili) utilizzano sudo per acquisire privilegi da amministratore, molti altri su. Seleziona il comando più appropriato per te." #: configuredialogs.xrc:3196 msgid "su" msgstr "su" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "sudo" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "Seleziona la casella se vuoi che 4Pane memorizzi la password per utilizzarla in automatico quando richiesta. Per motivi di sicurezza il tempo massimo concesso è di 60 minuti" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr " Memorizza le password per:" #: configuredialogs.xrc:3233 msgid "min" msgstr "min" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "Se questa casella è selezionata, ogni volta che la password verrà inserita il limite di tempo verrà aggiornato" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr " Tempo per il riavvio usati da ciascuno" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "Un programma esterno come gksu. Potranno essere selezionati solo quelli disponibili nel sistema" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr " Un programma esterno:" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr " kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr " gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr " gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr " Altro..." #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "Inserisci l'applicazione a tua scelta, incluse le opzioni necessarie. Assicurati che il comando sia disponibile nel tuo sistema..." #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "I primi 3 pulsanti impostano l'apertura file, il Trascinamento e la barra di stato\nIl quarto esporta le impostazioni di 4Pane: vedi suggerimento a comparsa" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "Configura &Apertura File" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "Clicca per istruire 4Pane come preferisci aprire i file" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "Configura &Trascinamento" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "Clicca per impostare il comportamento del Trascinamento " #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "Configura Barra di &Stato" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "Clicca per configurare le sezioni della barra di stato" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "&Esporta File Configurazione" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "Clicca per salvare la configurazione come ~/4Pane.conf. Poca gente necessiterà di questo; probabilmente solo packagers di distribuzione. Per ulteriori dettagli, premi F1 dopo il click." #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "Comando da eseguire:" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "Inserisci un nome per l'applicazione o script da eseguire. Se è presente nella variabile PATH, è sufficiente il nome es.: 'df'. Altrimenti è necessario inserire l'intero percorso es.: '/usr/X11R6/bin/foo'\n\nParametri:\n%s passa il file selezionato, o directory, all'applicazione, %f (%d) specifica esclusivamente il file (directory) selezionato.\n%a passa tutti gli oggetti selezionati nei riquadri attivi, %b passa una selezione da entrambi le viste files dei riquadri.\n%p visualizza il prompt per la richiesta di un parametro da passare all'applicazione" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "Sfoglia per l'applicazione da eseguire" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "Seleziona se vuoi che il programma venga eseguito in un Terminale" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "Esegui in un Terminale" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "Alcuni programmi necessitano di un terminale sia per l'esecuzione, sia per visualizzare i risultati. Attivando questa opzione, il terminale rimarrà visibile al termine del programma, per rendere visibile tutti gli esiti." #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "Mantieni aperto il terminale" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "Seleziona se vuoi che il riquadro corrente venga aggiornato automaticamente al termine di questo comando" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "Aggiorna riquadro" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "Seleziona se vuoi che venga aggiornato anche il riquadro adiacente" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "Aggiorna riquadro adiacente" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "Seleziona se vuoi che lo strumento venga avviato con privilegi da amministratore, ma non in un terminale (nel terminale puoi comunque usare 'sudo' o 'su -c')" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "Esegui comando come root" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "Etichetta relativa al menù:" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "Aggiungi a questo menù:" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "Questi sono i menù attualmente disponibili. Selezionane uno oppure aggiungine un altro" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "&Nuovo Menù" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "Aggiunge un nuovo menù o sotto-menù alla lista" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "&Elimina Menù" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "Elimina il menù o sotto-menù selezionato" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "Aggiungi S&trumento" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Clicca per aggiungere il nuovo strumento" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Seleziona un comando, quinci clicca 'Modifica questo Comando'" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Etichetta nel menù" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Seleziona l'etichetta del comando da modificare. Puoi modificare anche questa se vuoi." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Comando" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "Comando da modificare" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "&Modifica questo Comando" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "Seleziona un oggetto, quindi clicca 'Elimina questo Comando'" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Seleziona l'etichetta del comando da eliminare" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "Comando da eliminare" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "&Elimina questo Comando" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Doppio click sulla voce da modificare" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "Mostra le etichette senza alcun mnemonico es.: mostra 'Taglia' invece di '&Taglia'. E' possibile visualizzare e modificare il mnemonico alla modifica dell'etichetta dell'oggetto" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "Mostra etichette senza mnemonici" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "Seleziona Colori" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "I colori visualizzati di seguito verranno utilizzati alternativamente nella vista files" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr " 1° Colore Corrente" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr " 2° Colore Corrente" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "Seleziona il colore da utilizzare come sfondo per il riquadro.\nPuoi scegliere un colore per la vista directory e un altro per la vista file.\nIn alternativa, spunta la casella per utilizzare lo stesso colore per entrambi." #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr " Colore Corrente Vista Directory" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr " Colore Corrente Vista File" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr " Usa lo stesso colore per entrambi i tipi di riquadro" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "Seleziona Riquadro Evidenziato" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "Un riquadro può essere evidenziato durante l'attivazione. Qui puoi variarne la luminosità." #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "Per una vista directories, viene evidenziata una linea sottile sopra la barra degli strumenti." #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "Per una vista di files, il cambiamento di colore è nell'intestazione, che è molto più spessa." #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "Quindi ti suggerisco di variare meno colore nella vista files, dato che la differenza si nota maggiormente." #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr " Vista cartelle attiva" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "Colore Originale" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "Vista files attiva" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "Inserisci Scorciatoia" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "Premi i tasti da utilizzare per questa funzione:" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr " Fittizio" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Attuale" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Pulisci" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "Clicca qui se non vuoi una scorciatoia per questa azione" #: configuredialogs.xrc:4902 msgid " Default:" msgstr " Predefinito:" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "Ctrl+Shift+Alt+M" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "Clicca qui per inserire l'acceleratore visualizzato come predefinito" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "Cambia Etichetta" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr " Cambia Descrizione" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "Duplica Acceleratore" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "Questa combinazione di tasti è già usata da:" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr " Fittizio" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "Cosa vuoi fare?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "Scegli tasti differenti" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "Ruba l'altra scorciatoia da tastiera" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "Abbandona" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "Ri&tenta" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "Ritorna alla finestra di dialogo per scegliere altri tasti" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "S&ovrascrivi" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "Usa comunque la tua scelta. Hai l'opportunità di scegliere di modificare la scorciatoia che li sta già utilizzando." #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "Questa scorciatoia sarà ripristinata col valore precedente, se presente" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "Come vengono rilevati i dispositivi inseriti?" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "Prima del kernel 2.4, penne USB e simili non venivan rilevate. Con il kernel 2.4, è stato introdotto il metodo USB-storage. I kernels più recenti come il 2.6 usano di norma il sistema udev/hal. In alcune distribuzioni (es.: SuSE 9.2) venne usato un metodo non tradizionale tramite /etc/mtab" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "Metodo originale (USB-storage)" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "Tramite controllo in mtab" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "Nuovo metodo (udev/hal)" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "Monta automaticamente i lettori Floppy" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "Monta automaticamente i lettori DVD-ROM" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "Monta automaticamente i lettori dispositivi removibili" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "Quale file (se esistente) contiene i dati dei nuovi dispositivi inseriti?" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "Floppies" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "Questo vale soprattutto per distribuzioni non-automounting, alcune delle quali inseriscono le informazioni sui dispositivi direttamente in /etc/mtab o /etc/fstab." #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "nessuno" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "Alcune distribuzioni (es.: Mandriva 10.1) utilizzano Supermount per aiutare a gestire le variazioni dei dischi. Se è così, la voce fstab di una periferica potrebbe iniziare con \"none\" invece del nome del dispositivo. In questo caso, selezionare questa casella." #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "Supermounts" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "CDRoms ecc" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "Dispositivi USB" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "Frequenza di aggiornamento per la ricerca di nuovi dispositivi USB" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "4Pane verifica se vengono inseriti o rimossi dei dispositivi USB. Quanto frequente deve avvenire?" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "secondi" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "Come dovrebbero essere visualizzati i lettori USB multicard?" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "I lettori multicard vengono normalmente registrati come dispositivi separati per ciascun slot.\nPer impostazione predefinita vengono visualizzati solo gli slots con scheda inserita.\nSpuntando questa casella, ogni slot vuoto avrà un pulsante assegnato, quindi con 13 slot si visualizzeranno 13 pulsanti!" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr " Aggiungi Pulsante anche in caso di slots vuoti" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "Cosa fare quando 4Pane monta un dispositivo USB?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "Vuoi smontarlo prima di chiudere? Viene applicato solamente a dispositivi removibili e solamente se la tua distribuzione è non-automounting" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr " Chiedi prima di smontarlo in uscita" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "Per informazioni, leggere i suggerimenti a comparsa" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "Quale file contiene i dati delle partizioni?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "Lista delle partizioni conosciute. Predefinito: /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "Quale directory contiene i dati sul dispositivo?" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "Contiene i 'files' come hda1, sda1. Predefinito: /dev/" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "File(s) contenenti le informazioni sui Floppy" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "Le informazioni sui Floppy sono contenute solitamente in /sys/block/fd0, /sys/block/fd1 ecc.\nNon inserire la numerazione, in caso, solamente /sys/block/fd " #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "File contenente le informazioni sui CD/DVDROM" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "Le informazioni sui dischi fissi come i cdroms si trovano solitamente in /proc/sys/dev/cdrom/info. Modifica il percorso se differente" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "Ricarica Predefiniti" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "Kernel 2.4: usb-storage" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "I kernels 2.4 rilevano i dispositivi removibili aggiungendo una directory /proc/scsi/usb-storage-0, storage-1 ecc.\nInserisci solamente la parte base qui (Predefinito: /proc/scsi/usb-storage-)" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "Kernel 2.4: lista dispositivi removibili" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "I kernels 2.4 mantengono una lista di dispositivi removibili connessi/precedentemente connessi.\nProbabilmente /proc/scsi/scsi" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "Nome dei nodi per i dispositivi removibili" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "Quale nodo di dispositivo viene assegnato a dispositivi removibili come le penne USB? Probabilmente /dev/sda, sdb1 ecc\nInserisci solamente la parte base qui (Predefinito: /dev/sd)" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "Kernel 2.6: directory di informazioni dei dispositivi removibili" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "Nei kernels 2.6 le informazioni sui dispositivi removibili vengono specificate qui\nProbabilmente /sys/bus/scsi/devices" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "Cos'è il prefisso LVM?" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "Prefisso delle partizioni Logical Volume Management (es.: dm-0)\nInserisci solamente la parte base (es.: dm-)" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "Altre impostazioni LVM. Vedi suggerimento" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "Dove sono i proc 'block' files? Questo è necessario per la gestione LVM.\nProbabilmente /dev/.udevdb/block@foo. Inserisci solo la parte '/dev/.udevdb/block@'" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "Seleziona un Disco da configurare\noppure \"Aggiungi Disco\" per aggiungerne" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "Aggiungi &Disco" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "&Modifica questo Disco" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "&Elimina questo Disco" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "I dischi fissi dovrebbero essere rilevati automaticamente,\nma in caso di mancato rilevamento o per modificare alcuni dati\nè possibile impostarli qui." #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "Seleziona un disco da configurare\noppure \"Aggiungi Disco\" per aggiungerne uno" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "Fittizio, usato come test per questa versione del file" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "Configura Pulsanti Barra strumenti Vista directories" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "Questi sono i pulsanti visualizzati a destra della piccola barra degli strumenti in ogni vista cartelle.\nSono come dei segnalibri: cliccandone uno si apre il percorso relativo" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "Pulsanti Attuali" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "&Aggiungi un Pulsante" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "&Modifica questo Pulsante" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "&Elimina questo Pulsante" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "Configura (es.: un Editor)" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Nome" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "Questa è solo una etichetta per poterlo riconoscere (es.: kwrite)." #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "Icona da utilizzare" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "Esegui Comando" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "Inserisci il comando per richiamare il programma. es.: kwrite oppure /opt/gnome/bin/gedit" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "Directory di lavoro da utilizzare (opzionale)" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "Come opzione puoi provvedere una directory di partenza. In tal caso, verrà richiamato il 'cd' ad essa prima dell'avvio del comando. La maggior parte dei comandi non necessitano di un percorso specificato, come ad esempio kwrite" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "Per esempio, incollando diversi files, GEdit può aprirli nelle sue schede." #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "Accetta Inserimenti Multipli" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "Non caricare l'icona di questo programma. La configurazione sarà mantenuta e potrai 'riabilitarla' in futuro" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "Ignora questo programma" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Seleziona Icona" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "Selezione\nCorrente" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "Clicca una icona per selezionarla\noppure Sfoglia per cercarne altre" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "&Sfoglia" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "Nuova Icona" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "Aggiungere questa Icona?" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "Configura Editors ecc" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "Questi programmi possono essere eseguiti cliccando un pulsante\nnella barra degli strumenti o trascinando un file sopra il pulsante.\nUn semplice esempio potrebbe essere un editor di testo come\nkwrite, ma può essere un qualsiasi programma a tua scelta." #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "&Aggiungi un Programma" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "&Modifica questo Programma" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "&Elimina questo Programma" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "Configura Icona Barra degli Strumenti piccola" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "Percorso file" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "Inserisci il percorso da aprire quando il pulsante viene premuto" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "Clicca per sfogliare per il nuovo percorso" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "(Clicca per cambiare)" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "Etichette come 'Musica' o '/usr/share'" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "Fornire un'etichetta è facoltativo e non verrà visualizzata nella maggior parte dei casi. Tuttavia, con GTK3 non c'è abbastanza spazio per visualizzare tutte le icone, il pannello di overflow mostra solo l'etichetta, non l'icona; quindi senza etichetta rimarrebbe uno spazio vuoto." #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "Testo Suggerimento Opzionale" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "Configura Trascinamento" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "Scegli i tasti da utilizzare per le azioni seguenti:" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "Muovi:" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "Copia:" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "Hardlink:" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "Softlink:" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "Cambia i valori per ottenere una sensibilità differente per il Trascinamento" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Orizzontale" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "Di quanto deve spostarsi il mouse, a destra o sinistra, prima che il Trascinamento venga innescato? Predefinito: 10" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Verticale" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "Di quanto deve spostarsi il mouse, sopra o sotto, prima che il Trascinamento venga innescato? Predefinito: 15" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "Numero di linee per lo scroll tramite rotellina del mouse" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "Se non viene rilevato dalle tue impostazioni di sistema, questo determina quanto dev'essere sensibile la rotellina del mouse, solamente durante il Trascinamento" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "Configura Barra di Stato" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "La barra di stato ha quattro sezioni. Qui puoi cambiarne le proporzioni" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "(I cambiamenti non avranno effetto prima del riavvio di 4Pane)" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "Aiuto Voce di menù" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Predefinito 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "Messaggi d'aiuto a comparsa quando passi sopra ad una voce di menu" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "Messaggi di Successo" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "(Predefinito 3)" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "Messaggi tipo \"15 files eliminati con successo\". Questi messaggi scompaiono dopo un certo numero di secondi da impostare" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "Percorsi files" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "(Predefinito 8)" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "Informazione sul file o directory selezionato; di norma il tipo, nome e dimensione" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filtri" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "Quel che mostra il pannello attivo: D=directories F=files N=files nascosti R=dimensione totale ricorsiva.\nOgni filtro viene mostrato come f*.txt per files di testo che cominciano per 'f'." #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "Esporta Dati" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "Qui è dove, se vuoi, puoi esportare parte delle tue impostazioni a un file chiamato 4Pane.conf." #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "Premi F1 per ulteriori dettagli." #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "Deseleziona ogni tipo di dati che non vuoi esportare" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "Strumenti come 'df -h' da impostare come predefiniti. Consultare il manuale per ulteriori dettagli" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr " Strumenti definiti dall'utente" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Quale(i) editor(s) (Es.: gedit, kwrite) devono avere una icona nella barra degli strumenti" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr " Editors" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "Impostati in \"Configura 4Pane > Dispositivi\". Consultare il manuale per ulteriori dettagli" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr " Dati Dispositivi montati" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "Impostati in \"Configura 4Pane > Terminali\". Consultare il manuale per ulteriori dettagli" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr " Dati relativi ai Terminali" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "Contenuti della finestra di dialogo \"Apri Con...\" e quali programmi utilizzare per i vari \"mime-types\"" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "Dati 'Apri Con...'" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr " Esporta Dati" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "Configura Anteprime" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "Larghezza massima (px)" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "Altezza massima (px)" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "Immagini:" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "File testo:" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "Ritardo dell'anteprima, in decimi di secondo:" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "Configura Apertura File" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "Scegli come 4Pane tenti di aprire, per esempio, un file di testo in un editor.\nUtilizza il metodo di sistema, quello interno di 4Pane o entrambi.\nSe entrambi, quale dovrebbe essere provato prima?" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "Usa il metodo di sistema" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "Usa il metodo di 4Pane" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "Scegli modalità di sistema" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "Scegli modalità 4Pane" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Locate" #: dialogs.xrc:66 msgid "Clea&r" msgstr "&Pulisci" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "Chi&udi" #: dialogs.xrc:116 msgid "Can't Read" msgstr "Lettura Fallita" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "Temo tu non abbia i permessi in lettura per" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "a Simula q" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "&Salta" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "Salta solo questo file" #: dialogs.xrc:182 msgid "Skip &All" msgstr "Salta &Tutti" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "Salta ogni altro file dove non ho permessi di Lettura" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "Tsk Tsk!" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "Sembra che vuoi far entrare" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "Simula" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "in uno dei suoi discendenti" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Questo non è certamente consentito e probabilmente immorale" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr " Spiacente :-(" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Clicca per scusarti" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "Quale nuovo nome vorresti utilizzare?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Inserisci il nuovo nome" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "Sovrascrivi o rinomina" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "Nome già utilizzato da un altro file" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "S&ovrascrivilo" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "&Rinomina File in Entrata" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr " Sovr&ascrivi Tutti" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "Sovrascrivi tutti i files in caso di conflitto di nomi" #: dialogs.xrc:699 msgid " Re&name All" msgstr " Ri&nomina Tutti" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "Vai direttamente alla finestra di dialogo Rinomina in caso di conflitto di nomi" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Salta questo oggetto" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "Salta &Tutti" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "Salta tutti i files dove c'è un conflitto di nomi" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "Rinomina o annulla" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "Nome già utilizzato da un'altra directory." #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "&Rinomina Dir di Provenienza" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Rinomina o salta" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "Qui esiste già una Directory chiamata" #: dialogs.xrc:928 msgid "Rename &All" msgstr "Rinomina &Tutti" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "Vai direttamente alla finestra di dialogo Rinomina per tutti i nomi in conflitto" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "Salta gli oggetti dove si presenta un conflitto di nomi" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "Interroga duplicato nell'archivio" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "File con lo stesso nome già presente nell'archivio" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "&Salvane un duplicato" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "Ti è concesso di avere due oggetti identici con lo stesso nome in un archivio. Se è ciò che vuoi (e probabilmente hai un valido motivo :/ ) clicca questo pulsante" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "Duplica Rinominando nell'archivio" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "Spiacente, non puoi creare una duplicazione direttamente nell'archivio" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "Vuoi invece fare una copia con rinomina?" #: dialogs.xrc:1112 msgid "&Rename" msgstr "&Rinomina" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "Crea una copia di uno o più oggetti usando un nome diverso" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Aggiungi all'archivio" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "Esiste già un oggetto con lo stesso nome" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "Elimina il file originale dall'archivio, rimpiazzandolo con quello nuovo" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "&Salva entrambi gli oggetti" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "E' ammesso avere files molteplici con lo stesso nome in un archivio. Clicca questo pulsante se è ciò che vuoi (devi avere una buona ragione per volerlo :/ )" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "Sovrascrivi o aggiungi all'archivio" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "Salva en&trambi gli oggetti" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "Ti è concesso di avere due files con lo stesso nome in un archivio. Se è ciò che vuoi (e probabilmente hai un valido motivo :/ ) clicca questo pulsante" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr " S&alva tutti" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "Ti è concesso di avere due files con lo stesso nome in un archivio. Se è sempre ciò che vuoi (e probabilmente hai un valido motivo :/ ) clicca questo pulsante" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "Sostituisci la dir corrente con quella di provenienza" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "Sovr&ascrivi Tutti" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "Sostituisci la dir corrente con quella di provenienza e ripeti azione in caso analogo" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "Ti è concesso di avere due directories con lo stesso nome in un archivio. Se è ciò che vuoi (e probabilmente hai un valido motivo :/ ) clicca questo pulsante" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "Ti è concesso di avere due directories con lo stesso nome in un archivio. Se è sempre ciò che vuoi (e probabilmente hai un valido motivo :/ ) clicca questo pulsante" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "&Saltalo" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "S&alta Tutti i Conflitti" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Annulla tutti gli oggetti" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "Pare che tu voglia sovrascrivere il file con se stesso" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Questo significa:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "Voglio &DUPLICARLO" #: dialogs.xrc:1856 msgid "or:" msgstr "oppure:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "&Oops, non l'avevo inteso" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Crea un collegamento" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr " Crea nuovo Collegamento da:" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Questo è ciò che stai tentando di Collegare" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Crea il link nella seguente Directory:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "Come vuoi chiamare il Collegamento?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Mantieni lo stesso nome" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "Usa la seguente Estensione" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "Usa il seguente Nome" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "Inserisci l'estensione che vuoi aggiungere al nome del file originale" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "Inserisci il nome che vuoi dare a questo collegamento" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "Seleziona questa casella se vuoi creare symlinks relativi (Es.: ../../foo invece di /path/to/foo)" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "Rendi Relativo" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "Seleziona questa casella se queste scelte siano applicate automaticamente a tutti gli altri oggetti selezionati" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Applica a tutti" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "Se cambi idea sul tipo di collegamento da creare, fallo da qui." #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "Voglio creare un Hard Link" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "Voglio creare un Soft Link" #: dialogs.xrc:2173 msgid "Skip" msgstr "Salta" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "Scegli un nome per il nuovo oggetto" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "Vuoi un nuovo File oppure una nuova Directory?" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "Crea nuovo File" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "Crea nuova Directory" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "Scegli un nome per la nuova Directory" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Aggiungi Segnalibro" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "Aggiungi il seguente ai tuoi Segnalibri:" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "Questo è il segnalibro che verrà creato" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "Quale etichetta vuoi assegnare a questo segnalibro?" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "Aggiungilo alla seguente cartella:" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "Cambia &Cartella" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "Clicca se vuoi salvare questo segnalibro in una cartella differente, oppure crea una nuova cartella" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Modifica Segnalibro" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "Applica i cambiamenti richiesti qui sotto" #: dialogs.xrc:2595 msgid "Current Path" msgstr "Percorso Attuale" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "Questo è il Percorso attuale" #: dialogs.xrc:2620 msgid "Current Label" msgstr "Etichetta Attuale" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "Questa è l'Etichetta attuale" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "Gestisci Segnalibri" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "&Nuova Cartella" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Crea nuova Cartella" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "Nuovo &Separatore" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "Inserisci Separatore" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "Modifica S&elezione" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "Modifica l'oggetto selezionato" #: dialogs.xrc:2768 msgid "&Delete" msgstr "&Elimina" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "Elimina oggetto selezionato" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Apri con:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "Inserisci il percorso e il nome dell'applicazione da usare, se la conosci. Altrimenti sfoglia o scegli dalla lista qui sotto." #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "Clicca per sfogliare per l'applicazione da utilizzare" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "&Modifica Applicazione" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "Modifica l'Applicazione selezionata" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "&Elimina Applicazione" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "Elimina l'Applicazione selezionata dalla cartella" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "&Aggiungi Applicazione" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "Aggiungi l'Applicazione alla cartella selezionata qui sotto" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr " Aggiungi &Cartella" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "Aggiungi una cartella all'albero qui sotto" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "&Rimuovi Cartella" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "Rimuovi la cartella selezionata dall'albero qui sotto" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "Clicca l'applicazione da selezionare" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "Seleziona la casella per aprire il file con questa applicazione in un terminale" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Apri in un Terminale" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Seleziona la casella se in futuro vuoi che questa applicazione sia chiamata automaticamente per aprire questo tipo di file" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Usa sempre l'applicazione selezionata per questo tipo di file" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Aggiungi una Applicazione" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "Etichetta da dare all'Applicazione (opzionale)" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "Questo nome deve essere univoco. Se non ne inserisci uno, verrà usata la fine del percorso del file.\nEs.: /usr/local/bin/foo sarà chiamato 'foo'" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "Dov'è l'Applicazione? Es.: /usr/local/bin/gs\n(in alcuni casi è sufficiente solo il nome del file)" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "Inserisci il nome dell'applicazione. Se è presente nel tuo PATH, è sufficiente solo il nome (Es.: kwrite). Altrimenti è richiesto il percorso completo (Es.: /usr/X11R6/bin/foo)" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "Estensioni dei files da aprire? (Es.: txt oppure htm, html)" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "Questo è opzionale. Se inserisci una o più estensioni, questa applicazione sarà elencata quando clicchi col tasto destro su tali estensioni. Devi inserirne almeno una per rendere predefinita questa applicazione con questo tipo di file. Quindi se vuoi che tutti i files con estensione 'txt', al doppio click, siano aperti con questa applicazione, scrivi txt qui.\nPuoi inserire più di una estensione, separate da virgola. (Es.: htm,html)" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr " Qual'è la Stringa di Comando da usare? (Es.: kedit %s)" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "Questo è il comando da usare per la lettura di un file. Di solito il programma seguito da %s, che rappresenta il file da leggere. Quindi se kedit è il tuo editor di testo predefinito e il comando da eseguire è kedit %s, il doppio click al file foo.txt eseguirà \" kedit 'foo.txt' \"\nSe non funziona, dovrai leggere il manuale della applicazione in questione." #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr " Directory di lavoro dalla quale avviare l'applicazione (opzionale)" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "Inserisci l'applicazione in questo gruppo. Così kwrite verrà inserito in Editors." #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "Aggiungi gruppo categoria applicazioni" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "Per quale Estensione vuoi che l'applicazione sia la predefinita." #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "Queste le estensioni dalle quali scegliere" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "Puoi usare sia i primi due pulsanti, o selezionarli usando il mouse (abbina il tasto Ctrl per scelte non contigue)" #: dialogs.xrc:3581 msgid "All of them" msgstr "Tutti" #: dialogs.xrc:3582 msgid "Just the First" msgstr "Solo il Primo" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "Seleziona col Mouse (+ tasto Shift)" #: dialogs.xrc:3640 msgid "4Pane" msgstr "4Pane" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Salva Modello" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "Modello già caricato." #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "Vuoi Sovrascrivere questo, oppure Salvarlo come nuovo Modello?" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "S&ovrascrivi" #: dialogs.xrc:3775 msgid "&New Template" msgstr "&Nuovo Modello" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "Specifica la Stringa di Filtro" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "Inserisci una stringa da usare come filtro, oppure utilizza lo storico. Filtri multipli possono esser separati da | o virgola. Es.: Pre*.txt oppure *.jpg | *.png oppure *htm,*html" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "Visualizza solo i Files, non le cartelle" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "Visualizza solo i Files" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "Reimposta il filtro, in modo da visualizzare tutti i files es.: *" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "Reimposta filtro a *" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "Usa il filtro selezionato in tutti i riquadri di questa Scheda" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "Applica a Tutti i riquadri visibili" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "Rinomina Multipla" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "Puoi cambiare un foo.bar in, ad esempio, foo1.bar o nuovo.foo.bar" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "oppure usando una regex per adottare metodi più complessi" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr " Usa Espressione Regolare" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "Aiuto &RegEx" #: dialogs.xrc:4043 msgid "Replace" msgstr "Sostituisci" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "Inserisci il testo o l'espressione regolare per la sostituzione" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "Inserisci il testo che vuoi sostituire" #: dialogs.xrc:4076 msgid "With" msgstr "Con" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "Sostituisci tutte le ricorrenze" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "Sostituisci le prime" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "Dato un nome 'foo-foo-foo' e 'bar' come testo di sostituzione, impostando il conto a 2 darà come risultato 'bar-bar-foo'" #: dialogs.xrc:4175 msgid " matches in name" msgstr " corrispondenze nel nome" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "Supponiamo il caso nel quale devi selezionare tutti i file in una directory e di usare una espressione regolare per cambiare l'estensione .jpeg in .jpg. Selezionando questa casella, tutti gli altri file selezionati utilizzeranno la stessa espressione." #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "Ignora completamente tutti i file non corrispondenti" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "Altri metodi di rinomina:" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "Se hai usato con successo la regex sopra, questo potrebbe non esser necessario. In caso contrario, o di alcuni riscontri, qui è come puoi sistemare." #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "Parte del nome da cambiare?" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "Se il nome è foo.qualcosa.bar, selezionando \"Estensione\" influirà in \"bar\", non in \"qualcosa.bar\".\nSe scegli \"Estensione\" quando non ne sono presenti, ne sarà invece modificato il corpo." #: dialogs.xrc:4246 msgid "Body" msgstr "Corpo" #: dialogs.xrc:4247 msgid "Ext" msgstr "Estensione" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "Preponi testo (opzionale)" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "Inserisci il testo da preporre" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "Accoda testo (opzionale)" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "Inserisci il testo da accodare" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "Incrementa partendo da:" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "Se c'è ancora un conflitto di nomi, nonostante tutto ciò che hai fatto in precedenza, questo aggiunge una lettera o una cifra per creare un nuovo nome. Così joe.txt diventerà joe0.txt (o joe.txt0 se hai scelto di cambiare Estensione)" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "Selezionando questa casella, l'Incremento sarà applicato solamente se necessario per evitare un conflitto di nomi. Altrimenti sarà applicato ugualmente." #: dialogs.xrc:4392 msgid " Only if needed" msgstr " Solo all'occorrenza" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "Incrementa con una" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "Determina se 'joe' cambierà in 'joe0' o 'joeA'" #: dialogs.xrc:4416 msgid "digit" msgstr "cifra" #: dialogs.xrc:4417 msgid "letter" msgstr "lettera" #: dialogs.xrc:4431 msgid "Case" msgstr "Lettere" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "Se vuoi che 'joe' diventi 'joeA' o 'joea'" #: dialogs.xrc:4439 msgid "Upper" msgstr "Maiuscole" #: dialogs.xrc:4440 msgid "Lower" msgstr "Minuscole" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "Conferma Rinomina" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "Sei sicuro di applicare questi cambiamenti?" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "Locate" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "Inserisci la stringa di ricerca. Es.: *foo[ab]r" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "Questo è uno schema per la corrispondenza. Se inserisci 'foo', sia percorso/foo e percorso/foobar/altropercorso verranno trovati. In alternativa puoi usare i metacaratteri *, ? e [ ]. In questo caso, Individua ritornerà solamente le esatte corrispondenze (Es.: devi inserire *foo[ab]r* per trovare percorso/foobar/altropercorso)" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "Individua solamente la parte finale del percorso di un file (Es.: trova 'foo' in /home/mionome/bar/foo e non in /home/mionome/foo/bar)" #: moredialogs.xrc:57 msgid " -b Basename" msgstr " -b nome Base" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "Se selezionato, ricercando 'foo' come risultati potranno essere visualizzati sia foo che Foo (FoO ecc...)" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr " -i Ignora maiuscole/minuscole" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "Locate cercherà in un database, normalmente aggiornato una volta al giorno. Se questa casella è selezionata, ogni risultato verrà verificato per la sua esistenza, che non sia stato eliminato fino all'ultimo aggiornamento. Se ci sono molti risultati, impiegherà parecchio tempo." #: moredialogs.xrc:86 msgid " -e Existing" msgstr " -e Esistente" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "Se selezionato, tratta lo schema di ricerca come una Espressione Regolare, non come un tipico glob" #: moredialogs.xrc:97 msgid " -r Regex" msgstr " -r Regex" #: moredialogs.xrc:158 msgid "Find" msgstr "Trova" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Percorso" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "Queste è Ricerca Avanzata. C'è anche Trova Rapido\nche sarà sufficiente per la maggior parte delle ricerche" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "Clicca per &Trova Rapido" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "Clicca qui per aprire la finestra di dialogo di Trova Rapido" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "Seleziona questa casella per rendere predefinito Trova Rapido permanentemente" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "Rendi Trova Rapido come predefinito" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "Inserisci il Percorso da dove partire con la ricerca (o usa una delle scorciatoie)" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "Inserisci il Percorso di partenza per la ricerca" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "Cerca partendo dalla directory corrente" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "Cartella Attuale" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "Cerca partendo dalla directory Home" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "Cerca nell'intero albero della directory" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Root ( / )" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "&Aggiungi Alla Stringa di Comando, racchiuso tra Virgolette" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "Aggiungi alla stringa di comando. Degli apici saranno aggiunti automaticamente in caso di metacaratteri." #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Opzioni" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "Queste opzioni verranno applicate all'intero comando. Seleziona quelle che desideri." #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "Misura il tempo (tramite -amin, -atime, -cmin, -ctime, -mmin, and -mtime) dall'inizio del giorno corrente invece di 24 ore fa" #: moredialogs.xrc:415 msgid "-daystart" msgstr "-daystart" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "Esamina ogni contenuto della directory prima della directory stessa. In altre parole, Trova dal basso verso l'alto." #: moredialogs.xrc:426 msgid "-depth" msgstr "-depth" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "Dereferenzia collegamenti simbolici (guarda alla destinazione, non il collegamento in se). Implica -noleaf." #: moredialogs.xrc:437 msgid "-follow" msgstr "-follow" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "Ricorre al massimo il numero selezionato di livelli di directory a partire dal percorso base. `-maxdepth 0' corrisponde ai test e azioni degli argomenti della linea di comando." #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "-maxdepth" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "Numero di livelli di directory da saltare prima di iniziare la ricerca." #: moredialogs.xrc:470 msgid "-mindepth" msgstr "-mindepth" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "Non ottimizzare la ricerca decrementando di 2 il numero di oggetti ignorando gli hard-link della directory corrente e superiore ('.' e '..')" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "-noleaf" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "Non cercare negli altri filesystem. Sinonimo di -mount" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "-xdev (-mount)" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "AIUUTOO!!" #: moredialogs.xrc:542 msgid "-help" msgstr "-help" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "&Aggiungi Alla Stringa di Comando" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "Aggiungi queste scelte alla stringa di Comando" #: moredialogs.xrc:580 msgid "Operators" msgstr "Operatori" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "Qui per completezza, ma di solito è più facile scriverle direttamente nella stringa di comando." #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "Selezionane una alla volta." #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "Applica l'operatore logico AND alle due espressioni circostanti (predefinito)" #: moredialogs.xrc:645 msgid "-and" msgstr "-and" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "Applica l'operatore logico OR alle espressioni circostanti" #: moredialogs.xrc:656 msgid "-or" msgstr "-or" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "Nega l'espressione seguente" #: moredialogs.xrc:667 msgid "-not" msgstr "-not" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "Utilizzato (abbinato a Parentesi Chiusa) per modificare la precedenza nelle opzioni. A questo viene applicato automaticamente un escape tramite backslash." #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "Parentesi Aperta" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "Analogo a Parentesi Aperta, ma con escape utilizzando una backslash." #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "Parentesi Chiusa" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "Separa la lista oggetti con virgola. Se non pensi di farne uso, sei in buona compagnia." #: moredialogs.xrc:707 msgid "List ( , )" msgstr "Lista ( , )" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "Inserisci un termine di ricerca, può includere caratteri jolly. Si possono usare anche espressioni regolari." #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "Usa Percorso o Regex se è incluso uno '/' nel termine, altrimenti usa il Nome." #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "Collegamenti Simbolici restituiscono solamente symlink." #: moredialogs.xrc:812 msgid "Search term" msgstr "Termine di ricerca" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "Inserisci la corrispondenza. Es.: *.txt oppure /usr/s*" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "Ignora Maiuscole/Minuscole" #: moredialogs.xrc:852 msgid "This is a" msgstr "Questo è un" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "Seleziona una di queste alternative. Escludendo 'Espressione Regolare', si possono usare caratteri jolly.\nCollegamento Simbolico ritorna solo collegamenti simbolici.\nEspressione Regolare significa che la stringa è una espressione regolare che ritornerà dei risultati corrispondenti." #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "Espressione Regolare" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "Collegamento Simbolico" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "Risultati" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "Visualizza tutti i risultati (comportamento predefinito)" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "Ignora Corrispondenze" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "Di norma VUOI tutti i risultati, ma talvolta vorresti ignorare, per esempio, una data directory. In tal caso, inserisci il percorso, quindi seleziona Percorso e Ignora." #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "Per filtrare per data/ora, seleziona uno dei seguenti:" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "I file che sono stati" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "Accessi" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "Modificato" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "Proprietà modificata" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "Più di" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "Esattamente" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "Meno di" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "Inserisci un valore in minuti o giorni" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minuti fa" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Giorni fa" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "più recente del file:" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "Inserisci il percorso del file da confrontare" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "Files con ultimo accesso" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "Inserisci il numero di giorni" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "giorni dopo la modifica" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "Aggiungi alla stringa di Comando." #: moredialogs.xrc:1325 msgid "Size and type" msgstr "Dimensione e tipo" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "Scegli uno (alla volta) dei seguenti:" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "Files di dimensione" #: moredialogs.xrc:1435 msgid "bytes" msgstr "bytes" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "Blocchi di 512 bytes" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "kilobytes" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "Files vuoti" #: moredialogs.xrc:1511 msgid "Type" msgstr "Tipo" #: moredialogs.xrc:1531 msgid "File" msgstr "File" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "SymLink" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Pipe" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "Blk Speciale" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "Char Speciale" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "Aggiungi alla stringa di Comando" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "Proprietario e permessi" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Utente" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Per Nome" #: moredialogs.xrc:1675 msgid "By ID" msgstr "Per ID" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "Inserisci il nome del proprietario da trovare. Esempio: root" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "Inserisci l'ID da confrontare" #: moredialogs.xrc:1790 msgid "No User" msgstr "Nessun Utente" #: moredialogs.xrc:1798 msgid "No Group" msgstr "Nessun Gruppo" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Altri" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Lettura" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Scrittura" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "Esecuzione" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Speciale" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "fisso" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "oppure inserisci Ottale" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "Inserisci la stringa ottale. Es.: 0664" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "Qualsiasi Corrispondenza" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "Solo Esatta Corrispondenza" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "Specifica Corrispondenza" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Azioni" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "Azione da compiere con i risultati. Predefinito è Stampa." #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "Visualizza i risultati nell'output standard, andando a capo dopo ciascuno" #: moredialogs.xrc:2200 msgid " print" msgstr " print" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "Simile a 'print', ma aggiungendo una terminazione '\\0' a ogni stringa invece di una nuova riga" #: moredialogs.xrc:2227 msgid " print0" msgstr " print0" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "Elenca i risultati nel formato `ls -dils' nell'output standard" #: moredialogs.xrc:2254 msgid " ls" msgstr " ls" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "Esegui il seguente comando a ogni corrispondenza" #: moredialogs.xrc:2292 msgid "exec" msgstr "exec" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "Esegui il comando seguente, chiedendo prima per ogni corrispondenza" #: moredialogs.xrc:2303 msgid "ok" msgstr "ok" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Comando da eseguire" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "Questo è il comando da eseguire. I {} ; verranno aggiunti automaticamente" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "Visualizza ogni stringa come print ma usando il seguente formato: vedi 'man find' per maggiori dettagli" #: moredialogs.xrc:2360 msgid "printf" msgstr "printf" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "Formato Stringa" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "Visualizzalo come 'ls', ma per il seguente file" #: moredialogs.xrc:2412 msgid "fls" msgstr "fls" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "Visualizza ogni stringa come con print, ma usando il file specificato" #: moredialogs.xrc:2423 msgid "fprint" msgstr "fprint" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "Simile a fprint, ma con terminazione nulla" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "fprint0" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "File Destinazione" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "Il percorso del file di destinazione. Sarà creato/troncato a seconda dei casi" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "Si comporta come printf, ma usando un file specificato" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "fprintf" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Comando:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Qui è dove la stringa del comando Find viene composta. Puoi usare sia le opzioni nelle schede, sia scrivendoci direttamente" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "&CERCA" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Opzioni Generali" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "Queste sono le opzioni avanzate per Grep.\nPer le funzioni di ricerca più comuni\npuoi usare il Grep Rapido" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "Clicca per Grep &Rapido" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "Clicca qui per aprire la finestra di dialogo di Grep Rapido" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "Seleziona questa casella per rendere predefinito Grep Rapido permanentemente" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "Rendi Grep Rapido come predefinito" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "Sintassi: grep [opzioni] [schema di corrispondenza] [file(s) da cercare]" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "Seleziona qualsiasi opzione desideri dalle prime 4 schede, quindi inserisci lo schema di percorso nelle ultime 2\ne il percorso o i files da cercare. In alternativa puoi scrivere direttamente nella casella per il comando." #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "Seleziona le opzioni desiderate" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w corrispondenza su parole intere" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "Ignora maiuscole/minuscole, sia nello schema che nei nomi dei files" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i Ignora maiuscole" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "-x corrispondenza nell'intera riga" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "-v visualizza solo le righe NON corrispondenti" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Opzioni Directory" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "Opzioni per le Directories" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr " Cosa fare con le Directories?" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "Nomi corrispondenti (Predefinito)" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr " -r Ricorsivo" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "Ignora tutto" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Opzioni File" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "Opzioni per i files" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr " Ferma la ricerca di un file dopo" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "Inserisci il massimo valore di corrispondenze" #: moredialogs.xrc:3071 msgid "matches found" msgstr "corrispondenze trovate" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr " Cosa fare con i Files Binari?" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "Riporta contenenti corrispondenza (Predefinito)" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "Cerca nel file binario, visualizzando solamente un messaggio per le corrispondenze trovate, non il risultato" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "Trattali come se fossero files di testo" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "Cerca nel file binario, visualizzando ogni linea corrispondente allo schema di ricerca. Di norma ne risulta un codice illeggibile" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr " -D skip Ignora dispositivi, sockets, FIFO" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr " Non cercare nei files che rispettano questo schema:" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr " Cerca solo nei file che rispettano questo schema:" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Opzioni Uscita" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "Opzioni relative all'Output" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "-c visualizza solo il Conto delle corrispondenze" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "Visualizza solo i nomi dei files che contengono corrispondenze, non corrispondenze intere" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "-l visualizza i nomi dei file corrispondenti" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "-H Nome del file per ogni corrispondenza" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "-n visualizza numero riga corrispondente" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "-s non visualizzare messaggi di errore" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "-B Mostra" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "Imposta il numero di linee di contesto da visualizzare" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "linee contesto precedente" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "-o Mostra solo parte della riga corrispondente" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "Stampa solamente i nomi dei files che NON contengono corrispondenze" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "-L Nomi dei files senza corrispondenze" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "-h Non mostrare nomi files se molteplici" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "Visualizza ogni corrispondenza con la sua linea di offset del file espresso in bytes" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "-b Mostra Byte offset per corrispondenza" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "Nessun output, ne corrispondenze ne errori, ma esce con un codice di ritorno 0 alla prima corrispondenza" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "-q Non mostrare l'output" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "-A Mostra" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "linee di contesto seguente" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "-C Mostra" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "linee di contesto precedente e seguente" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "Mostra l'input proveniente dallo standard input (o pipe) come input proveniente da questo file. Es.: il contenuto di un Archivio" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr " Fingi che il display riceva l'input da File:" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Schema" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "Se il tuo schema di ricerca inizia con un segno meno (Es.: -foo) grep cercherà una opzione '-foo' inesistente. L'opzione -e aggira il problema." #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "-e Usa questo se il tuo schema inizia con un segno meno" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "Espressione Regolare di ricerca" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "Specifica il nome da cercare. Es.: foobar oppure f.*r" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "Aiuto\n&Regex" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "Non trattare la maschera come Espressione Regolare ma come una lista di stringhe separate da ritorno a capo, ognuna delle quali verrà verificata come ad esempio in fgrep" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "-F Tratta lo schema come se usassi fgrep" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "-P tratta lo schema come un regex Perl" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "Invece di inserire lo schema nella casella sopra, lo estrae da questo file" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "-f carica invece lo schema dal File:" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "Aggiungi alla stringa di comando. Verranno aggiunti degli apici alla maschera per proteggere i meta caratteri." #: moredialogs.xrc:3835 msgid "Location" msgstr "Percorso" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "Inserisci il percorso o lista file da cercare (oppure usa una delle scorciatoie)" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "Inserisci il percorso base per la ricerca. Se usi una delle scorciatoie sulla destra, puoi aggiungere un /* se necessario" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "Stringa di comando grep risultante" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Qui è dove la riga di comando grep viene costruita. Puoi usare le pagine di dialogo, oppure scrivila direttamente" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "Se selezionato, la finestra si chiuderà automaticamente 2 secondi dopo l'ultimo inserimento" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "Chiusura Automatica" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Archivia Files" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "File(s) da inserire nell'Archivio" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "Aggiungi un altro File" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "Sfoglia per un altro file" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "&Aggiungi" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "Aggiungi il file o directory nel riquadro di qui sopra per la lista a sinistra" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "Nome da dare all'Archivio" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "Inserisci solo la parte principale del nome, non l'estensione (es.: foo, non foo.tar.gz)" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "(Non aggiungere estensione)" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "Crea in questa cartella" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "Sfoglia per la cartella di destinazione" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "Crea Archivio usando Tar" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "Comprimi usando:" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "Quale applicazione usare (se presente) per la compressione. gzip e bzip2 sono la scelta migliore. Se disponibile nel sistema, xz ha la miglior compressione." #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "bzip2" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "gzip" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "xz" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "lzma" #: moredialogs.xrc:4431 msgid "7z" msgstr "7z" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "lzop" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "non comprimere" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "Non memorizzare il nome di un collegamento simbolico nell'archivio, memorizza il file al quale punta" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "Dereferenzia Symlinks" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Tenta di verificare l'integrità dell'archivio una volta creato. Non garantito, ma meglio di niente. Richiede molto tempo per archivi di grandi dimensioni." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "Verifica al termine" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "Elimina i files di origine una volta inseriti nell'archivio. Solamente per utenti coraggiosi, a meno che i files non sian importanti!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "Elimina files di origine" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "Usa zip sia per archiviare i files, sia per comprimerli. Comprime meno di gzip o bzip2, quindi usarlo per compatibilità dove sia presente nei sistemi operativi in uso." #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "Usa zip in alternativa" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "Aggiungi files a un Archivio esistente" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "&Aggiungi alla Lista" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "Archivio al quale Aggiungere" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "Percorso e nome dell'archivio. Se non già presente nella lista, scrivilo o Sfoglia." #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Sfoglia" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "Dereferenzia Symlinks" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "Verifica l'archivio al termine" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "Elimina Files di Origine al termine" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Comprimi files" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "File(s) da Comprimere" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "Quale programma col quale comprimere. Bzip2 è conosciuto per l'alta compressione (almeno per file di grandi dimensioni) ma impiega molto tempo.\nSe per qualche ragione vuoi usare Zip, questi è disponibile da Archivio > Crea." #: moredialogs.xrc:5054 msgid "'compress'" msgstr "'comprimi'" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Veloce" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "Valido solo da gzip. Maggiore è il valore, maggiore sarà il livello di compressione e il tempo impiegato" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Migliore" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "Il normale comportamento è di non sovrascrivere i files compressi con lo stesso nome. Seleziona questa casella se vuoi sovrascriverli." #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "Sovrascrivi tutti i files" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "Se selezionato, tutti i files di ogni directory selezionata (e relative sotto directories) verranno compresse. Se deselezionato le directories vengono ignorate." #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "Comprimi ricorsivamente tutti i files nelle cartelle selezionate" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Estrai Files Compressi" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "File(s) Compressi da Estrarre" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "Se la selezione è una directory, decomprime tutti i files compressi in essa e nelle sue sotto directories" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "Ricorsivamente nelle Directories" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "Se un file ha lo stesso nome di un file estratto, sovrascrivilo automaticamente" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "Sovrascrivi files esistenti" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "Decomprime, ma non estrae, alcun archivio selezionato. Se deselezionato, gli archivi vengono ignorati" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Decomprimi anche Archivi" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Estrai un Archivio" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Archivio da Estrarre" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Directory di Estrazione" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "Se esistono già file con lo stesso nome di uno qualsiasi di quelli estratti dall'archivio, verranno sovrascritti." #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Verifica Files Compressi" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Files Compressi da Verificare" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "&Verifica File Compressi" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Verifica un Archivio" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Archivio da Verificare" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Vuoi estrarre un Archivio o dei Decomprimere Files?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "&Estrai un Archivio" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "&Decomprimi File" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "Vuoi verificare un Archivio o dei Files Compressi?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "Un &Archivio" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "&File Compressi" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Proprietà" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Generale" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Nome:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Percorso:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Tipo:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Dimensione:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Ultimo Accesso:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "Modifica Amministratore:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Modificato:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "Permessi e Proprietari" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Utente:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Gruppo:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "Applica tutti i cambiamenti di permesso o proprietà a tutti i files e sottodirectory contenuti" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "Applica cambiamenti a tutti gli oggetti figlio" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "Esoterica" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "ID Dispositivo:" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode:" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "No. di Hard Links:" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "No. di blocchi (512B):" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "Dimensione Blocchi:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "ID Proprietario:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "ID Gruppo:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "Destinazione Collegamento:" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "Per cambiare la destinazione, scrivi il nome di un file o dir diverso, oppure usa il pulsante Sfoglia" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "&Passa a Collegamento Destinazione" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "Sfoglia e seleziona un'altra destinazione per il symlink" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "Primo Collegamento Destinazione:" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "Ultimo Collegamento Destinazione:" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "&Passa a collegamento diretto" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "Passa al collegamento seguente a questo" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "Vai al file &reale di destinazione" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "Passa all'ultimo file di questa catena di collegamenti" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "Monta una partizione fstab" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "Partizione da Montare" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "Questa è la lista delle partizioni in fstab conosciute ma non montate" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "Mount-Point per la Partizione" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "Questo è il mount-point corrispondente alla partizione selezionata, preso da fstab" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "&Monta una partizione non fstab" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "Se una partizione non è presente in fstab, non verrà elencata di seguito. Clicca questo pulsante per tutte le partizioni conosciute" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Monta una Partizione" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "Questa è la lista delle partizioni conosciute ma non montate. Se pensi di conoscerne altre le puoi inserire." #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "Se esiste una voce in fstab per questo dispositivo, il mount-point verrà aggiunto automaticamente. Altrimenti puoi specificarlo manualmente (o sfogliando)." #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "Sfoglia per un mount-point" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Opzioni Mount" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "Scrittura al filesystem non ammessa" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Sola Lettura" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "La scrittura al filesystem mentre è montato deve essere sincrono" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "Scritture Sincrone" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "La data di accesso ai files non deve essere aggiornata" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "Non aggiornare accesso file" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "Nessun file nel filesystem dev'essere eseguito" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Files non eseguibili" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "I files speciali nel filesystem del dispositivo non devono essere accessibili" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "Nascondi files speciali del dispositivo" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "I permessi Setuid e Setgid nei files del filesystem devono essere ignorati" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Ignora Setuid/Setgid" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "Se spuntato, verrà creato un traduttore passivo oltre a uno attivo. Il montaggio verrà quindi mantenuto, anche dopo un riavvio, fino a quando non decidi di rimuoverlo." #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "Crea anche un Traduttore Passivo" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "Monta usando sshfs" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Utente remoto" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "In alternativa, inserisci il nome dell'utente remoto. Lasciando il campo vuoto, verrà utilizzato il tuo nome utente locale" #: moredialogs.xrc:10212 msgid " @" msgstr " @" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Host Name" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "Inserisci il nome del server es.: mioserver.com" #: moredialogs.xrc:10248 msgid " :" msgstr " :" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Cartella remota" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "In alternativa, specifica una directory da montare. Quella predefinita è la home dell'utente remoto" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "Mount-point locale" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "Traduci uid e gid dell'utente dell'host remoto con quelli dell'utente locale. Raccomandato" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "idmap=user" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "monta in sola lettura" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Altre opzioni:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "Inserisci qualsiasi altra opzione che desideri, ad esempio -p 1234 -o cache_timeout=2. Mi raccomando per la sintassi" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "Monta un Disco DVD-RAM" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "Dispositivo da Montare" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "Questo è il nome del dispositivo del lettore DVD-RAM" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "Questi sono i mount-points inseriti nel file fstab. Se vuoi puoi aggiungerne altri" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Monta una immagine ISO" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Immagine da Montare" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Mount-Point per l'immagine" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Già\nMontato" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "Monta un export NFS" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Scegli un Server" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "Questa è la lista dei servers NFS presenti attualmente nella tua rete. Se ne conosci un altro, usa il pulsante a destra per aggiungerlo." #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Aggiungi un altro server manualmente" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "Export da Montare" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "Questi sono gli Exports disponibili nel Server specificato" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr " già montato" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "Cosa fare in caso di errore server. Un Hard mount potrebbe bloccare il tuo computer finchè la connessione al server non verrà ripristinata; uno Soft dovrebbe sbloccarsi velocemente, ma col rischio di perdita dati" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "Hard Mount" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "Soft Mount" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "Monta in lettura e scrittura" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "Monta in sola lettura" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "Aggiungi un server NFS" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "Indirizzo IP del nuovo Server" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "Inserisci l'indirizzo. Dovrebbe essere qualcosa come 192.168.0.2" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "Mantieni questo indirizzo per utilizzarlo in futuro" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "Monta Condivisione Samba" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "Servers Disponibili" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "Indirizzo IP" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "Questi sono gli indirizzi IP delle condivisioni Samba di origine conosciute nella rete" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Host Name" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "Questi sono gli host-names delle condivisioni Samba di origine conosciute nella rete" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "Condivisioni da Montare" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "Queste sono le condivisioni disponibili per il Server qui sopra" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "Usa questo Nome e Password" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Prova Montaggio Anonimo" #: moredialogs.xrc:11695 msgid "Username" msgstr "Nome Utente" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Inserisci il tuo nome utente Samba per questa condivisione" #: moredialogs.xrc:11720 msgid "Password" msgstr "Password" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Inserisci (in caso) la relativa password" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Smonta una partizione" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr " Partizione da Smontare" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "Questa è la lista delle partizioni montate da mtab" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "Mount-Point per questa Partizione" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "Questo è il mount-point corrispondente a questa partizione" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "Esegui come superutente" #: moredialogs.xrc:12025 msgid "The command:" msgstr "Comando:" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "richiede ulteriori privilegi" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "Inserisci la password dell'amministratore:" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "Se spuntato, la password sarà ricordata, come predefinito, per 15 minuti" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr " Mantieni la password in memoria per un pò" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "Grep Rapido" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "Questa è la finestra di dialogo del Grep Rapido.\nEssa rappresenta solamente le opzioni\npiù comuni di grep." #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "Clicca per Grep &Completo" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "Clicca qui per aprire la finestra di dialogo di Grep Completo" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "Spunta la casella per rendere Grep Completo come predefinito in futuro" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "Rendi Grep Completo" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "Inserisci il Percorso o lista Files da cercare\n(oppure usa una delle scorciatoie)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "Corrispondenza solo su parole intere" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w Solo parole intere" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "Ricerca ignorando maiuscole/minuscole" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i Ignora maiuscole/minuscole" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "Non cercare all'interno dei files binari" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "-n prefissa risultato con numero riga" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Ignora files binari" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "Non tentare la ricerca nei dispositivi, FIFO, sockets e simili" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "Ignora dispositivi, FIFO ecc" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "Cosa fare con le directories?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "Nomi corrispondenti" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "Ricerca ricorsiva" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "Trova Rapido" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "Questa è la finestra di dialogo del Trova Rapido.\nEssa dispone solamente\nle opzioni più comuni." #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "Clicca per Ricerca &Avanzata" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "Clicca qui per aprire la finestra di dialogo della Ricerca Avanzata" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "Spunta la casella per rendere la Ricerca Avanzata come predefinita in futuro" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "Rendi predefinita Ricerca Completa" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "Inserisci il Percorso da dove partire con la ricerca\n(o usa una delle scorciatoie)" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "Termine di ricerca:" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "Inserisci il nome o percorso di ricerca. Puoi includere caratteri jolly, ad es.: foobar oppure f.*r\nIn alternativa si può usare un'espressione regolare." #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "Ignora Maiuscole/Minuscole" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "Questo è un:" #: moredialogs.xrc:12769 msgid "name" msgstr "nome" #: moredialogs.xrc:12778 msgid "path" msgstr "percorso" #: moredialogs.xrc:12787 msgid "regex" msgstr "regex" ./4pane-6.0/locale/ca/0000755000175000017500000000000012250631516013306 5ustar daviddavid./4pane-6.0/locale/ca/LC_MESSAGES/0000755000175000017500000000000013567054715015107 5ustar daviddavid./4pane-6.0/locale/ca/LC_MESSAGES/ca.po0000644000175000017500000054637313205575137016047 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # el_libre como el chaval , 2011 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Catalan (http://www.transifex.com/davidgh/4Pane/language/ca/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ca\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Majúscula" #: Accelerators.cpp:213 msgid "C&ut" msgstr "Reta&lla" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Copia" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Suprimeix" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Suprimeix definitivament" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Reano&mena" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Duplicat" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Obre" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "&Obre amb..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Enganxa" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "" #: Accelerators.cpp:215 msgid "Und&o" msgstr "" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Refés" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Seleccion&a-ho tot" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&Nova pestanya" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Extensió" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Mida" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Temps" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Permisos" #: Accelerators.cpp:218 msgid "&Owner" msgstr "Pr&opietari/a" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Grup" #: Accelerators.cpp:218 msgid "&Link" msgstr "Enl&laç" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&Afegeix a les adreces d'interès" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "Gestio&na les adreces d'interès" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Crea un arxiu &nou" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&Comprimeix arxius" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "" #: Accelerators.cpp:228 msgid "E&xit" msgstr "S&urt" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "Contingut de l'&ajuda" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&PMF" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Edita" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Separador nou" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Surt d'aquest programa" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "&Fitxer" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Edita" #: Accelerators.cpp:502 msgid "&View" msgstr "&Visualitza" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "Pes&tanyes" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "Ad&reces d'interès" #: Accelerators.cpp:502 msgid "&Archive" msgstr "&Arxiu" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Munta" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Opcions" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Ajuda" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "Acció" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Drecera" #: Accelerators.cpp:675 msgid "Default" msgstr "Predeterminat" #: Accelerators.cpp:694 msgid "Extension" msgstr "Extensió" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "Mida" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Temps" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Permisos" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Propietari/a" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Grup" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Enllaça" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Edita les adreces d'interès" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Estàs segur/a?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Ups." #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Ups." #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "" #: Archive.cpp:1228 msgid "Compression failed" msgstr "" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "" #: Archive.cpp:1242 msgid "Archive created" msgstr "" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Extracció Fallida" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Cap entrada" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Enganxa" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Mou" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Separador" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Copiat" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Canvia el nom de la carpeta" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Edita les adreces d'interès" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Adreces d'interès" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Ups." #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "S'ha esborrat la carpeta" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "Aquí" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "Executa un prog&rama" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Dreceres" #: Configure.cpp:2041 msgid "Tools" msgstr "Eines" #: Configure.cpp:2043 msgid "Add a tool" msgstr "" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Edita una eina" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Dispositius" #: Configure.cpp:2052 msgid "Automount" msgstr "" #: Configure.cpp:2054 msgid "Mounting" msgstr "Muntant" #: Configure.cpp:2056 msgid "Usb" msgstr "Usb" #: Configure.cpp:2058 msgid "Removable" msgstr "Extraïbles" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fixat" #: Configure.cpp:2062 msgid "Advanced" msgstr "Avançat" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "Pantalla" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Miscel·lània" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "Real" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulador" #: Configure.cpp:2088 msgid "The Network" msgstr "Xarxa" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Miscel·lània" #: Configure.cpp:2093 msgid "Numbers" msgstr "Nombres" #: Configure.cpp:2095 msgid "Times" msgstr "Vegades" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "Altre" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Tria un fitxer" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "Dispositius USB" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "Pantalla" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Emulador de terminal" #: Configure.cpp:2740 msgid "Networks" msgstr "Xarxes" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Ignorat)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Suprimeix aquest dispositiu?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "Tipus de lletra predeterminat" #: Configure.cpp:4036 msgid "Delete " msgstr "Suprimeix" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Estàs segur/a?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "menú" #: Devices.cpp:305 msgid "&Display " msgstr "Mo&stra" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "&Munta" #: Devices.cpp:308 msgid "&UnMount " msgstr "Desm&unta" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "Mostra" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "&Expulsa" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "Ha fallat" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "Avís" #: Devices.cpp:843 msgid "Floppy" msgstr "Disquet" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "La Partició" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "Fitxer" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Cancel·la" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Ha funcionat\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "L'execució de '%s' ha fallat" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Tanca" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Fitxer normal" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Enllaç simbòlic" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Enllaç simbòlic trencat" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Dispositiu de caràcters" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Dispositiu de blocs" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Directori" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Sòcol" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "Tipus desconegut?!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Aplicacions" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "Vols Suprimir la carpeta %s?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Vols Suprimir %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Mostra ocults" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "retalla" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Punt de muntatge" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "Impossible" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Inici" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "Dir: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Arxius,Mida total" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "Difícil" #: MyDirs.cpp:1033 msgid "Soft" msgstr "Tou" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "enllaçat" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "suprimit" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Esborra:" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n Fins a:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "Per a" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "copiat" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "Suprimeix e&l fitxer" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Altres..." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "Obre &amb...." #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "Crea un arxiu nou" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Comprimeix arxius" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Duplicat" #: MyFiles.cpp:665 msgid "Rename " msgstr "Canvia el nom" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Obre amb " #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "de fitxers" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "errades" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Avís" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "Talla" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "Copia" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Desfés" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Refés" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Pestanya nova" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Quant a" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Error" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Èxit" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Ordinador" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Seccions" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "La operació no es permet" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Suprimeix la plantilla" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Cancel·lat" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "Refés:" #: Redo.cpp:258 msgid " Undo: " msgstr "Desfés:" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr " ---- MÉS ---- " #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr " -- ANTERIOR -- " #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "acció" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Mostra" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Amaga" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Obre el fitxer seleccionat" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "elements" #: Tools.cpp:2880 msgid " item " msgstr "element" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Repeteix:" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "primer" #: Tools.cpp:3267 msgid "other" msgstr "altres" #: Tools.cpp:3267 msgid "next" msgstr "següent" #: Tools.cpp:3267 msgid "last" msgstr "últim" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "paràmetre" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Suprimeix" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Nou directori" #: Redo.h:226 msgid "New File" msgstr "Fitxer nou" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "Canvia el nom del fitxer" #: Redo.h:281 msgid "Duplicate" msgstr "Duplicat" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Canvia el nom" #: Redo.h:301 msgid "Extract" msgstr "Extreu" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "D'ACORD" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Tipus de dispositiu" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Canvia" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Utilitza els per defecte" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Afegeix" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "Executa en un terminal" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Ordre" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "Línia base" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Actual" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Neteja" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "Què vols fer?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "cap" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "Dispositius USB" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "segons" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Noms" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Selecciona una icona" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Horitzontal" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Vertical" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Predeterminat 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "(Predeterminat 3)" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "(Predeterminat 8)" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filtres" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Ubica" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "No es pot llegir" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Omet aquest element" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "o:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Crea un enllaç" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Aplica-ho a totes" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "Omet" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Afegeix una adreça d'interès" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Edita una adreça d'interès" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "Gestiona les adreces d'interès" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Crea una carpeta nova" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Obre amb:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Obre un terminal aquí" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Afegeix una aplicació" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Desa la plantilla" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr " Usa expressions regulars" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "Reemplaça" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "Amb" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "Majúscules/minúscules" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "-b Nom base" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "-i Ignora diferències majúscules" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr " -e Existent" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr " -r Regex" #: moredialogs.xrc:158 msgid "Find" msgstr "Cerca" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Ruta" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Arrel (/)" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Opcions" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "-depth" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "-help" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "Operadors" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "-and" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "-or" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "-not" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "Llista ( , )" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "No distingeixis entre majúscules i minúscules" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "Expressió regular" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "Enllaç simbòlic" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "Accedit" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "Modificat" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "Més que" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "Exactament" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "Menys que" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minuts fa" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Dies fa" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "bytes" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "kilobytes" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "Tipus" #: moredialogs.xrc:1531 msgid "File" msgstr "Fitxer" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Conducte" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Usuari/a" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Per nom" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Altres" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Llegeix" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Escriu" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Especial" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "enganxós" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Accions" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr " imprimeix" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "ls" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "d'acord" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Ordre per executar" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "Format de cadena" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "Fitxer destí" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Ordre:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Opcions generals" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w concordança paraules senceres només" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i Ignora diferències de majúscules" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Opcions de directori" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Opcions d`arxiu" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "coincidències trobade" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Opcions de sortida" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "-H Mostra el nom de fitxer de cada coincidència" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "-B Mostra" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "-A Mostra" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "-C Mostra" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Patró" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "Ubicació" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Arxiva fitxers" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Navega" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Comprimeix arxius" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Més ràpid" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Més petit" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Extreu un arxiu" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Propietats" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "General" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Nom:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Ubicació:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Tipus:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Mida:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Accedit:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Modificat:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Nom d'usuari/a:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Grup:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "ID del grup:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "Destinació de l'enllaç" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Opcions de muntatge" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Només lectura" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "Adreça IP" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Nom del servidor" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "Nom d'usuari/a" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "Contrasenya" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "La concordança ha de ser de paraules senceres" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w concordança amb paraules senceres només" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i Ignora diferències de majúscules" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Ignora els fitxers binaris" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/pt_BR/0000755000175000017500000000000012250631525013731 5ustar daviddavid./4pane-6.0/locale/pt_BR/LC_MESSAGES/0000755000175000017500000000000013567054715015532 5ustar daviddavid./4pane-6.0/locale/pt_BR/LC_MESSAGES/pt_BR.po0000644000175000017500000056134613565000320017074 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Daniel Henrique , 2018 # Emilia Kastrup , 2018 # Fernando Henrique de Sousa , 2013 # Fernando Henrique de Sousa , 2012 # Marcos Bernardino da Silva , 2017 # Sabrina Rocha , 2018 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-12-05 19:42+0000\n" "Last-Translator: Emilia Kastrup \n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/davidgh/4Pane/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: pt_BR\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "Recortar" #: Accelerators.cpp:213 msgid "&Copy" msgstr "Copiar" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Enviar para Lixeira" #: Accelerators.cpp:213 msgid "De&lete" msgstr "Excluir" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Excluir Permanentemente" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Renomear" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "Duplicar" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "Propriedades" #: Accelerators.cpp:214 msgid "&Open" msgstr "Abrir" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Abrir com" #: Accelerators.cpp:214 msgid "&Paste" msgstr "Colar" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Criar um Hard-Link" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Criar Simlink" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "Excluir aba" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "Renomear aba" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Desfazer" #: Accelerators.cpp:215 msgid "&Redo" msgstr "Refazer" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Selecionar tudo" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "Novo arquivo ou pasta" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "Nova aba" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "Inserir aba" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Duplicar esta aba" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "Mostrar cabeçalho de aba mesmo quando apenas uma" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Dar a todas as abas comprimento igual" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "Replicar no painel oposto" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "Inverter os painéis" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Dividir os painéis verticalmente" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Dividir os painéis horizontalmente" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "Reagrupar os painéis" #: Accelerators.cpp:217 msgid "&Extension" msgstr "Extensão" #: Accelerators.cpp:217 msgid "&Size" msgstr "Tamanho" #: Accelerators.cpp:217 msgid "&Time" msgstr "Tempo" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "Permissões" #: Accelerators.cpp:218 msgid "&Owner" msgstr "Proprietário" #: Accelerators.cpp:218 msgid "&Group" msgstr "Grupo" #: Accelerators.cpp:218 msgid "&Link" msgstr "Link" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Mostrar todas as colunas" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "Ocultar todas as colunas" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Salvar configurações de painel" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Salvar configurações de painel ao sair" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "Salvar layout como modelo" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "Excluir um modelo" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Recarregar a exibição" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "Abrir o terminal" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "Filtrar a exibição" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Mostrar/ocultar pastas e arquivos ocultos" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "Adicionar aos favoritos" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "Gerenciar os favoritos" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "Montar uma partição" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "Desmontar uma partição" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Montar uma imagem ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "Montar uma exportação NFS" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Montar um compartilhamento Samba" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Exibir emulador de terminal" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Exibir linha de comando" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "Ir para o arquivo selecionado" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "Esvaziar a lixeira" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Excluir permanentemente arquivos excluidos" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "Extrair arquivo ou arquivo compactado(s)" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Criar novo arquivo" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "Adicionar a um arquivo existente" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "Testar integridade de arquivo ou arquivo compactado" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "Compactar arquivos" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "Exibir tamanhos de pasta recursivos" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Reter alvos de Symlinks relativos" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "Configurar 4pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "Sair" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Ajuda contextual" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "Conteúdos da ajuda" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "Perguntas frequentes" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "Sobre 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Configurar atalhos" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Ir para alvo Symlink" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Ir para alvo Symlink definitivo" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Editar" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Novo separador" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Repetir programa anterior" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Navegar para painel oposto" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Navegar para painel adjacente" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Mudar para janela anterior" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Ir para aba anterior" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Ir para próxima aba" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "Primeiro ponto" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Recorta a seleção atual" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Copia a seleção atual" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Enviar para a lixeira" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Mata, mas pode ser ressucitável" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Deleta com extremo preconceito" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Colar os conteúdos da área de transferência" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Criar um Hardlink dos conteúdos da área de transferência para aqui" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Criar um Softlink dos conteúdos da área de transferência para aqui" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Excluir a aba atualmente selecionada" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Renomear a aba atualmente selecionada" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Anexar uma nova aba" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Inserir uma nova aba depois da atual" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Ocultar o cabeçalho de uma aba solitária" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Copiar o caminho deste lado para o painel oposto" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Trocar o caminho de um lado com o outro" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Salvar o layout de painéis dentro de cada aba" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Sempre salvar o layout de painéis ao sair" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Salvar essas abas como um padrão recarregável" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Adicionar o item selecionado aos favoritos" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Rearranjar, renomear ou deletar favoritos" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Encontrar arquivo semelhante(s)" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Procurar dentro de arquivos" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Mostrar/ocultar emulador de terminal" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Mostrar/Esconder a Linha de Comando" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Fechar este programa" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Não foi possível carregar a configuração!?" #: Accelerators.cpp:502 msgid "&File" msgstr "Arquivo" #: Accelerators.cpp:502 msgid "&Edit" msgstr "Editar" #: Accelerators.cpp:502 msgid "&View" msgstr "Ver" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "Abas" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "Favoritos" #: Accelerators.cpp:502 msgid "&Archive" msgstr "Arquivo" #: Accelerators.cpp:502 msgid "&Mount" msgstr "Montar" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "Ferramentas" #: Accelerators.cpp:502 msgid "&Options" msgstr "Opções" #: Accelerators.cpp:502 msgid "&Help" msgstr "Ajuda" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "Colunas a exibir" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "Carregar um Modelo de Aba" #: Accelerators.cpp:673 msgid "Action" msgstr "Ação" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Atalho" #: Accelerators.cpp:675 msgid "Default" msgstr "Padrão" #: Accelerators.cpp:694 msgid "Extension" msgstr "Extensão" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "(Não)Mostrar coluna de Extensão de visualização de arquivos" #: Accelerators.cpp:694 msgid "Size" msgstr "Tamanho" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "(Não)Mostrar coluna de Tamanho do arquivo" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Tempo" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "(Não)Mostrar coluna Tempo do arquivo" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Permissões" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "(Não)Mostrar coluna de Permissões de arquivo" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Proprietário" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "(Não)Mostrar coluna de Proprietário do arquivo" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Grupo" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "(Não)Mostrar coluna Grupo do arquivo" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Link" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "(Não)Mostrar coluna Link do arquivo" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Mostrar todas as colunas" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Vizualização de arquivos: Mostrar todas colunas" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Ocultar todas colunas" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Vizualização de arquivos: Ocultar todas colunas" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Favoritos: Editar" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Favoritos: Novo separador" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Descartar mudanças?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Tem certeza?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Nenhum" #: Accelerators.cpp:939 msgid "Same" msgstr "Mesmo" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Digite a nova Etiqueta para mostrar para esse item do menu" #: Accelerators.cpp:958 msgid "Change label" msgstr "Mudar etiqueta" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "Parece que eu não consigo achar esse arquivo ou pasta.\nTente usar o botão Procurar." #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Opa!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Escolha arquivo(s) e/ou pastas" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Escolha a pasta onde quer armazenar o arquivo" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Procure pelo arquivo ao qual Anexar" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "A pasta na qual você tentou criar o arquivo parece não existir.\nUsar a pasta atual?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "O arquivo ao qual você quer anexar parece não existir.\nTentar novamente?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "Não é possível encontrar um binário 7z no seu sistema" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Opa" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "Nenhum arquivo compactado relevante selecionado.\nTentar novamente?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Procurar pelo arquivo para Verificar" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Escolher a pasta na qual Extrair o arquivo" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Arquivo(s) compactado(s)" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Compactação falhou" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Arquivo(s) descompactado(s)" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Descompactação falhou" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Arquivo(s) verificado(s)" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Verificação falhou" #: Archive.cpp:1242 msgid "Archive created" msgstr "Arquivo criado" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Criação de arquivo falhou" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Arquivo adicionados a arquivo compactado" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Adição a arquivo falhou" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Arquivo extraído" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Extração falhou" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Arquivo verificado" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "Para que pasta você gostaria de extrair esses arquivos?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "Para que pasta você gostaria de extrair isso?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Extraindo do arquivo" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Temo que você não tenha permissão para Criar essa pasta\n Tentar novamente?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Sem entrada!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Lamento, %s já existe\n Tentar novamente?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Temo que você não tenha permissão de escrita para essa pasta" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Temo que você não tenha permissão de acessar os arquivos dessa pasta" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Sem saída!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Por alguma razão, tentar criar uma pasta para receber uma cópia de segurança falhou. Lamento!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Lamento, o processo de cópia de segurança falhou" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Lamento, falha ao remover os itens" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Colar" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Mover" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Lamento, você precisa ser root para extrair caracteres ou bloquear dispositivos." #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Temo que sua biblioteca zlib está desatualizada demais para poder fazer isso :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "Por alguma razão, o arquivo falhou em abrir :(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Biblioteca faltando" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Esse arquivo está compactado, mas não está num formato que permita olhar o seu conteúdo." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Lamento" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Pastas de favoritos" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Separador" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Duplicado" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Movido" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Copiado" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Renomear pasta" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Editar favorito" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "Novo separador" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "Nova pasta" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Não foi possível carregar a barra de menu!?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Menu não encontrado!?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Essa seção não existe no arquivo ini!?" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Favoritos" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Lamento, não consegui localizar esta pasta" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Favorito adicionado" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Descartar todas as mudanças?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "Que etiqueta gostaria para a nova pasta?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Lamento, já existe uma pasta chamada %s\n Tentar novamente?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Pasta adicionada" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Separador adicionado" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Lamento, já existe uma pasta chamada %s\n Mudar o nome?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Opa?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Que nome você gostaria de dar a essa pasta?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "Que etiqueta você gostaria para a pasta?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Colado" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Altere a etiqueta da pasta abaixo" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Lamento, você não tem permissão de mover a pasta principal" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Lamento, você não tem permissão de excluir a pasta principal" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "Tsk tsk!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Excluir a pasta %s e todos os seus conteúdos?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Pasta excluida" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Favorito excluido" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Bem vindo ao 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane é um gerenciador de arquivos que tem como objetivo ser rápido e completo sem sobrecarga." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Por favor, clique em Próximo para configurar o 4Pane para o seu sistema" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "Ou se já há um arquivo de configuração que você gostaria de copiar, clique" #: Configure.cpp:69 msgid "Here" msgstr "Aqui" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Recurso localizado com sucesso. Por favor, pressione Próximo" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "Eu dei uma olhada no seu sistema, e criei uma configuração que deve funcionar." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "Você pode fazer uma configuração bem mais completa a qualquer momento através do menu Opções > Configurar 4Pane." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Ponha um atalho do 4Pane na Ãrea de Trabalho" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Procure pelo arquivo de configuração a ser copiado" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Temo que você não tenha permissão para Copiar esse arquivo.\nVocê quer tentar de novo?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Procure por ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Procure por ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Procure por ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "Executar um programa" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "Instalar .deb(s) como root:" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "Instalar rpm(s) como root:" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "Remover um rpm como root:" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "Criar um diretório como root:" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Ir á pasta Home" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "Ir á pasta Documentos" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Se você está vendo essa mensagem (e você não deveria), é porque o arquivo de configuração não pode ser salvo.\nAs razões menos improváveis seriam permissões incorretas ou uma partição de Somente Leitura." #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Atalhos" #: Configure.cpp:2041 msgid "Tools" msgstr "Ferramentas" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Adicionar ferramenta" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Editar ferramenta" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Excluir ferramenta" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Dispositivos" #: Configure.cpp:2052 msgid "Automount" msgstr "Automontar" #: Configure.cpp:2054 msgid "Mounting" msgstr "Montando" #: Configure.cpp:2056 msgid "Usb" msgstr "Usb" #: Configure.cpp:2058 msgid "Removable" msgstr "Removível" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fixo" #: Configure.cpp:2062 msgid "Advanced" msgstr "Avançado" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Avançado fixo" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Avançado removível" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "Avançado lvm" #: Configure.cpp:2072 msgid "The Display" msgstr "O mostrador" #: Configure.cpp:2074 msgid "Trees" msgstr "Ãrvores" #: Configure.cpp:2076 msgid "Tree font" msgstr "Fonte árvore" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Misc" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminais" #: Configure.cpp:2083 msgid "Real" msgstr "Real" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulador" #: Configure.cpp:2088 msgid "The Network" msgstr "A rede" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Miscelânea" #: Configure.cpp:2093 msgid "Numbers" msgstr "Números" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "Outro" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Entre com o nome do novo submenu para adicionar" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "Clique quando terminado" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "Editar este Comando" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Escolher um arquivo" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "Redes" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "Apagar" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Você tem CERTEZA?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Não consigo achar um programa executáver \"%s\" no caminho que você expecificou.\nContinuar mesmo assim?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Lamento, já existe um programa chamado %s\n Tentar novamente?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Por favor, confirme" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "Você não digitou uma extensão de arquivo!" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "Para que extensão(ões) você deseja que esse programa seja o padrão?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "Para que extensões você quer que %s seja o padrão" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "Substituir %s\npor %s\ncomo comando padrão para arquivos do tipo %s?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "Lamento, não pude achar o programa!?" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Excluir %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Editar os dados do programa" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Lamento, você não tem permissão para executar esse arquivo" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "Lamento, você não tem permissão para executar esse arquivo.\nGostaria de tentar lê-lo?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "Parar de usar %s como o comando padrão para arquivos do tipo %s?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Mostrar oculto" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "Você não selecionou um ponto de montagem.\nTentar novamente?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "O ponto de montagem para essa partição não existe. Deseja criá-lo?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Montado com sucesso em " #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Impossível criar pasta" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Opa, falhei ao criar a pasta" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "Opa, eu não tenho permissão suficiente para criar a pasta" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "Desmontar root é uma má ideia séria demais!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Falhei ao desmontar " #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr " desmontado com sucesso" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "Opa, falhei em desmontar com sucesso devido ao erro " #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Opa, falhei ao desmontar" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "O ponto de montagem pedido não existe. Deseja criá-lo?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Opa, falhei em montar com sucesso\nTem certeza que o arquivo é uma imagem válida?" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "Localizar" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/et/0000755000175000017500000000000012250631521013327 5ustar daviddavid./4pane-6.0/locale/et/LC_MESSAGES/0000755000175000017500000000000013567054715015134 5ustar daviddavid./4pane-6.0/locale/et/LC_MESSAGES/et.po0000644000175000017500000054040713205575137016111 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Rivo Zängov , 2011 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Estonian (http://www.transifex.com/davidgh/4Pane/language/et/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: et\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "" #: Accelerators.cpp:213 msgid "C&ut" msgstr "Lõika" #: Accelerators.cpp:213 msgid "&Copy" msgstr "Kopeeri" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "" #: Accelerators.cpp:213 msgid "De&lete" msgstr "Kustuta" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Kustuta jäädavalt" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Ni&meta ümber" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "Loo koopia" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "Omadus&ed" #: Accelerators.cpp:214 msgid "&Open" msgstr "Ava" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "" #: Accelerators.cpp:214 msgid "&Paste" msgstr "Aseta" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Tagasi" #: Accelerators.cpp:215 msgid "&Redo" msgstr "" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Vali kõik" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "Uus fail või kaust" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "Uus kaart" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "Sisesta kaart" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Loo sellest kaardist koopia" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "" #: Accelerators.cpp:217 msgid "&Extension" msgstr "" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Suurus" #: Accelerators.cpp:217 msgid "&Time" msgstr "Kellaaeg" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "Õigused" #: Accelerators.cpp:218 msgid "&Owner" msgstr "Omanik" #: Accelerators.cpp:218 msgid "&Group" msgstr "Grupp" #: Accelerators.cpp:218 msgid "&Link" msgstr "&Link" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "" #: Accelerators.cpp:228 msgid "E&xit" msgstr "" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "" #: Accelerators.cpp:502 msgid "&Edit" msgstr "" #: Accelerators.cpp:502 msgid "&View" msgstr "" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "" #: Accelerators.cpp:502 msgid "&Archive" msgstr "" #: Accelerators.cpp:502 msgid "&Mount" msgstr "" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "" #: Accelerators.cpp:502 msgid "&Options" msgstr "" #: Accelerators.cpp:502 msgid "&Help" msgstr "" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "" #: Accelerators.cpp:675 msgid "Default" msgstr "" #: Accelerators.cpp:694 msgid "Extension" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Ups!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Vali fail(id) ja/või kaustad" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Ups" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Fail(id) on pakitud" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Pakkimine ebaõnnestus" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "" #: Archive.cpp:1242 msgid "Archive created" msgstr "Arhiiv on loodud" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Arhiivi loomine ebaõnnestus" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Fail(id) on arhiivi lisatud" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Arhiivi lisamine ebaõnnestus" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Arhiiv on lahti pakitud" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Lahtipakkimine ebaõnnestus" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Aseta" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Liiguta" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Vabandust" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Järjehoidjate kaust" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Eraldaja" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Kopeeritud" #: Bookmarks.cpp:204 msgid "Moved" msgstr "" #: Bookmarks.cpp:215 msgid "Copied" msgstr "" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Ups?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Asetatud" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Kaust on kustutatud" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Järjehoidja on kustutatud" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "Siin" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Otseteed" #: Configure.cpp:2041 msgid "Tools" msgstr "Töövahendid" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Lisa töövahend" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Muuda töövahendit" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Kustuta töövahend" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Seadmed" #: Configure.cpp:2052 msgid "Automount" msgstr "Automaatne ühendamine" #: Configure.cpp:2054 msgid "Mounting" msgstr "Ühendamine" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "Eemaldatav" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Vali fail" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "Kustuta " #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/vi/0000755000175000017500000000000012250631525013341 5ustar daviddavid./4pane-6.0/locale/vi/LC_MESSAGES/0000755000175000017500000000000013567054715015142 5ustar daviddavid./4pane-6.0/locale/vi/LC_MESSAGES/vi.po0000644000175000017500000053764213205575137016134 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Anh Phan , 2013 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Vietnamese (http://www.transifex.com/davidgh/4Pane/language/vi/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: vi\n" "Plural-Forms: nplurals=1; plural=0;\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "" #: Accelerators.cpp:213 msgid "C&ut" msgstr "C&ắt" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Sao chép" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Gá»­i đến T&hùng rác" #: Accelerators.cpp:213 msgid "De&lete" msgstr "X&óa" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Xóa hoàn toàn" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Äổ&i tên" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "Tr&ùng nhau" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "Thu&á»™c tính" #: Accelerators.cpp:214 msgid "&Open" msgstr "M&ở" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Mở v&á»›i" #: Accelerators.cpp:214 msgid "&Paste" msgstr "D&án" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Tạo má»™t &liên kết cứng" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Tạo má»™t li&ên kết biểu tượng" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "&Xóa Tab" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "Ä&ổi tên tab" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Há»§y B&á»" #: Accelerators.cpp:215 msgid "&Redo" msgstr "L&àm lại" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Chá»n tất&t cả" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "Tạ&o má»›i tập tin hoặc thư mục" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "T&ab má»›i" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "C&hèn tab" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Nhân Ä‘&ôi tab này" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "" #: Accelerators.cpp:217 msgid "&Extension" msgstr "" #: Accelerators.cpp:217 msgid "&Size" msgstr "" #: Accelerators.cpp:217 msgid "&Time" msgstr "" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "" #: Accelerators.cpp:218 msgid "&Owner" msgstr "" #: Accelerators.cpp:218 msgid "&Group" msgstr "" #: Accelerators.cpp:218 msgid "&Link" msgstr "" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "" #: Accelerators.cpp:228 msgid "E&xit" msgstr "" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "" #: Accelerators.cpp:502 msgid "&Edit" msgstr "" #: Accelerators.cpp:502 msgid "&View" msgstr "" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "" #: Accelerators.cpp:502 msgid "&Archive" msgstr "" #: Accelerators.cpp:502 msgid "&Mount" msgstr "" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "" #: Accelerators.cpp:502 msgid "&Options" msgstr "" #: Accelerators.cpp:502 msgid "&Help" msgstr "" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "" #: Accelerators.cpp:675 msgid "Default" msgstr "" #: Accelerators.cpp:694 msgid "Extension" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "" #: Archive.cpp:1228 msgid "Compression failed" msgstr "" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "" #: Archive.cpp:1242 msgid "Archive created" msgstr "" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "" #: Bookmarks.cpp:215 msgid "Copied" msgstr "" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "" #: Configure.cpp:2041 msgid "Tools" msgstr "" #: Configure.cpp:2043 msgid "Add a tool" msgstr "" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "" #: Configure.cpp:2052 msgid "Automount" msgstr "" #: Configure.cpp:2054 msgid "Mounting" msgstr "" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "" #: Devices.cpp:3449 msgid "xpm" msgstr "" #: Devices.cpp:3449 msgid "bmp" msgstr "" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/ja/0000755000175000017500000000000012250631523013313 5ustar daviddavid./4pane-6.0/locale/ja/LC_MESSAGES/0000755000175000017500000000000013567054715015116 5ustar daviddavid./4pane-6.0/locale/ja/LC_MESSAGES/ja.po0000644000175000017500000055300313205575137016051 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Tadashi Jokagi , 2012 # Tadashi Jokagi , 2011 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Japanese (http://www.transifex.com/davidgh/4Pane/language/ja/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ja\n" "Plural-Forms: nplurals=1; plural=0;\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "" #: Accelerators.cpp:213 msgid "C&ut" msgstr "切りå–り(&U)" #: Accelerators.cpp:213 msgid "&Copy" msgstr "コピー(&C)" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "ゴミ箱ã«é€ã‚‹(&T)" #: Accelerators.cpp:213 msgid "De&lete" msgstr "削除(&L)" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "永久ã«å‰Šé™¤ã™ã‚‹" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "åå‰ã®å¤‰æ›´(&M)" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "複製(&D)" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "プロパティ(&E)" #: Accelerators.cpp:214 msgid "&Open" msgstr "é–‹ã(&O)" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "" #: Accelerators.cpp:214 msgid "&Paste" msgstr "貼り付ã‘(&P)" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "ãƒãƒ¼ãƒ‰ãƒªãƒ³ã‚¯ã®ä½œæˆ(&H)" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "シンボリックリンクã®ä½œæˆ(&S)" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "タブã®å‰Šé™¤(&D)" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "タブåã®å¤‰æ›´(&R)" #: Accelerators.cpp:215 msgid "Und&o" msgstr "å…ƒã«æˆ»ã™(&O)" #: Accelerators.cpp:215 msgid "&Redo" msgstr "やり直ã™(&R)" #: Accelerators.cpp:215 msgid "Select &All" msgstr "å…¨é¸æŠž(&A)" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "æ–°è¦ãƒ•ァイル/ディレクトリーã®ä½œæˆ(&N)" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "æ–°è¦ã‚¿ãƒ–ã®ä½œæˆ(&N)" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "ã‚¿ãƒ–ã®æŒ¿å…¥(&I)" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "ã“ã®ã‚¿ãƒ–ã®è¤‡è£½(&U)" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "ペインã®å…¥ã‚Œæ›¿ãˆ(&S)" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "垂直ã«ãƒšã‚¤ãƒ³ã®åˆ†å‰²(&H)" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "æ°´å¹³ã«ãƒšã‚¤ãƒ³ã®åˆ†å‰²(&V)" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "ペインã®åˆ†å‰²è§£é™¤(&U)" #: Accelerators.cpp:217 msgid "&Extension" msgstr "æ‹¡å¼µå­(&E)" #: Accelerators.cpp:217 msgid "&Size" msgstr "サイズ(&S)" #: Accelerators.cpp:217 msgid "&Time" msgstr "時間(&T)" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "パーミッション(&P)" #: Accelerators.cpp:218 msgid "&Owner" msgstr "所有者(&O)" #: Accelerators.cpp:218 msgid "&Group" msgstr "グループ(&G)" #: Accelerators.cpp:218 msgid "&Link" msgstr "リンク(&L)" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "全カラムを表示ã™ã‚‹(&A)" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "全カラムã®è¡¨ç¤ºã‚’ã‚„ã‚ã‚‹(&U)" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "ペインã®è¨­å®šä¿å­˜(&P)" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "ペインã®è¨­å®šä¿å­˜ã¨çµ‚了(&E)" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "テンプレートã¨ã—ã¦ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã®ä¿å­˜(&S)" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "テンプレートã®å‰Šé™¤(&E)" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "端末ã®èµ·å‹•(&T)" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "éš ã—ファイルã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã®è¡¨ç¤º/éžè¡¨ç¤º" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "ブックマークã«è¿½åŠ (&A)" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "ブックマークã®ç®¡ç†(&M)" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "パーティションã®ãƒžã‚¦ãƒ³ãƒˆ(&M)" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "パーティションã®ãƒžã‚¦ãƒ³ãƒˆè§£é™¤(&U)" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "ISO イメージã®ãƒžã‚¦ãƒ³ãƒˆ(&I)" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "NFS エクスãƒãƒ¼ãƒˆã®ãƒžã‚¦ãƒ³ãƒˆ(&N)" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Samba 共有ã®ãƒžã‚¦ãƒ³ãƒˆ(&S)" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "端末エミュレーターã®è¡¨ç¤º(&T)" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "コマンドラインã®è¡¨ç¤º(&L)" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "é¸æŠžã—ãŸãƒ•ァイルã«ç§»å‹•(&G)" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "ã”ã¿ç®±ã‚’空ã«ã™ã‚‹(&T)" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "アーカイブや圧縮ファイルã®å±•é–‹(&X)" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "æ–°ã—ã„æ›¸åº«ã‚’作æˆã™ã‚‹(&N)" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "ファイルを圧縮ã™ã‚‹(&C)" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "å†å¸°çš„ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ サイズを表示ã™ã‚‹" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "4Pane ã®è¨­å®š" #: Accelerators.cpp:228 msgid "E&xit" msgstr "終了(&X)" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "ヘルプ コンテンツ(&H)" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&FAQ" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "4Pane ã«ã¤ã„ã¦(&A)" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "ショートカットã®è¨­å®š" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "編集" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "å‰ã®ãƒ—ログラムã®ç¹°ã‚Šè¿”ã—" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "ç¾åœ¨ã®é¸æŠžã®åˆ‡ã‚Šå–り" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "ç¾åœ¨ã®é¸æŠžã®ã‚³ãƒ”ー" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "ã”ã¿ç®±ã«é€ã‚‹" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "ä»Šé¸æŠžã—ã¦ã„るタブã®å‰Šé™¤" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "ä»Šé¸æŠžã—ã¦ã„るタブã®åå‰å¤‰æ›´" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "æ–°ã—ã„タブã®è¿½åŠ " #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "ã“ã®ãƒ—ログラムを閉ã˜ã‚‹" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "ファイル(&F)" #: Accelerators.cpp:502 msgid "&Edit" msgstr "編集(&E)" #: Accelerators.cpp:502 msgid "&View" msgstr "閲覧(&V)" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "タブ(&T)" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "ブックマーク(&B)" #: Accelerators.cpp:502 msgid "&Archive" msgstr "アーカイブ(&A)" #: Accelerators.cpp:502 msgid "&Mount" msgstr "マウント(&M)" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "ツール(&L)" #: Accelerators.cpp:502 msgid "&Options" msgstr "オプション(&O)" #: Accelerators.cpp:502 msgid "&Help" msgstr "ヘルプ(&H)" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "表示ã™ã‚‹ã‚«ãƒ©ãƒ (&C)" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "タブ テンプレートã®èª­ã¿è¾¼ã¿(&L)" #: Accelerators.cpp:673 msgid "Action" msgstr "æ“作" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "ショートカット" #: Accelerators.cpp:675 msgid "Default" msgstr "åˆæœŸå€¤" #: Accelerators.cpp:694 msgid "Extension" msgstr "æ‹¡å¼µ" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "サイズ" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "時間" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "パーミッション" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "所有者" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "グループ" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "リンク" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "全カラムã®è¡¨ç¤º" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "本当ã«ã—ã¾ã™ã‹?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "ラベルã®å¤‰æ›´" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "ãŠã£ã¨!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "ãŠã£ã¨" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "ファイルを圧縮ã—ã¾ã—ãŸ" #: Archive.cpp:1228 msgid "Compression failed" msgstr "圧縮ã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "ファイルを伸張ã—ã¾ã—ãŸ" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "伸張ã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "確èªã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1242 msgid "Archive created" msgstr "アーカイブを作æˆã—ã¾ã—ãŸ" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "アーカイブã®ä½œæˆã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "アーカイブã«ãƒ•ァイルを追加ã—ã¾ã—ãŸ" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "アーカイブã¸ã®è¿½åŠ ã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "アーカイブを展開ã—ã¾ã—ãŸ" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "展開ã«å¤±æ•—ã—ã¾ã—ãŸ" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "ã™ã¿ã¾ã›ã‚“" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "ブックマーク フォルダー" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "複製ã—ã¾ã—ãŸ" #: Bookmarks.cpp:204 msgid "Moved" msgstr "移動ã—ã¾ã—ãŸ" #: Bookmarks.cpp:215 msgid "Copied" msgstr "コピーã—ã¾ã—ãŸ" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "フォルダーåã®å¤‰æ›´" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "ブックマークã®ç·¨é›†" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "æ–°è¦ãƒ•ォルダー" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "ブックマーク" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "ブックマークã«è¿½åŠ ã—ã¾ã—ãŸ" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "全変更をæ¨ã¦ã¾ã™ã‹?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "フォルダーを追加ã—ã¾ã—ãŸ" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "フォルダーを削除ã—ã¾ã—ãŸ" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "ブックマークを削除ã—ã¾ã—ãŸ" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "4Pane ã¸ã‚ˆã†ã“ã。" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "ã“ã“" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "プログラムã®å®Ÿè¡Œ(&R)" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "ホーム ディレクトリーã¸ç§»å‹•" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "ドキュメント ディレクトリーã¸ç§»å‹•" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "ショートカット" #: Configure.cpp:2041 msgid "Tools" msgstr "ツール" #: Configure.cpp:2043 msgid "Add a tool" msgstr "ツールã®è¿½åŠ " #: Configure.cpp:2045 msgid "Edit a tool" msgstr "ツールã®ç·¨é›†" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "ツールã®å‰Šé™¤" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "デãƒã‚¤ã‚¹" #: Configure.cpp:2052 msgid "Automount" msgstr "自動マウント" #: Configure.cpp:2054 msgid "Mounting" msgstr "マウントã—ã¦ã„ã¾ã™" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "リムーãƒãƒ–ル" #: Configure.cpp:2060 msgid "Fixed" msgstr "固定" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "スーパー ユーザー" #: Configure.cpp:2099 msgid "Other" msgstr "ãã®ä»–" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr " ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã®ç·¨é›† " #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "コマンド「%sã€ã‚’本当ã«å‰Šé™¤ã—ã¾ã™ã‹?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "ファイルã®é¸æŠž" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "デãƒã‚¤ã‚¹ã‚’自動マウントã—ã¦ã„ã¾ã™" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "デãƒã‚¤ã‚¹ã®ãƒžã‚¦ãƒ³ãƒˆ" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "USB デãƒã‚¤ã‚¹" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "リムーãƒãƒ–ル デãƒã‚¤ã‚¹" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "固定デãƒã‚¤ã‚¹" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "表示" #: Configure.cpp:2739 msgid "Display Trees" msgstr "ツリー表示" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "実端末" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "端末エミュレーター" #: Configure.cpp:2740 msgid "Networks" msgstr "ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "ã“ã®ãƒ‡ãƒã‚¤ã‚¹ã‚’削除ã—ã¾ã™ã‹?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "標準ã®ãƒ•ォント" #: Configure.cpp:4036 msgid "Delete " msgstr "" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr " メニュー" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "DVD-RAM ã®ãƒžã‚¦ãƒ³ãƒˆ(&R)" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "DVD-RAM ã®ãƒžã‚¦ãƒ³ãƒˆè§£é™¤(&R)" #: Devices.cpp:354 msgid "&Eject" msgstr "å–り出ã—(&E)" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "DVD-RAM ディスクã®ãƒžã‚¦ãƒ³ãƒˆè§£é™¤" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "失敗ã—ã¾ã—ãŸ" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "警告" #: Devices.cpp:843 msgid "Floppy" msgstr "フロッピー" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "ã™ã¿ã¾ã›ã‚“。マウント解除ã«å¤±æ•—ã—ã¾ã—ãŸ" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "パーティション" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "fstab ã«ãªã„パーティションã®ãƒžã‚¦ãƒ³ãƒˆ" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "ã“ã®ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’削除ã—ã¾ã™ã‹?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "キャンセル" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "複数ã«è¤‡è£½" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "複製ã®ç¢ºèª" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "æ­£è¦è¡¨ç¾ã®ãƒ˜ãƒ«ãƒ—" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "ã™ã¿ã¾ã›ã‚“ãŒã‚­ãƒ£ãƒ³ã‚»ãƒ«ã«å¤±æ•—ã—ã¾ã—ãŸ\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "「%sã€ã®å®Ÿè¡Œã«å¤±æ•—ã—ã¾ã—ãŸã€‚" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "é–‰ã˜ã‚‹" #: Filetypes.cpp:346 msgid "Regular File" msgstr "通常ã®ãƒ•ァイル" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "シンボリックリンク" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "壊れãŸã‚·ãƒ³ãƒœãƒªãƒƒã‚¯ãƒªãƒ³ã‚¯" #: Filetypes.cpp:350 msgid "Character Device" msgstr "キャラクター デãƒã‚¤ã‚¹" #: Filetypes.cpp:351 msgid "Block Device" msgstr "ブロック デãƒã‚¤ã‚¹" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "ディレクトリー" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "ソケット" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "アプリケーション" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "フォルダー %s を削除ã—ã¾ã™ã‹?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "確èªã—ã¦ãã ã•ã„" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "%s を削除ã—ã¾ã™ã‹?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr " ãƒžã‚¦ãƒ³ãƒˆè§£é™¤ã«æˆåŠŸ" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "マウントã™ã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã®é¸æŠž" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "上ä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã«ç§»å‹•" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "ãƒãƒ¼ãƒ‰" #: MyDirs.cpp:1033 msgid "Soft" msgstr "ソフト" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "ディレクトリーã®å‰Šé™¤(&L)" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "ディレクトリーをã”ã¿ç®±ã«é€ã‚‹(&T)" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "シンボリックリンクã®å‰Šé™¤(&L)" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "シンボリック陸をã”ã¿ç®±ã«é€ã‚‹(&T)" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "ファイルã®å‰Šé™¤(&L)" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "ファイルをã”ã¿ç®±ã«é€ã‚‹(&T)" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "ãã®ä»–..." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "root権é™ã§é–‹ã(&G)" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "ディレクトリーåã®å¤‰æ›´(&M)" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "ディレクトリーã®è¤‡è£½(&D)" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "ファイルåã®å¤‰æ›´(&M)" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "ファイルã®è¤‡è£½(&D)" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "æ–°è¦ã‚¢ãƒ¼ã‚«ã‚¤ãƒ–ã®ä½œæˆ" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "圧縮ファイル" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’作æˆã—ã¾ã—ãŸ" #: MyFiles.cpp:588 msgid "New file created" msgstr "æ–°è¦ãƒ•ァイルを作æˆã—ã¾ã—ãŸ" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "タブåã®å¤‰æ›´" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "表示" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "éš ã™" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "削除" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "リンク先ã®å¤‰æ›´" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "æ–°è¦ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼" #: Redo.h:226 msgid "New File" msgstr "æ–°è¦ãƒ•ァイル" #: Redo.h:242 msgid "Duplicate Directory" msgstr "ディレクトリーã®è¤‡è£½" #: Redo.h:242 msgid "Duplicate File" msgstr "ファイルã®è¤‡è£½" #: Redo.h:261 msgid "Rename Directory" msgstr "ディレクトリーåã®å¤‰æ›´" #: Redo.h:261 msgid "Rename File" msgstr "ファイルåã®å¤‰æ›´" #: Redo.h:281 msgid "Duplicate" msgstr "複製" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "åå‰ã®å¤‰æ›´" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "クリックã§ä¸­æ­¢" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "æ–°ã—ã„デãƒã‚¤ã‚¹ã‚’検出ã—ã¾ã—ãŸ" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "4Pane ã®è¨­å®š" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "変更" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "åˆæœŸå€¤ã®ä½¿ç”¨" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "端末ã§å®Ÿè¡Œ" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "メニューã®ãƒ©ãƒ™ãƒ«" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "コマンド" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "ã‚ãらã‚ã‚‹" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "場所(&L)" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "zip ã®ä»£ã‚りã«ä½¿ã†" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "ブロック サイズ:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "所有者 ID:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "グループ ID:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "マウントã®ã‚ªãƒ—ション" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "読ã¿è¾¼ã¿å°‚用" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "åŒæœŸæ›¸ãè¾¼ã¿" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Setuid/Setgid を無視ã™ã‚‹" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "サーãƒãƒ¼ã®é¸æŠž" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "ãƒãƒ¼ãƒ‰ マウント" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "ソフト マウント" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "利用ã§ãるサーãƒãƒ¼" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "IP アドレス" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "ホストå" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "マウントã®å…±æœ‰" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "ユーザーå" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "パスワード" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "パーティションã®ãƒžã‚¦ãƒ³ãƒˆè§£é™¤" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/de/0000755000175000017500000000000012250631517013314 5ustar daviddavid./4pane-6.0/locale/de/LC_MESSAGES/0000755000175000017500000000000013567054715015114 5ustar daviddavid./4pane-6.0/locale/de/LC_MESSAGES/de.po0000644000175000017500000103532613564777302016057 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # DavidGH , 2014,2017 # Ettore Atalan , 2014-2018 # peter , 2018 # Vincent_Vegan , 2017 # Vincent_Vegan , 2012 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-10-20 18:01+0000\n" "Last-Translator: Ettore Atalan \n" "Language-Team: German (http://www.transifex.com/davidgh/4Pane/language/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Strg" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Umschalt" #: Accelerators.cpp:213 msgid "C&ut" msgstr "&Ausschneiden" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Kopieren" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "In den &Papierkorb verschieben" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Löschen" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Dauerhaft löschen" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "&Umbenennen" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Duplizieren" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&Einstellungen" #: Accelerators.cpp:214 msgid "&Open" msgstr "Ö&ffnen" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Öffnen &mit..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Einfügen" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "&Harte Verknüpfung erstellen" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "&Symbolische Verknüpfung erstellen" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "Tab &löschen" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "Tab &umbenennen" #: Accelerators.cpp:215 msgid "Und&o" msgstr "&Rückgängig" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Wiederherstellen" #: Accelerators.cpp:215 msgid "Select &All" msgstr "&Alles markieren" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Neue Datei oder neues Verzeichnis" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&Neuer Tab" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "Tab &einfügen" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Diesen Tab d&uplizieren" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "Auch einzelne Tab-&Titel anzeigen" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Allen Tab-Titeln die gleiche Breite geben" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "Im gegenüberliegenden Fenster wiede&rholen" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "Fenster vertau&schen" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Fenster &vertikal teilen" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Fenster &horizontal teilen" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "Fensterteilung a&ufheben" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Erweiterung" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Größe" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Zeit" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Berechtigungen" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Eigentümer" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Gruppe" #: Accelerators.cpp:218 msgid "&Link" msgstr "&Verknüpfung" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "&Alle Spalten anzeigen" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "Alle Spalten &ausblenden" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "&Fenstereinstellungen speichern" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Fenstereinstellungen beim &Beenden speichern" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "Anordnung als Vorlage &speichern" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "Vorlage &löschen" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Bildschirminhalt &aktualisieren" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "&Terminal starten" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&Filteranzeige" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Versteckte Verzeichnisse und Dateien anzeigen/ausblenden" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "Zu Lesezeichen &hinzufügen" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "Lesezeichen &verwalten" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "Partition &einhängen" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "Partition a&ushängen" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "&ISO-Abbild einhängen" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "&NFS-Export einhängen" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "&Samba-Freigabe einhängen" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "Netzwerkfreigabe aushä&ngen" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "A&ushängen" #: Accelerators.cpp:224 msgid "Unused" msgstr "Frei" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "&Terminalemulator anzeigen" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Befehls&zeile anzeigen" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "Zur ausgewählten Datei &wechseln" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "&Papierkork löschen" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "\"Gelöscht\"-Dateien dauerhaft &löschen" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "Archiv oder komprimierte Datei(en) &entpacken" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "&Neues Archiv erstellen" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "Zu einem vorh&andenen Archiv hinzufügen" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "Integrität von Archiven oder komprimierten Dateien &prüfen" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "Dateien &komprimieren" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "Rekursive Verzeichnisgrößen &anzeigen" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "&Relative symbolische Verknüpfungsziele beibehalten" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "4Pane &konfigurieren" #: Accelerators.cpp:228 msgid "E&xit" msgstr "&Beenden" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Kontextsensitive Hilfe" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "&Hilfeinhalte" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&HGF" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&Über 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Tastenkombinationen konfigurieren" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Zum Ziel der symbolischen Verknüpfung wechseln" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Zum endgültigen Ziel der symbolischen Verknüpfung wechseln" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Bearbeiten" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Neue Trennlinie" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Vorheriges Programm wiederholen" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Zum gegenüberliegenden Fenster navigieren" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Zum angrenzenden Fenster navigieren" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Zu den Fenstern wechseln" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Zum Terminalemulator wechseln" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Zur Befehlszeile wechseln" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Zur Werkzeugleisten-Textkontrolle wechseln" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Zum vorherigen Fenster wechseln" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Zu vorigem Tab wechseln" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Zu nächstem Tab wechseln" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Als Ver&zeichnisvorlage einfügen" #: Accelerators.cpp:231 msgid "&First dot" msgstr "&Erster Punkt" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "&Vorletzter Punkt" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "&Letzter Punkt" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Über SSH mit ssh&fs einhängen" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "&Vorschauen anzeigen" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "Einfügen &abbrechen" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Dezimal-bewusste Dateinamenssortierung" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Schneidet die aktuelle Auswahl aus" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Kopiert die aktuelle Auswahl" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "In den Papierkorb verschieben" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Killen, aber könnte wiederhergestellt werden" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Mit äußerster Sorgfalt löschen" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Die Inhalte der Zwischenablage einfügen" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Harte Verknüpfung auf die Inhalte der Zwischenablage hierher erstellen" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Symbolische Verknüpfung auf die Inhalte der Zwischenablage hierher erstellen" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Aktuell ausgewählten Tab löschen" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Aktuell ausgewählten Tab umbenennen" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Neuen Tab hinzufügen" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Neuen Tab hinter dem aktuell ausgewählten hinzufügen" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Den Titel eines einzelnen Tabs ausblenden" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Pfad von dieser Seite in das gegenüberliegende Fenster kopieren" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Den Pfad der einen Seite mit dem der anderen vertauschen" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Anordnung von Fenstern innerhalb jedes Tabs speichern" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Anordnung von Fenstern beim Beenden immer speichern" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Diese Tabs als wieder aufrufbare Vorlage speichern" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Aktuell ausgewähltes Element zu den Lesezeichen hinzufügen" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Lesezeichen neu anordnen, umbenennen oder löschen" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "Übereinstimmende Dateien lokalisieren. Viel schneller als \"find\"" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Übereinstimmende Datei(en) finden" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "In Dateien suchen" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Terminalemulator anzeigen/ausblenden" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Befehlszeile anzeigen/ausblenden" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "4Pane-Papierkorb löschen" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "4Pane-\"Gelöscht\"-Ordner löschen" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Verzeichnisgrößen in den Dateiansichten rekursiv berechnen" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Beim Verschieben einer relativen symbolischen Verknüpfung das Ziel beibehalten" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Dieses Programm schließen" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "Nur Verzeichnisstruktur aus der Zwischenablage einfügen" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "Erweiterung beginnt ab dem ersten . im Dateinamen" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "Erweiterung beginnt ab dem letzten oder vorletzten . im Dateinamen" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "Erweiterung beginnt ab dem letzten . im Dateinamen" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "Vorschauen von Bildern und Textdateien anzeigen" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Aktuellen Prozess abbrechen" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "Sollen Dateien wie foo1, foo2 dezimal geordnet sein" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\nDie Datenfelder in ImplementDefaultShortcuts() haben nicht die gleiche Größe!" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Vollbildmodus umschalten" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Konfiguration konnte nicht geladen werden!?" #: Accelerators.cpp:502 msgid "&File" msgstr "&Datei" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Bearbeiten" #: Accelerators.cpp:502 msgid "&View" msgstr "&Ansicht" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Tabs" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "&Lesezeichen" #: Accelerators.cpp:502 msgid "&Archive" msgstr "&Archivieren" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Einhängen" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "&Werkzeuge" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Optionen" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Hilfe" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "Anzuzeigende &Spalten" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "Tab-Vorlage &laden" #: Accelerators.cpp:673 msgid "Action" msgstr "Aktion" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Tastenkombination" #: Accelerators.cpp:675 msgid "Default" msgstr "Standard" #: Accelerators.cpp:694 msgid "Extension" msgstr "Erweiterung" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "Erweiterungsspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:694 msgid "Size" msgstr "Größe" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "Größenspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Zeit" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "Zeitspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Berechtigungen" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "Berechtigungsspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Eigentümer" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "Eigentümerspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Gruppe" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "Gruppenspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Verknüpfung" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "Verknüpfungsspalte in der Dateiansicht anzeigen/ausblenden" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Alle Spalten anzeigen" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Dateiansicht: Alle Spalten anzeigen" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Alle Spalten ausblenden" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Dateiansicht: Alle Spalten ausblenden" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Lesezeichen: Bearbeiten" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Lesezeichen: Neue Trennlinie" #: Accelerators.cpp:697 msgid "First dot" msgstr "Erster Punkt" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "Erweiterungen beginnen beim ersten Punkt" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "Vorletzter Punkt" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "Erweiterungen beginnen beim vorletzten Punkt" #: Accelerators.cpp:698 msgid "Last dot" msgstr "Letzter Punkt" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "Erweiterungen beginnen beim letzten Punkt" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Änderungen vergessen?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Sind Sie sicher?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Keine" #: Accelerators.cpp:939 msgid "Same" msgstr "Gleich" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Geben Sie die neue anzuzeigende Bezeichnung für diesen Menüpunkt ein." #: Accelerators.cpp:958 msgid "Change label" msgstr "Bezeichnung ändern" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "Geben Sie die anzuzeigende Hilfezeichenkette für diesen Menüpunkt ein\nAbbrechen wird die Zeichenkette löschen." #: Accelerators.cpp:965 msgid "Change Help String" msgstr "Hilfezeichenkette ändern" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "So wie es aussieht, kann diese Datei oder dieses Verzeichnis nicht gefunden werden.\nVersuchen Sie die Schaltfläche Durchsuchen." #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Hoppla!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Datei(en) und/oder Verzeichnisse auswählen" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Wählen Sie das Verzeichnis aus, in welchem das Archiv gespeichert werden soll." #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Nach dem Archiv zum Hinzufügen suchen" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "Das Verzeichnis, in dem Sie das Archiv erstellen möchten, scheint nicht zu existieren.\nDas aktuelle Verzeichnis verwenden?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "Das Archiv, zu dem Sie hinzufügen möchten, scheint nicht vorhanden zu sein.\nErneut versuchen?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "Eine 7z-Binärdatei konnte auf Ihrem System nicht gefunden werden." #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Hoppla" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "Es konnte kein gültiges Archiv zum Hinzufügen gefunden werden." #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "Es wurden keine relevanten komprimierten Dateien ausgewählt.\nErneut versuchen?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Nach dem Archiv zum Überprüfen suchen" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Wählen Sie das Verzeichnis aus, in welches das Archiv entpackt werden soll." #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "Das gewünschte Zielverzeichnis konnte nicht erstellt werden.\nErneut versuchen?" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "rpm2cpio konnte auf Ihrem System nicht gefunden werden..." #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "ar konnte auf Ihrem System nicht gefunden werden..." #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "Es kann kein gültiges Archiv zum Entpacken gefunden werden.\nErneut versuchen?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "Es kann kein gültiges Archiv zum Überprüfen gefunden werden.\nErneut versuchen?" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Komprimierte Datei(en)" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Komprimierung fehlgeschlagen" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Datei(en) entpackt" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Entpacken fehlgeschlagen" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Datei(en) überprüft" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Überprüfung fehlgeschlagen" #: Archive.cpp:1242 msgid "Archive created" msgstr "Archiv erstellt" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Archiverstellung fehlgeschlagen" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Datei(en) zum Archiv hinzugefügt" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Archiverweiterung fehlgeschlagen " #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archiv extrahiert" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Extrahierung fehlgeschlagen" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archiv überprüft" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "In welches Verzeichnis sollen diese Dateien extrahiert werden?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "In welches Verzeichnis soll extrahiert werden?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Extrahieren aus Archiv" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Sie haben keine Berechtigung, um dieses Verzeichnis zu erstellen\nErneut versuchen?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Kein Eintrag!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Entschuldigung, %s ist bereits vorhanden\nErneut versuchen?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Sie haben keine Berechtigung, um in dieses Verzeichnis zu schreiben." #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Sie haben keine Berechtigung, um auf Dateien in diesem Verzeichnis zuzugreifen." #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Kein Ende!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Aus irgendeinem Grund ist der Versuch, ein Verzeichnis zum entgegennehmen der Datensicherung zu erstellen, fehlgeschlagen. Entschuldigung!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Entschuldigung, dass Sichern der Daten ist fehlgeschlagen." #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Entschuldigung, das Entfernen von Elementen ist fehlgeschlagen." #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Einfügen" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Verschieben" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Entschuldigung, Sie müssen root sein, um zeichen- oder blockorientierte Geräte extrahieren zu können." #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Ihr zlib ist zu alt, um dies zu tun :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "Aus irgendeinem Grund ist das Öffnen des Archivs fehlgeschlagen :(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "Um diese Art von Archiven anzuzeigen muss liblzma installiert werden." #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Fehlende Bibliothek" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Diese Datei ist komprimiert, aber es ist kein Archiv, deshalb können Sie keinen Blick hineinwerfen." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Entschuldigung" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "In diese Art von Archiven kann nicht hineingeschaut werden." #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Verzeichnisse zu Lesezeichen hinzufügen" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Trennlinie" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Dupliziert" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Verschoben" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Kopiert" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Verzeichnis umbenennen" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Lesezeichen bearbeiten" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "NeueTrennlinie" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "NeuerOrdner" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Menüleiste konnte nicht geladen werden!?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Menü konnte nicht gefunden werden!?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Dieser Abschnitt ist in der INI-Datei nicht vorhanden!?" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Lesezeichen" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Entschuldigung, der Ordner konnte nicht lokalisiert werden." #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Lesezeichen hinzugefügt" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Alle Änderungen verwerfen?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "Welche Bezeichnung hätten Sie gerne für den neuen Ordner?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Entschuldigung, es gibt bereits einen Ordner mit dem Namen %s\nErneut versuchen?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Verzeichnis hinzugefügt" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Trennlinie hinzugefügt" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Entschuldigung, es gibt bereits ein Ordner mit dem Namen %s\nNamen ändern?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Hoppla?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Wie soll der Ordner benannt werden?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "Welche Bezeichnung möchten Sie für den Ordner?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Eingefügt" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Ändern Sie die Ordnerbezeichnung unten ab." #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Entschuldigung, Sie sind nicht berechtigt, den Hauptordner zu verschieben." #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Entschuldigung, Sie sind nicht berechtigt, den Hauptordner zu löschen." #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "Tss tss!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Ordner %s und alle seine Inhalte löschen?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Ordner gelöscht" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Lesezeichen gelöscht" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Willkommen bei 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane ist ein Dateimanager mit den Zielen schnell und mit allen Funktionen ausgestattet zu sein, ohne überladen zu wirken." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Bitte klicken Sie auf Weiter, um 4Pane für Ihr System zu konfigurieren." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "Oder klicken Sie, wenn es bereits eine Konfigurationsdatei gibt, die Sie kopieren möchten." #: Configure.cpp:69 msgid "Here" msgstr "Hier" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Ressourcen erfolgreich lokalisiert. Bitte klicken Sie auf Weiter." #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "Ich habe einen Blick auf Ihr System geworfen und eine Konfiguration erstellt, die funktionieren sollte." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "In den Optionen können Sie jederzeit eine ausführlichere Konfiguration durchführen > 4Pane konfigurieren." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Eine 4Pane-Verknüpfung auf dem Desktop platzieren" #: Configure.cpp:158 msgid "&Next >" msgstr "&Weiter >" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Nach der Konfigurationsdatei zum Kopieren suchen" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Sie haben keine Berechtigung, um diese Datei zu kopieren.\nMöchten Sie es erneut versuchen?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "Diese Datei scheint keine gültige 4Pane-Konfigurationsdatei zu sein.\nSind sie wirklich sicher, dass Sie diese Datei verwenden möchten?" #: Configure.cpp:198 msgid "Fake config file!" msgstr "Falsche/ungültige Konfigurationsdatei!" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Die 4Pane-Programmdateien können nicht gefunden werden. Irgendetwas scheint mit Ihrer Installation nicht in Ordnung zu sein. :(\nWollen Sie versuchen, die Programmdateien manuell zu suchen?" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "Eek! Programmdateien nicht gefunden." #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Nach ..../4Pane/rc/ suchen" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Die 4Pane-Bitmaps können nicht gefunden werden. Irgendetwas scheint mit Ihrer Installation nicht in Ordnung zu sein. :(\nWollen Sie versuchen, die Bitmaps manuell zu suchen?" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "Eek! Bitmaps nicht gefunden." #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Nach ..../4Pane/bitmaps/ suchen" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Die 4Pane-Hilfedateien können nicht gefunden werden. Irgendetwas scheint mit Ihrer Installation nicht in Ordnung zu sein. :(\nWollen Sie versuchen, die Hilfedateien manuell zu suchen?" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "Eek! Hilfedateien nicht gefunden." #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Nach ..../4Pane/doc/ suchen" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "P&rogramm ausführen" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr ".deb(s) als root installieren:" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "Genanntes .deb als root entfernen:" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "Von einem bestimmten .deb zur Verfügung gestellte Dateien auflisten." #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "Installierte .debs mit passendem Namen auflisten:" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "Anzeigen, ob das genannte .deb installiert ist:" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "Installationspaket der ausgewählten Datei anzeigen" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "rpm(s) als root installieren:" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "Ein rpm als root entfernen:" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "Ausgewähltes rpm abfragen" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "Vom ausgewählten rpm zur Verfügung gestellte Dateien auflisten." #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "Benanntes rpm abfragen" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "Vom genannten rpm zur Verfügung gestellte Dateien auflisten." #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "Ein Verzeichnis als root erstellen:" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Zum Benutzerverzeichnis wechseln" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "Zum Dokumentenverzeichnis wechseln" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Wenn Sie diese Meldung sehen (und Sie sollten es nicht!), ist es, weil die Konfigurationsdatei nicht gespeichert werden konnte.\nDie wahrscheinlichsten Gründe hierfür wären falsche Berechtigungen oder eine schreibgeschützte Partition." #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Tastenkombinationen" #: Configure.cpp:2041 msgid "Tools" msgstr "Werkzeuge" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Werkzeug hinzufügen" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Werkzeug bearbeiten" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Werkzeug löschen" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Geräte" #: Configure.cpp:2052 msgid "Automount" msgstr "Automatisches Einhängen" #: Configure.cpp:2054 msgid "Mounting" msgstr "Einhängen" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "Wechselbar" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fest" #: Configure.cpp:2062 msgid "Advanced" msgstr "Erweitert" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Erweitert fest" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Erweitert wechselbar" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "Erweiterter LVM" #: Configure.cpp:2072 msgid "The Display" msgstr "Die Anzeige" #: Configure.cpp:2074 msgid "Trees" msgstr "Bäume" #: Configure.cpp:2076 msgid "Tree font" msgstr "Baumschriftart" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Sonstiges" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminals" #: Configure.cpp:2083 msgid "Real" msgstr "Real" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulator" #: Configure.cpp:2088 msgid "The Network" msgstr "Das Netzwerk" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Sonstiges" #: Configure.cpp:2093 msgid "Numbers" msgstr "Anzahl" #: Configure.cpp:2095 msgid "Times" msgstr "Zeitdauer" #: Configure.cpp:2097 msgid "Superuser" msgstr "Superbenutzer" #: Configure.cpp:2099 msgid "Other" msgstr "Sonstige" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr " Das Kapern der F10-Taste von gtk2 unterbinden." #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "Wenn dies nicht angekreuzt ist, kapert gtk2 die F10-Taste, so dass Sie sie nicht in einer Tastenkombination verwenden können (es ist die Standardeinstellung für \"Neue Datei oder neues Verzeichnis\")." #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "Entschuldigung, hier ist kein Platz für ein weiteres Untermenü\nIch schlage vor, Sie versuchen es an einer anderen Stelle zu platzieren." #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Geben Sie den Namen des neuen Untermenüs ein, das hinzugefügt werden soll." #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "Entschuldigung, ein Menü mit diesem Namen ist bereits vorhanden\n Erneut versuchen?" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "Entschuldigung, Sie sind nicht berechtigt, das Root-Menü zu löschen." #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "Menü \"%s\" mit allen Inhalten löschen?" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "Es kann kein ausführbarer Befehl \"%s\" gefunden werden.\nTrotzdem fortfahren?" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Es kann kein ausführbarer Befehl \"%s\" in ihrem Pfad gefunden werden.\nTrotzdem fortfahren?" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "Klicken Sie nach der Beendigung" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "Diesen Befehl bearbeiten" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "Befehl \"%s\" löschen?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Datei auswählen" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Benutzerdefinierte Werkzeuge" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "Geräte automatisch einhängen" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "Geräte einhängen" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "USB-Geräte" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "Wechsellaufwerke" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "Feste Geräte" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "Erweiterte Geräte" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "Erweiterte Geräte Fest" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "Erweiterte Geräte Wechselbar" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "Erweiterte Geräte LVM" #: Configure.cpp:2739 msgid "Display" msgstr "Anzeigen" #: Configure.cpp:2739 msgid "Display Trees" msgstr "Anzeigen Bäume" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "Anzeigen Baum Schriftart" #: Configure.cpp:2739 msgid "Display Misc" msgstr "Anzeigen Sonstiges" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "Reale Terminals" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Terminalemulator" #: Configure.cpp:2740 msgid "Networks" msgstr "Netzwerke" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "Sonstiges Rückgängig" #: Configure.cpp:2741 msgid "Misc Times" msgstr "Sonstiges Zeitdauer" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "Sonstiges Superbenutzer" #: Configure.cpp:2741 msgid "Misc Other" msgstr "Sonstiges Andere" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "Es gibt ungespeicherte Änderungen auf der \"%s\" Seite.\n Wirklich schließen?" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "Ausgewählter Baum Schriftart" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "Standardbaum Schriftart" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Ignoriert)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Dieses Gerät löschen?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "Ausgewählte Terminalemulator-Schriftart" #: Configure.cpp:3829 msgid "Default Font" msgstr "Standardschriftart" #: Configure.cpp:4036 msgid "Delete " msgstr "Löschen" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Sind Sie SICHER?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Dies scheint keine gültige IP-Adresse zu sein." #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Dieser Server ist bereits auf der Liste." #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Bitte geben Sie den anzuwendenden Befehl ein, einschließlich aller erforderlichen Optionen." #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "Befehl für ein anderes su-Benutzeroberflächenprogramm" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "Jedes Meta-Tastenmuster muss einzigartig sein. Erneut versuchen?" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "Sie haben keine Datenart zum Exportieren ausgewählt! Abbruch." #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "Diese Werkzeugleistenschaltfläche löschen?" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "Nach dem Dateipfad zum Hinzufügen suchen" #: Devices.cpp:221 msgid "Hard drive" msgstr "Festplatte" #: Devices.cpp:221 msgid "Floppy disc" msgstr "Diskette" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "CD- oder DVD-ROM" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "CD- oder DVD-Brenner" #: Devices.cpp:221 msgid "USB Pen" msgstr "USB-Stick" #: Devices.cpp:221 msgid "USB memory card" msgstr "USB-Speicherkarte" #: Devices.cpp:221 msgid "USB card-reader" msgstr "USB-Kartenlesegerät" #: Devices.cpp:221 msgid "USB hard drive" msgstr "USB-Festplatte" #: Devices.cpp:221 msgid "Unknown device" msgstr "Unbekanntes Gerät" #: Devices.cpp:301 msgid " menu" msgstr "Menü" #: Devices.cpp:305 msgid "&Display " msgstr "&Anzeigen " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Nicht anzeigen " #: Devices.cpp:308 msgid "&Mount " msgstr "&Einhängen" #: Devices.cpp:308 msgid "&UnMount " msgstr "A&ushängen" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "DVD-&RAM einhängen" #: Devices.cpp:347 msgid "Display " msgstr "Anzeigen" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "DVD-&RAM aushängen" #: Devices.cpp:354 msgid "&Eject" msgstr "Aus&werfen" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "Welche Einbindung möchten Sie entfernen?" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "DVD-RAM-Disc aushängen" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "Zum Aufrufen hier klicken oder ziehen" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "Sie haben keine Berechtigung, um diese Datei zu lesen." #: Devices.cpp:581 msgid "Failed" msgstr "Fehlgeschlagen" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "Datei(en) konnte(n) aufgrund fehlender Leseberechtigung nicht geöffnet werden" #: Devices.cpp:592 msgid "Warning" msgstr "Warnung" #: Devices.cpp:843 msgid "Floppy" msgstr "Diskette" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Hoppla, das Laufwerk ist scheinbar nicht verfügbar.\n\nEinen schönen Tag noch!" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Hoppla, die Partition ist scheinbar nicht verfügbar.\n\nEinen schönen Tag noch!" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Entschuldigung, Sie müssen root sein um Nicht-fstab-Partitionen auszuhängen." #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "Entschuldigung, das Aushängen ist fehlgeschlagen." #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "\n(Sie müssen su eingeben für root)" #: Devices.cpp:1435 msgid "The partition " msgstr "Die Partition " #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "hat keinen fstab-Eintrag\nAn welchem Punkt soll sie eingehängt werden?" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "Nicht-fstab-Partition einhängen" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "Der Einhängepunkt für dieses Gerät ist nicht vorhanden. Erstellen?" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "Entschuldigung, Sie müssen root sein um Nicht-fstab-Partitionen einzuhängen." #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen.\nEs gab ein Problem mit /etc/mtab" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen\nVersuchen Sie, eine funktionierende Disc einzulegen." #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "Hoppla, das erfolgreiche Einhängen ist aufgrund eines Fehlers fehlgeschlagen." #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen\nBesitzen sie die notwendigen Berechtigungen um dies zu tun?" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "Datei mit der Liste von Partitionen kann nicht gefunden werden," #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "\n\nSie müssen die Konfiguration verwenden, um die Sache in Ordnung zu bringen." #: Devices.cpp:1662 msgid "File " msgstr "Datei" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "Datei mit der Liste von SCSI-Einträgen kann nicht gefunden werden," #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "Es muss ein gültiger Befehl eingegeben werden. Erneut versuchen?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "Keine Anwendung eingegeben" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "Der Dateipfad scheint aktuell nicht vorhanden zu sein.\nTrotzdem verwenden?" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "Anwendung nicht gefunden" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "Diesen Editor löschen?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Abbrechen" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "Bitte wählen sie den richtigen Symboltyp." #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "Sie haben keine Leseberechtigung für diese Datei." #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "Es scheint ein Problem zu geben: das Zielverzeichnis ist nicht vorhanden! Entschuldigung." #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "Es scheint ein Problem zu geben: das Eingangsverzeichnis ist nicht vorhanden! Entschuldigung." #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "Im Archiv gibt es bereits ein Verzeichnis mit diesem Namen." #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "\nEs wird vorgeschlagen, dass Sie entweder es oder das Eingangsverzeichnis umbenennen." #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "Aus irgendeinem Grund ist der Versuch, ein Verzeichnis zum temporären Speichern der überschriebenen Datei zu erstellen, fehlgeschlagen. Entschuldigung!" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "Beide Dateien haben den gleichen Änderungszeitpunkt." #: Dup.cpp:429 msgid "The current file was modified on " msgstr "Die aktuelle Datei wurde verändert am" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "Die Eingangsdatei wurde verändert am" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "Es sieht so aus, als ob Sie dieses Verzeichnis mit sich selbst überschreiben wollen." #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "Entschuldigung, dieser Name ist bereits vergeben. Bitte versuchen Sie es erneut." #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "Nein, die Idee ist, dass Sie den Namen ÄNDERN." #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "Entschuldigung, die Datei konnte nicht dupliziert werden. Vielleicht ein Berechtigungsproblem?" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "Entschuldigung, für das Eingangsverzeichnis konnte kein Platz geschaffen werden. Vielleicht ein Berechtigungsproblem?" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "Entschuldigung, ein unplausibler Dateisystemfehler ist aufgetreten :-(" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "Löschung des symbolischen Verknüpfung ist fehlgeschlagen!?!" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "Mehrfaches Duplizieren" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "Duplizierung bestätigen" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "RegEx-Hilfe" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Erfolg\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "Prozess fehlgeschlagen\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "Prozess erfolgreich abgebrochen\n" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "SIGTERM fehlgeschlagen\nSIGKILL wird versucht.\n" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "Prozess erfolgreich gekillt\n" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "Entschuldigung, Abbrechen ist fehlgeschlagen\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "Ausführung von \"%s\" ist fehlgeschlagen." #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Schließen" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Reguläre Datei" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Symbolische Verknüpfung" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Kaputte symbolische Verknüpfung" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Zeichenorientiertes Gerät" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Blockorientiertes Gerät" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Verzeichnis" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Socket" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "Unbekannter Typ?!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Anwendungen" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "Entschuldigung, Sie sind nicht berechtigt, dass Stammverzeichnis zu löschen." #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "Seufz!" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "Ordner %s löschen?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "Entschuldigung, dieser Ordner wurde nicht gefunden!?" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "Ein ausführbares Programm \"%s\" kann nicht gefunden werden.\nTrotzdem fortsetzen?" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "In Ihrem PFAD kann kein ausführbares Programm \"%s\" gefunden werden.\nTrotzdem fortsetzen?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Entschuldigung, es gibt bereits eine Anwendung namens %s\n Erneut versuchen?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Bitte bestätigen" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "Sie haben keine Erweiterung eingegeben!" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "Für welche Erweiterung(en) soll diese Anwendung die Standardeinstellung sein?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "Für welche Erweiterungen soll %s die Standardeinstellung sein?" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "%s\nmit %s\nals Standardbefehl für Dateien des Typs %s ersetzen?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "Entschuldigung, die Anwendung wurde nicht gefunden!?" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "%s löschen?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Anwendungsdaten bearbeiten" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Entschuldigung, Sie haben nicht die Berechtigung, diese Datei auszuführen." #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "Entschuldigung, Sie haben nicht die Berechtigung, diese Datei auszuführen.\nWollen Sie versuchen, sie zu lesen?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "%s nicht weiter als Standardbefehl für Dateien vom Typ %s verwenden?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "Ein temporäres Verzeichnis konnte nicht erstellt werden." #: Misc.cpp:481 msgid "Show Hidden" msgstr "Versteckte Elemente anzeigen" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "ausschneiden" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "%zu Elemente" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "Sie haben keinen Einhängepunkt angegeben.\nErneut versuchen?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "Der Einhängepunkt für diese Partition ist nicht vorhanden. Soll er erstellt werden?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "Hoppla, das Einhängen der Partition ist fehlgeschlagen." #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "Die Fehlermeldung lautete:" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Erfolgreich eingehängt auf" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Verzeichnis erstellen nicht möglich" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Hoppla, das Erstellen des Verzeichnisses ist fehlgeschlagen." #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "Hoppla, Sie haben keine ausreichende Berechtigung um das Verzeichnis zu erstellen." #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "Hoppla, das Anlegen des Verzeichnisses ist fehlgeschlagen." #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "root auszuhängen ist eine WIRKLICH schlechte Idee!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "Hoppla, das Aushängen der Partition ist fehlgeschlagen." #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Aushängen fehlgeschlagen" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "erfolgreich ausgehängt" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "Hoppla, das erfolgreiche Aushängen ist aufgrund eines Fehlers fehlgeschlagen." #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Hoppla, das Aushängen ist fehlgeschlagen." #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "Der gewünschte Einhängepunkt ist nicht vorhanden. Erstellen?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen\nSind Sie sicher, dass die Datei ein gültiges Abbild ist?" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "Erfolgreiches Einhängen ist wegen eines Fehlers fehlgeschlagen." #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "Erfolgreiches Einhängen ist fehlgeschlagen." #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "Dieser Export ist bereits eingebunden bei " #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "Der Einhängepunkt für diesen Export ist nicht vorhanden. Soll er erstellt werden?" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "Der Einhängepunkt für diese Freigabe ist nicht vorhanden. Soll er erstellt werden?" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "Entschuldigung, Sie müssen root sein, um Nicht-fstab-Exporte einhängen zu können." #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen\nWird NFS ausgeführt?" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "Der ausgewählte Einhängepunkt ist nicht vorhanden. Soll er erstellt werden?" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "Der ausgewählte Einhängepunkt ist kein Verzeichnis." #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "Auf den ausgewählten Einhängepunkt kann nicht zugegriffen werden." #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "Der ausgewählte Einhängepunkt ist nicht leer. Soll das Einhängen dorthin trotzdem versucht werden?" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "Einhängen über SSH fehlgeschlagen mit folgender Fehlermeldung:" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "Einhängen über SSH aufgrund eines Fehlers fehlgeschlagen. " #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "Einhängen über SSH auf %s ist fehlgeschlagen." #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "Diese Freigabe ist bereits eingehängt auf" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "Diese Freigabe ist bereits bei %s eingehängt\nMöchten Sie sie ebenfalls bei %s einhängen?" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "Entschuldigung, Sie müssen root sein, um Nicht-fstab-Freigaben einhängen zu können." #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "Hoppla, das erfolgreiche Einhängen ist fehlgeschlagen. Die Fehlermeldung lautet:" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "Keine Einbindungen von diesem Typ gefunden." #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "Netzwerkeinbindung aushängen" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "Freigabe oder Export zum Aushängen" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Einhängepunkt" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "Erfolgreich ausgehängt" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "Aushängen fehlgeschlagen mit der Meldung:" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "Wählen Sie ein Verzeichnis aus, das als Einhängepunkt verwendet wird." #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "Abbild zum Einhängen auswählen" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Das Dienstprogramm \"smbclient\" kann nicht gefunden werden. Dies bedeutet wahrscheinlich, dass Samba nicht ordnungsgemäß installiert ist.\nAlternativ kann es ein PFAD- oder Berechtigungsproblem sein." #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Das Dienstprogramm \"nmblookup\" kann nicht zum Laufen gebracht werden. Dies bedeutet wahrscheinlich, dass Samba nicht ordnungsgemäß installiert ist.\nAlternativ kann es ein PFAD- oder Berechtigungsproblem sein." #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Das Dienstprogramm \"nmblookup\" kann nicht gefunden werden. Dies bedeutet wahrscheinlich, dass Samba nicht ordnungsgemäß installiert ist.\nAlternativ kann es ein PFAD- oder Berechtigungsproblem sein." #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "Suche nach Samba-Freigaben..." #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "Es konnte kein aktiver Samba-Server gefunden werden\nWenn Sie von einem wissen, bitte geben Sie seine Adresse ein, z.B. 192.168.0.3" #: Mounts.cpp:1315 msgid "No server found" msgstr "Kein Server gefunden" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "Das showmount-Dienstprogramm kann nicht gefunden werden. Bitte verwenden Sie Konfigurieren > Netzwerk, um seinen Dateipfad einzugeben." #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Das Dienstprogramm \"showmount\" kann nicht gefunden werden. Dies bedeutet wahrscheinlich, dass NFS nicht ordnungsgemäß installiert ist.\nAlternativ kann es ein PFAD- oder Berechtigungsproblem sein." #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "Von NFS-Servern in Ihrem Netzwerk ist mir nichts bekannt.\nMöchten Sie Fortsetzen und selbst welche hineinschreiben?" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "Keine aktuellen Einbindungen gefunden" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "Sie können nicht innerhalb eines Verzeichnisses verknüpfen, sofern Sie nicht den Verknüpfungsnamen ändern." #: MyDirs.cpp:118 msgid "Not possible" msgstr "Nicht möglich" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "Zurück zum vorherigen Verzeichnis" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "Verzeichnis erneut eingeben" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "Zuvor aufgesuchtes Verzeichnis auswählen" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "Vollständigen Baum anzeigen" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "Nach Oben zum übergeordneten Verzeichnis" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Benutzer" #: MyDirs.cpp:499 msgid "Documents" msgstr "Dokumente" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "Hmm. Dieses Verzeichnis ist scheinbar nicht mehr vorhanden!" #: MyDirs.cpp:664 msgid " D H " msgstr " D H " #: MyDirs.cpp:664 msgid " D " msgstr " D " #: MyDirs.cpp:672 msgid "Dir: " msgstr "Verz: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Dateien, Gesamtgröße" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Unterverzeichnisse" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "Bitte versuchen Sie es später noch einmal" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "Ich bin gerade beschäftigt" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "In einem Archiv kann nicht erstellt werden.\nAllerdings könnten Sie außerhalb ein neues Element erstellen und dieses anschließend in das Archiv verschieben." #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "Sie haben keine Berechtigung, um in diesem Verzeichnis zu erstellen." #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "Versteckte Verzeichnisse und Dateien aus&blenden\tStrg+H" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "Versteckte Verzeichnisse und Dateien &anzeigen\tStrg+H" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "verschoben" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "Sie haben nicht die richtige Berechtigung, um diese Verschiebung durchzuführen.\nMöchten Sie stattdessen versuchen, es zu kopieren?" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "Sie haben nicht die richtige Berechtigung, um diese Verschiebung durchzuführen." #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "Sie können keine Verknüpfungen in einem Archiv erstellen.\nAllerdings können Sie außerhalb ein neue Verknüpfung erstellen und diese anschließend in das Archiv verschieben." #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "Sie haben keine Berechtigung, um in diesem Verzeichnis Verknüpfungen zu erstellen." #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "Neue %s-Verknüpfung erstellen von:" #: MyDirs.cpp:1033 msgid "Hard" msgstr "Hart" #: MyDirs.cpp:1033 msgid "Soft" msgstr "Symbolisch" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "Bitte bestimmen Sie eine Erweiterung zum Hinzufügen." #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "Bitte bestimmen Sie einen Namen zum Aufrufen der Verknüpfung." #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "Bitte bestimmen Sie einen anderen Namen für die Verknüpfung." #: MyDirs.cpp:1112 msgid "linked" msgstr "verknüpft" #: MyDirs.cpp:1122 msgid "trashed" msgstr "in den Papierkorb verschoben" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "gelöscht" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "Sie haben keine Berechtigung, um aus diesem Verzeichnis zu löschen." #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "Mindestens eines der Elemente, die gelöscht werden sollen, scheint nicht vorhanden zu sein." #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "Das Element, das gelöscht werden soll, scheint nicht vorhanden zu sein." #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "Element nicht gefunden" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "Sie haben keine Berechtigung, um diese Elemente in einen \"Korb\" zu verschieben." #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "\nAllerdings können Sie diese \"Dauerhaft löschen\"." #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "Sie haben keine Berechtigung, um %s in einen \"Korb\" zu verschieben." #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "\nAllerdings können Sie es \"Dauerhaft löschen\"." #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "Sie haben keine Berechtigung, um %u von diesen %u Elementen in den \"Korb\" zu verschieben." #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "\n\nMöchten Sie die anderen Element(e) löschen?" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "In den Papierkorb werfen:" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Löschen: " #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "%zu Elemente, von: " #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n Nach:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "Aus irgendeinem Grund ist der Versuch, ein Verzeichnis zum entgegennehmen der Löschung zu erstellen, fehlgeschlagen. Entschuldigung!" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "Entschuldigung, Löschung fehlgeschlagen." #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "Sie haben keine Berechtigung, um aus diesem Verzeichnis zu löschen.\nSie könnten versuchen, es Stück für Stück zu löschen." #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "Sie haben keine Berechtigung, um aus einem Unterverzeichnis dieses Verzeichnisses zu löschen.\nSie könnten versuchen, es Stück für Stück zu löschen." #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "Der Dateipfad ist ungültig." #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "Für" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "der Elemente. Sie haben keine Berechtigung, um aus diesem Verzeichnis zu löschen." #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "der Elemente. Sie haben keine Berechtigung, um aus einem Unterverzeichnis dieses Verzeichnisses zu löschen." #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr " der Elemente, der Dateipfad war ungültig." #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr " \nSie könnten versuchen, es Stück für Stück zu löschen." #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "Das Element konnte nicht gelöscht werden." #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "Ich fürchte" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "Elemente konnten nicht gelöscht werden." #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "Ich fürchte nur" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "der" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "Elemente konnten gelöscht werden." #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "Ausschneiden fehlgeschlagen" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "Löschen fehlgeschlagen" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "Dauerhaft löschen (kann nicht rückgängig gemacht werden!):" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "Sind Sie ABSOLUT sicher?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "unwiederbringlich gelöscht" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "Löschen fehlgeschlagen!?!" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "? Noch nie davon gehört!" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "Verzeichnicht löschen fehlgeschlagen!?!" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "Die Datei scheint nicht vorhanden zu sein!?!" #: MyDirs.cpp:1757 msgid "copied" msgstr "kopiert" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "Verzeichnisgerüst eingefügt" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "eingefügt" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "S&ymbolische Verknüpfung erstellen" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "Harte Ver&knüpfung erstellen" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "Aus Archiv extrahieren" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "Aus Archiv &löschen" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "Verzeichnis im Archiv u&mbenennen" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "Verzeichnis im Archiv duplizieren" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "Datei im Archiv u&mbenennen" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "Datei im Archiv duplizieren" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "Verzeichnis &löschen" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "Verzeichnis in den &Papierkorb verschieben" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "Symbolische Verknüpfung &löschen" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "Symbolische Verknüpfung in den &Papierkorb verschieben" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "Datei &löschen" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "Datei in &Papierkorb verschieben" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Sonstige . . ." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "Mit root-&Rechten öffnen mit . . . . " #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "Mit root-&Rechten öffnen" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "Öffnen &mit . . . ." #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "Verzeichnis u&mbenennen" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "Verzeichnis &duplizieren" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "Datei u&mbenennen" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "Datei &duplizieren" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "Neues Archiv erstellen" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "Zu bestehendem Archiv hinzufügen" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "Integrität von Archiv oder komprimierter Datei überprüfen" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Dateien komprimieren" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "Versteckte Verzeichnisse und Dateien &ausblenden" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "Versteckte Verzeichnisse und Dateien &anzeigen" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "&Dateinamen endend in Zahlen normal sortieren" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "&Dateinamen endend in Zahlen dezimal sortieren" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "Erweiterung beginnt beim Dateinamen..." #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "Erweiterungsbestimmung..." #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "Anzuzeigende Spalten" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "Fensterteilung aufheben" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "Im gegenüberliegenden Fenster w&iederholen" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "Fenster vertauschen" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "In einem Archiv kann nicht erstellt werden.\nAllerdings können Sie außerhalb ein neues Element erstellen und dieses anschließend in das Archiv verschieben." #: MyFiles.cpp:588 msgid "New directory created" msgstr "Neues Verzeichnis erstellt" #: MyFiles.cpp:588 msgid "New file created" msgstr "Neue Datei erstellt" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "Sie möchten nicht wirklich root duplizieren, oder doch?" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "Sie möchten nicht wirklich root umbenennen, oder doch?" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "Sie haben keine Berechtigung, um in diesem Verzeichnis zu duplizieren." #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "Sie haben keine Berechtigung, um in diesem Verzeichnis umzubenennen." #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Duplizieren" #: MyFiles.cpp:665 msgid "Rename " msgstr "Umbenennen" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "Nein, die Idee ist, dass Sie einen NEUEN Namen eingeben." #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "dupliziert" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "umbenannt" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "Entschuldung, das hat nicht funktioniert. Erneut versuchen?" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "Entschuldigung, dieser Name ist unzulässig\n Erneut versuchen?" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "Entschuldigung, eines davon ist bereits vorhanden\n Erneut versuchen?" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "Entschuldigung, aus irgendeinem Grund ist dieser Vorgang fehlgeschlagen\nErneut versuchen?" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "Entschuldigung, dieser Name ist bereits vergeben.\n Erneut versuchen?" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Öffnen mit" #: MyFiles.cpp:1043 msgid " D F" msgstr " D F" #: MyFiles.cpp:1044 msgid " R" msgstr " R" #: MyFiles.cpp:1045 msgid " H " msgstr " H " #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "von Dateien und Unterverzeichnissen" #: MyFiles.cpp:1077 msgid " of files" msgstr "von Dateien" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "Das neue Ziel für die Verknüpfung scheint nicht vorhanden zu sein.\nErneut versuchen?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "Aus irgendeinem Grund scheint die Änderung des Ziels der symbolischen Verknüpfung fehlgeschlagen zu sein. Entschuldigung!" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr " Änderungen erfolgreich durchgeführt, " #: MyFiles.cpp:1693 msgid " failures" msgstr "Fehlschläge" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "Wählen Sie eine andere Datei oder ein anderes Verzeichnis als neues Ziel aus." #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Warnung!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "Entschuldigung, das Konfigurationsdateiverzeichnis konnte nicht erstellt werden; Abbruch." #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "Entschuldigung, Sie haben nicht die Berechtigung, um in das Verzeichnis zu schreiben, welches Ihre ausgewählte Konfigurationsdatei enthält; Abbruch." #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "Das Hilfesystem kann nicht initialisiert werden; Abbruch." #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Mehrere Aktionen gleichzeitig rückgängig machen" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Mehrere Aktionen gleichzeitig wiederherstellen" #: MyFrame.cpp:743 msgid "Cut" msgstr "Ausschneiden" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Klicken Sie, um die Auswahl auszuschneiden" #: MyFrame.cpp:744 msgid "Copy" msgstr "Kopieren" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Klicken Sie, um die Auswahl zu kopieren" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Klicken Sie, um die Auswahl einzufügen" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Rückgängig machen" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Aktion rückgängig machen" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Wiederherstellen" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Gerade rückgängig gemachte Aktion wiederherstellen" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Neuer Tab" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Neuen Tab öffnen" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Tab löschen" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Löscht den aktuell ausgewählten Tab" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "Kurzinfovorschau" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "Zeigt Vorschauen von Bildern und Textdateien in einer \"Kurzinfo\" an." #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Über" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Fehler" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Erfolg" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Computer" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Abschnitte" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "Unzulässiger Verzeichnisname." #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "Dateiname bereits vorhanden." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "Vorgang nicht erlaubt." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "Welche Vorlage soll gelöscht werden?" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Vorlage löschen" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "Vorlage speichern abgebrochen" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Abgebrochen" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "Wie soll diese Vorlage benannt werden?" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "Vorlagenbezeichnung auswählen" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "Speichern der Vorlage abgebrochen" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "Entschuldigung, die maximale Anzahl an Tabs ist bereits geöffnet." #: MyNotebook.cpp:346 msgid " again" msgstr "erneut" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "Tab &hinzufügen" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "Wie soll dieser Tab benannt werden?" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "Tab-Titel ändern" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "Ungültiger Spaltenindex" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "Ungültige Spalte" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr " *** Kaputte symbolische Verknüpfung ***" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "Dekomprimierung eines LZMA-Streams ist fehlgeschlagen." #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "xz-Komprimierungsfehler" #: Redo.cpp:258 msgid " Redo: " msgstr "Wiederherstellen:" #: Redo.cpp:258 msgid " Undo: " msgstr "Rückgängig machen:" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr " (%zu Elemente) " #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "---- MEHR ----" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "-- VORHERIGE --" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "Rückgängig gemacht" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "Wiederhergestellt" #: Redo.cpp:590 msgid " actions " msgstr "Aktionen" #: Redo.cpp:590 msgid " action " msgstr "Aktion" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "Aktion" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "rückgängig gemacht" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "wiederhergestellt" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "Das Löschungspeicherverzeichnis konnte nicht erstellt werden" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "Entschuldigung, Sie können Ihr ausgewähltes, in den Papierkorb verschobenes Unterverzeichnis nicht erstellen. Vielleicht ein Berechtigungsproblem? Es wird vorgeschlagen, dass Sie die Konfiguration verwenden, um einen anderen Speicherort auszuwählen." #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Entschuldigung, Sie können Ihr ausgewähltes, gelöschtes Unterverzeichnis nicht erstellen. Vielleicht ein Berechtigungsproblem?\nEs wird vorgeschlagen, dass Sie die Konfiguration verwenden, um einen anderen Speicherort auszuwählen." #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Entschuldigung, Sie können Ihr ausgewähltes Unterverzeichnis für temporäre Dateien nicht erstellen. Vielleicht ein Berechtigungsproblem?\nEs wird vorgeschlagen, dass Sie die Konfiguration verwenden, um einen anderen Speicherort auszuwählen." #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "Beim Löschen des 4Pane-Papierkorbs werden alle Dateien dauerhaft gelöscht, die dort gespeichert wurden!\n\nFortfahren?" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "Papierkorb gelöscht" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "Das Löschen von 4Panes Gelöscht-Korb wird automatisch ausgeführt, wenn 4Pane geschlossen ist\nEs vorzeitig auszuführen, wird alle dort gespeicherten Dateien löschen. Sämtliche Daten zum Rückgängig machen-Wiederherstellen gehen verloren!\n\nFortsetzen?" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "Gespeicherte Dateien dauerhaft gelöscht" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "Es gibt bereits eine Datei mit diesem Namen im Zielpfad. Entschuldigung." #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "Ihnen fehlt die Berechtigung, um in das Zielverzeichnis zu schreiben. Entschuldigung." #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "Sie können keine harte Verknüpfung zu einem Verzeichnis erstellen." #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "Sie können keine harte Verknüpfung zu einem anderen Gerät oder einer anderen Partition erstellen." #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "\nMöchten Sie stattdessen eine symbolische Verknüpfung erstellen?" #: Tools.cpp:60 msgid "No can do" msgstr "Geht nicht" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "Entschuldigung, keine Übereinstimmung gefunden." #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr " Einen schönen Tag noch!\n" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "\"locate\"-Dialog ausführen" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "\"find\"-Dialog ausführen" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "Dialog \"grep\" ausführen" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Anzeigen" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Ausblenden" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "Sie haben dem Befehl \"find\" die Auswahlmöglichkeiten dieser Seite nicht hinzugefügt. Wenn sich die Seite ändert, werden sie ignoriert.\nDie Auswahlmöglichkeiten ignorieren?" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "Sie haben dem Befehl \"grep\" die Auswahlmöglichkeiten dieser Seite nicht hinzugefügt. Wenn sich die Seite ändert, werden sie ignoriert.\nDie Auswahlmöglichkeiten ignorieren?" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "Zum ausgewählten Dateipfad wechseln" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Ausgewählte Datei öffnen" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "Entschuldigung, auf diese Weise ein Superbenutzer zu werden ist hier nicht möglich.\n" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "Sie müssen jeden Befehl mit \"sudo\" beginnen." #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "Stattdessen können Sie ausführen: su -c \"\"" #: Tools.cpp:2880 msgid " items " msgstr "Elemente" #: Tools.cpp:2880 msgid " item " msgstr "Element" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Wiederholen: " #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "Entschuldigung, hier ist kein Platz für einen weiteren Befehl.\nIch schlage vor, Sie versuchen ihn in einem anderen Untermenü zu platzieren." #: Tools.cpp:3077 msgid "Command added" msgstr "Befehl hinzugefügt" #: Tools.cpp:3267 msgid "first" msgstr "erste" #: Tools.cpp:3267 msgid "other" msgstr "sonstige" #: Tools.cpp:3267 msgid "next" msgstr "nächste" #: Tools.cpp:3267 msgid "last" msgstr "letzte" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "Deformierter benutzerdefinierter Befehl: Die Verwendung des Modifikators \"%c\" mit \"b\" macht keinen Sinn. Abbruch." #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "Deformierter benutzerdefinierter Befehl: Sie können nur einen Modifikator pro Parameter verwenden. Abbruch." #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "Deformierter benutzerdefinierter Befehl: Dem Modifikator \"%c\" muss ein \"s\", \"f\", \"d\" oder \"a\" folgen. Abbruch." #: Tools.cpp:3337 msgid "Please type in the" msgstr "Bitte geben Sie den" #: Tools.cpp:3342 msgid "parameter" msgstr "Parameter" #: Tools.cpp:3355 msgid "ran successfully" msgstr "erfolgreich ausgeführt" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "Benutzerdefiniertes Werkzeug" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "kam mit Beendigungscode zurück" #: Devices.h:432 msgid "Browse for new Icons" msgstr "Nach neuen Symbolen suchen" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "Datei- und Verzeichnisauswahldialog" #: Misc.h:265 msgid "completed" msgstr "abgeschlossen" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Löschen" #: Redo.h:150 msgid "Paste dirs" msgstr "Verz. einfügen" #: Redo.h:190 msgid "Change Link Target" msgstr "Verknüpfungsziel ändern" #: Redo.h:207 msgid "Change Attributes" msgstr "Attribute ändern" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Neues Verzeichnis" #: Redo.h:226 msgid "New File" msgstr "Neue Datei" #: Redo.h:242 msgid "Duplicate Directory" msgstr "Verzeichnis duplizieren" #: Redo.h:242 msgid "Duplicate File" msgstr "Datei duplizieren" #: Redo.h:261 msgid "Rename Directory" msgstr "Verzeichnis umbenennen" #: Redo.h:261 msgid "Rename File" msgstr "Datei umbenennen" #: Redo.h:281 msgid "Duplicate" msgstr "Duplizieren" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Umbenennen" #: Redo.h:301 msgid "Extract" msgstr "Extrahieren" #: Redo.h:317 msgid " dirs" msgstr "Verz" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "Kurzinfoverzögerungszeit eingeben" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "Gewünschte Kurzinfoverzögerungszeit festlegen, in Sekunden." #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "Kurzinfos ausschalten" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "Klicken Sie nach der Beendigung." #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "&Abbrechen" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "Zum Abbrechen klicken" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "Neues Gerät erkannt" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "Ein bisher unbekanntes Laufwerk wurde angeschlossen." #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "Soll es konfiguriert werden?" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "&Ja" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "N&icht jetzt" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "Nicht jetzt konfigurieren, aber erneut nachfragen wenn es wieder angeschlossen wird." #: configuredialogs.xrc:205 msgid "&Never" msgstr "&Nie" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "\"Ich möchte nicht wegen diesem Gerät gestört werden\". Wenn Sie Ihre Meinung ändern, kann es unter Konfigurieren konfiguriert werden." #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "Neues Gerät konfigurieren" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "Geräteknoten" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "Einhängepunkt für das Gerät" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "Wie soll es genannt werden?" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Gerätetyp" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "Gerät ist schreibgeschützt" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "Nach dem Gerät nicht nachfragen und auch nicht laden." #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "Dieses Gerät ignorieren" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "&ABBRECHEN" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "Herstellername" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "Dies ist der vom Gerät gelieferte Name (oder, falls nicht, die Kennung). Wenn Sie möchten, können Sie ihn in etwas Einprägsameres ändern." #: configuredialogs.xrc:577 msgid "Model name" msgstr "Modellname" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "Einhängepunkt für dieses Gerät" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "Was ist der Name des Verzeichnisses, auf den dieses Gerät automatisch eingehängt wird? Es wird wahrscheinlich so aussehen wie /mnt/usb-[MeinPseudonym]-FlashFestplatte:0:0:0p1" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "Neuen Gerätetyp konfigurieren" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "Bezeichnung für dieses Gerät" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "Wenn dies ein ungewöhnlicher Gerätetyp ist, welcher nicht auf der Standardliste aufgeführt ist, geben Sie den Namen ein, der es am besten beschreibt." #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "Was ist die am besten passende Beschreibung?" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "Wählen Sie die nächstliegende Entsprechung zum neuen Typ aus. Diese legt fest, welches Symbol auf der Werkzeugleiste erscheint." #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "4Pane konfigurieren" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "&Beendet" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "Klicken Sie nach der Beendigung der Konfiguration." #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "Benutzerdefinierte Befehle sind externe Programme, die Sie\nvon 4Pane aus starten können. Es können Dienstprogramme\nwie \"df\" oder irgendein anderes verfügbares Programm oder\nausführbares Skript sein.\nz.B. \"gedit %f\" öffnet die aktuell ausgewählte Datei in gedit." #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "Die folgenden Parameter sind verfügbar:\n%s wird die ausgewählte Datei oder den ausgewählten Ordner an die Anwendung übergeben.\n%f (%d) wird nur die ausgewählte Datei (Verzeichnis) übergeben.\n%a wird alle in den aktiven Fenstern ausgewählten Elemente übergeben.\n%b wird eine Auswahl von beiden Dateiansichtsfenstern übergeben.\n%p wird nach einem Parameter zum Übergeben an die Anwendung abfragen.\n\nUm einen Befehl als Superbenutzer auszuführen, stellen Sie z.B. gksu oder sudo voran." #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "Auf den folgenden Unterseiten können Werkzeuge hinzugefügt, editiert oder gelöscht werden." #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "Dieser Abschnitt beschäftigt sich mit Geräten. Diese\nkönnen entweder fest, wie z.B. DVD-RW-Laufwerke,\noder wechselbar, wie z.B. USB-Stifte, sein.\n\n4Pane kann in der Regel das Verhalten der Distribution\nableiten und selbst passend konfigurieren. Wenn dies\nfehlschlägt oder wenn Sie Änderungen vornehmen\nmöchten. können Sie dies auf den folgenden Unterseiten machen." #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "Hier können Sie versuchen, die Dinge zum\nFunktionieren zu bringen, wenn etwas wegen\nIhrer sehr alten oder sehr modernen Einrichtung\nfehlschlägt.\n\nEs ist unwahrscheinlich, dass Sie diesen Bereich\nbrauchen werden, aber wenn doch, lesen Sie die\nKurzinfos." #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "Hier können Sie das Erscheinungsbild von 4Pane konfigurieren.\n\nDie erste Unterseite beschäftigt sich mit den Verzeichnis- und Dateibäumen, die zweite mit der Schriftart und die dritte mit verschiedenen Dingen." #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "Diese beiden Unterseiten beschäftigen sich mit\nTerminals. Die erste ist für reale Terminals, die zweite\nist für Terminalemulatoren." #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "Zum Schluss vier Seiten Vermischtes." #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "Diese Elemente beschäftigen sich mit Verzeichnis- und Dateibäumen." #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "Pixel zwischen dem übergeordneten" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "Verzeichnis und dem Aufklappkästchen" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "Es gibt ein \"Aufklappkästchen\" (in gtk2 eigentlich ein Dreieck) zwischen dem übergeordneten Verzeichnis und dem Dateinamen. Dieser Drehregler legt die Anzahl der Pixel zwischen dem übergeordneten Verzeichnis und dem Dreieck fest." #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "Pixel zwischen den" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "Aufklappkästchen und dem Namen" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "Es gibt ein \"Aufklappkästchen\" (in gtk2 eigentlich ein Dreieck) zwischen dem übergeordneten Verzeichnis und dem Dateinamen. Dieser Drehregler legt die Anzahl der Pixel zwischen dem Dreieck und dem Dateinamen fest." #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "Versteckte Dateien und Verzeichnisse im Fenster einer vor kurzem erstellten Tab-Ansicht anzeigen. Sie können dies für einzelne Fenster im Kontextmenü ändern oder Strg-H verwenden." #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "Versteckte Dateien und Verzeichnisse standardmäßig anzeigen." #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "Wenn angekreuzt, werden Dateien/Verzeichnisse in einer zu Ihrer festgelegten regionalen Einstellung passenden Weise angezeigt. Allerdings könnte dies dazu führen, dass versteckte Dateien (wenn angezeigt) nicht gesondert angezeigt werden." #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "Dateien nach den regionalen Einstellungen sortieren." #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "Eine symbolische Verknüpfung zu einem Verzeichnis mit den gewöhnlichen Verzeichnissen in der Dateiansicht anzeigen und nicht unterhalb mit den Dateien." #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "Eine symbolische Verknüpfung auf ein Verzeichnis genauso behandeln wie ein normales Verzeichnis." #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "Möchten Sie sichtbare Linien zwischen jedem Verzeichnis und dessen Unterverzeichnissen haben? Wählen Sie je nachdem, was Sie bevorzugen, aber der normale Stil in gtk1 ist \"Ja\". Lediglich in manchen Versionen von gtk2 ist er \"Nein\"." #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "Linien im Verzeichnisbaum anzeigen" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "Wählen Sie Farben zur Verwendung als Fensterhintergrund aus. Für Verzeichnis- und Dateiansichten können Sie verschiedene Farben nehmen." #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "Hintergrund eines Fensters einfärben" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "&Farben auswählen" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "Klicken Sie, um die zu verwendenden Hintergrundfarben auszuwählen." #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "Wechselnden Zeilen in der Dateiansicht mit verschiedenen Hintergrundfarben versehen, was in einem gestreiften Erscheinungsbild resultiert." #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "Alternative Linien in der Dateiansicht einfärben" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "Farben aus&wählen" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "Klicken Sie zum Auswählen der Farben, in denen alternative Linien gezeichnet werden." #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "Die Spaltenüberschrift einer Dateiansicht oder das oberhalb der Werkzeugliste einer Verzeichnisansicht leicht hervorheben, um das fokussierte Fenster zu kennzeichnen. Klicken Sie auf die Schaltfläche \"Konfigurieren\", um den Umfang der Hervorhebung zu ändern." #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "Fokussiertes Fenster hervorheben" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "K&onfigurieren" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "Klicken Sie, um die Anzahl der Hervorhebungen für jeden Fenstertyp zu ändern." #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "Vor Version 1.1 hat 4Pane seine Anzeige aktualisiert, wenn es seine Dateien/Verzeichnisse geändert hat, aber auf außerhalb gemachte Änderungen hat es nicht reagiert.\nNun kann 4Pane inotify verwenden, um Sie sowohl von internen als auch externen Änderungen zu informieren. Deaktivieren Sie das Kästchen, wenn Sie die alte Methode bevorzugen." #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "inotify verwenden, um das Dateisystem zu beobachten" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "&Anwenden" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "Hier können Sie die vom Baum verwendete Schriftart konfigurieren." #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "Klicken Sie auf die Schaltfläche \"Ändern\", um eine andere Schriftart oder -größe auszuwählen." #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "Die Schaltfläche \"Standardeinstellung verwenden\" setzt es auf den Systemstandard zurück." #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "So sieht die Terminalemulatorschriftart aus." #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "Än&dern" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "Wechseln Sie zu einer Schriftart Ihrer Wahl." #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "Das Erscheinungsbild mit der Standardschriftart." #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "&Standardeinstellung verwenden" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "Zur Systemstandardschriftart zurückkehren" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "\"4Pane [Dokumente]\" statt nur \"4Pane\" in der Titelleiste anzeigen, wenn der aktuell ausgewählte Pfad in der aktiven Verzeichnisansicht /home/david/Dokumente ist" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "Den aktuell ausgewählten Dateipfad in der Titelleiste anzeigen." #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "Hier können Sie sehen, welche Datei oder welches Verzeichnis ausgewählt ist. Für die Verwendung in externen Anwendungen können Sie auch Strg-C zum Kopieren verwenden. Änderungen an dieser Option werden erst wirksam, wenn 4Pane neu gestartet wird." #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "Den aktuell ausgewählten Dateipfad in der Werkzeugleiste anzeigen." #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "4pane liefert Standardsymbole für Dinge wie \"Kopieren\" und \"Rückgängig\" mit. Kreuzen Sie dieses Kästchen an, wenn Sie stattdessen lieber die Symbole Ihres Themes verwenden möchten." #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "Wann immer möglich, Standardsymbole verwenden." #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "4Pane speichert in den Papierkorb verschobene Dateien und Verzeichnisse, anstatt sie zu löschen. Trotzdem möchten Sie vielleicht bei jedem Versuch gefragt werden; in diesem Fall kreuzen Sie dieses Kästchen an." #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "Vor dem Löschen des Papierkorbs nach einer Bestätigung fragen." #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "4Pane speichert \"gelöschte\" Dateien in seinem eigenen Papierkorb." #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "Vor dem Löschen von Dateien nach einer Bestätigung fragen." #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "Die Körbe für in den Papierkorb verschobene/gelöschte Dateien in diesem Verzeichnis erstellen." #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "&Werkzeugleisteneditoren konfigurieren" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "Hier können Sie die Symbole für Editoren und ähnliche Anwendungen in der Werkzeugleiste hinzufügen/entfernen. Diese öffnen sich, wenn darauf geklickt wird oder Sie ziehen (eine) Datei(en) auf eine Anwendung, um sie in dieser zu öffnen." #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "&Vorschauen konfigurieren" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "Hier können Sie die Größe der Bild- und Textvorschauen und ihre Auslösezeit konfigurieren." #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "Werkzeuge der &kleinen Werkzeugleiste konfigurieren" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "Hier können Sie die Schaltflächen aus der kleinen Werkzeugleiste am oberen Rand jeder Verzeichnisansicht hinzufügen/entfernen." #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "Kurz&infos konfigurieren" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "Konfiguriert, ob und für wie lange Kurzinfos angezeigt werden. Dies ist nur teilweise wirksam: Es funktioniert derzeit nicht für Werkzeugleisten-Kurzinfos." #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "Wählen Sie die Terminal-Anwendung aus, die durch Strg-T gestartet werden soll." #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "Entweder eine der folgenden" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "Oder eigene Auswahl eingeben" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "Geben Sie den genauen Befehl ein, der ein Terminal startet.\nWählen Sie eines aus, das auf Ihrem System installiert ist ;)" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "Welche Terminal-Anwendung soll andere Programme ausführen?" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "Geben Sie den genauen Befehl ein, der andere Programme in einem Terminal ausführt.\nWählen Sie ein Terminal, das auf ihrem System installiert ist ;)" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "Welche Terminal-Anwendung soll ein benutzerdefiniertes Werkzeug ausführen?" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "Geben Sie den genauen Befehl ein, der andere Programme in einem Terminal ausführt und das Terminal offen lässt, wenn das Programm beendet wird.\nWählen Sie ein Terminal, das auf ihrem System installiert ist ;)" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "Eingabeaufforderung und Schriftart für den Terminalemulator konfigurieren" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "Eingabeaufforderung. Für Details siehe die Kurzinfo." #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "Diese ist der Eingabe für die zu Hause Terminal, aktiviert durch Ctrl-M oder Ctrl-F6. Sie können normale Zeichnen verwenden aber folgenden Optionensind auch vorhanden:\n%H = Hostname %h = Hostname bis Punkt\n%u = Benutzername\n%w = cwd %W = nur das letzte Zegment von cwd\n%$ gibt entweder $ oder # wenn root" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Ändern" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Standardeinstellung verwenden" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "Derzeit bekannte mögliche NFS-Server" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "Diese IP-Adressen stellen Server da, die in Ihrem Netzwerk vorhanden sind oder waren." #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "Hervorgehobenen Server löschen" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "Geben Sie eine andere Serveradresse ein" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "Schreiben Sie hier die Adresse eines anderen Servers hinein (z.B. 192.168.0.2), klicken Sie dann auf \"Hinzufügen\"." #: configuredialogs.xrc:2698 msgid "Add" msgstr "Hinzufügen" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "Dateipfad für showmount" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "Wie lautet der Dateipfad zum NFS-Hilfsprogramm showmount? Vermutlich /usr/sbin/showmount" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Pfad zum Samba-Verzeichnis" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "Wo sind Dateien wie smbclient und findsmb gespeichert? Wahrscheinlich in /usr/bin/ (oder eine symbolische Verknüpfung von dort)." #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane erlaubt es Ihnen, die meisten Vorgänge rückgängig zu machen (und wiederherzustellen)." #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "Was ist die maximale Anzahl, die rückgängig gemacht werden können?" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "(Anm.: Siehe die Kurzinfo)" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "Wann immer Sie Dateien einfügen/verschieben/umbenennen/löschen/usw., wird der Prozess so gespeichert, dass er später rückgängig gemacht und bei Bedarf erneut ausgeführt werden kann. Dies ist die maximale Anzahl solcher Rückgängig-Befehle\nBeachten Sie, dass, wenn Sie den Inhalt eines Verzeichnisses mit 100 Dateien löschen, dies als 100 Vorgänge zählt! Deshalb schlage ich vor, dass die Zahl hier ziemlich groß sein sollte: mindestens 1000000." #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "Die Anzahl der jeweiligen Einträge in einem Auswahlmenü." #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "(Siehe die Kurzinfo)" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "Dies bezieht sich auf die Dropdown-Schaltflächen Rückgängig und Wiederherstellen und die Verzeichnisansicht-Werkzeugleiste zum Navigieren zu den zuletzt besuchten Verzeichnissen.\nWie viele Elemente können maximal pro Menüseite angezeigt werden? Ich schlage 15 vor. Sie können zu früheren Elementen einen Seitenwert nach dem anderen erhalten." #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "Manche Meldungen werden kurz angezeigt, dann verschwinden sie." #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "Für wie viele Sekunden sollen sie bestehen bleiben?" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "\"Erfolgreich\"-Benachrichtigungsdialoge" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "Es gibt einige Dialoge, die eine Meldung ausgeben, wie z.B. \"Erfolg\" oder \" Ups, das hat nicht funktioniert \", und sich nach ein paar Sekunden automatisch schließen. Diese Zahl ist die Anzahl der Sekunden, in denen eine \"Erfolg\"-Meldung angezeigt wird." #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "\"Fehlgeschlagen, weil...\"-Dialoge" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "Es gibt einige Dialoge, die eine Meldung ausgeben, wie z.B. \"Erfolg\" oder \" Ups, das hat nicht funktioniert \", und sich nach ein paar Sekunden automatisch schließen. Diese Zahl ist die Anzahl der Sekunden, in denen eine Fehlermeldung angezeigt wird, und die länger sein muss als eine Erfolgsmeldung, damit Sie sie lesen können." #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "Statusleistenmeldungen" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "Manche Vorgänge, z.B. das Einhängen einer Partition, zeigen eine Erfolgsmeldung in der Statusleiste an. Dies legt fest, wie lange eine solche Meldung bestehen bleiben soll." #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "Welches Frontend wünschen Sie sich zum Ausführen von Arbeitsschritten als root?" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "Kreuzen Sie dieses Kästchen an, damit 4Pane die Verwaltung der Befehlsausführung übernimmt, entweder durch den Aufruf von su oder sudo (abhängig von Ihrer Distribution oder Einstellung)." #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr " 4Panes eigener" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "sollte aufrufen:" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "Einige Distributionen (Ubuntu und ähnliche) verwenden sudo, um Superbenutzer zu werden; die meisten anderen verwenden su. Wählen Sie das entsprechende aus." #: configuredialogs.xrc:3196 msgid "su" msgstr "su" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "sudo" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "Kreuzen Sie dieses Kästchen an, wenn Sie möchten, dass 4Pane das Passwort speichert und bei Bedarf automatisch bereitstellt. Aus Sicherheitsgründen beträgt die längste zulässige Zeitdauer 60 Minuten." #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr " Passwörter speichern für:" #: configuredialogs.xrc:3233 msgid "min" msgstr "min" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "Wenn dieses Kästchen abgehakt ist, wird nach jedem eingegebenem Passwort das Zeitlimit erneuert." #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "Neustartzeit bei jeder Benutzung" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "Ein externes Programm z.B. gksu. Nur auf ihrem System verfügbare Programme können ausgewählt werden." #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "Ein externes Programm:" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "Andere..." #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "Geben Sie Ihre eigene Auswahl der Anwendung, einschließlich aller notwendigen Optionen, ein. Am besten wäre es, wenn es auf Ihrem System vorhanden wäre..." #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "Die ersten 3 Schaltflächen konfigurieren die Dateiöffnung, D'n'D und die Statusleiste.\nDie vierte Schaltfläche exportiert die Konfiguration von 4Pane: siehe die Kurzinfo." #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "&Öffnen von Dateien konfigurieren" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "Klicken Sie, um 4pane mitzuteilen, wie Sie Dateien bevorzugt öffnen." #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "&Drag'n'Drop konfigurieren" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "Klicken Sie, um das Verhalten von Drag and Drop zu konfigurieren." #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "&Statusleiste konfigurieren" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "Klicken Sie, um die Statusleistenbereiche zu konfigurieren." #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "Konfigurationsdatei &exportieren" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "Klicken Sie hier, um Teile Ihrer Konfiguration als ~/4Pane.conf zu speichern. Nur sehr wenige Leute werden dies tun müssen; wahrscheinlich nur Distributionspaketierer. Für weitere Informationen drücken Sie nach dem Klicken auf F1." #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "Auszuführender Befehl:" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "Geben Sie den Namen der Anwendung oder des Skripts ein, das ausgeführt werden soll. Wenn es sich in Ihrem PFAD befindet, sollte nur der Name, wie z.B. \"df\", ausreichen. Andernfalls benötigen Sie den vollständigen Dateipfad, z.B. \"/usr/X11R6/bin/foo\".\n\nParameter: \n%s übergibt die ausgewählte Datei oder den ausgewählten Ordner an die Anwendung, %f (%d) nur eine Datei (Verzeichnis).\n%a übergibt alle ausgewählten Elemente des aktiven Fensters, %b eine Auswahl aus beiden Dateiansichtsfenstern.\n%p fordert Sie auf, einen Parameter an die Anwendung zu übergeben." #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "Klicken Sie, um nach der auszuführenden Anwendung zu suchen." #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "Aktivieren Sie das Häkchen, wenn das Werkzeug in einem Terminal ausgeführt werden soll." #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "In einem Terminal ausführen" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "Manche Programme benötigen ein Terminal sowohl zur Ausführung darin als auch um die Ergebnisse anzuzeigen. Wenn Sie dieses Kontrollkästchen ankreuzen, wird das Terminal sichtbar bleiben, wenn das Programm beendet ist, um Ihnen eine Möglichkeit zum Ansehen der Ausgabe zu geben." #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "Terminal offen lassen" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "Aktivieren Sie das Häkchen, wenn Sie möchten, dass das aktuelle Fenster automatisch aktualisiert wird, wenn das Hilfsprogramm fertig ist." #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "Fenster aktualisieren nach" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "Aktivieren Sie das Häkchen, wenn Sie möchten, dass das andere Fenster ebenfalls aktualisiert wird." #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "Gegenüberliegendes Fenster ebenfalls aktualisieren" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "Aktivieren Sie das Häkchen, wenn das Werkzeug mit Superbenutzerrechten nicht im Terminal ausgeführt werden soll (in einem Terminal können Sie \"sudo\" oder \"su -c\" trotzdem verwenden)." #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "Befehl als root ausführen" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "Bezeichnung, die im Menü angezeigt werden soll:" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "Zu diesem Menü hinzufügen:" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "Dies sind die derzeit verfügbaren Menüs. Wählen Sie eines aus oder fügen Sie ein neues hinzu." #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "&Neues Menü" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "Ein neues Menü oder Untermenü zur Liste hinzufügen" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "Menü &löschen" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "Das aktuell ausgewählte Menü oder Untermenü löschen" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "&Werkzeug hinzufügen" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Klicken Sie, um das neue Werkzeug hinzuzufügen." #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Wählen Sie einen Befehl aus und klicken Sie anschließend auf \"Diesen Befehl bearbeiten\"." #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Bezeichnung im Menü" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Wählen Sie die Bezeichnung des Befehls aus, den Sie bearbeiten möchten. Wenn Sie möchten, können Sie diese auch bearbeiten." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Befehl" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "Zu bearbeitender Befehl" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "Diesen Befehl &bearbeiten" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "Wählen Sie ein Element aus und klicken Sie anschließend auf \"Diesen Befehl löschen\"." #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Wählen Sie die Bezeichnung des Befehls aus, den Sie löschen möchten." #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "Zu löschender Befehl" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "Diesen Befehl &löschen" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Eintrag doppelklicken, um ihn zu ändern" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "Die Bezeichnungen ohne einer Mnemonik unten anzeigen, z.B. \"Ausschneiden\" anstatt \"A&usschneiden\" anzeigen. Sie können immer noch die Mnemonik ansehen und bearbeiten, sobald Sie die Eintragsbezeichnung bearbeiten." #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "Bezeichnungen ohne Mnemoniken anzeigen" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "Farben auswählen" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "Die folgenden Farben werden abwechselnd im Dateiansichtsfenster verwendet." #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "Aktuelle 1. Farbe" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "Aktuelle 2. Farbe" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "Wählen Sie die Farbe aus, die als Hintergrund für ein Fenster verwendet werden soll.\nSie können eine Farbe für Verzeichnisansichten und eine andere für Dateiansichten auswählen. \nAlternativ können Sie das Kästchen ankreuzen, um in beiden Ansichten die gleiche Farbe zu verwenden." #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "Aktuelle Verzeichnisansichtsfarbe" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "Aktuelle Dateiansichtsfarbe" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "Gleiche Farbe für beide Fenstertypen verwenden" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "Fensterhervorhebung auswählen" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "Ein Fenster kann optional hervorgehoben werden, wenn es im Fokus ist. Hier können Sie den Grad der Hervorhebung abändern." #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "In der Verzeichnisansicht ist das Hervorgehobene in einer schmalen Linie über der Werkzeugleiste." #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "In der Dateiansicht betrifft die Farbänderung die Überschrift, die viel dicker ist." #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "Es wird vorgeschlagen, dass Sie den \"Versatz\" der Dateiansicht kleiner machen als der Unterschied ersichtlich ist." #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "Verzeichnisansicht fokussiert" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "Grundlinie" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "Dateiansicht fokussiert" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "Geben Sie die Tastenkombination ein" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "Drücken Sie die Tasten, die Sie für diese Funktion verwenden möchten:" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "Attrappe" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Aktuell" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Löschen" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "Klicken Sie hier, wenn Sie keine Tastenkombination für diese Aktion möchten." #: configuredialogs.xrc:4902 msgid " Default:" msgstr " Standard:" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "Strg+Umschalt+Alt+M" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "Durch Klicken auf diese wird der oben gesehene Standardprogrammzeitverkürzer eingetragen." #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "Bezeichnung ändern" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr " Hilfezeichenkette ändern" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "Programmzeitverkürzer duplizieren" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "Diese Tastenkombination wird bereits verwendet von:" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "Dummy" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "Was wollen Sie tun?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "Andere Tasten auswählen" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "Tastenkombination der anderen Tasten stehlen" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "Aufgeben" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "&Erneut versuchen" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "Kehren Sie zum Dialog zurück, um eine andere Tastenauswahl vorzunehmen." #: configuredialogs.xrc:5126 msgid "&Override" msgstr "&Überschreiben" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "Verwenden Sie trotzdem Ihre Auswahl. Sie werden die Möglichkeit bekommen, eine neue Auswahl für die Verknüpfung, welche sie derzeit verwendet, zu machen." #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "Die Tastenkombination wird auf den vorherigen Wert zurückgesetzt, wenn überhaupt." #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "Wie werden eingesteckte Geräte erkannt?" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "Bis zum 2.4er Kernel wurden USB-Stifte und ähnliches überhaupt nicht erkannt. 2.4er Kernel führten die USB-Speichermethode ein. Neuere Distributionen mit 2.6er Kerneln verwenden normalerweise das udev/hal-System. Dazwischen haben einige Distributionen (z.B. SuSE 9.2) etwas Seltsames mit /etc/mtab getan." #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "Die ursprüngliche USB-Speicher-Methode" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "durch einen Blick in die mtab" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "Die neue udev/hal-Methode" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "Diskettenlaufwerke automatisch einhängen" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "DVD-ROM-Laufwerke, usw. automatisch einhängen" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "Wechsellaufwerke automatisch einhängen" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "Welche Datei (wenn überhaupt) enthält Daten zu einem neu eingesteckten Gerät?" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "Disketten" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "Dies gilt vor allem für Distributionen ohne automatisches Einhängen, von denen einige Informationen über Geräte direkt in /etc/mtab oder /etc/fstab einfügen." #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "keine" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "Manche Distributionen (z.B. Mandriva 10.1) verwenden Supermount, um bei der Verwaltung von Festplattenänderungen zu helfen. Wenn ja, darf der fstab-Eintrag eines Gerätes mit \"kein\" beginnen anstatt mit dem Gerätenamen. In diesem Fall kreuzen Sie dieses Kästchen an." #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "Supermounts" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "CD-ROMs, usw." #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "USB-Geräte" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "Wie oft soll nach neu angeschlossenen USB-Geräten geprüft werden?" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "4Pane überprüft, ob irgendwelche Wechsellaufwerke entfernt oder neue hinzugefügt wurden. Wie oft sollte das stattfinden?" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "Sekunden" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "Wie sollen USB-Mehrfachkartenlesegeräte angezeigt werden?" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "Mehrkartenleser registrieren sich normalerweise als separates Gerät für jeden Steckplatz.\nStandardmäßig werden nur Steckplätze mit eingesteckter Karte angezeigt.\nWenn Sie hier ankreuzen, erhält jeder leere Steckplatz auch eine Schaltfläche, so dass ein 13-Steckplatz-Gerät immer 13 Schaltflächen haben wird!" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "Auch Schaltflächen für leere Spalten hinzufügen" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "Was soll gemacht werden, wenn 4Pane ein USB-Gerät eingehängt hat?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "Möchten Sie vor dem Beenden aushängen? Dies gilt nur für Wechsellaufwerke und nur dann, wenn Ihre Distribution nicht automatisch ein- bzw. aushängt." #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "Vor dem Aushängen beim Beenden nachfragen" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "Zur Information lesen Sie bitte die Kurzinfos." #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "Welche Datei beinhaltet Partitionsdaten?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "Die Liste der bekannten Partitionen. Standardeinstellung: /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "Welches Verzeichnis beinhaltet Gerätedaten?" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "Enthält \"Dateien\" wie hda1, sda1. Aktuell /dev/" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "Welche Datei(en) enthält/enthalten Diskettenlaufwerksinformationen?" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "Diskettenlaufwerksinformationen finden Sie in der Regel in /sys/block/fd0, /sys/block/fd1, usw.\nLegen Sie hier nicht das 0, 1 Bit fest, nur /sys/block/fd oder was auch immer." #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "Welche Datei enthält CD/DVD-ROM-Informationen?" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "Informationen zu fest installierten Geräten wie CD-ROM-Laufwerken finden Sie in der Regel in /proc/sys/dev/cdrom/info. Verändern Sie es, wenn sich dies geändert hat." #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "Standardeinstellungen wiederherstellen" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "2.4 Kernel: USB-Speicher" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "2.4er Kernel erkennen Wechsellaufwerke und fügen ein Verzeichnis namens /proc/scsi/usb-storage-0, storage-1 usw. hinzu.\nSetzen Sie hier einfach das Bit /proc/scsi/usb-storage-" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "2.4 Kernel: Liste mit Wechsellaufwerken" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "2.4er Kernel unterhalten eine Liste mit angeschlossenen/früher angeschlossenen Wechsellaufwerken.\nWahrscheinlich /proc/scsi/scsi" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "Knotennamen für Wechsellaufwerke" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "Welcher Geräteknoten wird an Wechsellaufwerke wie USB-Stifte vergeben? Wahrscheinlich /dev/sda, sdb1, usw.\nSetzen Sie hier einfach das Bit /dev/sd" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "2.6 Kernel: Verzeichnis mit Informationen zu Wechsellaufwerken" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "In 2.6er Kerneln finden Sie hier einige Informationen zu Wechsellaufwerken\nWahrscheinlich /sys/bus/scsi/devices" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "Wie lautet der LVM-Präfix?" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "Wie werden \"Partitionen\" der logischen Volume-Verwaltung benannt, z.B. dm-0\nGeben Sie nur das dm- Bit ein." #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "Weiterer LVM-Kram. Siehe die Kurzinfo" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "Wo befinden sich die proc-Dateien der blockorientierten Geräte? Dies ist zur Unterstützung der Verwaltung des LVM-Krams erforderlich.\nWahrscheinlich /dev/.udevdb/block@foo. Geben Sie nur das \"/dev/.udevdb/block@\"-Bit ein." #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "Wählen Sie ein Laufwerk zum Konfigurieren aus.\nOder wählen Sie \"Laufwerk hinzufügen\" zum Hinzufügen." #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "&Laufwerk hinzufügen" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "Dieses Laufwerk &bearbeiten" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "Dieses Laufwerk &löschen" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "Feste Laufwerke sollten automatisch gefunden worden\nsein, aber wenn eines weggelassen wurde oder Sie\nmanche Daten abändern möchten, können Sie dies hier\nmachen." #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "Wählen Sie ein Laufwerk zum Konfigurieren aus.\nOder wählen Sie \"Laufwerk hinzufügen\" aus, um eines hinzuzufügen." #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "Attrappe, um diese Version der Datei zu testen." #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "Verzeichnisansicht-Werkzeugleistenschaltflächen konfigurieren" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "Dies sind die Schaltflächen auf der rechten Seite der kleinen Werkzeugleiste in jeder Verzeichnisansicht.\nSie fungieren als Lesezeichen: Ein Klick auf einen der folgenden Pfade \"führt zu\" seinem Ziel-Dateipfad." #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "Aktuelle Schaltflächen" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "Schaltfläche &hinzufügen" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "Diese Schaltfläche &bearbeiten" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "Diese Schaltfläche &löschen" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "Konfigurieren z.B. einen Editor" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Name" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "Dies ist nur eine Bezeichnung, so dass Sie in der Lage sind, es wiederzuerkennen. Z.B. kwrite" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "Zu verwendendes Symbol" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "Befehl ausführen" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "Dies ist die Zeichenkette zum Aufrufen des Programms. Z.B. kwrite oder /opt/gnome/bin/gedit" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "Zu verwendendes Arbeitsverzeichnis (optional)" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "Sie können optional ein Arbeitsverzeichnis angeben. Wenn ja, wird vor dem Ausführen des Befehls \"cd\" ausgeführt. Die meisten Befehle werden dies nicht benötigen; insbesondere wird es nicht für Befehle benötigt, die ohne Pfad gestartet werden können, z.B. kwrite" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "Wenn zum Beispiel mehrere Dateien eingefügt werden, kann GEdit diese in Tabs öffnen." #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "Akzeptiert mehrfache Eingabe" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "Das Symbol für dieses Programm nicht laden. Seine Konfiguration bleibt erhalten und Sie brauchen es in der Zukunft nicht mehr zu ignorieren." #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "Dieses Programm ignorieren" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Symbol auswählen" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "Aktuelle\nAuswahl" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "Klicken Sie auf ein Symbol, um es auszuwählen\noder suchen Sie nach anderen." #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "&Durchsuchen" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "Neues Symbol" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "Dieses Symbol hinzufügen?" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "Editoren usw. konfigurieren" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "Diese Programme können durch Anklicken einer\nSchaltfläche in der Werkzeugleiste oder durch Ziehen\neiner Datei auf die Schaltfläche gestartet werden.\nEin offensichtliches Beispiel wäre ein Texteditor wie\nkwrite, aber es kann jedes beliebige Programm sein." #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "Programm &hinzufügen" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "Dieses Programm &bearbeiten" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "Dieses Programm &löschen" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "Symbol der kleinen Werkzeugleiste konfigurieren" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "Dateipfad" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "Geben Sie den Dateipfad ein, zu dem Sie wechseln möchten, wenn die Schaltfläche geklickt wird." #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "Klicken Sie, um nach dem neuen Dateipfad zu suchen." #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "(Zum Ändern klicken)" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "Bezeichnung z.B. \"Musik\" oder \"/usr/share/\"" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "Die Bereitstellung einer Bezeichnung ist optional und wird die meiste Zeit nicht angezeigt. Wenn in gtk3 jedoch nicht genügend Platz vorhanden ist, um alle Symbole anzuzeigen, zeigt das Überlauffenster nur die Bezeichnung, nicht das Symbol an; ohne Bezeichnung gibt es also eine Leerstelle." #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "Optionaler Kurzinfotext" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "Drag and Drop konfigurieren" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "Wählen Sie aus, welche Tasten folgendes machen sollen:" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "Verschieben:" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "Kopieren:" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "Harte Verknüpfung:" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "Symbolische Verknüpfung:" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "Verändern Sie diese Werte, um die D'n'D-Auslöseempfindlichkeit zu ändern." #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Horizontal" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "Wie weit nach links und rechte sollte die Maus bewegt werden, bevor D'n'D ausgelöst wird? Standardwert 10" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Vertikal" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "Wie weit nach oben und unten sollte die Maus bewegt werden, bevor D'n'D ausgelöst wird? Standardwert 15" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "Wie viele Zeilen soll pro Mausrad-Klick gescrollt werden?" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "Wenn es in Ihren Systemeinstellungen nicht gefunden werden kann, bestimmt dies, wie empfindlich das Mausrad ist, nur beim Drag-and-Drop." #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "Statusleiste konfigurieren" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "Die Statusleiste hat vier Abschnitte. Hier können Sie ihre Proportionen anpassen." #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "(Änderungen werden erst nach einem Neustart von 4Pane wirksam)" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "Menüpunkt-Hilfe" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Standard 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "Gelegentlich hilfreiche Meldungen, wenn Sie über einen Menüpunkt fahren." #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "Erfolgsmeldungen" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "(Standard 3)" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "Meldungen wie \"15 Dateien erfolgreich gelöscht\". Diese Meldungen verschwinden nach einer einstellbaren Anzahl von Sekunden." #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "Dateipfade" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "(Standard 8)" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "Informationen über die aktuell ausgewählte Datei oder das Verzeichnis; in der Regel Typ, Name und Größe." #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filter" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "Was zeigt das fokussierte Fenster an: D=Verzeichnisse F=Dateien H=versteckte Dateien R=rekursive Unterverzeichnisgröße.\nAußerdem wird jeder Filter angezeigt, z.B. f*.txt für Textdateien, die mit einem \"f\" beginnen." #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "Daten exportieren" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "Hier können Sie, sollten Sie es wünschen, einen Teil Ihrer Konfigurationsdaten in eine Datei namens 4Pane.conf exportieren." #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "Wenn Sie in Versuchung geführt werden, drücken Sie F1 für weitere Details." #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "Wählen Sie alle Datenarten ab, die Sie nicht exportieren wollen." #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "Werkzeuge, z.B. \"df -h\", die standardmäßig bereitgestellt werden. Weitere Details finden Sie in der Anleitung." #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "Benutzerdefinierte Werkzeugdaten" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Für welche(n) Editor(en), z.B. gedit, kwrite, soll standardmäßig ein Symbol in der Werkzeugleiste hinzugefügt werden." #: configuredialogs.xrc:8190 msgid " Editors data" msgstr " Editorendaten" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "Dinge aus \"4Pane konfigurieren > Geräte\". Weitere Details finden Sie in der Anleitung." #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr " Gerät-Einhängedaten" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "Dinge aus \"4Pane konfigurieren > Terminals\". Weitere Details finden Sie in der Anleitung." #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "Terminalbezogene Daten" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "Der Inhalt des \"Öffnen mit...\"-Dialogs und welche Programme welche MIME-Typen öffnen sollen." #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "\"Öffnen mit\"-Daten" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "Daten exportieren" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "Vorschauen konfigurieren" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "Maximale Breite (px)" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "Maximale Höhe (px)" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "Bilder:" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "Textdateien:" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "Vorschauauslöseverzögerung, in Zehntelsekunden:" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "Dateiöffnung konfigurieren" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "Wie soll 4Pane versuchen z.B. eine Textdatei in einem Editor zu öffnen?\nVerwenden Sie entweder die Systemmethode, die eingebaute Methode von 4Pane oder beides.\nWenn beide, was soll zuerst ausprobiert werden?" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "Methode Ihres Systems verwenden" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "Methode von 4Pane verwenden" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "Systemmethode bevorzugen" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "4Panes Methode bevorzugen" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Lokalisieren" #: dialogs.xrc:66 msgid "Clea&r" msgstr "Lö&schen" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "&Schließen" #: dialogs.xrc:116 msgid "Can't Read" msgstr "Kann nicht gelesen werden" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "Sie haben keine Leseberechtigung für" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "a Vortäuschen q" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "&Überspringen" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "Nur diese Datei überspringen" #: dialogs.xrc:182 msgid "Skip &All" msgstr "&Alle überspringen" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "Alle weiteren Dateien überspringen, bei denen ich keine Leseberechtigung besitze." #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "Tss Tss!" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "Es scheint, als versuchen Sie sich zu verbinden." #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "Vorgeben" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "zu einer seiner Nachfahren" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Dies ist natürlich illegal und vermutlich unmoralisch." #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "&Entschuldigung :-(" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Klicken Sie, um sich zu entschuldigen." #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "Wie soll der neue Name lauten?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Geben Sie den neuen Namen ein" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "Überschreiben oder Umbenennen" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "Es gibt hier bereits eine Datei mit dem Namen." #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "&Überschreiben" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "Eingehende Datei &umbenennen" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "&Alle überschreiben" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "Bei Namenskonflikt alle Dateien überschreiben" #: dialogs.xrc:699 msgid " Re&name All" msgstr "Alle umbe&nennen" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "Bei Namenskonflikt sofort den UMBENENNEN-Dialog aufrufen" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Dieses Element überspringen" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "Alle über&springen" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "Alle Dateien mit Namenskonflikt überspringen" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "Umbenennen oder abbrechen" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "Es gibt bereits ein Verzeichnis mit diesem Namen." #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "Eingehendes Verzeichnis &umbenennen" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Umbenennen oder überspringen" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "Es gibt bereits ein Verzeichnis mit dem Namen." #: dialogs.xrc:928 msgid "Rename &All" msgstr "&Alle umbenennen" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "Bei allen Namenskonflikten sofort den UMBENENNEN-Dialog aufrufen" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "Alle Elemente mit einem Namenskonflikt überspringen" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "Nach einem Duplikat im Archiv abfragen" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "Im Archiv gibt es bereits eine Datei mit diesem Namen." #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "Eine Kopie &speichern" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "In ein Archiv sind Sie berechtigt zwei gleiche Elementen mit den gleichen Namen zu haben. Wenn das ist was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) klicken Sie diese Schaltfläche" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "Duplizieren durch Umbenennen im Archiv" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "Entschuldigung, innerhalb eines Archivs können Sie keine direkte Duplizierung durchführen." #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "Möchten Sie stattdessen durch die Umbenennung duplizieren?" #: dialogs.xrc:1112 msgid "&Rename" msgstr "&Umbenennen" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "Eine Kopie von jedem Element oder den Elementen erstellen, mit einem anderen Namen." #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Zu Archiv hinzufügen" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "Es gibt bereits ein Element mit dem Namen." #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "Originaldatei aus dem Archiv löschen und mit der Eingehenden ersetzen." #: dialogs.xrc:1267 msgid "&Store both items" msgstr "Beide Elemente &speichern" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "In ein Archiv sind Sie berechtigt mehrfache Dateien mit den gleichen Namen zu haben. Klicken Sie diese Schaltfläche wenn das ist was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) " #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "Überschreiben oder zum Archiv hinzufügen" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "Beide Elemente s&peichern" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "In ein Archiv sind Sie berechtigt zwei Dateien mit den gleichen Namen zu haben. Wenn das ist was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) klicken Sie diese Schaltfläche" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "A&lle speichern" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "In ein Archiv sind Sie berechtigt zwei Dateien mit den gleichen Namen zu haben. Wenn das ist immer was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) klicken Sie diese Schaltfläche" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "Aktuelles Verzeichnis durch das Eingehende ersetzen." #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "&Alle überschreiben" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "Das aktuelle Verzeichnis mit dem eingehenden ersetzen und dies bei allen anderen Konflikten machen." #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "In ein Archiv sind Sie berechtigt zwei Verzeichnisse mit den gleichen Namen zu haben. Wenn das ist was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) klicken Sie diese Schaltfläche" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "In ein Archiv sind Sie berechtigt zwei Verzeichnisse mit den gleichen Namen zu haben. Wenn das ist immer was Sie wollen (und Sie haben vermutlich ein gute Grund :-/) klicken Sie diese Schaltfläche" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "&Überspringen" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "&Alle Konflikte überspringen" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Alle Elemente abbrechen" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "Es scheint, als möchten Sie diese Datei mit sich selbst überschreiben." #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Heißt das:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "Es soll &DUPLIZIERT werden" #: dialogs.xrc:1856 msgid "or:" msgstr "oder:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "&Hoppla, das wollte ich nicht" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Verknüpfung erstellen" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "Neue Verknüpfung erstellen von:" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Zu diesem versuchen Sie zu verknüpfen" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Verknüpfung im folgenden Verzeichnis erstellen:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "Wie möchten Sie die Verknüpfung benennen?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Den gleichen Namen behalten" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "Die folgende Erweiterung verwenden" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "Den folgenden Namen verwenden" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "Geben Sie die Erweiterung ein, die Sie zum ursprünglichen Dateinamen hinzufügen möchten." #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "Geben Sie den Namen ein, den Sie der Verknüpfung geben möchten." #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "Kreuzen Sie dieses Kästchen an, wenn Sie relative symbolische Verknüpfung(en) machen wollen, z.B. zu ../../foo anstatt /Pfad/zu/foo" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "Zur relativen Verknüpfung machen" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "Kreuzen Sie dieses Kästchen an, wenn Sie möchten, dass diese Entscheidungen automatisch auf den Rest der ausgewählten Elemente angewendet werden soll." #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Auf alle anwenden" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "Wenn Sie Ihre Meinung über den Typ der Verknüpfung geändert haben, können Sie hier erneut auswählen." #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "Ich möchte eine harte Verknüpfung erstellen" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "Ich möchte eine symbolische Verknüpfung erstellen" #: dialogs.xrc:2173 msgid "Skip" msgstr "Überspringen" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "Wählen Sie einen Namen für das neue Element aus." #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "Möchten Sie eine neue Datei oder ein neues Verzeichnis?" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "Neue Datei erstellen" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "Ein neues Verzeichnis erstellen" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "Wählen Sie einen Namen für das neue Verzeichnis aus." #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Lesezeichen hinzufügen" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "Das folgende zu Ihren Lesezeichen hinzufügen:" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "Dies ist das Lesezeichen, das erstellt wird." #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "Welche Bezeichnung möchten Sie diesem Lesezeichen geben?" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "Zum folgenden Ordner hinzufügen:" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "&Ordner wechseln" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "Klicken Sie, wenn Sie dieses Lesezeichen in einem anderen Ordner speichern oder einen neuen Ordner erstellen möchten." #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Lesezeichen bearbeiten" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "Nehmen Sie die erforderlichen Änderungen unten vor." #: dialogs.xrc:2595 msgid "Current Path" msgstr "Aktueller Pfad" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "Dies ist der aktuelle Pfad" #: dialogs.xrc:2620 msgid "Current Label" msgstr "Aktuelle Bezeichnung" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "Dies ist die aktuelle Bezeichnung." #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "Lesezeichen verwalten" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "&Neuer Ordner" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Neuen Ordner erstellen" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "Neue &Trennlinie" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "Neue Trennlinie einfügen" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "Auswahl &bearbeiten" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "Hervorgehobenes Element bearbeiten" #: dialogs.xrc:2768 msgid "&Delete" msgstr "&Löschen" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "Hervorgehobenes Element löschen" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Öffnen mit:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "Geben Sie den Pfad und den Namen der zu verwendenden Anwendung ein, wenn sie ihn wissen. Wenn nicht, wählen Sie aus der folgenden Liste aus." #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "Klicken Sie, um nach der zu verwendenden Anwendung zu suchen." #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "Anwendung &bearbeiten" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "Gewählte Anwendung bearbeiten" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "Anwendung &entfernen" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "Gewählte Anwendung aus dem Ordner entfernen" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "Anwendung &hinzufügen" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "Anwendung zum unten ausgewählten Ordner hinzufügen" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "&Ordner hinzufügen" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "Ordner zum Baum unten hinzufügen" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "O&rdner entfernen" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "Anwendung vom unten ausgewählten Ordner entfernen" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "Anwendung anklicken, um sie auszuwählen" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "Kreuzen Sie das Kästchen an, um die Datei mit dieser Anwendung in einem Terminal zu öffnen." #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Im Terminal öffnen" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Kreuzen Sie das Kästchen an, wenn diese Anwendung in Zukunft automatisch aufgerufen werden soll, um diesen Dateityp zu öffnen." #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Immer die ausgewählte Anwendung für diesen Dateityp verwenden." #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Anwendung hinzufügen" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "Bezeichnung für die Anwendung (optional)" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "Dieser Name muss eindeutig sein. Wenn Sie keinen eingeben, wird das Ende vom Dateipfad verwendet.\nz.B. /usr/local/bin/foo wird \"foo\" genannt werden." #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "Wo ist die Anwendung? z.B. /usr/local/bin/gs\n(manchmal wird nur der Dateiname funktionieren)" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "Geben Sie den Namen der Anwendung ein. Wenn sie sich in Ihrem PFAD befindet, sollten Sie nur den Namen, z.B. kwrite, eingeben. Andernfalls müssen Sie den vollständigen Pfadnamen, z.B. /usr/X11R6/bin/foo, eingeben." #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "Erweiterung(en), die es starten soll?? Z.B. txt oder htm,html" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "Dies ist optional. Wenn Sie eine oder mehrere Endungen eingeben, wird diese Anwendung angeboten, wenn Sie mit der rechten Maustaste auf Dateien mit solchen Endungen klicken. Wenn Sie möchten, dass diese Anwendung die Standardeinstellung für das Öffnen von dieser Art von Datei ist, müssen Sie auch eine eingeben. Schreiben Sie hier also txt, wenn Sie möchten, dass alle Dateien mit der Endung \"txt\" beim Doppelklicken mit dieser Anwendung geöffnet werden.\nSie können mehr als eine Endung eingeben, getrennt durch Kommas, z.B. htm,html" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "Was ist die auszuführende Befehlszeichenkette? Z.B. kedit %s" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "Dies ist der Befehl, mit dem Sie eine Datei öffnen können. In der Regel ist es der Programmname gefolgt von %s, der die zu startende Datei repräsentiert. Wenn also kedit Ihr Standard-Texteditor ist und der Startbefehl kedit %s ist, wird ein Doppelklick auf die Datei foo.txt \" kedit 'foo.txt' \" ausführen.\nWenn dies nicht funktioniert, müssen Sie RTFM für die jeweilige Anwendung verwenden." #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "Arbeitsverzeichnis, in dem die Anwendung ausgeführt wird (optional)." #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "Legen Sie die Anwendung in diese Gruppe. Demnach gehört kwrite zu den Editoren." #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "Eine neue Gruppe zum Kategorisieren der Anwendungen hinzufügen" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "Für welche Erweiterungen soll diese Anwendung die Standardeinstellung sein?" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "Dies sind die Erweiterungen zur Auswahl." #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "Sie können entweder die ersten beiden Schaltflächen verwenden oder mit der Maus auswählen (& Strg-Taste für nicht zusammenhängende Auswahlen)." #: dialogs.xrc:3581 msgid "All of them" msgstr "Alle" #: dialogs.xrc:3582 msgid "Just the First" msgstr "Nur die Erste" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "Mit Maus (+Umstelltaste) auswählen" #: dialogs.xrc:3640 msgid "4Pane" msgstr "4Pane" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Vorlage speichern" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "Es ist bereits eine Vorlage geladen." #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "Überschreiben oder als neue Vorlage speichern?" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "&Überschreiben" #: dialogs.xrc:3775 msgid "&New Template" msgstr "&Neue Vorlage" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "Geben Sie die Filterzeichenkette ein." #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "Geben Sie eine Zeichenkette ein, die Sie als Filter verwenden möchten oder verwenden Sie die Chronik. Mehrere Filter können entweder durch ein | oder ein Komma getrennt werden, z.B. Pre*.txt oder *.jpg | *.png oder *htm,*html" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "Nur Dateien, keine Verzeichnisse, anzeigen" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "Nur Dateien anzeigen" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "Den Filter zurücksetzen, so dass alle Dateien angezeigt werden, d.h. *" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "Filter zurücksetzen auf *" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "Ausgewählten Filter auf alle Fenster in diesem Tab anwenden." #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "Bei allen sichtbaren Fenstern anwenden." #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "Mehrfaches Umbenennen" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "Sie können foo.bar entweder zu z.B. foo1.bar oder neu.foo.bar ändern." #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "oder etwas komplizierter mit einem regulären Ausdruck." #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr " Regulären Ausdruck verwenden" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "&Regex-Hilfe" #: dialogs.xrc:4043 msgid "Replace" msgstr "Ersetzen" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "Geben Sie den Text oder einen regulären Ausdruck ein, welchen Sie ersetzt haben möchten?" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "Geben Sie den Text ein, den Sie ersetzen möchten." #: dialogs.xrc:4076 msgid "With" msgstr "Mit" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "Alle Übereinstimmungen im Namen ersetzen" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "Die Erste überschreiben" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "Name \"foo-foo-foo\" und Ersetzungstext \"bar\" angegeben, die Anzahl auf 2 festzulegen, würde zu \"bar-bar-foo\" führen." #: dialogs.xrc:4175 msgid " matches in name" msgstr "Übereinstimmungen im Namen" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "Angenommen, Sie wählen alle Dateien in einem Verzeichnis aus und möchten mit einem Regex alle .jpeg-Dateien in .jpg ändern. Wenn Sie dieses Kontrollkästchen nicht ankreuzen, werden auch alle anderen Dateien in der Auswahl durch den Nicht-Regex-Abschnitt umbenannt; was wahrscheinlich nicht das ist, was Sie wollen." #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "Nicht übereinstimmende Dateien vollständig ignorieren" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "Wie (sonst) kann man neue Namen erstellen:" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "Wenn Sie einen oben genannten Regex erfolgreich verwendet haben, ist dies möglicherweise nicht erforderlich. Aber wenn Sie es nicht getan haben, oder einige Konflikte bestehen bleiben, werden sie auf diese Weise gelöst." #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "Welcher Teil des Namens soll geändert werden?" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "Wenn der Name foo.something.bar ist, wird die Auswahl von \"Erweiterung\" \"bar\" beeinflussen und nicht \"something.bar\".\nWenn Sie \"Erweiterung\" auswählen, obwohl nichts da ist, wird stattdessen der Name verändert werden." #: dialogs.xrc:4246 msgid "Body" msgstr "Hauptteil" #: dialogs.xrc:4247 msgid "Ext" msgstr "Erweiterung" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "Text voranstellen (optional)" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "Geben Sie einen beliebigen Text zum Voranstellen ein." #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "Text hinzufügen (optional)" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "Geben Sie einen beliebigen Text zum Hinzufügen ein." #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "Erhöhung beginnt bei:" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "Wenn es immer noch einen Namenskonflikt gibt, obwohl Sie Obiges gemacht haben, fügt dies eine Zahl oder einen Buchstaben hinzu, um einen neuen Namen zu erstellen. Folglich wird joe.txt zu joe0.txt (oder joe.txt0, wenn Sie die Erweiterung zum Ändern ausgewählt haben)" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "Wenn dieses Kästchen angekreuzt ist, wird eine Erhöhung nur zur Vermeidung eines Namenskonflikts stattfinden. Wenn nicht, wird es sowieso passieren." #: dialogs.xrc:4392 msgid " Only if needed" msgstr "Nur wenn gebraucht" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "Erhöhen mit a" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "Legt fest, ob \"Max\" in \"Max0\" oder \"MaxA\" geändert wird." #: dialogs.xrc:4416 msgid "digit" msgstr "Zahl" #: dialogs.xrc:4417 msgid "letter" msgstr "Buchstabe" #: dialogs.xrc:4431 msgid "Case" msgstr "Schreibung" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "Soll \"joe\" zu \"joeA\" oder zu \"joea\" werden?" #: dialogs.xrc:4439 msgid "Upper" msgstr "Höher" #: dialogs.xrc:4440 msgid "Lower" msgstr "Tiefer" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "Umbenennen bestätigen" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "Sind Sie sicher, dass Sie diese Änderungen vornehmen möchten?" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "Dateien lokalisieren" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "Geben Sie die Suchzeichenkette ein. Z.B. *foo[ab]r" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "Dies ist das Muster zum Vergleichen. Wenn Sie \"foo\" eingeben, werden sowohl Pfad/foo als auch Pfad/foobar/weitererPfad gefunden. Alternativ können Sie Platzhalter wie *, ? und [ ] verwenden. Wenn Sie das machen, wird Lokalisieren nur genaue Übereinstimmungen zurückgeben, z.B. müssen Sie *foo[ab]r*eingeben, um nach Pfad/foobar/weitererPfad zu suchen." #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "Nur den letzten Bestandteil einer Datei vergleichen, z.B. das \"foo\"-Bit von /home/meinName/bar/foo, aber nicht /home/meinName/foo/bar" #: moredialogs.xrc:57 msgid " -b Basename" msgstr " -b Namensbasis" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "Wenn abgehakt, entspricht das Muster \"foo\" sowohl foo als auch Foo (und FoO, und...)." #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr " -i Groß-/Kleinschreibung ignorieren" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "Lokalisieren durchsucht eine Datenbank, welche normalerweise nur einmal am Tag aktualisiert wird. Wenn dieses Kästchen angekreuzt ist, wird jedes Ergebnis überprüft, um sicherzustellen, ob es noch vorhanden ist und seit der letzten Aktualisierung nicht gelöscht wurde. Wenn es viele Ergebnisse gibt, kann dies eine beachtliche Zeit in Anspruch nehmen." #: moredialogs.xrc:86 msgid " -e Existing" msgstr " -e Vorhanden" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "Wenn abgehakt, wird das Muster als ein regulärer Ausdruck behandelt, nicht nur wie ein übliches Glob." #: moredialogs.xrc:97 msgid " -r Regex" msgstr " -r Regulärer Ausdruck" #: moredialogs.xrc:158 msgid "Find" msgstr "Finden" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Pfad" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "Dies ist die Vollsuche. Es gibt auch eine\nSchnellsuche, die für die meisten Suchanfragen ausreicht." #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "Klicken Sie für die &Schnellsuche" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "Klicken Sie hier, um zum Dialog Schnellsuche zu gelangen." #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "Kreuzen Sie das Kontrollkästchen an, um die Schnellsuche zukünftig zum Standard zu machen." #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "Schnellsuche zum Standard machen" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "Geben Sie den Pfad ein, von wo die Suche gestartet werden soll (oder verwenden Sie eine der Tastenkombinationen)." #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "Geben Sie den Pfad ein, in welchem gesucht werden soll." #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "Das aktuelle Verzeichnis und darunter durchsuchen" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "Aktuelles Verzeichnis" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "Ihr Benutzerverzeichnis und darunter durchsuchen" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "Den kompletten Verzeichnisbaum durchsuchen" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Root ( / )" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "Zur Befehlszeichenkette &hinzufügen, umgeben von Anführungszeichen" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "Zur Befehlszeichenkette hinzufügen. Einfache Anführungszeichen werden ergänzt, um Metazeichen zu schützen." #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Optionen" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "Diese Optionen werden auf den gesamten Befehl angewendet. Wählen Sie beliebige aus." #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "Zeiten (für -amin, -atime, -cmin, -ctime, -mmin, und -mtime) vom heutigen Tagesanfang und nicht von vor 24 Stunden messen." #: moredialogs.xrc:415 msgid "-daystart" msgstr "-daystart" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "Den Inhalt jedes Verzeichnisses vor dem Verzeichnis selbst verarbeiten. Mit anderen Worten, Finden von unten nach oben." #: moredialogs.xrc:426 msgid "-depth" msgstr "-depth" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "Symbolische Verknüpfung zurückverfolgen (d.h. untersuchen, was verknüpft ist, nicht die Verknüpfung selbst). Impliziert -noleaf." #: moredialogs.xrc:437 msgid "-follow" msgstr "-follow" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "Verringern Sie die höchstens ausgewählte Anzahl von Ebenen von Verzeichnissen unterhalb des Startpfades. \"-maxdepth 0\" bedeutet, dass die Tests und Aktionen nur auf die Befehlszeilenargumente angewendet werden." #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "-maxdepth" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "Mit der Suche erst beginnen, wenn die gewählte Tiefe in jedem Verzeichniszweig erreicht ist. \"-mindepth 1\" bedeutet, dass alle Dateien mit Ausnahme der Befehlszeilenargumente verarbeitet werden." #: moredialogs.xrc:470 msgid "-mindepth" msgstr "-mindepth" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "Nicht optimieren mit der Annahme, dass Verzeichnisse 2 Unterverzeichnisse weniger enthalten als ihre Anzahl der harten Links." #: moredialogs.xrc:520 msgid "-noleaf" msgstr "-noleaf" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "Kein Abstieg in Verzeichnisse auf anderen Dateisystemen. -mount ist ein Synonym." #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "-xdev (-mount)" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "HILLLFEE!!" #: moredialogs.xrc:542 msgid "-help" msgstr "-help" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "Zur Befehlszeichenkette &hinzufügen" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "Diese Auswahlmöglichkeiten zur Befehlszeichenkette hinzufügen." #: moredialogs.xrc:580 msgid "Operators" msgstr "Operatoren" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "Für die Vollständigkeit hier, aber es ist normalerweise einfacher ihn direkt in die Befehlszeichenkette zu schreiben." #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "Wählen Sie eins nach dem anderen aus." #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "Logische UND die zwei umgebenden Ausdrücke. Da dies die Standardeinstellung ist, ist die Hervorhebung der einzige Grund dies explizit zu benutzen." #: moredialogs.xrc:645 msgid "-and" msgstr "-and" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "Logische ODER die umgebenden Ausdrücke." #: moredialogs.xrc:656 msgid "-or" msgstr "-or" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "Den folgenden Ausdruck negieren" #: moredialogs.xrc:667 msgid "-not" msgstr "-not" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "Wird (bei geschlossener Klammer) verwendet, um die Priorität zu ändern, z.B. um sicherzustellen, dass zwei -path -Ausdrücke vor einem -prune ausgeführt werden. Es wird automatisch mit einem Rückwärtsschrägstrich \"maskiert\"." #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "Klammer öffnen" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "Wie Klammer öffnen, dies wird automatisch mit einem Rückwärtsschrägstrich \"escaped\"." #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "Klammer schließen" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "Trennt Listeneinträge mit einem Komma. Wenn Sie sich hierfür keine Verwendung vorstellen können, sind Sie in guter Gesellschaft." #: moredialogs.xrc:707 msgid "List ( , )" msgstr "Liste ( , )" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "Geben Sie einen Suchbegriff ein, der Platzhalter enthalten darf. Es darf sich jedoch auch um einen regulären Ausdruck handeln." #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "Pfad oder Regex verwenden, wenn es ein \"/\" in dem Begriff gibt, ansonsten Name." #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "Symbolische Verknüpfung gibt nur Symlinks zurück." #: moredialogs.xrc:812 msgid "Search term" msgstr "Suchbegriff" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "Geben Sie den Namen zum Vergleichen ein, z.B. *.txt oder /usr/s*" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "Groß-/Kleinschreibung ignorieren" #: moredialogs.xrc:852 msgid "This is a" msgstr "Das ist ein" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "Wählen Sie eine dieser Alternativen aus. Neben einem \"Regulären Ausdruck\" können sie auch Platzhalter enthalten.\nSymbolische Verknüpfung gibt nur passende Symlinks zurück.\nRegulärer Ausdruck bedeutet, dass der Eintrag ein korrekter Regex ist und alles zurückgibt, was mit ihm übereinstimmt." #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "regulärer Ausdruck" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "Symbolische Verknüpfung" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "Übereinstimmungen zurückgeben" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "Beliebige Ergebnisse zurückgeben (das Standardverhalten)" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "Übereinstimmungen ignorieren" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "Normalerweise MÖCHTEN Sie die Ergebnisse, aber manchmal möchten Sie z.B. ein bestimmtes Verzeichnis ignorieren. Wenn dem so ist, geben Sie den Pfad ein und wählen Sie anschließend den Pfad und Ignorieren aus." #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "Wählen Sie eine der folgenden Zeiten, um nach dieser zu filtern:" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "Dateien," #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "auf die zugegriffen wurde" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "die geändert wurden" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "deren Status geändert wurde" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "die mehr als" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "die genau" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "die weniger als" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "Geben Sie die Anzahl der Minuten oder Tage ein." #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minuten vergangen" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Tage vergangen" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "in jüngerer Zeit als die Datei:" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "Geben Sie den Pfadnamen der Datei zum Vergleichen ein." #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "Dateien, auf die zuletzt zugegriffen wurde" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "Geben Sie die Anzahl der Tage ein" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "Tage nach der Veränderung" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "Zur Befehlszeichenkette hinzufügen." #: moredialogs.xrc:1325 msgid "Size and type" msgstr "Größe und Typ" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "Wählen Sie (jeweils) bis zu einem der folgenden aus:" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "Dateien mit der Größe" #: moredialogs.xrc:1435 msgid "bytes" msgstr "Bytes" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "512-Byte-Blöcke" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "Kilobytes" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "Leere Dateien" #: moredialogs.xrc:1511 msgid "Type" msgstr "Typ" #: moredialogs.xrc:1531 msgid "File" msgstr "Datei" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "Symbolische Verknüpfung" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Pipe" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "Blockorientiert Spezial" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "Zeichenorientiert Spezial" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "Zur Befehlszeichenkette hinzufügen" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "Eigentümer und Berechtigungen" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Benutzer" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Nach Name" #: moredialogs.xrc:1675 msgid "By ID" msgstr "Nach Kennung" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "Geben Sie den Eigentümernamen zum Vergleichen ein, z.B. root" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "Geben Sie die Kennung zum Vergleichen ein." #: moredialogs.xrc:1790 msgid "No User" msgstr "Kein Benutzer" #: moredialogs.xrc:1798 msgid "No Group" msgstr "Keine Gruppe" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Sonstige" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Lesen" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Schreiben" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "Ausführen" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Spezial" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "Sticky" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "oder oktal eingeben" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "Geben Sie die Oktalzeichenkette zum Vergleichen ein, z.B. 0664" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "Beliebige Übereinstimmung" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "Nur genaue Übereinstimmung" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "Übereinstimmung mit jeder festgelegten Berechtigung" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Aktionen" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "Was soll mit den Ergebnissen gemacht werden. Sie auszugeben ist die Standardeinstellung." #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "Die Ergebnisse auf der Standardausgabe ausgeben, jeweils gefolgt von einem Zeilenumbruch." #: moredialogs.xrc:2200 msgid " print" msgstr "print" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "Das Gleiche wie \"Print\", aber anstatt eines Zeilenumbruchs fügt es ein abschließendes \"\\0\" zu jeder Zeichenkette hinzu." #: moredialogs.xrc:2227 msgid " print0" msgstr "print0" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "Die Ergebnisse auf der Standardausgabe im \"ls -dils\"-Format auflisten." #: moredialogs.xrc:2254 msgid " ls" msgstr "ls" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "Den folgenden Befehl für jede Übereinstimmung ausführen." #: moredialogs.xrc:2292 msgid "exec" msgstr "exec" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "Den folgenden Befehl ausführen, für jede Übereinstimmung erst nachfragen." #: moredialogs.xrc:2303 msgid "ok" msgstr "ok" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Auszuführender Befehl" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "Dies ist der auszuführende Befehl. Das {} ; wird automatisch hinzugefügt." #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "Jede Zeichenkette wie in der Ausgabe ausgeben, aber im folgenden Format: siehe \"man find(1)\" für die sehr komplizierten Details." #: moredialogs.xrc:2360 msgid "printf" msgstr "printf" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "Formatierungszeichenkette" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "Ausgabe als ls, aber in die folgende Datei" #: moredialogs.xrc:2412 msgid "fls" msgstr "fls" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "Jede Zeichenkette als Ausgabe ausgeben, aber in die folgende Datei" #: moredialogs.xrc:2423 msgid "fprint" msgstr "fprint" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "Gleich wie fprint, aber null-terminiert" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "fprint0" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "Zieldatei" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "Der Dateipfad der Zieldatei. Er wird gegebenenfalls erstellt/gekürzt." #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "Verhält sich wie printf, aber in die folgende Datei" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "fprintf" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Befehl:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Hier wird die Find-Befehlszeichenkette gebaut. Entweder verwenden Sie die Dialogseiten oder geben es direkt ein." #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "&SUCHE" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Allgemeine Optionen" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "Dies ist das vollständige Grep.\nEs gibt auch einen Dialog für\nschnelles Grep, der für die meisten\nSuchanfragen ausreicht." #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "Klicken Sie für ein &schnelles Grep" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "Klicken Sie hier, um den Schnelles-Grep-Dialog aufzurufen." #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "Kreuzen Sie das Kontrollkästchen an, um ein schnelles Grep zukünftig zum Standard zu machen." #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "Schnelles Grep zur Standardeinstellung machen." #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "Syntax: grep [Optionen] [ÜbereinstimmungsMuster] [Zu suchende Datei(en)]" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "Wählen Sie auf den ersten 4 Tabs die gewünschten Optionen aus, geben Sie dann in den\nletzten 2 das Suchmuster und den Pfad oder Dateien ein, nach denen gesucht werden soll.\nAlternativ können Sie auch direkt in das Befehlsfeld schreiben." #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "Wählen Sie jede Option, die Sie brauchen." #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w nur ganze Wörter vergleichen" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "Groß-/Kleinschreibung ignorieren, sowohl im Muster als auch im Dateinamen." #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i Groß-/Kleinschreibung ignorieren" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "-x nur vollständig übereinstimmende Zeilen zurückgeben" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "-v nur NICHT übereinstimmende Zeilen zurückgeben" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Verzeichnisoptionen" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "Optionen für die Verzeichnisse" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "Was soll mit den Verzeichnissen gemacht werden?" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "Vergleichen der Namen versuchen (die Standardeinstellung)" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr " -r Rekursion in diesen durchführen" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "Alle zusammen ignorieren" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Dateioptionen" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "Optionen für die Dateien" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "Suche nach einer Datei stoppen" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "Geben Sie die maximale Anzahl an Übereinstimmungen ein." #: moredialogs.xrc:3071 msgid "matches found" msgstr "Übereinstimmungen gefunden" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "Was soll mit den Binärdateien gemacht werden?" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "Jene mit einer Übereinstimmung melden (die Standardeinstellung)." #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "Die Binärdatei durchsuchen und nur die \"Binärdatei-Übereinstimmung\"-Nachricht ausgeben, nicht die entsprechende Zeile." #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "Wie Textdateien behandeln" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "Die Binärdatei durchsuchen und jede Zeile ausgeben, die dem Muster entspricht. Dies ergibt in der Regel Ausschussdaten." #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr " -D Geräte, Sockets, FIFOs ignorieren überspringen" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "Nicht in Dateien suchen, die dem folgenden Muster entsprechen:" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "Nur in Dateien suchen, die dem folgenden Muster entsprechen:" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Ausgabeoptionen" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "Optionen mit Bezug zur Ausgabe" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "-c nur die Anzahl der Übereinstimmungen ausgeben" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "Nur die Namen der Dateien ausgeben, welche Übereinstimmungen enthalten, aber nicht die Übereinstimmungen selbst." #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "-l nur den Dateinamen der Übereinstimmung ausgeben" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "-H den Dateinamen jeder Übereinstimmung ausgeben" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "-n einer Übereinstimmung seine Zeilennummer voranstellen" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "-s keine Fehlermeldungen ausgeben" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "-B Anzeigen" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "Geben Sie die Anzahl der Kontextzeilen ein, die Sie sehen möchten." #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "Zeilen mit vorstehendem Kontext" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "-o nur die übereinstimmenden Abschnitte der Zeile ausgeben" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "Nur die Namen der Dateien ausgeben, welche KEINE Übereinstimmungen enthalten." #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "-L Nur Dateinamen ohne Übereinstimmung ausgeben" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "-h bei mehreren Dateien keine Dateinamen ausgeben" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "Jeder Übereinstimmung den Offset seiner Zeile innerhalb der Datei voranstellen, in Bytes." #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "-b einer Übereinstimmung seinen Byte-Offset voranstellen" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "Überhaupt keine Ausgabe, weder Übereinstimmungen noch Fehler, aber beenden mit 0 bei der ersten Übereinstimmung." #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "-q überhaupt keine Ausgabe ausgeben" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "-A Anzeigen" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "Zeilen mit anhängendem Kontext" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "-C Anzeigen" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "Zeilen sowohl mit vorstehendem als auch anhängendem Kontext." #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "Zeigt Eingaben, die eigentlich von der Standardeingabe (oder einer Pipe) kommen, als Eingaben an, die von diesem Dateinamen kommen. Z.B. wenn der Inhalt eines Archivs angezeigt wird." #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "Der Anzeige vortäuschen, dass die Eingabe aus einer Datei kam:" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Muster" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "Wenn Ihr Suchmuster mit einem Minuszeichen beginnt, wird z.B. -foo grep versuchen, eine nicht existierende Option \"-foo\" zu finden. Die Option -e schützt davor." #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "-e Verwenden Sie dies, wenn das Muster mit einem Minuszeichen beginnt" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "Regulärer Ausdruck zum Vergleichen" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "Geben Sie den Namen ein, nach dem gesucht werden soll. Z.B. foobar oder f.*r" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "&Regex\nHilfe" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "Das Muster nicht als regulären Ausdruck, sondern als eine Liste fester Zeichenketten behandeln, die durch Zeilenumbrüche getrennt sind, welche abgeglichen werden, als ob fgrep verwendet wird." #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "-F Muster behandeln als ob fgrep verwendet wird" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "-P Muster als regulären Ausdruck von Perl behandeln" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "Das Muster aus dieser Datei entpacken, anstatt es in der oberen Tabelle einzugeben." #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "-f das Muster stattdessen aus Datei laden:" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "Zur Befehlszeichenkette hinzufügen. Das Muster wird um einfache Anführungszeichen ergänzt, um Metazeichen zu schützen." #: moredialogs.xrc:3835 msgid "Location" msgstr "Ort" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "Geben Sie den Pfad oder eine Liste von Dateien zum Suchen ein (oder verwenden Sie eine der Tastenkombinationen)." #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "Geben Sie den Pfad ein, von wo aus gesucht werden soll. Wenn Sie die Verknüpfungen auf der rechten Seite verwenden, können Sie ein /* hinzufügen, falls erforderlich." #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "Dies wird die grep-Befehlszeichenkette sein." #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Hier wird die grep-Befehlszeichenkette gebaut. Entweder verwenden Sie die Dialogseiten oder geben es direkt ein." #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "Wenn abgehakt, wird der Dialog automatisch 2 Sekunden nach dem letzten vorgenommenen Eintrag geschlossen." #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "Automatisch Schließen" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Dateien archivieren" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "Datei(en), die im Archiv gespeichert werden soll(en)" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "Weitere Datei hinzufügen" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "Nach einer weiteren Datei suchen" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "&Hinzufügen" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "Fügen Sie die Datei oder das Verzeichnis aus dem oberen Kasten der Liste auf der linken Seite hinzu." #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "Name für das Archiv" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "Geben Sie nur den Hauptteil des Namens ein, nicht die Erweiterung, z.B. foo und nicht foo.tar.gz" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "(Fügen Sie keine Erweiterung hinzu)" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "In diesem Ordner erstellen" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "Nach einem geeigneten Ordner suchen" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "Archiv mithilfe von Tar erstellen" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "Komprimieren mit:" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "Welches Programm (oder keines) soll zum Komprimieren des Archivs verwendet werden. zip und bzip2 sind eine gute Wahl. Wenn es auf Ihrem System vorhanden ist, bietet XZ die beste Kompression." #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "bzip2" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "gzip" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "xz" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "lzma" #: moredialogs.xrc:4431 msgid "7z" msgstr "7z" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "lzop" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "nicht komprimieren" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "Den Namen einer symbolischen Verknüpfung nicht im Archiv speichern, sondern die Datei speichern, auf die sie verweist." #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "Symbolische Verknüpfungen zurückverfolgen" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Versuchen Sie, die Integrität des Archivs zu überprüfen, sobald es erstellt wurde. Nicht garantiert, aber besser als nichts. Bei sehr großen Archiven dauert es jedoch sehr lange." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "Danach überprüfen" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "Die Quelldateien löschen, nachdem sie zum Archiv hinzugefügt wurden. Nur für mutige Benutzer, außer wenn die Dateien unwichtig sind!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "Quelldateien löschen" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "Verwenden Sie zip sowohl zum Archivieren als auch zum Komprimieren der Datei(en). Es komprimiert weniger gut als gzip oder bzip2, also verwenden Sie es aus Kompatibilitätsgründen mit kleineren Betriebssystemen, die diese Programme nicht haben." #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "Stattdessen zip verwenden" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "Dateien zu bestehendem Archiv hinzufügen" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "Zur Liste &hinzufügen" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "Archiv, zu welchem hinzugefügt werden soll" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "Pfad und Name des Archivs. Sofern sie nicht bereits in der Eingabeliste sind, schreiben Sie es hinein oder suchen Sie danach." #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Durchsuchen" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "Symbolische Verknüpfungen zurückverfolgen" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "Archiv danach überprüfen" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "Quelldateien danach löschen" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Dateien komprimieren" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "Zu komprimierende Datei(en)" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "Mit welchem Programm soll komprimiert werden. Bzip2 soll stärker komprimieren (zumindest bei großen Dateien), aber es dauert länger.\nWenn Sie aus irgendeinem Grund Zip verwenden möchten, finden Sie dies unter Archiv > Erstellen." #: moredialogs.xrc:5054 msgid "'compress'" msgstr "\"komprimieren\"" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Schneller" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "Gilt nur für gzip. Je höher der Wert ist, desto größer ist die Komprimierung, aber desto länger dauert es." #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Kleiner" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "Das normale Verhalten ist, eine vorhandene komprimierte Datei mit dem gleichen Namen nicht zu überschreiben. Kreuzen Sie dieses Kästchen an, wenn Sie diese überschreiben möchten." #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "Alle bestehenden Dateien überschreiben" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "Wenn abgehakt, werden alle Dateien in jedem ausgewählten Verzeichnis (und deren Unterverzeichnissen) komprimiert. Wenn nicht abgehakt, werden Verzeichnisse ignoriert." #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "Alle Dateien in allen ausgewählten Verzeichnissen rekursiv komprimieren." #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Komprimierte Dateien extrahieren" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "Zu extrahierende komprimierte Datei(en)" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "Wenn die Auswahl ein Verzeichnis ist, alle komprimierten Dateien im Verzeichnis und seinen Unterverzeichnissen dekomprimieren." #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "Rekursion in Verzeichnissen durchführen" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "Datei automatisch überschreiben, wenn sie den gleichen Namen hat wie eine extrahierte Datei." #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "Vorhandene Dateien überschreiben" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "Gewählte Archive dekomprimieren, aber nicht extrahieren. Wenn nichts ausgewählt ist, werden Archive ignoriert." #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Archive ebenfalls dekomprimieren" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Ein Archiv extrahieren" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Zu extrahierendes Archiv" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Verzeichnis, in welches extrahiert wird" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "Bereits vorhandene Dateien überschreiben, wenn sie den gleichen Namen haben wie jene aus dem Archiv extrahierten Dateien." #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Komprimierte Dateien überprüfen" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Komprimierte Datei(en) zum Überprüfen" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "Komprimierte Dateien &überprüfen" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Archiv überprüfen" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Archiv zum Überprüfen" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Möchten Sie ein Archiv oder Dateien entpacken?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "Ein Archiv &entpacken" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "Datei(en) &dekomprimieren" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "Möchten Sie ein Archiv oder komprimierte Dateien überprüfen?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "Ein &Archiv" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "Komprimierte &Datei(en)" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Eigenschaften" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Allgemein" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Name:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Ort:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Typ:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Größe:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Zugegriffen:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "Administrator geändert:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Verändert:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "Berechtigungen und Eigentum" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Benutzer:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Gruppe:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "Jegliche Änderung in den Berechtigungen oder im Eigentum bei jeder enthaltenen Datei und Unterverzeichnis anwenden." #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "Änderungen auf alle Nachfahren anwenden" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "Esoterik" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "Gerätekennung:" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode:" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "Anzahl an harten Verknüpfungen:" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "Anzahl an 512B-Blöcken:" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "Blockgröße:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "Eigentümerkennung:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "Gruppenkennung:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "Ziel der Verknüpfung:" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "Um das Ziel zu ändern, schreiben Sie entweder den Namen einer anderen Datei oder eines anderen Verzeichnissen hinein oder verwenden Sie die Schaltfläche Durchsuchen." #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "Zum Verknüpfungsziel &wechseln" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "Durchsuchen Sie, um ein anderes Ziel für die symbolische Verknüpfung auswählen." #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "Erstes Verknüpfungsziel:" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "Ultimatives Ziel:" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "Zum ersten Verknüpfungsziel &wechseln" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "Zur Verknüpfung, die das direkte Ziel von dieser ist, wechseln." #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "Zum &endgültigen Verknüpfungsziel wechseln" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "Zur Datei, die das endgültige Ziel dieser Verknüpfung ist, wechseln." #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "fstab-Partition einhängen" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "Einzuhängende Partition" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "Dies ist eine List von bekannten, nicht eingehängten Partitionen in fstab." #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "Einhängepunkt für die Partition" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "Dies ist der zur ausgewählten Partition dazugehörige Einhängepunkt, von fstab übernommen." #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "Eine Nicht-fstab-Partition &einhängen" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "Wenn eine Partition nicht in der fstab angegeben ist, wird sie oben nicht aufgelistet. Klicken Sie auf diese Schaltfläche für alle bekannten Partitionen." #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Partition einhängen" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "Dies ist eine Liste der bekannten, ausgehängten Partitionen. Wenn Sie weitere kennen, können Sie sie hier hineinschreiben." #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "Der Einhängepunkt wird automatisch eingetragen, wenn es bereits einen fstab-Eintrag für dieses Gerät gibt. Wenn nicht, müssen Sie einen selbst eingeben (oder durchsuchen)." #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "Nach einem Einhängepunkt suchen" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Einhängeoptionen" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "Schreibzugriff auf das Dateisystem soll nicht erlaubt sein." #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Nur Lesezugriff" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "Alle Schreibvorgänge auf das Dateisystem sollen synchron sein, während es eingehängt ist." #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "Synchrone Schreibvorgänge" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "Zugriffszeiten von Dateien sollen nicht aktualisiert werden, wenn auf die Dateien zugegriffen wird." #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "Keine Aktualisierung der Dateizugriffszeit." #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "Keine Dateien im Dateisystem sollen ausgeführt werden." #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Dateien nicht ausführbar" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "Auf Gerätespezialdateien im Dateisystem soll kein Zugriff möglich sein." #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "Gerätespezialdateien ausblenden" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "Setuid- und Setgid-Berechtigungen zu Dateien im Dateisystem sollen ignoriert werden." #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Setuid/Setgid ignorieren" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "Wenn angekreuzt, wird ein passiver Übersetzer zusätzlich zum aktiven Übersetzer erzeugt werden. Die Einhängung wird dann auch nach einem Neustart bestehen bleiben, bis Sie es wieder entfernen." #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "Auch einen passiven Übersetzer erstellen." #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "Einhängen mit SSHFS" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Entfernter Benutzer" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "Optional können Sie den Namen des entfernten Benutzers eingeben. Wenn Sie es leer lassen, wird Ihr lokaler Benutzername verwendet." #: moredialogs.xrc:10212 msgid " @" msgstr " @" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Hostname" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "Geben Sie den Namen des Servers, z.B. meinserver.eu, ein." #: moredialogs.xrc:10248 msgid " :" msgstr " :" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Entferntes Verzeichnis" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "Nach Belieben können Sie ein Verzeichnis zum Einhängen bereitstellen. Die Standardeinstellung ist das Benutzerverzeichnis des entfernten Benutzers." #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "Lokaler Einhängepunkt" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "Die UID und die GID des entfernten Hosts auf die des lokalen Hosts umwandeln. Empfohlen." #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "idmap=Benutzer" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "schreibgeschützt einhängen" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Weitere Optionen:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "Geben Sie alle weiteren Optionen ein, die Sie benötigen, z.B. -p 1234 -o cache_timeout=2. Ihnen wird zugetraut, dass Sie die Syntax richtig hinbekommen." #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "DVD-RAM-Disc einhängen" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "Einzuhängendes Gerät" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "Dies ist der Gerätename für das DVD-RAM-Laufwerk." #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "Dies sind die dazugehörigen Einhängepunkte in der fstab. Sie können Ihre eigenen eingeben, wenn Sie möchten." #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "ISO-Abbild einhängen" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Einzuhängendes Abbild" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Einhängepunkt für das Abbild" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Bereits\nEingehängt" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "NFS-Export einhängen" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Server auswählen" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "Dies ist die Liste mit NFS-Servern, die derzeit im Netzwerk aktiv sind. Wenn Sie von einem anderen wissen, verwenden Sie die Schaltfläche auf der rechten Seite, um es hinzuzufügen." #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Anderen Server manuell hinzufügen" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "Einzuhängender Export" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "Dies sind die auf dem obigen Server verfügbaren Exporte." #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "bereits eingehängt" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "Was soll gemacht werden, wenn der Server ausfällt. Ein hartes Einhängen friert Ihren Computer ein, bis sich der Server wieder erholt; ein weiches Einhängen sollte sich schnell wieder auflösen, kann jedoch Daten verlieren." #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "Hartes Einhängen" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "Weiches Einhängen" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "Einhängen mit Lese-/Schreibzugriff" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "Schreibgeschützt einhängen" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "NFS-Server hinzufügen" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "IP-Adresse des neuen Servers" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "Geben Sie die Adresse ein. Es sollte so etwas wie 192.168.0.2 sein." #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "Diese Adresse zur weiteren Verwendung speichern." #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "Samba-Freigabe einhängen" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "Verfügbare Server" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "IP-Adresse" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "Dies sind die IP-Adressen der bekannten Quellen von Samba-Freigaben im Netzwerk." #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Hostname" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "Dies sind die Hostnamen der bekannten Quellen von Samba-Freigaben im Netzwerk." #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "Einzuhängende Freigabe" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "Dies sind die vom oberen Server verfügbaren Freigaben." #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "Diesen Namen und dieses Passwort verwenden." #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Anonymes Einhängen versuchen" #: moredialogs.xrc:11695 msgid "Username" msgstr "Benutzername" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Geben Sie Ihren Samba-Benutzernamen für diese Freigabe ein." #: moredialogs.xrc:11720 msgid "Password" msgstr "Passwort" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Geben Sie das dazugehörige Passwort ein (falls es eines gibt)." #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Partition aushängen" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "Partition zum Aushängen" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "Dies ist eine Liste der eingehängten Partitionen von mtab." #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "Einhängepunkt für diese Partition" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "Dies ist der zur ausgewählten Partition dazugehörige Einhängepunkt." #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "Als Superbenutzer ausführen" #: moredialogs.xrc:12025 msgid "The command:" msgstr "Der Befehl:" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "zusätzliche Berechtigungen erforderlich" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "Bitte geben sie das Administratorpasswort ein:" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "Wenn angekreuzt, wird das Passwort standardmäßig für 15 Minuten gespeichert." #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "Dieses Passwort für eine Weile merken" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "Schnelles Grep" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "Dies ist der Schnelles-Grep-Dialog.\nEs stellt nur die häufigsten der\nzahlreichen Grep-Optionen zur Verfügung." #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "Klicken Sie für ein &vollständiges Grep" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "Klicken Sie hier, um zum vollständigen Grep-Dialog zu wechseln." #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "Kreuzen Sie das Kontrollkästchen an, um ein vollständiges Grep zukünftig zum Standard zu machen." #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "Vollständiges Grep zur Standardeinstellung machen." #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "Geben Sie den Pfad oder eine Liste von Dateien zum Suchen ein\n(oder verwenden Sie eine der Tastenkombinationen)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "Nur ganze Wörter vergleichen" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w nur ganze Wörter vergleichen" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "Groß- und Kleinschreibung bei Suche berücksichtigen" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i Groß-/Kleinschreibung ignorieren" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "Nicht in Binärdateien suchen" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "-n Präfix-Übereinstimmung mit Zeilennummer" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Binärdateien ignorieren" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "Nicht in Geräten, FIFOs, Sockets und Ähnlichem suchen." #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "Geräte, fifos, usw. ignorieren" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "Was soll mit den Verzeichnissen gemacht werden?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "Namen vergleichen" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "Rekursion in diesen durchführen" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "Schnellsuche" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "Dies ist der Dialog Schnellsuche.\nEr bietet nur die gängigsten\nder vielen Suchoptionen." #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "Klicken Sie für die &Vollsuche" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "Klicken Sie hier, um zum Dialog Vollsuche zu gelangen." #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "Kreuzen Sie das Kontrollkästchen an, um die Vollsuche zukünftig zum Standard zu machen." #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "Vollsuche zum Standard machen" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "Geben Sie den Pfad ein, von dem aus die Suche gestartet werden soll\n(oder verwenden Sie eine der Tastenkombinationen)" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "Suchbegriff:" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "Geben Sie den Namen oder Pfad ein, nach dem gesucht werden soll.\nEr darf Platzhalter enthalten, z.B. foobar oder f.*r\nAlternativ kann es auch ein regulärer Ausdruck sein." #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "Groß-/Kleinschreibung ignorieren" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "Das ist ein:" #: moredialogs.xrc:12769 msgid "name" msgstr "Name" #: moredialogs.xrc:12778 msgid "path" msgstr "Pfad" #: moredialogs.xrc:12787 msgid "regex" msgstr "regulärer Ausdruck" ./4pane-6.0/locale/4Pane.pot0000666000175000017500000054137113564773313014450 0ustar daviddavid# 4Pane pot file # Copyright (C) 2019 David Hart # This file is distributed under the same license as the 4Pane package. # David Hart , 2019. # msgid "" msgstr "" "Project-Id-Version: 4Pane-6.0\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2019-11-19 13:54+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 685 and MyFiles.cpp near 1050: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7614 msgid "Ctrl" msgstr "" #: Accelerators.cpp:124 configuredialogs.xrc:7621 msgid "Alt" msgstr "" #: Accelerators.cpp:125 configuredialogs.xrc:7607 msgid "Shift" msgstr "" #: Accelerators.cpp:213 msgid "C&ut" msgstr "" #: Accelerators.cpp:213 msgid "&Copy" msgstr "" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "" #: Accelerators.cpp:213 msgid "De&lete" msgstr "" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "" #: Accelerators.cpp:214 msgid "&Open" msgstr "" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "" #: Accelerators.cpp:214 msgid "&Paste" msgstr "" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "" #: Accelerators.cpp:215 msgid "Und&o" msgstr "" #: Accelerators.cpp:215 msgid "&Redo" msgstr "" #: Accelerators.cpp:215 msgid "Select &All" msgstr "" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "" #: Accelerators.cpp:217 msgid "&Extension" msgstr "" #: Accelerators.cpp:217 msgid "&Size" msgstr "" #: Accelerators.cpp:217 msgid "&Time" msgstr "" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "" #: Accelerators.cpp:218 msgid "&Owner" msgstr "" #: Accelerators.cpp:218 msgid "&Group" msgstr "" #: Accelerators.cpp:218 msgid "&Link" msgstr "" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "" #: Accelerators.cpp:228 msgid "E&xit" msgstr "" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2740 msgid "Configure Shortcuts" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "" #: Accelerators.cpp:229 Tools.cpp:2937 msgid "Repeat Previous Program" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:232 msgid "&Keep Modification-time when pasting files" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:282 msgid "" "Should a Moved or Pasted file keep its original modification time (as in 'cp " "-a')" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1411 Archive.cpp:1434 Archive.cpp:1461 #: Archive.cpp:1482 Bookmarks.cpp:432 Configure.cpp:1852 Devices.cpp:199 #: Filetypes.cpp:1118 MyFrame.cpp:1159 MyFrame.cpp:2515 MyFrame.cpp:2586 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:351 Tools.cpp:419 #: Tools.cpp:2267 Tools.cpp:2290 Tools.cpp:2954 msgid "Couldn't load configuration!?" msgstr "" #: Accelerators.cpp:502 msgid "&File" msgstr "" #: Accelerators.cpp:502 msgid "&Edit" msgstr "" #: Accelerators.cpp:502 msgid "&View" msgstr "" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "" #: Accelerators.cpp:502 msgid "&Archive" msgstr "" #: Accelerators.cpp:502 msgid "&Mount" msgstr "" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "" #: Accelerators.cpp:502 msgid "&Options" msgstr "" #: Accelerators.cpp:502 msgid "&Help" msgstr "" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "" #: Accelerators.cpp:675 msgid "Default" msgstr "" #: Accelerators.cpp:694 msgid "Extension" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7662 moredialogs.xrc:8851 msgid "Group" msgstr "" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:645 Bookmarks.cpp:1042 Bookmarks.cpp:1113 #: Configure.cpp:2395 Configure.cpp:2449 Configure.cpp:2512 Configure.cpp:2767 #: Configure.cpp:3563 Configure.cpp:4813 Devices.cpp:3270 Filetypes.cpp:1223 #: Filetypes.cpp:1265 Filetypes.cpp:1470 Filetypes.cpp:1615 Filetypes.cpp:1894 #: Filetypes.cpp:2208 Tools.cpp:1205 Tools.cpp:1715 msgid "Are you sure?" msgstr "" #: Accelerators.cpp:927 Accelerators.cpp:928 msgid "None" msgstr "" #: Accelerators.cpp:928 msgid "Same" msgstr "" #: Accelerators.cpp:947 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:947 msgid "Change label" msgstr "" #: Accelerators.cpp:954 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:954 msgid "Change Help String" msgstr "" #: Archive.cpp:123 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:123 ArchiveStream.cpp:458 ArchiveStream.cpp:727 #: ArchiveStream.cpp:732 Bookmarks.cpp:678 Configure.cpp:2361 #: Configure.cpp:2389 MyDirs.cpp:1246 MyDirs.cpp:1356 MyDirs.cpp:1425 #: MyDirs.cpp:1503 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "" #: Archive.cpp:136 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:262 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:267 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:322 msgid "" "The directory in which you want to create the archive doesn't seem to " "exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:357 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:398 Archive.cpp:408 Archive.cpp:1143 Archive.cpp:1149 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:398 Archive.cpp:408 Archive.cpp:411 Archive.cpp:1000 #: Archive.cpp:1006 Archive.cpp:1009 Archive.cpp:1017 Archive.cpp:1143 #: Archive.cpp:1149 Archive.cpp:1159 Archive.cpp:1168 Bookmarks.cpp:867 #: Configure.cpp:4271 MyFiles.cpp:700 msgid "Oops" msgstr "" #: Archive.cpp:411 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:710 Archive.cpp:1068 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:825 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:841 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:930 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:1000 Archive.cpp:1159 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1006 Archive.cpp:1009 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1017 Archive.cpp:1168 msgid "Can't find unrar on your system..." msgstr "" #: Archive.cpp:1021 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1174 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1238 msgid "File(s) compressed" msgstr "" #: Archive.cpp:1238 msgid "Compression failed" msgstr "" #: Archive.cpp:1242 msgid "File(s) decompressed" msgstr "" #: Archive.cpp:1242 msgid "Decompression failed" msgstr "" #: Archive.cpp:1246 msgid "File(s) verified" msgstr "" #: Archive.cpp:1246 Archive.cpp:1266 Archive.cpp:1308 msgid "Verification failed" msgstr "" #: Archive.cpp:1252 msgid "Archive created" msgstr "" #: Archive.cpp:1252 msgid "Archive creation failed" msgstr "" #: Archive.cpp:1257 msgid "File(s) added to Archive" msgstr "" #: Archive.cpp:1257 msgid "Archive addition failed" msgstr "" #: Archive.cpp:1262 msgid "Archive extracted" msgstr "" #: Archive.cpp:1262 msgid "Extraction failed" msgstr "" #: Archive.cpp:1266 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:614 MyDirs.cpp:747 MyDirs.cpp:909 #: MyDirs.cpp:1058 MyDirs.cpp:1395 MyDirs.cpp:1926 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:614 MyDirs.cpp:909 MyDirs.cpp:1926 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:663 MyDirs.cpp:1932 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:663 Configure.cpp:172 MyDirs.cpp:921 MyDirs.cpp:926 #: MyDirs.cpp:1932 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:723 msgid "" "For some reason, trying to create a dir to receive the backup failed. Sorry!" msgstr "" #: ArchiveStream.cpp:727 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:732 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:766 ArchiveStream.cpp:902 MyFrame.cpp:746 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "" #: ArchiveStream.cpp:896 ArchiveStream.cpp:902 Redo.h:124 Redo.h:352 Redo.h:373 msgid "Move" msgstr "" #: ArchiveStream.cpp:1331 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1528 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1682 ArchiveStream.cpp:1693 ArchiveStream.cpp:1704 #: ArchiveStream.cpp:1715 ArchiveStream.cpp:1730 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1722 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1722 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1736 MyGenericDirCtrl.cpp:1776 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1736 ArchiveStream.cpp:1737 MyGenericDirCtrl.cpp:1776 #: MyGenericDirCtrl.cpp:1777 msgid "Sorry" msgstr "" #: ArchiveStream.cpp:1737 MyGenericDirCtrl.cpp:1777 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:730 #: Bookmarks.cpp:935 Bookmarks.cpp:940 Bookmarks.cpp:1019 msgid "Separator" msgstr "" #: Bookmarks.cpp:200 Bookmarks.cpp:950 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "" #: Bookmarks.cpp:215 msgid "Copied" msgstr "" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "" #: Bookmarks.cpp:518 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:529 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:645 Filetypes.cpp:1894 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:668 Filetypes.cpp:1213 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:677 Bookmarks.cpp:1041 Filetypes.cpp:1222 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:713 msgid "Folder added" msgstr "" #: Bookmarks.cpp:751 msgid "Separator added" msgstr "" #: Bookmarks.cpp:849 Bookmarks.cpp:866 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:850 msgid "Oops?" msgstr "" #: Bookmarks.cpp:855 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:855 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:951 msgid "Pasted" msgstr "" #: Bookmarks.cpp:1029 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1104 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1105 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1106 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1112 Filetypes.cpp:1263 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1123 msgid "Folder deleted" msgstr "" #: Bookmarks.cpp:1134 msgid "Bookmark deleted" msgstr "" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:162 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:171 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:181 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:182 msgid "Fake config file!" msgstr "" #: Configure.cpp:327 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your " "installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:328 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:336 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:344 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your " "installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:345 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:353 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:361 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your " "installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:362 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:370 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1107 msgid "&Run a Program" msgstr "" #: Configure.cpp:1134 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1138 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1142 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1147 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1152 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1157 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1166 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1170 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1174 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1179 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1184 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1189 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1198 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1643 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1654 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1710 msgid "" "If you are seeing this message (and you shouldn't!), it's because the " "configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only " "partition." msgstr "" #: Configure.cpp:2045 moredialogs.xrc:292 moredialogs.xrc:3889 #: moredialogs.xrc:12269 moredialogs.xrc:12577 msgid "Shortcuts" msgstr "" #: Configure.cpp:2048 msgid "Tools" msgstr "" #: Configure.cpp:2050 msgid "Add a tool" msgstr "" #: Configure.cpp:2052 msgid "Edit a tool" msgstr "" #: Configure.cpp:2054 msgid "Delete a tool" msgstr "" #: Configure.cpp:2057 Configure.cpp:2741 msgid "Devices" msgstr "" #: Configure.cpp:2059 msgid "Automount" msgstr "" #: Configure.cpp:2061 msgid "Mounting" msgstr "" #: Configure.cpp:2063 msgid "Usb" msgstr "" #: Configure.cpp:2065 msgid "Removable" msgstr "" #: Configure.cpp:2067 msgid "Fixed" msgstr "" #: Configure.cpp:2069 msgid "Advanced" msgstr "" #: Configure.cpp:2071 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2073 msgid "Advanced removable" msgstr "" #: Configure.cpp:2075 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2079 msgid "The Display" msgstr "" #: Configure.cpp:2081 msgid "Trees" msgstr "" #: Configure.cpp:2083 msgid "Tree font" msgstr "" #: Configure.cpp:2085 Configure.cpp:2745 msgid "Misc" msgstr "" #: Configure.cpp:2088 Configure.cpp:2744 msgid "Terminals" msgstr "" #: Configure.cpp:2090 msgid "Real" msgstr "" #: Configure.cpp:2092 msgid "Emulator" msgstr "" #: Configure.cpp:2095 msgid "The Network" msgstr "" #: Configure.cpp:2098 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2100 msgid "Numbers" msgstr "" #: Configure.cpp:2102 msgid "Times" msgstr "" #: Configure.cpp:2104 msgid "Superuser" msgstr "" #: Configure.cpp:2106 msgid "Other" msgstr "" #: Configure.cpp:2347 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2351 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2361 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2389 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2394 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2447 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2448 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2477 msgid " Click when Finished " msgstr "" #: Configure.cpp:2483 msgid " Edit this Command " msgstr "" #: Configure.cpp:2511 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2527 Filetypes.cpp:1797 msgid "Choose a file" msgstr "" #: Configure.cpp:2740 msgid "User-defined tools" msgstr "" #: Configure.cpp:2741 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2741 msgid "Devices Mount" msgstr "" #: Configure.cpp:2741 msgid "Devices Usb" msgstr "" #: Configure.cpp:2741 msgid "Removable Devices" msgstr "" #: Configure.cpp:2741 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2742 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2742 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2742 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2742 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2743 msgid "Display" msgstr "" #: Configure.cpp:2743 msgid "Display Trees" msgstr "" #: Configure.cpp:2743 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2743 msgid "Display Misc" msgstr "" #: Configure.cpp:2744 msgid "Real Terminals" msgstr "" #: Configure.cpp:2744 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2744 msgid "Networks" msgstr "" #: Configure.cpp:2745 msgid "Misc Undo" msgstr "" #: Configure.cpp:2745 msgid "Misc Times" msgstr "" #: Configure.cpp:2745 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2745 msgid "Misc Other" msgstr "" #: Configure.cpp:2766 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2923 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2925 msgid "Default tree Font" msgstr "" #: Configure.cpp:3502 msgid " (Ignored)" msgstr "" #: Configure.cpp:3563 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3828 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3830 msgid "Default Font" msgstr "" #: Configure.cpp:4037 msgid "Delete " msgstr "" #: Configure.cpp:4037 MyDirs.cpp:1235 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "" #: Configure.cpp:4048 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4051 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4218 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4219 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4271 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4316 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4813 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4903 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "" #: Devices.cpp:308 msgid "&UnMount " msgstr "" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2192 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "" #: Devices.cpp:2192 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3213 Devices.cpp:3245 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3213 Devices.cpp:3245 msgid "No app entered" msgstr "" #: Devices.cpp:3219 Devices.cpp:3251 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3219 Devices.cpp:3251 msgid "App not found" msgstr "" #: Devices.cpp:3270 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3486 msgid "png" msgstr "" #: Devices.cpp:3486 msgid "xpm" msgstr "" #: Devices.cpp:3486 msgid "bmp" msgstr "" #: Devices.cpp:3486 Devices.cpp:3488 dialogs.xrc:3763 msgid "Cancel" msgstr "" #: Devices.cpp:3487 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:457 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:499 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:502 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:526 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:558 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:561 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:609 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:624 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:674 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:928 Tools.cpp:1833 Tools.cpp:2127 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:212 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:215 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:219 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:222 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:347 msgid "Regular File" msgstr "" #: Filetypes.cpp:348 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:349 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:351 msgid "Character Device" msgstr "" #: Filetypes.cpp:352 msgid "Block Device" msgstr "" #: Filetypes.cpp:353 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:354 msgid "FIFO" msgstr "" #: Filetypes.cpp:355 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:356 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:995 msgid "Applications" msgstr "" #: Filetypes.cpp:1256 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1257 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1264 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1276 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1329 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1330 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1337 Filetypes.cpp:1723 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1368 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1370 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1371 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1419 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1451 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1612 Filetypes.cpp:1661 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1614 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1672 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1990 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1992 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2207 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:262 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:571 msgid "Show Hidden" msgstr "" #: Misc.cpp:1391 MyDirs.cpp:1154 MyDirs.cpp:1329 msgid "cut" msgstr "" #: Misc.cpp:1396 Misc.cpp:1398 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10469 moredialogs.xrc:11004 #: moredialogs.xrc:11523 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:881 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:952 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1267 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't " "properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1288 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that " "Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1297 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't " "properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1301 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1325 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1326 msgid "No server found" msgstr "" #: Mounts.cpp:1455 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1524 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't " "properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1565 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1566 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:478 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:481 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:485 MyDirs.cpp:486 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:491 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:492 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:506 moredialogs.xrc:319 moredialogs.xrc:3905 #: moredialogs.xrc:12290 moredialogs.xrc:12598 msgid "Home" msgstr "" #: MyDirs.cpp:510 msgid "Documents" msgstr "" #: MyDirs.cpp:652 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:685 msgid " D H " msgstr "" #: MyDirs.cpp:685 msgid " D " msgstr "" #: MyDirs.cpp:698 msgid "Dir: " msgstr "" #: MyDirs.cpp:699 msgid "Files, total size" msgstr "" #: MyDirs.cpp:700 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:712 #, c-format msgid "%s in %zu directories" msgstr "" #: MyDirs.cpp:721 MyDirs.cpp:848 MyDirs.cpp:859 MyDirs.cpp:1819 #: MyFrame.cpp:1189 MyFrame.cpp:1197 MyFrame.cpp:1205 MyFrame.cpp:1213 #: MyFrame.cpp:1221 MyFrame.cpp:1236 MyFrame.cpp:1293 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:721 MyDirs.cpp:848 MyDirs.cpp:859 MyDirs.cpp:1819 #: MyFrame.cpp:1189 MyFrame.cpp:1197 MyFrame.cpp:1205 MyFrame.cpp:1213 #: MyFrame.cpp:1221 MyFrame.cpp:1236 MyFrame.cpp:1293 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:745 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:746 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:804 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:804 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:886 MyDirs.cpp:892 MyDirs.cpp:972 msgid "moved" msgstr "" #: MyDirs.cpp:920 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:926 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1056 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1057 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1073 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1073 msgid "Hard" msgstr "" #: MyDirs.cpp:1073 msgid "Soft" msgstr "" #: MyDirs.cpp:1098 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1104 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1108 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1145 msgid "linked" msgstr "" #: MyDirs.cpp:1155 msgid "trashed" msgstr "" #: MyDirs.cpp:1155 MyDirs.cpp:1329 msgid "deleted" msgstr "" #: MyDirs.cpp:1168 MyDirs.cpp:1395 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1182 MyDirs.cpp:1385 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1182 MyDirs.cpp:1385 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1183 MyDirs.cpp:1386 msgid "Item not found" msgstr "" #: MyDirs.cpp:1195 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1203 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1196 MyDirs.cpp:1204 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1197 MyDirs.cpp:1205 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1202 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a 'can'." msgstr "" #: MyDirs.cpp:1206 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1219 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1220 msgid "Delete: " msgstr "" #: MyDirs.cpp:1228 MyDirs.cpp:1410 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1231 MyDirs.cpp:1413 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1241 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1246 MyDirs.cpp:1425 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1338 MyDirs.cpp:1485 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1339 MyDirs.cpp:1486 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1340 MyDirs.cpp:1487 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1343 MyDirs.cpp:1344 MyDirs.cpp:1345 MyDirs.cpp:1490 #: MyDirs.cpp:1491 MyDirs.cpp:1492 msgid "For " msgstr "" #: MyDirs.cpp:1343 MyDirs.cpp:1490 msgid " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1344 MyDirs.cpp:1491 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1345 MyDirs.cpp:1492 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1347 MyDirs.cpp:1494 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1350 MyDirs.cpp:1497 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1351 MyDirs.cpp:1498 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1351 MyDirs.cpp:1498 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1354 MyDirs.cpp:1501 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1354 MyDirs.cpp:1501 msgid " of the " msgstr "" #: MyDirs.cpp:1354 MyDirs.cpp:1501 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1359 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1359 MyDirs.cpp:1506 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1417 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1418 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1431 MyDirs.cpp:1508 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1527 MyDirs.cpp:1533 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1531 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1550 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1563 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1813 msgid "copied" msgstr "" #: MyDirs.cpp:1899 MyDirs.cpp:1907 MyDirs.cpp:1986 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1900 MyDirs.cpp:1908 MyDirs.cpp:1977 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1051 msgid " D F" msgstr "" #: MyFiles.cpp:1052 msgid " R" msgstr "" #: MyFiles.cpp:1053 msgid " H " msgstr "" #: MyFiles.cpp:1090 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1090 msgid " of files" msgstr "" #: MyFiles.cpp:1140 #, c-format msgid "%s in %zu %s" msgstr "" #: MyFiles.cpp:1140 msgid "files and directories" msgstr "" #: MyFiles.cpp:1143 msgid "directories" msgstr "" #: MyFiles.cpp:1143 msgid "directory" msgstr "" #: MyFiles.cpp:1144 msgid "files" msgstr "" #: MyFiles.cpp:1144 msgid "file" msgstr "" #: MyFiles.cpp:1145 #, c-format msgid " in %zu %s and %zu %s" msgstr "" #: MyFiles.cpp:1147 MyFiles.cpp:1148 #, c-format msgid " in %zu %s" msgstr "" #: MyFiles.cpp:1684 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1690 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1754 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1754 msgid " failures" msgstr "" #: MyFiles.cpp:1823 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:156 MyFrame.cpp:161 MyFrame.cpp:171 MyFrame.cpp:182 msgid "Warning!" msgstr "" #: MyFrame.cpp:309 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:312 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:594 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:741 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:742 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:744 msgid "Cut" msgstr "" #: MyFrame.cpp:744 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:745 msgid "Copy" msgstr "" #: MyFrame.cpp:745 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:746 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:750 msgid "UnDo" msgstr "" #: MyFrame.cpp:750 msgid "Undo an action" msgstr "" #: MyFrame.cpp:752 msgid "ReDo" msgstr "" #: MyFrame.cpp:752 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:756 msgid "New Tab" msgstr "" #: MyFrame.cpp:756 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:757 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:757 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:758 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:758 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1046 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1922 MyGenericDirCtrl.cpp:845 MyGenericDirCtrl.cpp:863 #: MyGenericDirCtrl.cpp:874 msgid "Error" msgstr "" #: MyFrame.cpp:1926 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3095 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:655 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:657 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:845 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:863 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:874 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:287 MyNotebook.cpp:346 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:349 msgid " again" msgstr "" #: MyNotebook.cpp:404 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:420 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:420 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1553 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions " "problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions " "problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A " "permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been " "saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data " "will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:195 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:197 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:279 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:281 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:283 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:321 Tools.cpp:477 Tools.cpp:483 Tools.cpp:657 msgid "Show" msgstr "" #: Tools.cpp:321 Tools.cpp:477 Tools.cpp:483 Tools.cpp:657 msgid "Hide" msgstr "" #: Tools.cpp:1204 msgid "" "You haven't added this page's choices to the 'find' command. If the page " "changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1714 msgid "" "You haven't added this page's choices to the 'grep' command. If the page " "changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2466 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2467 msgid "Open selected file" msgstr "" #: Tools.cpp:2691 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2692 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2693 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2898 msgid " items " msgstr "" #: Tools.cpp:2898 msgid " item " msgstr "" #: Tools.cpp:2931 Tools.cpp:3215 msgid "Repeat: " msgstr "" #: Tools.cpp:3077 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3095 msgid "Command added" msgstr "" #: Tools.cpp:3291 msgid "first" msgstr "" #: Tools.cpp:3291 msgid "other" msgstr "" #: Tools.cpp:3291 msgid "next" msgstr "" #: Tools.cpp:3291 msgid "last" msgstr "" #: Tools.cpp:3307 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3311 msgid "" "Malformed user-defined command: you can use only one modifier per parameter. " "Aborting" msgstr "" #: Tools.cpp:3315 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3361 msgid "Please type in the" msgstr "" #: Tools.cpp:3366 msgid "parameter" msgstr "" #: Tools.cpp:3379 msgid "ran successfully" msgstr "" #: Tools.cpp:3382 msgid "User-defined tool" msgstr "" #: Tools.cpp:3383 msgid "returned with exit code" msgstr "" #: Devices.h:433 msgid "Browse for new Icons" msgstr "" #: Misc.h:66 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:271 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2661 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2275 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 configuredialogs.xrc:2147 #: configuredialogs.xrc:2243 configuredialogs.xrc:2339 #: configuredialogs.xrc:4416 configuredialogs.xrc:4570 #: configuredialogs.xrc:4771 configuredialogs.xrc:4954 #: configuredialogs.xrc:6947 configuredialogs.xrc:7078 #: configuredialogs.xrc:7173 configuredialogs.xrc:7536 #: configuredialogs.xrc:7865 configuredialogs.xrc:8095 #: configuredialogs.xrc:8419 configuredialogs.xrc:8547 dialogs.xrc:354 #: dialogs.xrc:2132 dialogs.xrc:2238 dialogs.xrc:2322 dialogs.xrc:2496 #: dialogs.xrc:2630 dialogs.xrc:2798 dialogs.xrc:3095 dialogs.xrc:3466 #: dialogs.xrc:3579 dialogs.xrc:3873 dialogs.xrc:4437 dialogs.xrc:4554 #: moredialogs.xrc:121 moredialogs.xrc:4516 moredialogs.xrc:4858 #: moredialogs.xrc:5141 moredialogs.xrc:5382 moredialogs.xrc:5635 #: moredialogs.xrc:5947 moredialogs.xrc:6460 moredialogs.xrc:6868 #: moredialogs.xrc:7163 moredialogs.xrc:7561 moredialogs.xrc:7977 #: moredialogs.xrc:8287 moredialogs.xrc:8750 moredialogs.xrc:9174 #: moredialogs.xrc:9488 moredialogs.xrc:9727 moredialogs.xrc:10061 #: moredialogs.xrc:10365 moredialogs.xrc:10512 moredialogs.xrc:10766 #: moredialogs.xrc:11131 moredialogs.xrc:11267 moredialogs.xrc:11710 #: moredialogs.xrc:11900 moredialogs.xrc:12071 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 configuredialogs.xrc:1660 #: configuredialogs.xrc:1810 configuredialogs.xrc:2022 #: configuredialogs.xrc:2376 configuredialogs.xrc:2571 #: configuredialogs.xrc:2775 configuredialogs.xrc:2921 #: configuredialogs.xrc:3098 configuredialogs.xrc:3346 #: configuredialogs.xrc:3485 configuredialogs.xrc:3779 #: configuredialogs.xrc:4008 configuredialogs.xrc:4168 #: configuredialogs.xrc:4275 configuredialogs.xrc:4419 #: configuredialogs.xrc:4573 configuredialogs.xrc:4774 #: configuredialogs.xrc:4957 configuredialogs.xrc:5244 #: configuredialogs.xrc:5487 configuredialogs.xrc:5659 #: configuredialogs.xrc:5858 configuredialogs.xrc:6056 #: configuredialogs.xrc:6209 configuredialogs.xrc:6364 #: configuredialogs.xrc:6534 configuredialogs.xrc:6700 #: configuredialogs.xrc:6950 configuredialogs.xrc:7081 #: configuredialogs.xrc:7176 configuredialogs.xrc:7342 #: configuredialogs.xrc:7539 configuredialogs.xrc:7868 #: configuredialogs.xrc:8098 configuredialogs.xrc:8242 #: configuredialogs.xrc:8422 configuredialogs.xrc:8550 dialogs.xrc:357 #: dialogs.xrc:2135 dialogs.xrc:2241 dialogs.xrc:2325 dialogs.xrc:2499 #: dialogs.xrc:2633 dialogs.xrc:2801 dialogs.xrc:3098 dialogs.xrc:3469 #: dialogs.xrc:3582 dialogs.xrc:3661 dialogs.xrc:3876 dialogs.xrc:4440 #: dialogs.xrc:4557 dialogs.xrc:4574 moredialogs.xrc:124 moredialogs.xrc:2633 #: moredialogs.xrc:4013 moredialogs.xrc:4519 moredialogs.xrc:4861 #: moredialogs.xrc:5144 moredialogs.xrc:5385 moredialogs.xrc:5638 #: moredialogs.xrc:5817 moredialogs.xrc:5950 moredialogs.xrc:6463 #: moredialogs.xrc:6871 moredialogs.xrc:7166 moredialogs.xrc:7564 #: moredialogs.xrc:7980 moredialogs.xrc:8290 moredialogs.xrc:8753 #: moredialogs.xrc:9177 moredialogs.xrc:9491 moredialogs.xrc:9730 #: moredialogs.xrc:10064 moredialogs.xrc:10368 moredialogs.xrc:10515 #: moredialogs.xrc:10769 moredialogs.xrc:11134 moredialogs.xrc:11270 #: moredialogs.xrc:11713 moredialogs.xrc:11903 moredialogs.xrc:12074 #: moredialogs.xrc:12434 moredialogs.xrc:12755 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1674 configuredialogs.xrc:1824 #: configuredialogs.xrc:2036 configuredialogs.xrc:2390 #: configuredialogs.xrc:2585 configuredialogs.xrc:2789 #: configuredialogs.xrc:2935 configuredialogs.xrc:3112 #: configuredialogs.xrc:3360 configuredialogs.xrc:3499 #: configuredialogs.xrc:3792 configuredialogs.xrc:4021 #: configuredialogs.xrc:4181 configuredialogs.xrc:4289 #: configuredialogs.xrc:5258 configuredialogs.xrc:5500 #: configuredialogs.xrc:5672 configuredialogs.xrc:5872 #: configuredialogs.xrc:6070 configuredialogs.xrc:6223 #: configuredialogs.xrc:6378 configuredialogs.xrc:6548 dialogs.xrc:52 #: dialogs.xrc:498 dialogs.xrc:721 dialogs.xrc:804 dialogs.xrc:952 #: dialogs.xrc:1024 dialogs.xrc:1100 dialogs.xrc:1255 dialogs.xrc:1479 #: dialogs.xrc:1645 dialogs.xrc:1749 dialogs.xrc:4454 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 configuredialogs.xrc:1677 #: configuredialogs.xrc:1827 configuredialogs.xrc:2039 #: configuredialogs.xrc:2393 configuredialogs.xrc:2588 #: configuredialogs.xrc:2792 configuredialogs.xrc:2938 #: configuredialogs.xrc:3115 configuredialogs.xrc:3363 #: configuredialogs.xrc:3502 configuredialogs.xrc:3795 #: configuredialogs.xrc:4024 configuredialogs.xrc:4184 #: configuredialogs.xrc:4292 configuredialogs.xrc:4436 #: configuredialogs.xrc:4590 configuredialogs.xrc:4791 #: configuredialogs.xrc:4980 configuredialogs.xrc:5261 #: configuredialogs.xrc:5503 configuredialogs.xrc:5675 #: configuredialogs.xrc:5875 configuredialogs.xrc:6073 #: configuredialogs.xrc:6226 configuredialogs.xrc:6381 #: configuredialogs.xrc:6551 configuredialogs.xrc:6968 #: configuredialogs.xrc:7099 configuredialogs.xrc:7194 #: configuredialogs.xrc:7557 configuredialogs.xrc:7886 #: configuredialogs.xrc:8116 configuredialogs.xrc:8255 #: configuredialogs.xrc:8440 configuredialogs.xrc:8568 dialogs.xrc:375 #: dialogs.xrc:501 dialogs.xrc:724 dialogs.xrc:807 dialogs.xrc:955 #: dialogs.xrc:1027 dialogs.xrc:1103 dialogs.xrc:1258 dialogs.xrc:1482 #: dialogs.xrc:1648 dialogs.xrc:1852 dialogs.xrc:2152 dialogs.xrc:2170 #: dialogs.xrc:2259 dialogs.xrc:2343 dialogs.xrc:2517 dialogs.xrc:2651 #: dialogs.xrc:2820 dialogs.xrc:3116 dialogs.xrc:3487 dialogs.xrc:3600 #: dialogs.xrc:3674 dialogs.xrc:3766 dialogs.xrc:3894 dialogs.xrc:4457 #: dialogs.xrc:4592 moredialogs.xrc:142 moredialogs.xrc:2649 #: moredialogs.xrc:4029 moredialogs.xrc:4100 moredialogs.xrc:4536 #: moredialogs.xrc:4877 moredialogs.xrc:5162 moredialogs.xrc:5404 #: moredialogs.xrc:5656 moredialogs.xrc:5835 moredialogs.xrc:5968 #: moredialogs.xrc:6059 moredialogs.xrc:6145 moredialogs.xrc:6476 #: moredialogs.xrc:6884 moredialogs.xrc:7179 moredialogs.xrc:7582 #: moredialogs.xrc:7998 moredialogs.xrc:8308 moredialogs.xrc:8771 #: moredialogs.xrc:9195 moredialogs.xrc:9509 moredialogs.xrc:9748 #: moredialogs.xrc:10082 moredialogs.xrc:10386 moredialogs.xrc:10533 #: moredialogs.xrc:10788 moredialogs.xrc:11147 moredialogs.xrc:11288 #: moredialogs.xrc:11726 moredialogs.xrc:11921 moredialogs.xrc:12090 #: moredialogs.xrc:12451 moredialogs.xrc:12772 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2405 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4433 #: configuredialogs.xrc:4587 configuredialogs.xrc:4788 #: configuredialogs.xrc:4977 configuredialogs.xrc:5140 #: configuredialogs.xrc:6965 configuredialogs.xrc:7096 #: configuredialogs.xrc:7191 configuredialogs.xrc:7554 #: configuredialogs.xrc:7883 configuredialogs.xrc:8113 #: configuredialogs.xrc:8252 configuredialogs.xrc:8437 #: configuredialogs.xrc:8565 dialogs.xrc:372 dialogs.xrc:2167 dialogs.xrc:2256 #: dialogs.xrc:2340 dialogs.xrc:2514 dialogs.xrc:2648 dialogs.xrc:2817 #: dialogs.xrc:3113 dialogs.xrc:3484 dialogs.xrc:3597 dialogs.xrc:3891 #: dialogs.xrc:4589 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4026 moredialogs.xrc:4097 moredialogs.xrc:4533 #: moredialogs.xrc:4874 moredialogs.xrc:5159 moredialogs.xrc:5401 #: moredialogs.xrc:5653 moredialogs.xrc:5832 moredialogs.xrc:5965 #: moredialogs.xrc:6056 moredialogs.xrc:6142 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7579 #: moredialogs.xrc:7995 moredialogs.xrc:8305 moredialogs.xrc:8768 #: moredialogs.xrc:9192 moredialogs.xrc:9506 moredialogs.xrc:9745 #: moredialogs.xrc:10079 moredialogs.xrc:10383 moredialogs.xrc:10530 #: moredialogs.xrc:10785 moredialogs.xrc:11144 moredialogs.xrc:11285 #: moredialogs.xrc:11723 moredialogs.xrc:11918 moredialogs.xrc:12087 #: moredialogs.xrc:12448 moredialogs.xrc:12769 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6697 #: configuredialogs.xrc:7339 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following frequently-used parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "For more options see the manual.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1197 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1226 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1260 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1294 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1326 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1356 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1385 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1402 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1409 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1418 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1441 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1448 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1457 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1477 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1480 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1488 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1491 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1499 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1502 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1510 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No' " "in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1513 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1529 msgid "" "Choose colours to use as a pane's background. You can have different colours " "for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1532 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1544 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1547 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1565 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1568 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1580 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1583 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1600 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of " "a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1603 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1614 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1617 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1630 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered " "files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external " "changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1633 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1657 configuredialogs.xrc:1807 #: configuredialogs.xrc:2019 configuredialogs.xrc:2373 #: configuredialogs.xrc:2568 configuredialogs.xrc:2772 #: configuredialogs.xrc:2918 configuredialogs.xrc:3095 #: configuredialogs.xrc:3343 configuredialogs.xrc:3482 #: configuredialogs.xrc:3776 configuredialogs.xrc:4005 #: configuredialogs.xrc:4165 configuredialogs.xrc:4272 #: configuredialogs.xrc:5241 configuredialogs.xrc:5484 #: configuredialogs.xrc:5656 configuredialogs.xrc:5855 #: configuredialogs.xrc:6053 configuredialogs.xrc:6206 #: configuredialogs.xrc:6361 configuredialogs.xrc:6531 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1714 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1722 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1729 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1748 configuredialogs.xrc:2487 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1755 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1758 configuredialogs.xrc:2498 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1769 configuredialogs.xrc:2525 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1776 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1779 configuredialogs.xrc:2536 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1868 msgid "" "If the currently-selected path in the active dirview is /home/david/" "Documents, make the titlebar show '4Pane [Documents]' instead of just '4Pane'" msgstr "" #: configuredialogs.xrc:1871 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1879 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1882 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1890 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1893 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1901 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1904 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1912 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1915 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1927 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1952 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1955 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1964 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1967 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1976 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1979 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1988 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1991 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2080 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2095 configuredialogs.xrc:2191 #: configuredialogs.xrc:2287 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2124 configuredialogs.xrc:2220 #: configuredialogs.xrc:2316 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2139 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2176 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2235 msgid "" "Type in the exact command that will launch another program inside a " "terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2272 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2331 msgid "" "Type in the exact command that will launch another program inside a " "terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2434 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2442 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2460 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-" "F6. You can use normal characters, but there are also the following " "options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2495 configuredialogs.xrc:4357 #: configuredialogs.xrc:4395 configuredialogs.xrc:4502 #: configuredialogs.xrc:4540 msgid "Change" msgstr "" #: configuredialogs.xrc:2533 configuredialogs.xrc:4919 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2638 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2648 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2664 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2679 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2688 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2699 msgid "Add" msgstr "" #: configuredialogs.xrc:2715 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2724 msgid "" "What is the filepath to the nfs helper showmount? Probably /usr/sbin/" "showmount" msgstr "" #: configuredialogs.xrc:2745 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2754 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or " "symlinked from there)" msgstr "" #: configuredialogs.xrc:2833 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2840 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2847 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2856 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so " "that it can later be undone, and then redone if desired. This is the maximum " "number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this " "counts as 100 procedures! So I suggest that the number here should be fairly " "large: at least 10000" msgstr "" #: configuredialogs.xrc:2873 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2880 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2889 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar " "ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You " "can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2977 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2984 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3003 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3012 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3028 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3037 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3053 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3062 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3156 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3178 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3181 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3189 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3192 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3197 msgid "su" msgstr "" #: configuredialogs.xrc:3198 msgid "sudo" msgstr "" #: configuredialogs.xrc:3213 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3216 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3234 msgid "min" msgstr "" #: configuredialogs.xrc:3245 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3248 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3269 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3272 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3285 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3293 msgid " gksu" msgstr "" #: configuredialogs.xrc:3301 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3309 msgid " Other..." msgstr "" #: configuredialogs.xrc:3311 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3400 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3416 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3419 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3428 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3431 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3440 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3443 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3452 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3455 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3556 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3565 msgid "" "Type in the name of the application or script to be run. If it is in your " "PATH, you should get away with just the name e.g. 'df'. Otherwise you will " "need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters:\n" "%s will pass the selected file or folder to the application, %f (%d) a file " "(directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from " "both fileview panes.\n" "%p will prompt you for a parameter to pass to the application\n" "\n" "You can optionally add a modifier to most parameters:\n" "'A' is the active twin-pane, 'I' the inactive one. So %Af will pass the " "selected file from the active pane, or %Id a dir from the inactive one.\n" "Alternatively you can specify a particular pane e.g. %1f\n" "1 is the left (or top) dirview, 2 the left (or top) fileview; 3 and 4 " "similarly for the right (bottom) twin-pane.\n" "\n" "Finally 5-8 specify the active dirview, inactive dirview, active fileview, " "inactive fileview. So %6a will take all selected items from the inactive " "dirview." msgstr "" #: configuredialogs.xrc:3579 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3597 configuredialogs.xrc:3913 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3600 configuredialogs.xrc:3916 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3608 configuredialogs.xrc:3924 msgid "" "Some programs need a terminal both to run in, and to display the results. If " "you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3611 configuredialogs.xrc:3927 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3619 configuredialogs.xrc:3935 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3622 configuredialogs.xrc:3938 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3630 configuredialogs.xrc:3946 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3633 configuredialogs.xrc:3949 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3641 configuredialogs.xrc:3957 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3644 configuredialogs.xrc:3960 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3667 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3690 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3699 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3711 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3714 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3724 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3727 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3747 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3750 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3841 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3863 configuredialogs.xrc:4089 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3872 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3887 configuredialogs.xrc:4113 msgid "Command" msgstr "" #: configuredialogs.xrc:3896 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3976 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4066 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4098 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4122 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4138 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4222 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4235 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's label" msgstr "" #: configuredialogs.xrc:4238 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4309 configuredialogs.xrc:4453 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4322 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4341 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4380 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4466 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4487 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4525 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4553 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4607 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4620 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree " "of highlighting." msgstr "" #: configuredialogs.xrc:4627 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4634 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4641 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4683 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4705 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4727 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4808 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4827 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4835 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4860 msgid "Current" msgstr "" #: configuredialogs.xrc:4876 msgid "Clear" msgstr "" #: configuredialogs.xrc:4879 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4903 msgid " Default:" msgstr "" #: configuredialogs.xrc:4911 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4922 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5003 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5013 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5028 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5046 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5054 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5062 dialogs.xrc:465 dialogs.xrc:628 dialogs.xrc:766 #: dialogs.xrc:880 dialogs.xrc:997 dialogs.xrc:1216 dialogs.xrc:1383 #: dialogs.xrc:1546 dialogs.xrc:1698 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5089 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5097 dialogs.xrc:4571 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5100 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5111 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5119 msgid "&Override" msgstr "" #: configuredialogs.xrc:5122 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5132 msgid "Give up" msgstr "" #: configuredialogs.xrc:5143 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5178 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5181 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE " "9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5186 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5187 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5188 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5197 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5206 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5215 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5307 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5327 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5337 configuredialogs.xrc:5384 #: configuredialogs.xrc:5430 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "mtab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "fstab" msgstr "" #: configuredialogs.xrc:5344 configuredialogs.xrc:5391 #: configuredialogs.xrc:5437 msgid "none" msgstr "" #: configuredialogs.xrc:5353 configuredialogs.xrc:5400 #: configuredialogs.xrc:5446 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes. " "If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5356 configuredialogs.xrc:5403 #: configuredialogs.xrc:5449 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5374 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5420 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5551 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5565 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5576 msgid "seconds" msgstr "" #: configuredialogs.xrc:5592 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5601 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device " "will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5604 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5617 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5626 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5629 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5716 configuredialogs.xrc:5915 #: configuredialogs.xrc:6113 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5735 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5744 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5758 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5767 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5780 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5789 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5802 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5811 msgid "" "Information about fixed devices like cdroms can usually be found in /proc/" "sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5829 configuredialogs.xrc:6027 #: configuredialogs.xrc:6180 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5934 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5943 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-" "storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5956 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5965 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5978 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5987 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/" "sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:6000 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6009 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6131 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6140 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6153 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6162 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6280 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6312 configuredialogs.xrc:6481 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6322 configuredialogs.xrc:6491 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6331 configuredialogs.xrc:6501 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6422 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6449 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6572 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6577 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6599 msgid "" "These are the buttons on the right-hand side of the small toolbar in each " "dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6629 configuredialogs.xrc:7265 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6660 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6670 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6679 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6715 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6763 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6781 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6801 configuredialogs.xrc:7450 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6818 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6836 msgid "" "This is the string that invokes the program. e.g. kwrite or /opt/gnome/bin/" "gedit" msgstr "" #: configuredialogs.xrc:6857 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6875 dialogs.xrc:3329 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed " "to before running the command. Most commands won't need this; in particular, " "it won't be needed for any commands that can be launched without a Path e.g. " "kwrite" msgstr "" #: configuredialogs.xrc:6904 msgid "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6907 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6916 msgid "" "Don't load the icon for this program. Its configuration is retained, and you " "can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6919 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6986 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7010 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7037 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7052 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7117 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7149 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7212 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7234 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7296 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7306 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7316 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7357 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7403 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7412 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7429 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7457 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7475 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7484 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow " "panel shows only the label, not the icon; so without a label there's a blank " "space." msgstr "" #: configuredialogs.xrc:7504 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7575 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7589 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7629 msgid "Move:" msgstr "" #: configuredialogs.xrc:7661 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7693 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7725 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7759 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7777 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7786 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7805 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7814 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default " "value 15" msgstr "" #: configuredialogs.xrc:7833 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7842 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7904 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7918 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7926 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7946 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7954 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7964 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7982 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7990 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:8000 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8017 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8025 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8035 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8052 msgid "Filters" msgstr "" #: configuredialogs.xrc:8060 msgid "(Default 2)" msgstr "" #: configuredialogs.xrc:8070 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files " "R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8134 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8148 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8156 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8164 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8177 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8180 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8188 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar " "by default" msgstr "" #: configuredialogs.xrc:8191 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8199 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8202 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8210 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8213 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8221 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8224 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8239 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8268 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8307 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8315 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8323 msgid "Images:" msgstr "" #: configuredialogs.xrc:8351 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8386 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8458 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8472 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8492 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8501 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8516 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8525 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:687 dialogs.xrc:916 dialogs.xrc:1445 #: dialogs.xrc:1609 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1919 dialogs.xrc:1959 #: dialogs.xrc:2452 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:516 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:419 dialogs.xrc:547 dialogs.xrc:1304 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:480 dialogs.xrc:645 dialogs.xrc:1231 dialogs.xrc:1400 #: dialogs.xrc:1561 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:489 dialogs.xrc:666 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:654 dialogs.xrc:1409 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:657 dialogs.xrc:1412 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:675 msgid " Re&name All" msgstr "" #: dialogs.xrc:678 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:690 dialogs.xrc:919 dialogs.xrc:1448 dialogs.xrc:1612 #: dialogs.xrc:1716 msgid "Skip this item" msgstr "" #: dialogs.xrc:699 dialogs.xrc:928 dialogs.xrc:1457 dialogs.xrc:1621 msgid "S&kip All" msgstr "" #: dialogs.xrc:702 dialogs.xrc:1460 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:735 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:758 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:789 dialogs.xrc:895 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:827 dialogs.xrc:1659 msgid "Rename or skip" msgstr "" #: dialogs.xrc:850 dialogs.xrc:1516 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:904 msgid "Rename &All" msgstr "" #: dialogs.xrc:907 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:931 dialogs.xrc:1624 dialogs.xrc:1728 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:966 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:989 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1012 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1015 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1042 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1065 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1073 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1088 msgid "&Rename" msgstr "" #: dialogs.xrc:1091 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1118 msgid "Add to archive" msgstr "" #: dialogs.xrc:1150 dialogs.xrc:1682 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1234 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1243 msgid "&Store both items" msgstr "" #: dialogs.xrc:1246 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1273 dialogs.xrc:1493 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1421 dialogs.xrc:1585 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1424 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1433 dialogs.xrc:1597 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1436 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1564 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1573 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1576 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1588 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1600 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1713 msgid "&Skip it" msgstr "" #: dialogs.xrc:1725 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1752 msgid "Abort all items" msgstr "" #: dialogs.xrc:1786 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1794 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1816 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1832 msgid "or:" msgstr "" #: dialogs.xrc:1849 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1871 msgid "Make a Link" msgstr "" #: dialogs.xrc:1897 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1922 dialogs.xrc:1962 dialogs.xrc:2455 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1943 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:1987 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2004 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2013 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2021 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2043 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2053 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2070 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2073 msgid "Make Relative" msgstr "" #: dialogs.xrc:2081 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2084 dialogs.xrc:3645 msgid "Apply to all" msgstr "" #: dialogs.xrc:2104 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2109 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2110 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2149 msgid "Skip" msgstr "" #: dialogs.xrc:2186 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2204 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2209 msgid "Make a new File" msgstr "" #: dialogs.xrc:2210 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2294 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2359 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2380 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2391 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2416 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2436 dialogs.xrc:3359 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2469 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2472 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2533 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2549 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2571 msgid "Current Path" msgstr "" #: dialogs.xrc:2582 msgid "This is current Path" msgstr "" #: dialogs.xrc:2596 msgid "Current Label" msgstr "" #: dialogs.xrc:2607 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2667 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2693 dialogs.xrc:3391 msgid "&New Folder" msgstr "" #: dialogs.xrc:2696 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2710 msgid "New &Separator" msgstr "" #: dialogs.xrc:2713 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2727 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2730 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2744 msgid "&Delete" msgstr "" #: dialogs.xrc:2747 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2836 msgid "Open with:" msgstr "" #: dialogs.xrc:2856 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2871 dialogs.xrc:3229 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2903 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2906 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2920 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2923 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2946 msgid "&Add Application" msgstr "" #: dialogs.xrc:2949 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:2977 msgid " Add &Folder" msgstr "" #: dialogs.xrc:2980 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:2994 msgid "Remove F&older" msgstr "" #: dialogs.xrc:2997 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3030 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3054 dialogs.xrc:3425 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3057 dialogs.xrc:3428 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3065 dialogs.xrc:3436 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3068 dialogs.xrc:3439 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3132 msgid "Add an Application" msgstr "" #: dialogs.xrc:3150 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3170 msgid "" "This name must be unique. If you don't enter one, the end of the filepath " "will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3193 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3213 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname " "eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3250 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3266 msgid "" "This is optional. If you enter one or more extensions, this application will " "be offered when you right-click on files with such extensions. You must also " "enter one if you will want this application to be the default for launching " "this type of file. So if you will want all files with the extension 'txt', " "on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3282 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3297 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program " "name followed by %s, which represents the file to be launched. So if kedit " "is your default text editor, and the launch Command is kedit %s, double-" "clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3314 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3381 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3394 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3520 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3539 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3552 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3557 msgid "All of them" msgstr "" #: dialogs.xrc:3558 msgid "Just the First" msgstr "" #: dialogs.xrc:3559 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3616 msgid "4Pane" msgstr "" #: dialogs.xrc:3685 msgid "Save Template" msgstr "" #: dialogs.xrc:3713 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3721 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3736 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3751 msgid "&New Template" msgstr "" #: dialogs.xrc:3779 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3805 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can " "be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3824 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3827 msgid "Display only Files" msgstr "" #: dialogs.xrc:3836 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3839 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3848 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3851 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3910 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3933 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3941 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:3976 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:3987 moredialogs.xrc:12191 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4019 msgid "Replace" msgstr "" #: dialogs.xrc:4022 dialogs.xrc:4255 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4032 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4052 msgid "With" msgstr "" #: dialogs.xrc:4116 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4131 msgid "Replace the first" msgstr "" #: dialogs.xrc:4141 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4151 msgid " matches in name" msgstr "" #: dialogs.xrc:4173 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4176 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4197 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4200 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4214 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4217 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not " "'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4222 msgid "Body" msgstr "" #: dialogs.xrc:4223 msgid "Ext" msgstr "" #: dialogs.xrc:4252 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4264 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4284 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4293 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4326 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4343 dialogs.xrc:4353 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4365 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid " "a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4368 msgid " Only if needed" msgstr "" #: dialogs.xrc:4384 msgid "Increment with a" msgstr "" #: dialogs.xrc:4387 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4392 msgid "digit" msgstr "" #: dialogs.xrc:4393 msgid "letter" msgstr "" #: dialogs.xrc:4407 msgid "Case" msgstr "" #: dialogs.xrc:4410 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4415 msgid "Upper" msgstr "" #: dialogs.xrc:4416 msgid "Lower" msgstr "" #: dialogs.xrc:4477 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4490 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards " "*, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of /home/myname/" "bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and " "hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12561 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3897 moredialogs.xrc:12282 #: moredialogs.xrc:12590 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3913 moredialogs.xrc:12298 #: moredialogs.xrc:12606 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3934 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10291 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the " "beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start " "path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3931 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the " "Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may " "contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return " "anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7654 moredialogs.xrc:8843 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7670 #: moredialogs.xrc:8859 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7684 #: moredialogs.xrc:8873 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7725 #: moredialogs.xrc:8914 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7766 #: moredialogs.xrc:8955 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7807 #: moredialogs.xrc:8996 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7815 #: moredialogs.xrc:9004 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7823 #: moredialogs.xrc:9012 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7831 #: moredialogs.xrc:9020 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4010 moredialogs.xrc:12431 #: moredialogs.xrc:12752 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter " "the search pattern\n" "and the path or files to search. Alternatively you can write direct into the " "Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12404 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12183 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12206 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12253 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3961 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3985 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4080 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4083 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4123 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4164 moredialogs.xrc:4590 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4203 moredialogs.xrc:4629 moredialogs.xrc:4964 #: moredialogs.xrc:5243 moredialogs.xrc:5741 msgid "Add another File" msgstr "" #: moredialogs.xrc:4236 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4250 moredialogs.xrc:5010 moredialogs.xrc:10881 msgid "&Add" msgstr "" #: moredialogs.xrc:4253 moredialogs.xrc:4677 moredialogs.xrc:5013 #: moredialogs.xrc:5291 moredialogs.xrc:5790 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4292 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4302 msgid "" "Enter just the main part of the name, not the extension eg foo, not foo.tar." "gz" msgstr "" #: moredialogs.xrc:4311 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4330 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4366 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4402 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4414 moredialogs.xrc:5036 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4417 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4422 moredialogs.xrc:5044 msgid "bzip2" msgstr "" #: moredialogs.xrc:4423 moredialogs.xrc:5045 msgid "gzip" msgstr "" #: moredialogs.xrc:4424 moredialogs.xrc:5046 msgid "xz" msgstr "" #: moredialogs.xrc:4425 moredialogs.xrc:5047 msgid "lzma" msgstr "" #: moredialogs.xrc:4426 msgid "7z" msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5048 msgid "lzop" msgstr "" #: moredialogs.xrc:4428 msgid "don't compress" msgstr "" #: moredialogs.xrc:4441 moredialogs.xrc:4807 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4444 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4453 moredialogs.xrc:4818 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4456 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4464 moredialogs.xrc:4829 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4467 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4495 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4498 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4549 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4674 moredialogs.xrc:5288 moredialogs.xrc:5787 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4720 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4742 moredialogs.xrc:5542 msgid "" "Path and name of the archive. If not already in the entry list, write it in " "or Browse." msgstr "" #: moredialogs.xrc:4759 moredialogs.xrc:5559 msgid "Browse" msgstr "" #: moredialogs.xrc:4810 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4821 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4832 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4894 msgid "Compress files" msgstr "" #: moredialogs.xrc:4928 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5039 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least " "for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > " "Create." msgstr "" #: moredialogs.xrc:5049 msgid "'compress'" msgstr "" #: moredialogs.xrc:5066 msgid "Faster" msgstr "" #: moredialogs.xrc:5076 msgid "" "Applies only to gzip. The higher the value, the greater the compression but " "the longer it takes to do" msgstr "" #: moredialogs.xrc:5086 msgid "Smaller" msgstr "" #: moredialogs.xrc:5107 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5110 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5118 msgid "" "If checked, all files in any selected directories (and their subdirectories) " "will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5121 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5175 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5209 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5329 msgid "" "If a selection is a directory, uncompress any compressed files within it and " "its subdirectories" msgstr "" #: moredialogs.xrc:5332 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5341 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5344 moredialogs.xrc:5609 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5353 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5356 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5422 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5461 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5520 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5606 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5674 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5707 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5814 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5853 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5887 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6014 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6029 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6044 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6100 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6115 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6130 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6159 moredialogs.xrc:7201 moredialogs.xrc:8335 msgid "Properties" msgstr "" #: moredialogs.xrc:6170 moredialogs.xrc:7212 moredialogs.xrc:8346 msgid "General" msgstr "" #: moredialogs.xrc:6214 moredialogs.xrc:7252 moredialogs.xrc:8385 msgid "Name:" msgstr "" #: moredialogs.xrc:6230 moredialogs.xrc:7268 moredialogs.xrc:8401 msgid "Location:" msgstr "" #: moredialogs.xrc:6245 moredialogs.xrc:7283 moredialogs.xrc:8416 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7427 moredialogs.xrc:8618 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7442 moredialogs.xrc:8632 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7456 moredialogs.xrc:8646 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7471 moredialogs.xrc:8660 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7601 moredialogs.xrc:8790 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7870 moredialogs.xrc:9063 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7886 moredialogs.xrc:9079 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:7950 moredialogs.xrc:9147 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:7953 moredialogs.xrc:9150 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8017 moredialogs.xrc:9214 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8062 moredialogs.xrc:9259 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8077 moredialogs.xrc:9274 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8092 moredialogs.xrc:9289 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8107 moredialogs.xrc:9304 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8122 moredialogs.xrc:9319 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8136 moredialogs.xrc:9333 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8151 moredialogs.xrc:9348 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7299 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7366 moredialogs.xrc:8519 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7377 moredialogs.xrc:8530 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:7393 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:8432 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8446 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8544 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8547 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8576 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8579 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9536 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9573 moredialogs.xrc:9803 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9596 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9643 moredialogs.xrc:9873 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9666 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9700 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9703 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9766 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9826 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9896 moredialogs.xrc:10251 moredialogs.xrc:10611 #: moredialogs.xrc:10714 moredialogs.xrc:11027 moredialogs.xrc:11546 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9914 moredialogs.xrc:10269 moredialogs.xrc:10627 #: moredialogs.xrc:10732 moredialogs.xrc:11045 moredialogs.xrc:11564 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:9940 moredialogs.xrc:11071 moredialogs.xrc:11590 msgid "Mount Options" msgstr "" #: moredialogs.xrc:9958 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:9961 msgid "Read Only" msgstr "" #: moredialogs.xrc:9969 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:9972 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:9980 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:9983 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:9997 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10000 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10008 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10011 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10019 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10022 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10035 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10039 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10100 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10128 msgid "Remote user" msgstr "" #: moredialogs.xrc:10138 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10150 msgid " @" msgstr "" #: moredialogs.xrc:10163 msgid "Host name" msgstr "" #: moredialogs.xrc:10173 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10186 msgid " :" msgstr "" #: moredialogs.xrc:10199 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10209 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10230 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10301 msgid "" "Translate the uid and gid of the remote host user to those of the local one. " "Recommended" msgstr "" #: moredialogs.xrc:10304 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10316 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10339 msgid "Other options:" msgstr "" #: moredialogs.xrc:10348 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust " "you to get the syntax right" msgstr "" #: moredialogs.xrc:10399 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10421 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10444 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10487 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10551 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10588 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10672 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10691 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10806 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10842 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10865 msgid "" "This is the list of NFS servers currently active on the network. If you know " "of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10884 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10917 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:10943 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:10959 moredialogs.xrc:11480 msgid " already mounted" msgstr "" #: moredialogs.xrc:11086 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11091 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11092 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11111 moredialogs.xrc:11688 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11112 moredialogs.xrc:11689 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11160 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11197 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11220 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11241 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11306 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11342 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11365 msgid "IP Address" msgstr "" #: moredialogs.xrc:11376 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11393 msgid "Host Name" msgstr "" #: moredialogs.xrc:11404 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11441 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11464 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11607 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11608 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11633 msgid "Username" msgstr "" #: moredialogs.xrc:11642 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11658 msgid "Password" msgstr "" #: moredialogs.xrc:11667 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11739 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11776 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11799 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11846 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11869 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:11939 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:11963 msgid "The command:" msgstr "" #: moredialogs.xrc:11978 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12005 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12036 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12039 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12101 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12120 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12135 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12138 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12149 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12152 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12242 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12336 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12339 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12347 moredialogs.xrc:12671 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12350 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12358 moredialogs.xrc:12369 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12361 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12372 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12380 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12383 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12397 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12402 msgid "Match the names" msgstr "" #: moredialogs.xrc:12403 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12469 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12488 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12503 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12506 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12517 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12520 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12550 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12644 msgid "Search term:" msgstr "" #: moredialogs.xrc:12659 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. " "foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12674 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12698 msgid "This is a:" msgstr "" #: moredialogs.xrc:12707 msgid "name" msgstr "" #: moredialogs.xrc:12716 msgid "path" msgstr "" #: moredialogs.xrc:12725 msgid "regex" msgstr "" ./4pane-6.0/locale/fa/0000755000175000017500000000000012250631521013305 5ustar daviddavid./4pane-6.0/locale/fa/LC_MESSAGES/0000755000175000017500000000000013567054715015112 5ustar daviddavid./4pane-6.0/locale/fa/LC_MESSAGES/fa.po0000644000175000017500000055304513205575137016047 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Alireza Savand , 2011 # Alireza Savand , 2013 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2017-06-23 12:23+0000\n" "Last-Translator: DavidGH \n" "Language-Team: Persian (http://www.transifex.com/davidgh/4Pane/language/fa/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: fa\n" "Plural-Forms: nplurals=1; plural=0;\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "" #: Accelerators.cpp:213 msgid "C&ut" msgstr "بريدن" #: Accelerators.cpp:213 msgid "&Copy" msgstr " كپی" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "ارسال به سطل" #: Accelerators.cpp:213 msgid "De&lete" msgstr "حذÙ" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "حذ٠قطعی" #: Accelerators.cpp:213 msgid "Rena&me" msgstr " تغيير نام" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr " تكثير" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "تنظيمات" #: Accelerators.cpp:214 msgid "&Open" msgstr "باز كردن" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "بازكردن با ..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "چسباندن" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "تشكيل پيوند سخت" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "تشكيل پيوند نمادی" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "حذ٠لبه" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "تغییر نام لبه" #: Accelerators.cpp:215 msgid "Und&o" msgstr "برگرداندن" #: Accelerators.cpp:215 msgid "&Redo" msgstr "از نو" #: Accelerators.cpp:215 msgid "Select &All" msgstr "انتخاب همه" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "ايجاد ÙØ§ÙŠÙ„ يا پوشه جديد" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "لبه جديد" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "وارد كردن لبه" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "ثكثير اين لبه" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "نمایش حتی لبه تنها" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Ú¯Ø±ÙØªÙ† تمامي سر لبه هاي پهنا يكسان" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "Ùˆ تکثیر در پنل روبروی" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "تعویض پانل" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "جداسازي عمودي پنل ها" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "جدا سازي اÙقي پنل ها" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "چسباندن دوباره پنل ها" #: Accelerators.cpp:217 msgid "&Extension" msgstr "ÙØ±Ù…ت" #: Accelerators.cpp:217 msgid "&Size" msgstr "اندازه" #: Accelerators.cpp:217 msgid "&Time" msgstr "زمان" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "حق دسترسي ها" #: Accelerators.cpp:218 msgid "&Owner" msgstr "ايجاد كننده" #: Accelerators.cpp:218 msgid "&Group" msgstr "گروه" #: Accelerators.cpp:218 msgid "&Link" msgstr "پيوند" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "نمايش تمامي ستون ها" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "نمايش ندادن تمامي ستون ها" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "ذخيره تنظيمات پنجره" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "ذخيره تنظيمات پنجره هنگام خروج" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "ذخيره لايه بعنوان قالب" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "حذ٠قالب" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "تازه كردن ØµÙØ­Ù‡" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "اجراى ترمينال" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "Ùيلتر ØµÙØ­Ù‡" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "نمايش/مخÙÙŠ كردن پوشه Ùˆ ÙØ§ÙŠÙ„ ها" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "اضاÙÙ‡ كردن به نشانك" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "مديريت نشانك" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "متصل كردن پارتيشن" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "قطع كردن پارتيشن" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "اتصال به عنوان ISO Image" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "اتصال به عنوان NFS export" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "اتصال اشتراك Samba share" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "نمايش ترمينال" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "نمايش خط ÙØ±Ù…ان" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "برو به ÙØ§ÙŠÙ„ انتخابي" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "خالي كردن سطل زباله" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "حذ٠قطعي ÙØ§ÙŠÙ„ هاي حذ٠شده" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "استخراج يا ÙØ´Ø±Ø¯Ù‡ سازي ÙØ§ÙŠÙ„ ها" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "ايجاد ÙØ§ÙŠÙ„ ÙØ´Ø±Ø¯Ù‡ جديد" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "اضاÙÙ‡ به ÙØ§ÙŠÙ„ ÙØ´Ø±Ø¯Ù‡ موجود" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "تست يكپارچگي ÙØ§Ø¨Ù„ هاي آرشيو يا ÙØ§ÙŠÙ„ هاي ÙØ´Ø±Ø¯Ù‡ شده" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "ÙØ´Ø±Ø¯Ù‡ سازي ÙØ§ÙŠÙ„ ها" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "نمایش Ùˆ اندازه های بازگشتی پوشه" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "اهدا٠و Ø­ÙØ¸ پیوند نمادی نسبی" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "4Pane پيكربندي" #: Accelerators.cpp:228 msgid "E&xit" msgstr "خروج" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "حساس نسبت به محیط راهنما" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "مطالب راهنما" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "پرسش Ùˆ پاسخ" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "4Pane درباره" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "پیکربندی میانبرها" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "برو به پیوند نمادی مقصد" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "برو به هد٠نهایی پیوند نمادی" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "ویرایش" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "جداساز جديد" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "تكرار برنامه قبل" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "برش انتخاب ÙØ¹Ù„ÛŒ" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "انتخاب نسخه ÙØ¹Ù„ÛŒ" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "ارسال به سطل" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "نابود كن، ولي شايد قابل Ø¨Ø§Ø²ÙŠØ§ÙØª" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "حذ٠با تعصب شدید" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "چسباندن محتوا از Ø­Ø§ÙØ¸Ù‡" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "چسباندن محتوا از Ø­Ø§ÙØ¸Ù‡" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "چسباندن محتوا از Ø­Ø§ÙØ¸Ù‡" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "حذ٠نوار در حال حاضر انتخاب شده" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "تغییر نام نوار در حال حاضر انتخاب شده" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Ø§ÙØ²ÙˆØ¯Ù† پرونده جدید زبانها" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "قرار دادن یک تب جدید در حال حاضر پس از انتخاب یک" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "مخÙÛŒ کردن سر از برگه Ø§Ù†ÙØ±Ø§Ø¯ÛŒ" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "مسیر Ú©Ù¾ÛŒ کردن این سمت به سمت مقابل" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "راه تعویض یک طر٠با دیگر" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "لایه‌های ØµÙØ­Ù‡ را ذخیره کنید." #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "در هنگام خروج همیشه لایه‌های ØµÙØ­Ù‡ را ذخیره کنید." #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "بازچینی، نام‌گذاری یا حذ٠نشانه‌گذاری‌ها" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "ÛŒØ§ÙØªÙ† ÙØ§ÛŒÙ„(های) همسان" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "جستجون همراه ÙØ§ÛŒÙ„‌ها" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "نمايش/مخÙی‌سازی ترمينال" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "نمایش/مخÙÛŒ کردن خط ÙØ±Ù…ان" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "" #: Accelerators.cpp:278 msgid "Close this program" msgstr "بستن این برنامه" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "برو به حالت درختی کامل" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "پیکربندی بارگذاری نشد" #: Accelerators.cpp:502 msgid "&File" msgstr "ÙØ§ÛŒÙ„" #: Accelerators.cpp:502 msgid "&Edit" msgstr "ویرایش" #: Accelerators.cpp:502 msgid "&View" msgstr "نما" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "تب‌ها" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "نشانه‌گذاری‌ها" #: Accelerators.cpp:502 msgid "&Archive" msgstr "بایگانی" #: Accelerators.cpp:502 msgid "&Mount" msgstr "متصل کردن" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "ابزار" #: Accelerators.cpp:502 msgid "&Options" msgstr "اختیارات" #: Accelerators.cpp:502 msgid "&Help" msgstr "راهنما" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "نمایش ستون" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "" #: Accelerators.cpp:673 msgid "Action" msgstr "عمل" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "میان‌بر" #: Accelerators.cpp:675 msgid "Default" msgstr "Ù¾ÛŒØ´ÙØ±Ø¶" #: Accelerators.cpp:694 msgid "Extension" msgstr "پسوند" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "اندازه" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "زمان" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "مجوزها" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "مالک" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "گروه" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "پیوند" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "نمایش همه ستون‌ها" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "نمايش ندادن تمامي ستون ها" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "نشانه‌گذاری‌ها: ویرایش" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "از دست دادن تغییرات؟" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "مطمئن هستید ØŸ" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "تغییر برچسب" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "اوپس!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "ÙØ§ÛŒÙ„(s) ÙØ´Ø±Ø¯Ù‡ شد" #: Archive.cpp:1228 msgid "Compression failed" msgstr "ÙØ´Ø±Ø¯Ù‡ سازی Ù†Ø§ÙØ±Ø¬Ø§Ù…" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "ÙØ§ÛŒÙ„(s) از ÙØ´Ø±Ø¯Ú¯ÛŒ در آمد" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "استخراج Ù†Ø§ÙØ±Ø¬Ø§Ù… شد" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "تائید Ù†Ø§ÙØ±Ø¬Ø§Ù… شد" #: Archive.cpp:1242 msgid "Archive created" msgstr "بایگانی استخراج شد" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "استخراج Ù†Ø§ÙØ±Ø¬Ø§Ù… شد" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "ÙØ§ÛŒÙ„(s) به بایگانی اضاÙÙ‡ شد." #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "اضاÙÙ‡ کردن به بایگانی Ù†Ø§ÙØ±Ø¬Ø§Ù… شد" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "بایگانی استخراج شد" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "استخراج Ù†Ø§ÙØ±Ø¬Ø§Ù…" #: Archive.cpp:1256 msgid "Archive verified" msgstr "" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "استخراج کردن از ÙØ§ÛŒÙ„" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "بدون ورودی" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "چسباندن" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "جابه‌جا" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "شرمنده" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "جدا کننده" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "تکراری" #: Bookmarks.cpp:204 msgid "Moved" msgstr "جابه‌جا شد" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Ú©Ù¾ÛŒ" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "نا‌گذاری پوشه" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "ویرایش نشانه‌گذاری" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "جدا کننده جدید" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "پوشه جدید" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "از دست دادن تغییرات؟" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "پوشه اضاÙÙ‡ شد" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "جدا کننده اضاÙÙ‡ شد" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "اوپس!" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "چسبید" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "پوشه حذ٠شد" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "نشانه‌گذاری اضاÙÙ‡ شد" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "اینجا" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "" #: Configure.cpp:2041 msgid "Tools" msgstr "" #: Configure.cpp:2043 msgid "Add a tool" msgstr "" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "" #: Configure.cpp:2052 msgid "Automount" msgstr "" #: Configure.cpp:2054 msgid "Mounting" msgstr "" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "ترمینال‌ها" #: Configure.cpp:2083 msgid "Real" msgstr "واقعی" #: Configure.cpp:2085 msgid "Emulator" msgstr "شبیه‌ساز" #: Configure.cpp:2088 msgid "The Network" msgstr "شبکه" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "گوناگون" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "زمان‌ها" #: Configure.cpp:2097 msgid "Superuser" msgstr "کاربر ارشد" #: Configure.cpp:2099 msgid "Other" msgstr "دیگر" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "انتخاب یک ÙØ§ÛŒÙ„" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "نمایش" #: Configure.cpp:2739 msgid "Display Trees" msgstr "نمایش درختی" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "(نادیده Ú¯Ø±ÙØªÙ‡ شد)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "قلم Ù¾ÛŒØ´ÙØ±Ø¶" #: Configure.cpp:4036 msgid "Delete " msgstr "حذÙ" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "مطمئن هستید ØŸ" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "بنظر نمیاد آدرس آی‌پی معتبری باشد" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "Ùهرست" #: Devices.cpp:305 msgid "&Display " msgstr "&نمایش " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&نانمایش " #: Devices.cpp:308 msgid "&Mount " msgstr "متصل کردن" #: Devices.cpp:308 msgid "&UnMount " msgstr "&قطع اتصال " #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "اتصال دی‌وی‌دی-&خوان" #: Devices.cpp:347 msgid "Display " msgstr "نمایش" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "قطع اتصال دی‌وی‌دی-،خوان" #: Devices.cpp:354 msgid "&Eject" msgstr "&بیرون انداختن" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "Ù†Ø§ÙØ±Ø¬Ø§Ù…" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "هشدار" #: Devices.cpp:843 msgid "Floppy" msgstr "Ùلاپی" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "پارتیشن: " #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "ÙØ§ÛŒÙ„ " #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "برنامه‌ای وارد نشده" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "برنامه ÛŒØ§ÙØª نشد" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "حذ٠این ویرایشگر؟" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "لغو" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "چندین تکرار شده" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "موÙÙ‚\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "ÙØ±Ø§Ú¯Ø±Ø¯ وا ماند\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "بستن" #: Filetypes.cpp:346 msgid "Regular File" msgstr "پرونده معمولی" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Ùهرست" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "برنامه‌ها" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Ù„Ø·ÙØ§ تأیید کنید" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "پسوند را وارد نکردید" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "حذ٠%sØŸ" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "ویرایش اطلاعات برنامه" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "شرمنده، مجوز اجرای این ÙØ§ÛŒÙ„ را ندارید" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "نمایش مخÙی‌ها" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "با موÙقیت اتصال شد به :" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "ایجاد Ùهرست ناممکن است" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "او او، Ù†Ø§ÙØ±Ø¬Ø§Ù… در ایجاد Ùهرست" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "او او، مجوز کاÙÛŒ برای ساخت Ùهرسا ندارم" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "جداسازی Ù†Ø§ÙØ±Ø¬Ø§Ù…" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "جداسازی موÙقیت آمیز" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "Ùهرست: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "ÙØ§ÛŒÙ„ØŒ مجموع اندازه" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "" #: MyFrame.cpp:743 msgid "Cut" msgstr "" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "" #: MyFrame.cpp:744 msgid "Copy" msgstr "" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "" #: MyFrame.cpp:749 msgid "UnDo" msgstr "" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "" #: MyFrame.cpp:751 msgid "ReDo" msgstr "" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "" #: MyFrame.cpp:755 msgid "New Tab" msgstr "" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "" #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "" #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "اوکی" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "" #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "محل" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "" #: moredialogs.xrc:4431 msgid "7z" msgstr "" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "" #: moredialogs.xrc:11695 msgid "Username" msgstr "" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "" #: moredialogs.xrc:11720 msgid "Password" msgstr "" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "" #: moredialogs.xrc:12025 msgid "The command:" msgstr "" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/nl/0000777000175000017500000000000013565000144013335 5ustar daviddavid./4pane-6.0/locale/nl/LC_MESSAGES/0000777000175000017500000000000013567054715015141 5ustar daviddavid./4pane-6.0/locale/nl/LC_MESSAGES/nl.po0000666000175000017500000077713413565000210016110 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Heimen Stoffels , 2018 # peter , 2017-2018 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2018-12-30 17:36+0000\n" "Last-Translator: Heimen Stoffels \n" "Language-Team: Dutch (http://www.transifex.com/davidgh/4Pane/language/nl/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: nl\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "K&nippen" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Kopiëren" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Verplaatsen naar prullen&bak" #: Accelerators.cpp:213 msgid "De&lete" msgstr "&Verwijderen" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Definitief verwijderen" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Naa&m wijzigen" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Dupliceren" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "&Eigenschappen" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Openen" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Openen &met..." #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Plakken" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Maak een &harde koppeling" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Maak een &zachte koppeling" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "Tabbla&d verwijderen" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "Tabbladnaam &wijzigen" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Ongedaan &maken" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Opnieuw" #: Accelerators.cpp:215 msgid "Select &All" msgstr "&Alles selecteren" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Nieuw bestand of map" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&Nieuw tabblad" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "Tabblad &invoegen" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Tabblad d&upliceren" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "&Toon zelfs een enkele tabkop" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "&Maak alle tabkoppen even breed" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "Duplice&ren in tegenoverliggend paneel" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "Panelen omwi&sselen" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Panelen &verticaal splitsen" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Panelen &horizontaal splitsen" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "Panelen &ontsplitsen" #: Accelerators.cpp:217 msgid "&Extension" msgstr "E&xtensie" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Grootte" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Tijd" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Machtigingen" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Eigenaar" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Groep" #: Accelerators.cpp:218 msgid "&Link" msgstr "&Link" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "&Alle kolommen tonen" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "Alle kolommen &verbergen" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "&Paneelinstellingen bewaren" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Paneelinstellingen bewaren bij afsluit&en" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "Indeling op&slaan als sjabloon" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "Sjabloon v&erwijderen" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Sche&rm vernieuwen" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "&Terminalvenster openen" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&Filteren" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Verborgen mappen en bestanden tonen/verbergen" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "Toevoegen &aan bladwijzers" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "&Bladwijzers beheren" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "Partitie &aankoppelen" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "Partitie &ontkoppelen" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "&ISO-bestand aankoppelen" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "&NFS-export aankoppelen" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "&Samba-share aankoppelen" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "Netwerkkoppeling &ontkoppelen" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "&Ontkoppelen" #: Accelerators.cpp:224 msgid "Unused" msgstr "Niet in gebruik" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "&Terminalemulator tonen" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Opdrachtrege&l tonen" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&Ga naar geselecteerd bestand" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "&Prullenbak leegmaken" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Verwij&derde bestanden definitief verwijderen" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "&Archief of gecomprimeerd bestand(en) uitpakken" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "&Nieuw archief creëren" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "Toevoegen &aan bestaand archief" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "Integriteit &testen van archief of gecomprimeerde bestanden" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "Bestanden &comprimeren" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&Recursieve mapgroottes tonen" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Relatieve &symlink-doelen behouden" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "4Pane &instellen" #: Accelerators.cpp:228 msgid "E&xit" msgstr "Af&sluiten" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Contextgevoelige hulp" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "Inhoud van &hulp" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&FAQ" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&Over 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Sneltoetsen instellen" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Ga naar symlinkdoel" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Ga naar het ultieme symlinkdoel" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Bewerken" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Nieuwe scheidingslijn" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Vorig programma herhalen" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Ga naar het tegenoverliggende venster" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Ga naar het aangrenzende paneel" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Schakel naar de panelen" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Schakel naar de terminalemulator" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Schakel naar de opdrachtregel" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Schakel naar de werkbalk Tekstbeheer" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Schakel naar het vorige venster" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Ga naar vorig tabblad" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Ga naar volgend tabblad" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Plakken als map&sjabloon" #: Accelerators.cpp:231 msgid "&First dot" msgstr "&Eerste punt" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "&Voorlaatste punt" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "&Laatste punt" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Aankoppelen over SSH met ssh&fs" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "&Voorbeelden tonen" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "Pl&akken annuleren" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Decimaal-bewust bestandsnaam sorteren" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Knipt de huidige selectie" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Kopieert de huidige selectie" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Verplaatsen naar prullenbak" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Afgebroken, maar kan misschien te reanimeren zijn" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Verwijder met uiterste voorzichtigheid" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Plak de inhoud van het klembord" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Hardlink de inhoud van het klembord naar hier" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Softlink de inhoud van het klembord naar hier" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Verwijder het huidig geselecteerde tabblad" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Wijzig de huidig geselecteerde tabbladnaam" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Nieuw tabblad toevoegen" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Voeg een nieuw tabblad toe achter het huidig geselecteerde" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Verberg de kop van een enkel tabblad" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Kopieer het pad van deze zijde naar het tegenoverliggend paneel" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Verwissel een kant z'n pad met het andere" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Sla de lay-out van de panelen in elke tab op" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Sla de panelen lay-out altijd op bij afsluiten" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Sla deze tabs op als herlaadbare template" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Voeg het nu geselecteerde item toe aan uw bladwijzers" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Herschik, hernoem of verwijder bladwijzers" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "Localiseer overeenkomende bestanden. Veel sneller dan 'vinden'" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Vind overeenkomend(e) bestand(en)" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Zoek in bestanden" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Toon/verberg de terminal emulator" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Toon/verberg de commandoregel" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "4Pane's eigen prullenbak leegmaken" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Verwijder 4Pane's 'verwijderd' folder" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Of de mapgrootte recursief moet berekend worden in bestandsoverzichten" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Bij het verplaatsen van een relatieve symlink het doel hetzelfde houden" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Sluit dit programma af" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "Plak alleen de mappen structuur vanuit het plakbord" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "Een extensie begint bij het eerste . in de bestandsnaam" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "Een extensie begint bij het laatste of voorlaatste . in de bestandsnaam" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "Een extensie begint bij het laatste . in de bestandsnaam" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "Toon een voorbeeld van afbeeldingen en tekstbestanden" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Annuleer het huidige proces" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "Moeten bestanden als foo1, foo2 in decimale volgorde staan" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\nDe arrays in ImplementDefaultShortcuts() zijn niet van gelijke grootte!" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Schakel fulltree modus in/uit" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Kon configuratie niet laden!?" #: Accelerators.cpp:502 msgid "&File" msgstr "Be&stand" #: Accelerators.cpp:502 msgid "&Edit" msgstr "Be&werken" #: Accelerators.cpp:502 msgid "&View" msgstr "Be&eld" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Tabs" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "&Bladwijzers" #: Accelerators.cpp:502 msgid "&Archive" msgstr "&Archief" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Mount" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "&Gereedschappen" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Opties" #: Accelerators.cpp:502 msgid "&Help" msgstr "&Help" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "&Kolommen in display" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "&Laad een tab template" #: Accelerators.cpp:673 msgid "Action" msgstr "Actie" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Sneltoets" #: Accelerators.cpp:675 msgid "Default" msgstr "Standaard" #: Accelerators.cpp:694 msgid "Extension" msgstr "Extensie" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "Toon/verberg de extensie kolom in bestandsoverzicht" #: Accelerators.cpp:694 msgid "Size" msgstr "Grootte" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "Toon/verberg de grootte kolom in bestandsoverzicht" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Tijd" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "Toon/verberg de tijd kolom in bestandsoverzicht" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Machtigingen" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "Toon/verberg de machtigingen kolom in bestandsoverzicht" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Eigenaar" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "Toon/verberg de eigenaar kolom in bestandsoverzicht" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Groep" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "Toon/verberg de groep kolom in bestandsoverzicht" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Link" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "Toon/verberg de link kolom in bestandsoverzicht" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Toon alle kolommen" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Bestandsoverzicht: toon alle kolommen" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Verberg alle kolommen" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Bestandsoverzicht: verberg alle kolommen" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Bladwijzers: bewerken" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Bladwijzers: nieuwe scheidingslijn" #: Accelerators.cpp:697 msgid "First dot" msgstr "Eerste punt" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "Extensies starten aan het eerste punt" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "Voorlaatste punt" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "Extensies starten aan het voorlaatste punt" #: Accelerators.cpp:698 msgid "Last dot" msgstr "Laatste punt" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "Extensies starten aan het laatste punt" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "Wijzigingen droppen?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Bent u zeker?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Geen" #: Accelerators.cpp:939 msgid "Same" msgstr "Hetzelfde" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Tik het nieuwe label in om te tonen voor dit menu item" #: Accelerators.cpp:958 msgid "Change label" msgstr "Verander label" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "Tik de help string in voor dit menu item,\nannuleren zal de string verwijderen" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "Verander de help tekst" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "Ik lijk deze map of bestand niet te kunnen vinden.\nProbeer de blader knop." #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "Oeps!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Kies bestand(en) en/of mappen" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Kies een map om het archief in te bewaren" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Blader naar het archief waar moet toegevoegd worden" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "De map waarin u het archief wilt bewaren lijkt niet te bestaan.\nDe huidige map gebruiken?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "Het archief waar u probeert aan toe te voegen bestaat precies niet.\nOpnieuw proberen?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "Kan geen 7z binair bestand vinden op uw systeem" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Oeps" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "Kan geen geldig archief vinden om aan toe te voegen" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "Er werden geen relevante gecomprimeerde bestanden geselecteerd.\nOpnieuw proberen?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Blader naar het archief om het te verifiëren" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Kies de map om het archief in uit te pakken" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "De gewenste doelmap creëren mislukte.\nOpnieuw proberen?" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "Kan rpm2cpio niet vinden op uw systeem..." #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "Kan ar niet vinden op uw systeem..." #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "Kan geen geldig archief vinden om uit te pakken.\nOpnieuw proberen?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "Kan geen geldig archief vinden om te verifiëren.\nOpnieuw proberen?" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Bestand(en) gecomprimeerd" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Compressie mislukt" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Bestand(en) gedecomprimeerd" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Decompressie mislukt" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Bestand(en) geverifieerd" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Verificatie mislukt" #: Archive.cpp:1242 msgid "Archive created" msgstr "Archief gecreëerd" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Archief creatie mislukt" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Bestanden aan archief toegevoegd" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Bij archief bijvoegen mislukt" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archief uitgepakt" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Uitpakken mislukt" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archief geverifieerd" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "In welke map wilt u deze bestanden uitgepakt hebben?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "In welke map wilt u dit uitgepakt hebben?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Uitpakken van archief" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Ik vrees dat u geen machtiging hebt om in deze map te creëren\n Opnieuw proberen?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "Geen toegang!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Sorry, %s bestaat reeds\n Opnieuw proberen?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Ik vrees dat u geen machtiging hebt om in deze map te schrijven" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Ik vrees dat u geen machtiging hebt om toegang te krijgen tot bestanden van deze map" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "Geen uitgang!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Voor een of andere reden mislukte een map proberen maken om de back-up te ontvangen . Sorry!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Sorry, back-uppen mislukte" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Sorry, items verwijderen mislukte" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Plakken" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Veplaatsen" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Sorry, u moet root zijn om karakter of blok devices uit te pakken" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Ik vrees dat uw zlib te oud is om dit te kunnen doen :-(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "Voor een of andere reden mislukte het om het archief te openen :-(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "Ik kan niet in dat soort archieven gluren tenzij u liblzma installeert." #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Ontbrekende bibliotheek" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Het bestand is gecomprimeerd maar het is geen archief dus u kan er niet in gluren." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Sorry" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "Ik vrees dat ik niet in dat soort archieven kan gluren." #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Bladwijzer maken voor mappen" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Scheidingslijn" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Gedupliceerd" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Verplaatst" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Gekopieerd" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Hernoem map" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Bewerk bladwijzer" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "NieuweScheidingslijn" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "NieuweMap" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Kon menubalk niet laden!?" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Kon menu niet vinden!?" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Deze sectie bestaat niet in .ini bestand!?" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Bladwijzers" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "Sorry, kon die map niet vinden" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Bladwijzer toegevoegd" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "Alle wijzigingen droppen?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "Welk label wilt u voor de nieuwe folder?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Sorry, er is al een map die %s heet\n Opnieuw proberen?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Map toegevoegd" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Scheidingslijn toegevoegd" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Sorry, er is al een map die %s heet\n De naam veranderen?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "Oeps?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "Hoe zou u de map willen noemen?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "Welk label zou u willen voor de map?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Geplakt" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Verander het map label hieronder" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Sorry, u mag de hoofdmap niet verplaatsen" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Sorry, u mag de hoofdmap niet verwijderen" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "Tsk tsk!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Map %s verwijderen met al zijn inhoud?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Map verwijderd" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Bladwijzer verwijderd" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Welkom bij 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane is een bestandsbeheerder die ernaar streeft snel en full option te zijn zonder ballast." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Klik aub op Volgende om 4Pane voor uw systeem te configureren." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "Of als er al een configuratiebestand is dat u wilt kopiëren, klik" #: Configure.cpp:69 msgid "Here" msgstr "Hier" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Bronnen met succes gelokaliseerd. Klik aub op Volgende" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "Ik heb eens rondgekeken op uw systeem en een configuratie gecreëerd die zou moeten werken." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "U kan eender wanneer een meer volledige configuratie doen vanuit Opties > configureer 4Pane." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Plaats een 4Pane snelkoppeling op het bureaublad" #: Configure.cpp:158 msgid "&Next >" msgstr "&Volgende >" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Blader om het configuratiebestand te kopiëren" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Ik vrees dat u geen machtiging hebt om dit bestand te kopiëren.\nWilt u opnieuw proberen?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "Dit bestand lijkt geen geldig 4Pane configuratiebestand te zijn.\nBent u absoluut zeker dat u het wilt gebruiken?" #: Configure.cpp:198 msgid "Fake config file!" msgstr "Fake configuratiebestand!" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Kan 4Pane z'n bronbestanden niet vinden. Er moet iets mis zijn met uw installatie. :(\nWilt u ze manueel proberen lokaliseren?" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "Eek! Kan geen bronnen vinden." #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Blader naar ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Kan 4Pane z'n bitmaps niet vinden. Er moet iets mis zijn met uw installatie. :(\nWilt u ze manueel proberen lokaliseren?" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "Eek! Kan geen bitmaps vinden." #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Blader naar ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "Kan 4Pane z'n help bestanden niet vinden. Er moet iets mis zijn met uw installatie. :-(\nWilt u ze manueel proberen lokaliseren?" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "Eek! Kan geen help bestanden vinden." #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Blader naar ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "&Programma draaien" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "Installeer .deb(s) als root:" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "Verwijder de named.deb als root:" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "Lijst bestanden op voorzien door een specifieke .deb" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "Lijst geïnstalleerde .debs op die overeenkomen met de naam:" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "Tonen of de genoemde .deb geïnstalleerd is:" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "Tonen welke package het geselecteerde bestand geïnstalleerd heeft" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "Installeer rpm(s) als root:" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "Verwijder een rpm als root:" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "Bevraag de geselecteerde rpm" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "Lijst de bestanden op geleverd door de geselecteerde rpm" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "Bevraag de genoemde rpm" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "Lijst de bestanden op geleverd door de geselecteerde rpm" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "Creëer een map als root:" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Ga naar de thuismap" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "Ga naar de documenten map" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Als u deze boodschap ziet (en dat zou niet mogen!) dan is dat omdat het configuratiebestand niet bewaard kon worden.\nDe minst onwaarschijnlijke redenen zijn foute machtigingen of een enkel-lezen partitie." #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Sneltoetsen" #: Configure.cpp:2041 msgid "Tools" msgstr "Gereedschappen" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Voeg een gereedschap toe" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Bewerk een gereedschap" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Verwijder een gereedschap" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Toestellen" #: Configure.cpp:2052 msgid "Automount" msgstr "Automount" #: Configure.cpp:2054 msgid "Mounting" msgstr "Aan het mounten" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "Uitwisselbaar" #: Configure.cpp:2060 msgid "Fixed" msgstr "Vast" #: Configure.cpp:2062 msgid "Advanced" msgstr "Geavanceerd" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Geavanceerd vast" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Geavanceerd uitwisselbaar" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "Geavanceerd lvm" #: Configure.cpp:2072 msgid "The Display" msgstr "Het scherm" #: Configure.cpp:2074 msgid "Trees" msgstr "Bomen" #: Configure.cpp:2076 msgid "Tree font" msgstr "Boom lettertype" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Allerlei" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminals" #: Configure.cpp:2083 msgid "Real" msgstr "Echt" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulator" #: Configure.cpp:2088 msgid "The Network" msgstr "Het netwerk" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Allerlei" #: Configure.cpp:2093 msgid "Numbers" msgstr "Nummers" #: Configure.cpp:2095 msgid "Times" msgstr "Tijden" #: Configure.cpp:2097 msgid "Superuser" msgstr "Superuser" #: Configure.cpp:2099 msgid "Other" msgstr "Andere" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr " Laat gtk2 stoppen met de F10 toets te grijpen" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "Als dit niet aangekruist is, grijpt gtk2 het indrukken van de F10 toets, dus u kan hem niet als sneltoets gebruiken (het is de standaard voor \"Nieuw bestand of map\")." #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "Sorry, er geen plaats voor nog een submenu hier\nIk suggereer dat u het ergens anders probeert te plaatsen" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Geef de naam in van het nieuwe submenu om aan toe te voegen " #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "Sorry, een menu met deze naam bestaat al\n Opnieuw proberen?" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "Sorry, u mag het root menu niet verwijderen" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "Menu \"%s\" verwijderen met al zijn inhoud?" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "Ik kan geen uitvoerbaar commando \"%s\" vinden.\nToch doorgaan?" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Ik kan geen uitvoerbaar commando \"%s\" vinden in uw pad.\nToch doorgaan?" #: Configure.cpp:2471 msgid " Click when Finished " msgstr " Klik indien klaar " #: Configure.cpp:2477 msgid " Edit this Command " msgstr " Bewerk dit commando " #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "Verwijder commando \"%s\"?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Kies een bestand" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Gebruiker-gedefinieerde gereedschappen" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "Automounting toestellen" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "Gemounte toestellen" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "USB toestellen" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "Uitwisselbaare toestellen" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "Vaste toestellen" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "Geavanceerde toestellen" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "Geavanceerde vaste toestellen" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "Geavanceerde uitwisselbare toestellen" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "Geavanceerde LVM toestellen" #: Configure.cpp:2739 msgid "Display" msgstr "Uiticht" #: Configure.cpp:2739 msgid "Display Trees" msgstr "Scherm bomen" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "Scherm boom lettertype" #: Configure.cpp:2739 msgid "Display Misc" msgstr "Scherm allerlei" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "Echte terminals" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Terminal Emulator" #: Configure.cpp:2740 msgid "Networks" msgstr "Netwerken" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "Allerlei Ongedaan maken" #: Configure.cpp:2741 msgid "Misc Times" msgstr "Allerlei Tijden" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "Allerlei Superuser" #: Configure.cpp:2741 msgid "Misc Other" msgstr "Allerlei Andere" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "Er zijn niet-opgeslagen veranderingen op de \"%s\" pagina.\n Toch sluiten?" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "Geselecteerd boomlettertype" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "Standaard boomlettertype" #: Configure.cpp:3501 msgid " (Ignored)" msgstr " (Genegeerd)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "Dit toestel verwijderen?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "Geselecteerd terminal emulator font" #: Configure.cpp:3829 msgid "Default Font" msgstr "Standaard lettertype" #: Configure.cpp:4036 msgid "Delete " msgstr "Verwijderen " #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Bent u ZEKER?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Dat lijkt geen geldig IP adres te zijn" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Die server staat al op de lijst" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Voer aub het te gebruiken commando in, met elke vereiste optie" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "Commando voor een ander gui su programma" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "Elk metasleutel patroon moet uniek zijn. Opnieuw proberen?" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "U koos ervoor om geen enkel datatype te exporteren! Afbreken." #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "Verwijder deze werkbalkknop?" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "Blader naar het bestandspad om toe te voegen" #: Devices.cpp:221 msgid "Hard drive" msgstr "Harde schijf" #: Devices.cpp:221 msgid "Floppy disc" msgstr "Floppy" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "CD of DVD-ROM" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "CD of DVD schrijver" #: Devices.cpp:221 msgid "USB Pen" msgstr "USB stick" #: Devices.cpp:221 msgid "USB memory card" msgstr "USB geheugen kaart" #: Devices.cpp:221 msgid "USB card-reader" msgstr "USB kaartlezer" #: Devices.cpp:221 msgid "USB hard drive" msgstr "USB harde schijf" #: Devices.cpp:221 msgid "Unknown device" msgstr "Onbekend toestel" #: Devices.cpp:301 msgid " menu" msgstr " menu" #: Devices.cpp:305 msgid "&Display " msgstr "&Tonen " #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Verbergen " #: Devices.cpp:308 msgid "&Mount " msgstr "&Mount " #: Devices.cpp:308 msgid "&UnMount " msgstr "&UnMount " #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "Mount een DVD-&RAM" #: Devices.cpp:347 msgid "Display " msgstr "Tonen " #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "UnMount DVD-&RAM" #: Devices.cpp:354 msgid "&Eject" msgstr "&Uitwerpen" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "Welke mount wilt u verwijderen?" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "Unmount een DVD-RAM disc" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "Klik of sleep naar hier om een beroep te doen op " #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "Ik vrees dat u geen machtiging hebt om dit bestand te lezen" #: Devices.cpp:581 msgid "Failed" msgstr "Mislukt" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "bestand(en) konden niet geopend worden vanwege het ontbreken van lees machtiging" #: Devices.cpp:592 msgid "Warning" msgstr "Waarschuwing" #: Devices.cpp:843 msgid "Floppy" msgstr "Floppy" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oeps, die schijf lijkt niet beschikbaar te zijn.\n\n Een prettige dag nog!" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oeps, die partitie lijkt niet beschikbaar te zijn.\n\n Een prettige dag nog!" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Sorry, u moet root zijn om niet-fstab partities te unmounten" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "Sorry, unmounten mislukt" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "\n(U moet su voor root)" #: Devices.cpp:1435 msgid "The partition " msgstr "De partitie " #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr " heeft geen fstab entry.\nWaar wilt u het mounten?" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "Mount een niet-fstab partitie" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "Het mount-punt voor dit toestel bestaat niet. Creëren?" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "Sorry, u moet root zijn om niet-fstab partities te mounten" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "Oeps, succesvol mounten mislukt\nEr was een probleem met /etc/mtab" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "Oeps, succesvol mounten mislukt\n Probeer een werkende schijf in te steken" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "Oeps, succesvol mounten mislukt vanwege een fout " #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "Oeps, succesvol mounten mislukt\nHebt u toelating om dit te doen?" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "Ik kan het bestand met de partitielijst niet vinden, " #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "\n\nU moet Configureren gebruiken om dingen uit te zoeken" #: Devices.cpp:1662 msgid "File " msgstr "Bestand " #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "Ik kan het bestand met de scsi-entries niet vinden, " #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "U moet een geldig commando invoeren. Opnieuw proberen?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "Geen programma ingevoerd" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "Dat bestandspad lijkt momenteel niet te bestaan.\n Toch gebruiken?" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "Programma niet gevonden" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "Deze editor verwijderen?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Annuleren" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "Selecteer aub het juiste icoon type" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "Ik vrees dat u geen leesmachtiging hebt voor het bestand" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "Er is precies een probleem: de doelmap bestaat niet! Sorry." #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "Er is precies een probleem: de inkomende map bestaan niet! Sorry." #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "Er is al een map in het archief met de naam " #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "\nIk suggereer dat u het ofwel hernoemt, ofwel de inkomende map" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "Voor een of andere reden mislukte de poging om een map te creëren om het overschreven bestand tijdelijk te bewaren. Sorry!" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "Beide bestanden hebben de hetzelfde wijzigingstijdstip" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "Het huidige bestand werd gewijzigd om " #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "Het inkomende bestand werd gewijzigd om " #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "U lijkt deze map met zichzelf te willen overschrijven" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "Sorry, die naam is al in gebruik. Probeer aub opnieuw." #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "Nee, het plan is dat u de naam VERANDERT" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "Sorry, ik kon het bestand niet dupliceren. Een machtigingsprobleem misschien?" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "Sorry, ik kon geen plaats voorzien voor de inkomende map. Een machtigingsprobleem misschien?" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "Sorry, een onwaarschijnlijke bestandssysteemfout deed zich voor :-(" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "Symlink verwijderen mislukt!?!" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "Meerdere dubbels" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "Bevestig dupliceren" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "RegEx Help" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Success\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "Proces mislukte\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "Proces met succes afgevoerd\n" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "SIGTERM mislukt\nProbeer SIGKILL\n" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "Proces met succes gekild\n" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "Sorry, annuleren mislukt\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "Uitvoeren van '%s' mislukt." #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Sluiten" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Normaal bestand" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Symbolische link" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Gebroken symbolische link" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Karakter device" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Blok device" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Map" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "Socket" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "Onbekend type?!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Toepassingen" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "Sorry, u mag de root map niet verwijderen" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "Zucht!" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "Verwijder map %s?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "Sorry, ik kon die map niet vinden!?" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "Ik kan geen uitvoerbaar programma \"%s\" vinden.\nToch doorgaan?" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "Ik kan geen uitvoerbaar programma \"%s\" vinden in uw pad.\nToch doorgaan?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Sorry, er is al een applicatie genaamd %s\n Opnieuw proberen?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Bevestig aub" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "U voerde geen extensie in!" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "Voor welke extensie(s) wilt u dat dit de standaard applicatie wordt?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "Voor welke extensie(s) wilt u dat %s de standaard wordt" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "Vervang %s\nmet %s\nals het standaard commando voor bestanden van type %s?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "Sorry, ik kon de applicatie niet vinden!?" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "Verwijder %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Bewerk de applicatie data" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Sorry, u hebt geen machtiging om dit bestand uit te voeren." #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "Sorry, u hebt geen machtiging om dit bestand uit te voeren.\nWilt u het proberen te lezen?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "%s niet meer gebruiken als standaard commando voor bestanden van type %s?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "Tijdelijke map maken mislukt" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Verborgen tonen" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "knippen" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "%zu items " #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "U hebt geen mount-punt ingevoerd.\nOpnieuw proberen?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "Het mount-punt voor deze partitie bestaat niet. Creëren?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "Oeps, partitie mounten mislukt." #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr " De foutboodschap was:" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Met succes gemount op " #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "Onmogelijk om map te creëren " #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Oeps, map creëren mislukt" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "Oeps, ik heb niet geen machtiging om de map te creëren" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "Oeps, map creëren mislukt." #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "De root unmounten is een ECHT HEEL slecht idee!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "Oeps, partitie unmounten mislukt." #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Unmounten mislukt " #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr " met succes ge-unmount" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "Oeps, met succes unmounten mislukt vanwege fout " #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Oeps, unmounten mislukt" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "Het gevraagde mount-punt bestaat niet. Creëren?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Oeps, met succes mounten is mislukt\nBent u zeker dat het bestand een geldige afbeelding is?" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "Met succes mounten mislukt vanwege een fout " #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "Met succes mounten is mislukt" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "Deze export is reeds gemount op " #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "Het mount-punt voor deze export bestaat niet. Creëren?" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "Het mount-punt voor deze share bestaat niet. Creëren?" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "Sorry, u moet root zijn om niet-fstab exports te mounten" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "Oeps, met succes mounten mislukt\nDraait NFS?" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "Het geselecteerde mount-punt bestaat niet. Creëren?" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "Het geselecteerde mount-punt is geen map" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "Het geselecteerde mount-punt is niet toegankelijk" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "Het geselecteerde mount-punt is niet leeg. Toch daar proberen mounten?" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "Mounten over ssh is mislukt. De foutboodschap was:" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "Mounten over ssh is mislukt door een fout " #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "Mounten over ssh is mislukt op %s" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "Deze share is al gemount aan " #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "Deze share is al gemount aan %s\nWil u hem ook aan %s mounten?" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "Sorry, u moet root zijn om niet-fstab shares te mounten" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "Oeps, met succes mounten mislukt. De foutboodschap was:" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "Geen mounts van dit type gevonden" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "Unmount een netwerk mount" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "Share of export om te unmounten" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Mount-punt" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr " Met succes ge-unmount" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "Unmounten mislukt met de boodschap:" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "Kies een map om als mount-punt te gebruiken" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "Kies een image om te mounten" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Ik kan de utility \"smbclient\" niet vinden. dit betekent waarschijnlijk dat Samba niet goed geïnstalleerd is.\nAnderzijds kan er ook een PAD of machtigingsprobleem zijn" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Ik kan de utility \"nmblookup\" niet starten. Dit betekent waarschijnlijk dat Samba niet goed geïnstalleerd is.\nAnderzijds kan er ook een PAD of machtigingsprobleem zijn" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Ik kan de utility \"nmblookup\" niet vinden. Dit betekent waarschijnlijk dat Samba niet goed geïnstalleerd is.\nAnderzijds kan er ook een PAD of machtigingsprobleem zijn" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "Samba shares zoeken..." #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "Ik kan geen actieve Samba server vinden.\nAls u er een kent, vertel me dan aub zijn adres, bv. 192.168.0.3" #: Mounts.cpp:1315 msgid "No server found" msgstr "Geen server gevonden" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "Ik vrees dat ik de showmount utility niet kan vinden. Gebruik aub configureren > netwerk om zijn bestandspad in te voeren" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "Ik kan de utility \"showmount\" niet vinden. Waarschijnlijk is NFS niet goed geïnstalleerd.\nAnderzijds kan er ook een pad of machtigingsprobleem zijn" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "Ik ben niet op de hoogte van enige NFS servers op uw netwerk.\nWilt u verder gaan en er zelf enkele inschrijven?" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "Geen huidige mounts gevonden" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "U kan niet linken in een map zelf tenzij u de naam van de link veranderd." #: MyDirs.cpp:118 msgid "Not possible" msgstr "Niet mogelijk" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "Terug naar de vorige map" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "Map terug invoeren" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "Eerder bezochte map selecteren" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "Toon volledige boom" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "Naar de hogere map" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Thuis" #: MyDirs.cpp:499 msgid "Documents" msgstr "Documenten" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "Hmm. Die map bestaat blijkbaar niet meer!" #: MyDirs.cpp:664 msgid " D H " msgstr " M V " #: MyDirs.cpp:664 msgid " D " msgstr " M " #: MyDirs.cpp:672 msgid "Dir: " msgstr "Map: " #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Bestanden, totale grootte" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Submappen" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "Probeer seffens nog eens" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "Ik ben nu even bezig" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "Ik vrees dat u niet kan creëren in een archief.\nU kan wel het nieuwe element erbuiten creëren en het dan erin verplaatsen." #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "Ik vrees dat u geen machtiging hebt om in deze map te creëren" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "V&erberg verborgen mappen/bestanden\tCtrl+H" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "Toon verborgen &mappen en bestanden\tCtrl+H" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "verplaatst" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "Ik vrees dat u niet de juiste machtigingen hebt om deze verplaatsing te maken.\nWilt u in plaats daarvan proberen te kopiëren?" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "Ik vrees dat u niet de juiste machtigingen hebt om deze verplaatsing te maken" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "Ik vrees dat u geen links kan creëren in een archief.\nU kan wel de nieuwe link erbuiten creëren en hem dan erin verplaatsen." #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "Ik vrees dat u geen machtiging hebt om linken in deze map te creëren" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "Creëer een nieuwe %s link vanaf:" #: MyDirs.cpp:1033 msgid "Hard" msgstr "Hard" #: MyDirs.cpp:1033 msgid "Soft" msgstr "Zacht" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "Voorzie aub een extensie om toe te voegen" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "Voorzie aub een naam voor de link" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "Voorzie aub een andere naam voor de link" #: MyDirs.cpp:1112 msgid "linked" msgstr "gelinkt" #: MyDirs.cpp:1122 msgid "trashed" msgstr "trashed" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "verwijderd" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "Ik vrees dat u geen machtiging hebt om te verwijderen uit deze map" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "Minstens één van de items om te verwijderen bestaat precies niet" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "Het item om te verwijderen bestaat precies niet" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "Item niet gevonden" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "Ik vrees dat u geen machtiging hebt om deze items naar een 'bak' te verplaatsen." #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "\nMaar u zou ze ook kunnen 'definitief verwijderen'." #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "Ik vrees dat geen toelating hebt om %s naar een 'bak' te verplaatsen." #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "\nMaar u zou het ook kunnen 'definitief verwijderen'." #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "Ik vrees dat u geen machtiging hebt om %u van deze %u items naar een 'bak' te verplaatsen." #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "\n\nWenst u de andere item(s) te verwijderen?" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "Naar prullenbak afvoeren: " #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Verwijderen: " #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "%zu items, van: " #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n Naar:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "Voor een of andere reden mislukte een map proberen maken om de verwijdering te ontvangen . Sorry!" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "Sorry, verwijderen mislukt" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr " U hebt geen machtiging om vanuit deze map te verwijderen.\nU zou met stukjes en beetjes kunnen proberen." #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr " U hebt geen machtiging om vanuit een submap van deze map te verwijderen.\nU zou met stukjes en beetjes kunnen proberen." #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr " Het bestandspad was ongeldig." #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "Voor " #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr " van de items hebt u geen machtiging om te verwijderen van deze map." #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr " van de items hebt u geen machtiging om te verwijderen uit een submap van deze map." #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr " van de items was het bestandspad ongeldig." #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr " \nU zou kunnen proberen stukje bij beetje te verwijderen." #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "Ik vrees dat het item niet verwijderd kom worden." #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "Ik vrees dat " #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr " items niet verwijderd konden worden." #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "Ik vrees dat enkel " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr " van de " #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr " items verwijderd konden worden." #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "Knippen mislukt" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "Verwijderen mislukt" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "Definitief verwijderen (u kan dit niet ongedaan maken!): " #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "Bent u ABSOLUUT zeker?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "onherroepelijk verwijderd" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "Verwijderen mislukt!?!" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "? Nooit van gehoord!" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "Map verwijderen mislukt!?!" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "Het bestand lijkt niet te bestaan!?!" #: MyDirs.cpp:1757 msgid "copied" msgstr "gekopieerd" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "Mapskelet geplakt" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "geplakt" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "&Symlink maken" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "&Hardlink maken" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "Uit het archief trekken" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "Verwijder uit &archief" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "Map in arc&hief hernoemen" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "Map in archief dupliceren" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "Bestand in arch&ief hernoemen" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "Bestand in archief dupliceren" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "Map ver&wijderen" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "Map &naar prullenbak" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "S&ymlink verwijderen" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "&Symlink naar prullenbak" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "Ver&wijder bestand" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "Bestand naar &prullenbak" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Andere . . . ." #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "Met root privile&ges openen met . . . . " #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "Met &root privileges openen" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "Openen &met . . . . " #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "Map h&ernoemen" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "Map d&upliceren" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "&Bestand hernoemen" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "Bestand &dupliceren" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "&Creëer een nieuw archief" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "Toevoegen aan een nieuw archief" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "Test de integriteit van archieven of gecomprimeerde bestanden" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Bestanden &comprimeren" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "&Verberg verborgen mappen en bestanden" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "&Toon verborgen mappen en bestanden" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "Sorteer &bestandsnamen eindigend op cijfers normaal" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "Sorteer &bestandsnamen eindigend op cijfers in decimale orde" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "Een extensie begint aan de bestandsnaam zijn..." #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "Extensie &definitie..." #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "&Kolommen in display" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "Panelen &ontsplitsen" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "&Repliceer in tegenoverliggend paneel" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "&Wissel panelen" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "Ik vrees dat u niet kan creëren in een archief.\nU kan wel het nieuwe element erbuiten creëren en het dan erin verplaatsen." #: MyFiles.cpp:588 msgid "New directory created" msgstr "Nieuwe map gecreëerd" #: MyFiles.cpp:588 msgid "New file created" msgstr "Nieuw bestand gecreëerd" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "Ik denk niet dat u de root echt wilt dupliceren, u wel" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "Ik denk niet dat u de root echt wilt hernoemen, u wel" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "Ik vrees dat u geen machtiging hebt om te dupliceren in deze map" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "Ik vrees dat u geen machtiging hebt om te hernoemen in deze map" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Dupliceren " #: MyFiles.cpp:665 msgid "Rename " msgstr "Hernoemen " #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "Nee, het idee is dat u een NIEUWE naam levert" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "gedupliceerd" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "hernoemd" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "Sorry, dat werkte niet. Opnieuw proberen?" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "Sorry, deze naam is illegaal\n Opnieuw proberen?" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "Sorry, er bestaat er al zo een\n Opnieuw proberen?" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "Sorry, voor een of andere reden is deze operatie mislukt\nOpnieuw proberen?" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "Sorry, die naam is al in gebruik.\n Opnieuw proberen?" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Open met " #: MyFiles.cpp:1043 msgid " D F" msgstr " M B" #: MyFiles.cpp:1044 msgid " R" msgstr " R" #: MyFiles.cpp:1045 msgid " H " msgstr " V " #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr " van bestanden en submappen" #: MyFiles.cpp:1077 msgid " of files" msgstr " van bestanden" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "Het nieuwe doel voor de link blijkt niet te bestaan.\nOpnieuw proberen?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "Voor de een of andere reden is het veranderen van het doel van de symlink mislukt. Sorry!" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr " veranderingen succesvol gemaakt, " #: MyFiles.cpp:1693 msgid " failures" msgstr " mislukkingen" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "Kies een ander bestand of map om het nieuwe doel te worden" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Waarschuwing!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "Sorry, creatie van de map voor uw gekozen configuratiebestand is mislukt; afvoeren." #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "Sorry, u hebt geen machtiging om te schrijven naar de map die uw gekozen configuratiebestand bevat; afvoeren." #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "Kan het help systeem niet initialiseren; afvoeren." #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Meerdere acties tegelijkertijd ongedaan maken" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Meerdere acties tegelijkertijd opnieuw doen" #: MyFrame.cpp:743 msgid "Cut" msgstr "Knippen" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Klik om de selectie te knippen" #: MyFrame.cpp:744 msgid "Copy" msgstr "Kopiëren" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Klik om de selectie te kopiëren" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Klik om de selectie te plakken" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Ongedaan maken" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Een actie ongedaan maken" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Opnieuw doen" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Doe een vorige 'ongedaan maken' actie opnieuw" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Nieuwe tab" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Creëer een nieuwe tab" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Tab verwijderen" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Verwijdert de huidige geselecteerde tab" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "Voorbeeld van gereedschapstip" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "Toont voorbeelden van afbeeldingen en tekstbestanden in een 'gereedschapstip'" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Over" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Fout" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Succes" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Computer" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Secties" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "Illegale mapnaam." #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "De bestandsnaam bestaat reeds." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "Operatie niet toegelaten." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "Welke template wilt u verwijderen?" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Template verwijderen" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "Template opslaan geannuleerd" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Geannuleerd" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "Hoe wilt u deze template noemen?" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "Kies een template label" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "Template opslaan geannuleerd" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "Sorry, het maximum aantal tabs is al geopend." #: MyNotebook.cpp:346 msgid " again" msgstr " opnieuw" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "&Tab toevoegen" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "Hoe wilt u deze tab noemen?" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "Tabtitel veranderen" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "Ongeldige kolom index" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "Ongeldige kolom" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr " *** Gebroken symlink ***" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "Een lzma stream decomprimeren mislukte" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "xz compressie mislukt" #: Redo.cpp:258 msgid " Redo: " msgstr " Opnieuw doen: " #: Redo.cpp:258 msgid " Undo: " msgstr " Maak ongedaan: " #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr " (%zu Items) " #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr " ---- MEER ---- " #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr " -- VORIGE -- " #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "ongedaan gemaakt" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "opnieuw gedaan" #: Redo.cpp:590 msgid " actions " msgstr " acties " #: Redo.cpp:590 msgid " action " msgstr " actie " #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "actie" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr " ongedaan gemaakt" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr " opnieuw gedaan" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "Creëren v/e map om verwijderingen op te slaan mislukt" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "Sorry, ik kan uw geselecteerde 'trashed' map niet creëren. Een machtigingsprobleem misschien?\nIk suggereer dat u 'configureren' gebruikt om een andere locatie te kiezen" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Sorry, ik kan uw geselecteerde verwijderd map niet creëren. Een machtigingsprobleem misschien?\nIk suggereer dat u 'configureren' gebruikt om een andere locatie te kiezen." #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "Sorry, ik kan uw geselecteerde tijdelijke bestandsmap niet creëren. Een machtigingsprobleem misschien?\nIk suggereer dat u 'configureren' gebruikt om een andere locatie te kiezen." #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "4Pane's prullenbak leegmaken zal alle bestanden die daar bewaard worden definitief verwijderen!\n\n Doorgaan?" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "Prullenbak geleegd" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "4Pane's verwijderd-bak leegmaken gebeurt automatisch als 4Pane gesloten wordt\nHet voortijdig doen zal alle daarin bewaarde bestanden verwijderen. Alle ongedaan maken/opnieuw doen informatie zal verloren gaan!\n\n Doorgaan?" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "Bewaarde bestanden definitief verwijderd" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "Er is al een bestand met deze naam in het doelpad. Sorry" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "Ik vrees dat u geen machtiging hebt om naar deze doelmap te schrijven. Sorry" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "U kan geen hardlink maken naar een map." #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "U kan geen hardlink maken naar een ander toestel of partitie." #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "\nWilt u in de plaats daarvan een symlink maken?" #: Tools.cpp:60 msgid "No can do" msgstr "Dat gaat niet" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "Sorry, geen match gevonden." #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr " Een prettige dag nog!\n" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "Draai de 'lokaliseren' dialoog" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "Draai de 'vinden' dialoog" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "Draai de 'grep' dialoog" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Tonen" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Verbergen" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "U hebt de keuzes van deze pagina niet aan het 'find' commando toegevoegd. Als de pagina verandert, zullen ze genegeerd worden.\nKeuzes negeren?" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "U hebt de keuzes van deze pagina niet aan het 'grep' commando toegevoegd. Als de pagina verandert, zullen ze genegeerd worden.\nKeuzes negeren?" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "Ga naar het geselecteerde bestandspad" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Open geselecteerd bestand" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "Sorry, op die manier superuser worden is hier niet mogelijk.\n" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "U moet elk commando starten met 'sudo'" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "U kan in de plaats daarvan: su -c \"\" doen" #: Tools.cpp:2880 msgid " items " msgstr " items " #: Tools.cpp:2880 msgid " item " msgstr " item " #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Herhaal: " #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "Sorry, er is geen plaats voor nog een commando hier\nIk suggereer dat u het in een ander submenu probeert te plaatsen" #: Tools.cpp:3077 msgid "Command added" msgstr "Commando toegevoegd" #: Tools.cpp:3267 msgid "first" msgstr "eerste" #: Tools.cpp:3267 msgid "other" msgstr "andere" #: Tools.cpp:3267 msgid "next" msgstr "volgende" #: Tools.cpp:3267 msgid "last" msgstr "laatste" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "Slecht gevormd gebruiker-gedefinieerd commando: the modifier '%c' met 'b' gebruiken is zinloos. Afvoeren" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "Slecht gevormd gebruiker-gedefinieerd commando: u kan maar één modifier per parameter gebruiken. Afvoeren" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "Slecht gevormd gebruiker-gedefinieerd commando: the modifier '%c' moet gevolgd worden door 's', 'f', 'd' of 'a'. Afvoeren" #: Tools.cpp:3337 msgid "Please type in the" msgstr "Tik aub de" #: Tools.cpp:3342 msgid "parameter" msgstr "parameter in" #: Tools.cpp:3355 msgid "ran successfully" msgstr "met succes gelopen" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "Gebruiker-gedefinieerd gereedschap" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "teruggekomen met exit code" #: Devices.h:432 msgid "Browse for new Icons" msgstr "Bladeren voor nieuwe iconen" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "Bestand en map selecteren dialoog" #: Misc.h:265 msgid "completed" msgstr "beëindigd" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Verwijderen" #: Redo.h:150 msgid "Paste dirs" msgstr "Mappen plakken" #: Redo.h:190 msgid "Change Link Target" msgstr "Verander linkdoel" #: Redo.h:207 msgid "Change Attributes" msgstr "Verander attributen" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Nieuwe map" #: Redo.h:226 msgid "New File" msgstr "Nieuw bestand" #: Redo.h:242 msgid "Duplicate Directory" msgstr "Map dupliceren" #: Redo.h:242 msgid "Duplicate File" msgstr "Bestand dupliceren" #: Redo.h:261 msgid "Rename Directory" msgstr "Map hernoemen" #: Redo.h:261 msgid "Rename File" msgstr "Bestand hernoemen" #: Redo.h:281 msgid "Duplicate" msgstr "Dupliceren" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Hernoemen" #: Redo.h:301 msgid "Extract" msgstr "Uitpakken" #: Redo.h:317 msgid " dirs" msgstr " mappen" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "Voer gereedschapstip-vertraging in" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "Stel de gewenste gereedschapstip-vertraging in, in seconden" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "Schakel gereedschapstip uit" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "OK" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "Klik indien klaar" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "&Annuleren" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "Klik om af te voeren" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "Nieuw toestel gedetecteerd" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "Er werd een toestel aangesloten dat ik nog niet tegengekomen ben." #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "Wilt u het configureren?" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "&Ja" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr " Nie&t nu" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "Niet nu configureren maar vraag opnieuw elke keer het verschijnt" #: configuredialogs.xrc:205 msgid "&Never" msgstr "&Nooit" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "\"Geen gezeur over dit toestel\". Als u van gedacht verandert, kan het geconfigureerd worden via 'configureren'." #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "Nieuw toestel configureren" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "Devicenode" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "Mount-punt voor het toestel" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "Hoe wilt u het noemen?" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Toestel type" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "Toestel is alleen-lezen" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "Niet vragen naar dit toestel noch laden" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "Negeer dit toestel" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "&ANNULEREN" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "Naam van de fabrikant" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "Dit is de naam (of, bij ontbreken, het ID) geleverd door het toestel. U kan het veranderen naar iets dat beter te onthouden is, als u wilt" #: configuredialogs.xrc:577 msgid "Model name" msgstr "Naam v/h model" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "Mount-punt voor dit toestel" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "Hoe is de naam van de map waaraan dit toestel gemount is? Het ziet er waarschijnlijk uit als /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "Nieuw toesteltype configureren" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "Label om aan dit toestel te geven" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "Als dit een ongebruikelijk soort toestel is dat niet op de standaardlijst staat, tik de naam die het het best beschrijft in" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "Wat is de best overeenkomende beschrijving?" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "Selecteer het type dat het meest lijkt op het nieuwe. Dit bepaalt welk icoon op de werkbalk verschijnt" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "4Pane configureren" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "&Klaar" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "Klik indien klaar met configureren" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "Gebruiker-gedefinieerde commando's zijn externe programma's die u kan\nlanceren vanuit 4Pane. Het kunnen utilities zijn zoals 'df', of elk ander\nbeschikbaar programma of uitvoerbaar script.\nbv. 'gedit %f' start het nu geselecteerde bestand in gedit." #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "De volgende parameters zijn beschikbaar:\n%s zal het geselecteerde bestand of map doorgeven aan de applicatie\n%f (%d) zal enkel het geselecteerde bestand (map) doorgeven\n%a geeft alle geselecteerde items van het actieve venster door\n%b zal één selectie doorgeven van beide bestandsoverzicht panelen.\n%p zal vragen achter een parameter om door te geven aan de applicatie.\n\nOm een commando als superuser te proberen geven, laat vooraf gaan door bv. gksu or sudo" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "Op de volgende sub-pagina's kan u gereedschappen toevoegen, bewerken of verwijderen." #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "Deze sectie gaat over toestellen. Dat kunnen ofwel\nvaste bv. DVD-rw stations, of uitwisselbare bv. USB-sticks zijn.\n\n4Pane kan gewoonlijk een distro zijn gedrag deduceren en zichzelf\nconfigureren om te matchen. Als dit faalt, of u wilt veranderingen\nmaken, dan kan u dat op de volgende sub-pagina's doen." #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "Hier is waar u kan proberen dingen te laten\nwerken als iets faalt omdat u een heel oude,\nof een heel moderne, setup hebt.\n\nHet is onwaarschijnlijk dat u deze sectie nodig hebt\nmaar als het gebeurt, lees de gereedschapstips." #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "Dit is waar u 4Pane's uiterlijk kan configureren.\n\nDe eerste sub-pagina behandelt map- en bestandsbomen,\n de tweede het lettertype en de derde de varia." #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "Deze twee sub-pagina's behandelen terminals. De eerste is\nvoor echte terminals, de tweede voor de terminal emulator." #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "Eindelijk, vier pagina's allerlei." #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "Deze items gaan over map- en bestandsbomen" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "Pixels tussen de ouder" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "map en het uitvouwvak" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "Er is een 'uitvouwvak' (in gtk2 eigenlijk een driehoek) tussen de oudermap en de bestandsnaam. Deze draaiknop stelt het aantal pixels in tussen de oudermap en de driehoek." #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "Pixels tussen het" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "Uitvouwvak en de naam" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "Er is een 'uitvouw vak' (in gtk2 eigenlijk een driehoek) tussen de oudermap en de bestandsnaam. Deze draaiknop stelt het aantal pixels in tussen de bestandsnaam en de driehoek" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "Verborgen bestanden en mappen tonen in de panelen van een nieuw gecreëerde tab. U kan dit veranderen voor individuele panelen in het contextmenu, of Ctrl-H" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr " Standaard verborgen bestanden en mappen tonen" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "Indien aangevinkt, worden afgebeelde bestanden/mappen gesorteerd op een aangepaste wijze voor uw ingestelde taal. Echter kan het gebeuren dat verborgen bestanden (indien getoond) niet afzonderlijk getoond worden" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr " Sorteer bestanden volgens de ingestelde taal" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "Toon een symlink-naar-een-map bij de gewone mappen in het bestandsoverzicht, niet onderaan bij de bestanden" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr " Behandel een symlink-naar-map als een gewone map" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "Wilt u zichtbare lijnen tussen elke map en zijn submappen? Kies wat u het meest bevalt maar de standaard is 'Ja' in gtk1 maar 'Nee' in sommige versies van gtk2" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr " Toon lijnen in de mappenboom" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "Kies kleuren als achtergrond voor de panelen. U kan verschillende kleuren hebben voor mapoverzichten en bestandsoverzichten" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr " Kleur de achtergrond van een paneel" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "&Selecteer kleuren" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "Klik om de te gebruiken achtergrondkleuren te selecteren" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "Geef in een bestandsoverzicht lijnen afwisselend een andere achtergrondkleur, met als resultaat een gestreept uitzicht" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr " Kleur lijnen afwisselend in een bestandsoverzicht" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "S&electeer kleuren" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "Klik om de kleuren te selecteren voor afwisselende lijnen" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "Accentueer de kolomkop van een bestandsoverzicht, of boven de werkbalk van een mapoverzicht, om te tonen welk paneel focus heeft. Klik op de 'configureren' knop om het accent aan te passen" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr " Accentueer het paneel met focus" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "&Configureren" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "Klik om de graad van accentuering van elk type paneel te wijzigen" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "Voor v. 1.1 updatete 4Pane zijn scherm als het zelf bestanden/mappen veranderde maar reageerde niet op veranderingen van buitenaf.\nNu kan 4Pane inotify gebruiken om zich te informeren over in- en externe veranderingen. Vink uit als u de oude methode verkiest." #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr " Gebruik inotify om het bestandssysteem in het oog te houden" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "&Toepassen" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "Hier kan u het font instellen dat gebruikt wordt door de boom" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "Klik op de 'veranderen' knop om een ander lettertype of -grootte te selecteren" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "De 'gebruik standaard' knop zal resetten naar de systeemstandaard" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "Dit is hoe het terminalemulator lettertype eruit ziet" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "&Wijzigen" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "Naar een lettertype van uw keuze veranderen" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "Het uitzicht bij gebruik van het standaard lettertype" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "&Standaard gebruiken" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "Terug naar standaard systeem lettertype" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "Als het huidig geselecteerde pad in het actieve mapoverzicht /thuis/david/Documents is, laat de titelbalk '4Pane [Documents]' tonen i.p.v. enkel '4Pane'" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr " Het huidig geselecteerd bestandspad tonen in de titelbalk" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "Hier kan u zien welk bestand of welke map geselecteerd is. Met Ctrl-C kan u het kopiëren voor gebruik in externe programma's. Veranderingen aan deze optie zijn pas effectief na herstart van 4Pane" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr " Het huidig geselecteerd bestandspad tonen in de werkbalk" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "4Pane levert standaard iconen voor 'kopiëren' en 'ongedaan maken' enz. Kruis aan om iconen van uw thema te gebruiken" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr " Indien mogelijk stock iconen gebruiken" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "4Pane bewaart 'trashed' bestanden en mappen i.p.v. ze te verwijderen. Zelfs dan kan u wensen er elke keer om gevraagd te worden; in dat geval, hier aanvinken" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr " Vraag bevestiging alvorens bestanden naar de prullenbak te verplaatsen" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "4Pane bewaard 'verwijderde' bestanden en mappen in zijn eigen verwijderbak" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr " Vraag bevestiging alvorens bestanden te verwijderen" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "Maak de bakken voor trashed/verwijderde bestanden aan in deze map" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "&Werkbalk editors configureren" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "Hier kan u iconen op de werkbalk die editors en zo voorstellen toevoegen/verwijderen. Deze openen bij aanklikken of u kan er (een) bestand(en) op slepen om in dat programma te openen." #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "&Voorbeelden configureren" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "Hier kan u de afmetingen van de afbeelding en tekstvoorbeelden configureren en hun activatietijd" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "&Kleine werkbalk gereedschappen configureren" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "Hier kan u knoppen toevoegen/verwijderen van de kleine werkbalk bovenaan elk mapoverzicht" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "&Gereedschapstips configureren" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "Configureer of en hoe lang gereedschapstips getoond worden. Dit heeft maar gedeeltelijk effect: het werkt nog niet voor de werkbalktips." #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "De terminal applicatie selecteren gestart door Ctrl-T" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "Een of ander van de volgende" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "Of voer uw eigen keuze in" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "Tik het exacte commando in om een terminal te lanceren.\nKies een die geïnstalleerd is op uw systeem ;-)" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "Welke terminal applicatie moet andere programma's lanceren?" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "Tik het exacte commando in om een ander programma in de terminal te lanceren.\nKies een terminal die geïnstalleerd is op uw systeem ;-)" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "Welke terminal applicatie moet een gebruiker-gedefinieerd gereedschap lanceren?" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "Tik het exacte commando in om een ander programma in de terminal te lanceren en houd de terminal open als het programma sluit.\nKies een terminal die geïnstalleerd is op uw systeem ;-)" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "Configureer de prompt en het lettertype voor de terminalemulator" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "Prompt. Bekijk de gereedschapstip voor details" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "Dit is de prompt voor de in-house 'terminal' toegankelijk via Ctrl-M of Ctrl-F6. U kan normale karakters gebruiken maar er zijn ook de volgende opties:\n%H = hostnaam %h = hostnaam tot aan het punt\n%u = gebruikersnaam\n%w = cwd %W = het laatste segment alleen van cwd\n%$ geeft ofwel $, ofwel # indien root" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Veranderen" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Standaard gebruiken" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "Momenteel bekende mogelijke nfs servers" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "Dit zijn de IP adressen van servers waarvan bekend is dat ze op uw netwerk zijn, of geweest zijn" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "Verwijder de geaccentueerde server" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "Voer een ander serveradres in" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "Voer hier het adres in van een andere server (bv. 192.168.0.2), klik dan op 'toevoegen'" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Toevoegen" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "Bestandspad voor showmount" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "Wat is het bestandspad naar de nfs helper showmount? Waarschijnlijk /usr/sbin/showmount" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Pad naar Samba map" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "Waar worden bestanden als smbclient en findsmb bewaard? Waarschijnlijk in /usr/bin/ (of gesymlinked vanaf daar)" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane laat u de meeste acties ongedaan maken (en opnieuw doen)." #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "Wat is het maximale ongedaan maken aantal?" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "(N.B. Zie de gereedschapstip)" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "Elke keer dat u bestanden 'plakt/verplaatst/hernoemt/verwijdert/enz', wordt het proces bewaard zodat het later teruggedraaid kan worden, en terug uitgevoerd indien gewenst. Dit is het maximum aantal terugdraaiingen\nN.B. Als u de inhoud van een map met 100 bestanden verwijdert, telt dit als 100 acties! Dus ik suggereer dat het aantal hier redelijk hoog mag zijn: tenminste 10.000" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "Het aantal items tegelijk op een drop-down menu." #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "(Zie de gereedschapstip)" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "Dit verwijst naar de 'ongedaan maken' en 'opnieuw doen' uitklapknoppen en die v/d mapoverzicht werkbalk om naar recent bezochte mappen te gaan.\nWat is het maximum aantal te tonen items per menu-pagina? Ik suggereer 15. U kan een pagina-waarde per keer naar vorige items." #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "Sommige boodschappen worden kort getoond en verdwijnen dan." #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "Hoe lang zouden ze moeten duren?" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "'Succes' bericht dialogen" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "Sommige dialogen voorzien een boodschap zoals \"Succes\" of \"Oeps, dat ging niet\" en sluiten zichzelf automatisch na enkele seconden. Dit getal is het aantal seconden dat een \"Succes\" boodschap getoond wordt" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "'Mislukt vanwege...' dialogen" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "Sommige dialogen voorzien een boodschap zoals \"Succes\" of \"Oeps, dat ging niet\" en sluiten zichzelf automatisch na enkele seconden. Dit getal is het aantal seconden dat een foutboodschap getoond wordt, wat langer moet zijn dan bij succes om u de kans te geven het te lezen" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "Statusbalk berichten" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "Sommige procedures zoals een partitie mounten, geven een succes bericht in de statusbalk. Dit bepaalt hoe lang zo'n bericht blijft staan" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "Welke front-end wilt u gebruiken om taken als root uit te voeren?" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "Vink aan om 4Pane lopende commando's zoals root te laten beheren door ofwel su of sudo aan te roepen (hangt af van uw distro of systeem)" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr " 4Pane zijn eigen" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "Het zou moeten roepen:" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "Sommige distro's (Ubuntu en zo) gebruiken sudo om superuser te worden, de meeste andere su. Selecteer wat voor u geldt." #: configuredialogs.xrc:3196 msgid "su" msgstr "su" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "sudo" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "Vink aan als u wilt dat 4Pane het wachtwoord bewaart en automatisch voorziet indien nodig. Om veiligheidsredenen is 60 minuten de langst toegestane tijd" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr " Wachtwoorden opslaan voor:" #: configuredialogs.xrc:3233 msgid "min" msgstr "min" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "Indien aangevinkt zal de tijdslimiet herstarten elke keer dat het wachtwoord voorzien wordt" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr " Herstart de tijd bij elk gebruik" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "Een extern programma, bv. gksu. Enkel selecteerbaar indien aanwezig op uw systeem" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr " Een extern programma:" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr " kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr " gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr " gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr " Andere..." #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "Voer uw eigen applicatiekeuze in, inbegrepen elke nodige optie. Liefst iets dat beschikbaar is op uw systeem..." #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "De eerste 3 knoppen configureren bestandsopening, slepen en neerzetten en de statusbalk\nDe vierde exporteert 4Pane's configuratie: zie gereedschapstip" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "&Bestanden openen configureren" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "Klik om 4Pane te vertellen hoe u wilt dat het bestanden opent" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "&Slepen en neerzetten configureren" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "Klik om het gedrag van 'slepen en neerzetten' te configureren" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "Status&balk configureren" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "Klik om de statusbalk secties te configureren" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "&Configuratiebestand exporteren" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "Vink aan om stukjes configuratie als ~/4Pane.conf op te slaan. Voor zeer weinig mensen nodig, waarschijnlijk enkel distro makers. Voor meer details, druk F1 na het klikken." #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "Commando om uit te voeren:" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "Tik de naam in van applicatie of script om uit te voeren. Als het in uw pad staat, zou enkel de naam voldoende moeten zijn, bv. 'df'. Anders hebt u het volledige bestandspad nodig bv '/usr/X11R6/bin/foo'\n\nParameters: \n%s zal het geselecteerde bestand of map doorgeven aan de applicatie, %f (%d) enkel een bestand (map).\n%a zal al de geselecteerde items van het actieve paneel doorgeven, %b één selectie van beide bestandsoverzicht panelen.\n%p zal u een parameter vragen om aan de applicatie door te geven" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "Klik om te bladeren naar de te starten applicatie" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "Vink aan als u het gereedschap in een terminal wilt draaien" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "Draai in een terminal" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "Sommige programma's hebben een terminal nodig zowel om te draaien als om resultaten af te beelden. Vink aan om de terminal open te houden als het programma stopt zodat u de uitvoer kan bekijken." #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "Houd terminal open" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "Vink aan als u het huidige paneel automatisch wilt vernieuwen als het gereedschap klaar is" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "Paneel vernieuwen na" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "Vink aan als u het andere paneel ook wilt vernieuwen" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "Tegenoverliggend paneel ook vernieuwen" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "Vink aan als u het gereedschap wilt draaien als superuser maar niet in een terminal (in een terminal kan u sowieso 'sudo' of 'su-c' gebruiken)" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "Commando als root uitvoeren" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "Label om in het menu te tonen:" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "Aan dit menu toevoegen:" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "Dit zijn de menu's die nu beschikbaar zijn. Selecteer een of voeg een nieuw toe" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "&Nieuw menu" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "Voeg een nieuw menu of submenu toe aan de lijst" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "&Verwijder menu" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "Verwijder het nu geselecteerde menu of submenu" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "&Gereedschap toevoegen" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Klik om het nieuwe gereedschap toe te voegen" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Selecteer een commando, klik dan op 'dit commando bewerken'" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Label in menu" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Selecteer het label van het commando dat u wilt bewerken. U kan dit ook bewerken als u wilt." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Commando" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "Het commando om te bewerken" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "&Bewerk dit commando" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "Selecteer een item, klik dan op 'verwijder dit commando'" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Selecteer het label van het commando dat u wilt verwijderen" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "Het commando om te verwijderen" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "&Verwijder dit commando" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Dubbelklik op een entry om hem te veranderen" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "Toon de labels onderaan zonder ezelsbruggetje, bv. 'knippen' i.p.v. 'k&nippen'. U kan het ezelsbruggetje nog altijd zien en bewerken als u het label bewerkt" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "Toon labels zonder ezelsbruggetjes" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "Selecteer kleuren" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "De kleuren hieronder getoond zullen afwisselend getoond worden in een bestandsoverzicht paneel" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr " Huidige 1ste kleur" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr " Huidige 2de kleur" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "Selecteer de kleur voor de achtergrond van een paneel.\nU kan voor bestands- en mapoverzicht een verschillende kleur kiezen.\nVink anders het hokje aan voor dezelfde kleur voor beiden." #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr " Huidige mapoverzicht kleur" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr " Huidige bestandsoverzicht kleur" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr " Gebruik dezelfde kleur voor beide types van panelen" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "Selecteer paneel accentuering" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "Een paneel kan als optie geaccentueerd worden als het focus heeft. Hier kan u de graad van accentuering aanpassen." #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "Voor een mapoverzicht is het accent een smalle lijn boven de werkbalk." #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "Voor een bestandsoverzicht is de kleurverandering aan de header, die veel dikker is." #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "Dus ik suggereer dat u de bestandsoverzicht 'offset' kleiner maakt, dan is het verschil duidelijker" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr " Mapoverzicht met focus" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "Baseline" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "Bestandsoverzicht met focus" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "Voer een sneltoets in" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "Druk de toetsen in die u wilt gebruiken voor deze functie:" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr " Dummy" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Huidige" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Wissen" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "Klik hier als u geen sneltoets wilt voor deze actie" #: configuredialogs.xrc:4902 msgid " Default:" msgstr " Standaard:" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "Ctrl+Shift+Alt+M" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "Dit aanklikken zal de standaard accelerator invoeren die u boven ziet" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "Verander &label" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr " Verander de &helptekst" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "Dupliceer accelerator" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "Deze toetsencombinatie wordt al gebruikt door:" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr " Dummy" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "Wat zou u graag doen?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "Andere toetsen kiezen" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "De andere sneltoets zijn toetsen stelen" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "Opgeven" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "&Probeer opnieuw" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "Naar de dialoog terugkeren om een andere toetsenkeuze te maken" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "&Erover gaan" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "Gebruik gewoon uw keuze. U zal de kans krijgen om een nieuwe keuze te maken voor de sneltoets die ze nu gebruikt." #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "De sneltoets zal naar zijn vorige waarde teruggaan, als er een was" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "Hoe worden plug-in toestellen gedetecteerd?" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "Tot de 2.4 kernel werden USB-sticks en zo totaal niet herkend. 2.4 kernels introduceerden de USB-opslag methode. Recentere distro's met 2.6 kernels gebruiken gewoonlijk het udev/hal systeem. Tussendoor deden een paar distro's (bv. SuSE 9.2) iets raar met /etc/mtab" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "De originele USB-opslag methode" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "Door in mtab te kijken" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "De nieuwe, udav/hal, methode" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "Floppy drives automatisch mounten" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "DVD-ROM enz. stations automatisch mounten" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "Uitwisselbare toestellen automatisch mounten" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "Welk bestand (als er een is) heeft data over nieuw-ingestoken toestellen?" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "Floppies" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "Dit geldt vooral voor distro's zonder auto-mount, sommige daarvan zetten informatie over toestellen direct in ofwel /etc/mtab of /etc/fstab." #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "geen" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "Sommige distro's (bv. Mandriva 10.1) gebruiken 'supermount' om schijfwissels te managen. Indien zo, kan een toestel zijn fstab vermelding beginnen met 'none' i.p.v. toestel's naam. In dat geval, vink dit hokje aan." #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "Supermounts" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "CD-ROM's enz." #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "USB-toestellen" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "Hoe dikwijls controleren voor nieuw-aangesloten USB-toestellen?" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "4Pane controleert of er uitwisselbare toestellen verwijderd werden of nieuwe toegevoegd. Hoe dikwijls moet dit gebeuren?" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "seconden" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "Hoe moeten multikaart USB-lezers getoond worden?" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "Multi-kaartlezers registreren gewoonlijk als een apart toestel per gleuf.\nStandaard worden enkel gleuven met een kaart erin afgebeeld.\nAls u hier aanvinkt zal elke lege gleuf een knop krijgen, 13 knoppen dus voor een 13-gleufs toestel!" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr " Ook voor lege gleuven knoppen toevoegen" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "Wat te doen als 4Pane een USB-toestel gemount heeft?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "Wilt u unmounten voor het afsluiten? Dit geldt enkel voor uitwisselbare toestellen, en alleen als uw distro niet auto-mount" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr " Vragen alvorens het te unmounten bij afsluiten" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "Voor informatie, lees aub de gereedschapstips" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "Welk bestand bevat partitiedata?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "De lijst van gekende partities. Standaard: /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "Welke map bevat toestel data?" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "Bevat 'bestanden' als hda1, sda1. Huidige /dev/" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "Welk bestand(en) bevat(ten) floppy info" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "Floppy info vindt u normaal in /sys/block/fd0, /sys/block/fd1 enz.\nZet hier niet het 0, 1 stuk, enkel /sys/block/fd of wat dan ook" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "Welk bestand bevat CD/DVD-ROM info" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "Informatie over vaste toestellen zoals CD-ROM's kan u gewoonlijk vinden in /proc/sys/dev/cdrom/info. Pas dat aan als het veranderd is" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "&Standaard herladen" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "2.4 kernels: USB-opslag" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "2.4 kernels detecteren uitwisselbare toestellen en voegen een map /proc/scsi/usb-storage-0, storage-1 enz toe.\nZet het /proc/scsi/usb-storage- stuk hier" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "2.4 kernels: uitwisselbare toestellen lijst" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "2.4 kernels houden een lijst van aangesloten/vroeger-aangesloten uitwisselbare toestellen bij.\nWaarschijnlijk /proc/scsi/scsi" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "Node-namen voor uitwisselbare toestellen" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "Welke toestel-node is er gegeven aan uitwisselbare toestellen zoals USB-sticks? Waarschijnlijk /dev/sda, sdb1 enz\nZet het /dev/sd stuk hier" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "2.6 kernels: uitwisselbare toestellen infomap" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "In 2.6 kernels vindt u hier enige uitwisselbare toestellen info\nWaarschijnlijk /sys/bus/scsi/devices" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "Wat is het LVM voorvoegsel?" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "Met welke naam worden Logical Volume Management 'partities' aangeroepen, bv. dm-0\nVermeld enkel het dm- stuk" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "Meer LVM spul. Check de gereedschapstip" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "Waar zijn de proc 'block' bestanden? Dit is nodig om LVM spul te helpen managen.\nWaarschijnlijk /dev/.udevdb/block@foo. Geef gewoon het '/dev/.udevdb/block@' stuk in" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "Kies een schijf om te configureren\nOf 'schijf toevoegen' om een toe te voegen" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "&Station toevoegen" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "Station &bewerken" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "Station &verwijderen" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "Vaste schijven zouden automatisch gevonden moeten zijn,\nmaar als er een was overgeslagen of u wilt gegevens veranderen\ndan kan dat hier." #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "Selecteer een schijf om te configureren\nOf 'schijf toevoegen' om een toe te voegen" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "Fake, gebruikt om deze versie van het bestand te testen" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "Werkbalkknoppen mapoverzicht configureren" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "Dit zijn de knoppen aan de rechterkant van de kleine werkbalk in elk mapoverzicht.\nZe werken als bladwijzers: op een klikken 'gaat naar' zijn doelbestandspad" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "Huidige knoppen" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "K&nop toevoegen" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "&Bewerk deze knop" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "&Verwijder deze knop" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "Configureer bv. een editor" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Naam" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "Dit is enkel een label zodat u het kan herkennen. Bv. kwrite" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "Icoon om te gebruiken" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "Lanceer commando" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "Dit is de tekenreeks die het programma aanroept. Bv. kwrite of /opt/gnome/gedit" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "Te gebruiken werkmap (optioneel)" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "Als optie kan u een werkmap opgeven. Als u dat doet, zal ernaar ge'cd'ed worden alvorens het commando uit te voeren. De meeste commando's hebben dit niet nodig; het zal zeker niet nodig zijn voor elk commando dat gegeven kan worden zonder pad, bv. kwrite" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "Bv. als er verschillende bestanden geplakt worden, kan GEdit ze openen in tabs." #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "Aanvaard meervoudige invoer" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "Het icoon voor dit programma niet laden. Zijn configuratie is ingehouden, u kan het in de toekomst 'onnegeren'" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "Negeer dit programma" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Icoon selecteren" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "Huidige\nSelectie" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "Klik op een icoon om het te selecteren\nof blader om naar andere te zoeken" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "&Bladeren" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "Nieuw icoon" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "Dit icoon toevoegen?" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "Editors enz. configureren" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "Deze programma's kunnen gelanceerd worden door te klikken op een\nknop op de werkbalk of door een bestand op de knop te slepen.\nEen vanzelfsprekend voorbeeld is een tekstverwerker zoals\nkwrite maar het kan elk gewenst programma zijn." #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "&Programma toevoegen" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "&Bewerk dit programma" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "&Verwijder dit programma" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "Een icoon v/d kleine werkbalk configureren" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "Bestandspad" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "Voer het bestandspad in dat u wilt bewandelen als er op de knop is geklikt" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "Klik om te bladeren voor een nieuw bestandspad" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "(Klik om te veranderen)" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "Label bv. 'Muziek' of '/usr/share/'" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "Een label voorzien is een optie en zal meestal niet weergegeven worden. Maar als er in gtk3 niet voldoende plaats is om alle iconen te tonen, laat het overlooppaneel enkel het label zien, niet het icoon; zonder label is er dus een blanco plaats." #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "Optionele gereedschapstiptekst" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "Slepen en neerzetten configureren" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "Kies welke toetsen het volgende moeten doen:" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "Verplaatsen:" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "Kopiëren:" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "Hardlink:" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "Softlink:" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "Verander deze waardes om gevoeligheid van slepen en neerzetten te veranderen" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Horizontaal" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "Hoe ver links en rechts moet de muis bewegen voor slepen wordt geactiveerd? Standaardwaarde is 10" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Vertikaal" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "Hoe ver op en neer moet de muis bewegen voor slepen wordt geactiveerd? Standaardwaarde is 15" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "Hoeveel lijnen scrollen per muiswielklik" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "Dit bepaald hoe gevoelig het muiswiel is als het niet gevonden kan worden in uw systeeminstellingen, enkel tijdens slepen" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "Configureer de statusbalk" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "De statusbalk heeft 4 secties. Hier kan u hun verhoudingen bijstellen" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "(Veranderingen hebben pas effect als u 4Pane herstart)" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "Menu-item help" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Standaard 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "Soms-behulpzame berichten als u over een menu-item zweeft" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "Succes berichten" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "(Standaard 3)" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "Berichten zoals \"15 bestanden met succes verwijderd\". Deze berichten verdwijnen na een configureerbaar aantal seconden" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "Bstandspaden" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "(Standaard 8)" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "Informatie over het nu-geselecteerd bestand of map; gewoonlijk zijn type, naam en grootte" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filters" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "Wat toont het paneel met focus: M=mappen B=bestanden V=verborgen bestanden R=recursieve mapgrootte.\nEventuele filters worden ook getoond, bv. f*.txt voor tekstbestanden die beginnen met 'f'" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "Gegevens exporteren" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "Hier kan u, als u wilt, een deel van uw configuratiegegevens exporteren naar een bestand genaamd 4Pane.conf." #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "Als u in de verleiding komt, druk op F1 voor meer details." #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "Deselecteer elk gegevenstype dat u niet wilt exporteren" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "Gereedschappen bv. 'df -h', die standaard meegeleverd worden. Zie handleiding voor meer details" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr " Gebruiker-gedefinieerde gereedschappen gegevens" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Welke editor(s) bv. gedit, kwrite, moet(en) standaard een icoon op de werkbalk hebben" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr " Editor gegevens" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "Dingen van 'Configureer 4Pane > Toestellen'. Zie handleiding voor meer details" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr " Toestel-mount gegevens" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "Dingen van 'Configure 4Pane > Terminals'. Zie handleiding voor meer details" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr " Terminal-gerelateerde gegevens" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "De inhoud van de 'open met...' dialoog, en welke programma's welke MIME types moeten openen" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "'Openen met' gegevens" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr " Uitvoer gegevens" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "Configureer voorbeelden" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "Maximale breedte (px)" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "Maximale hoogte (px)" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "Afbeeldingen:" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "Tekstbestanden:" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "Uitstel van voorbeeldactivatie, in tienden van seconden:" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "Configureer openen bestanden" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "Hoe wilt u dat 4Pane bv. een tekstbestand opent in een editor.\nOfwel de systeem manier, ofwel 4Pane's manier of beide.\nIndien beiden, welke eerst proberen?" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "Gebruik de methode van uw systeem" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "Gebruik 4Pane's methode" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "Voorkeur voor systeem zijn manier" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "Voorkeur voor 4Pane's manier" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Localiseren" #: dialogs.xrc:66 msgid "Clea&r" msgstr "&Wissen" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "&Sluiten" #: dialogs.xrc:116 msgid "Can't Read" msgstr "Kan niet lezen" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "Ik vrees dat u geen leesmachtiging hebt voor" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "a Doe alsof q" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "&Overslaan" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "Sla enkel dit bestand over" #: dialogs.xrc:182 msgid "Skip &All" msgstr "&Alles overslaan" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "Alle andere bestanden waar ik geen leesmachtiging heb overslaan" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "Tsk tsk!" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "U blijkt zich te willen verbinden" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "Doe alsof" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "met één van zijn afstammelingen" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Dit is zeker illegaal en waarschijnlijk ook immoreel" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr " Het spijt &me :-(" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Klik om te verontschuldigen" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "Wat zou u willen dat de nieuwe naam is?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Tik de nieuwe naam in" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "Overschrijven of hernoemen" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "Hier is al een bestand met die naam" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "&Overschrijf het" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "Inkomend &bestand hernoemen" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr " &Alles overschrijven" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "Overschrijf alle bestanden als er een namenconflict is" #: dialogs.xrc:699 msgid " Re&name All" msgstr " A&lles hernoemen" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "Ga direct naar de RENAME dialoog als er een namenconflict is" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Sla dit item over" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "All&es overslaan" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "Sla alle bestanden over waar een namenconflict is" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "Hernoemen of annuleren" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "Hier is al een map met die naam." #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "Inkomende &map hernoemen" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Hernoemen of overslaan" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "Hier is al een map met die naam" #: dialogs.xrc:928 msgid "Rename &All" msgstr "Alles &hernoemen" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "Ga direct naar de RENAME dialoog voor alle conflicterende namen" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "Sla alle items over waar er een namenconflict is" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "Bevraag duplicaat in archief" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "Er is al een bestand met die naam in het archief" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "Be&waar er een duplicaat van" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "In een archief mag u twee identieke items met dezelfde naam hebben. Als u dat echt wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "Dupliceer door hernoemen in archief" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "Sorry, u kan geen directe duplicatie doen in een archief" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "Wilt u dupliceren door in de plaats daarvan te hernoemen?" #: dialogs.xrc:1112 msgid "&Rename" msgstr "&Hernoemen" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "Maak een kopie van elk item(s), gebruik een verschillende naam" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Aan archief toevoegen" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "Er is hier al een item met de naam" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "Verwijder origineel bestand uit het archief en vervang door het inkomende" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "&Bewaar beide items" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "In een archief mag u meerdere bestanden met dezelfde naam hebben. Als u dat echt wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "Overschrijf of voeg toe aan archief" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "Bewaa&r beide items" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "In een archief mag u twee bestanden met dezelfde naam hebben. Als u dat echt wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr " Bewaar alle&s" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "In een archief mag u twee bestanden met dezelfde naam hebben. Als dat is wat u altijd wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "Vervang de huidige map door de binnenkomende" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "Overschrij&f alles" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "Vervang de huidige map door de binnenkomende en doe dit voor alle andere conflicten" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "In een archief mag u twee mappen met dezelfde naam hebben. Als dat is wat u wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "In een archief mag u twee mappen met dezelfde naam hebben. Als dat is wat u altijd wilt (en u hebt waarschijnlijk een goede reden :-/) klik op deze knop" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "Sla het o&ver" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "Alle &conflicten overslaan" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Alle items afvoeren" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "U lijkt dit bestand met zichzelf te willen overschrijven" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Betekent dit:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "Ik wil het &DUPLICEREN" #: dialogs.xrc:1856 msgid "or:" msgstr "of:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "Oeps, ik meende &het niet" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Maak een link" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr " Creëer een nieuwe link vanaf:" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Dit is waarnaar u probeert te linken" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Maak de link in de volgende map:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "Hoe wilt u de link noemen?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Houdt dezelfde naam" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "Gebruik de volgende extensie" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "Gebruik de volgende naam" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "Voer de extensie in die u aan de originele bestandsnaam wilt toevoegen" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "Voer de naam in die u aan deze link wilt geven" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "Vink aan als u relatieve symlink(s) wil maken bv. naar ../../foo in de plaats van /path/to/foo" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "Maak relatief" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "Vink aan als u wilt dat deze keuzes automatisch worden toegepast op de rest van de geselecteerde items" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Op alles toepassen" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "Als u zich bedacht heeft in verband met welk type link u wilt, kies hier opnieuw." #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "Ik wil een hardlink maken" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "Ik wil een softlink maken" #: dialogs.xrc:2173 msgid "Skip" msgstr "Overslaan" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "Kies een naam voor het nieuwe item" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "Wilt u een nieuw bestand of een nieuwe map?" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "Maak een nieuw bestand" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "Maak een nieuwe map" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "Kies een naam voor de nieuwe map" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Bladwijzer toevoegen" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "Voeg het volgende toe aan uw bladwijzers:" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "Dit is de bladwijzer die gecreëerd zal worden" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "Welk label wilt u deze bladwijzer geven?" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "Voeg het toe aan de volgende map:" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "Andere &Map" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "Klik als u deze bladwijzer wilt bewaren in een andere map of om een nieuwe map te creëren" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Bewerk bladwijzer" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "Maak de vereiste veranderingen hieronder" #: dialogs.xrc:2595 msgid "Current Path" msgstr "Huidig pad" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "Dit is huidig pad" #: dialogs.xrc:2620 msgid "Current Label" msgstr "Huidig label" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "Dit is het huidige label" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "Bladwijzers beheren" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "&Nieuwe map" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Een nieuwe map creëren" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "Nieuwe &scheidingslijn" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "Nieuwe scheidingslijn invoegen" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "Selectie &bewerken" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "Het geaccentueerde item bewerken" #: dialogs.xrc:2768 msgid "&Delete" msgstr "&Verwijderen" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "Het geaccentueerde item verwijderen" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Openen met:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "Tik pad en naam in van het te gebruiken programma als u het kent. Zo niet, blader of kies uit de lijst hieronder." #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "Klik om te bladeren naar het te gebruiken programma" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "Programma &bewerken" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "Bewerk het geselecteerde programma" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "Programma &verwijderen" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "Verwijder het geselecteerde programma uit de map" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "Programma &toevoegen" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "Voeg het programma toe aan de geselecteerde map hieronder" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr " &Map toevoegen" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "Voeg een map toe aan de boom hieronder" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "M&ap verwijderen" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "Verwijder de geselecteerde map uit de boom hieronder" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "Klik op een programma om te selecteren" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "Vink aan om het bestand te openen met dit programma in een terminal" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "In terminal openen" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Vink aan als u in de toekomst dit programma automatisch wilt aanroepen om dit type bestand te lanceren" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Het geselecteerde programma altijd gebruiken voor dit bestandstype" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Programma toevoegen" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "Label voor het programma (optioneel)" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "Deze naam moet uniek zijn. Als u er geen invoert zal het einde van het bestandspad gebruikt worden.\neg /usr/local/bin/foo zal 'foo' genoemd worden" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "Waar is het programma? Bv. /usr/local/bin/gs\n(enkel de bestandsnaam zal soms ook werken)" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "Tik de naam in van het programma. Als het in uw pad staat, zou u met enkel de naam moeten wegkomen, bv. kwrite. Anders zult u de volledige padnaam nodig hebben bv. /usr/X11R6/bin/foo" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "Extentie(s) dat het moet lanceren? Bv. txt of htm, html" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "Dit is optioneel. Als u één of meerdere extensies invoert, zal dit programma voorgesteld worden als u rechts klikt op bestanden met zo'n extensie. U moet er ook een invoeren als u dit programma als standaard wilt om dit bestandstype te lanceren. Dus als u wilt dat alle bestanden met de extensie 'txt', bij dubbelklikken, met dit programma gelanceerd worden, zet hier 'txt'.\nU mag meerdere extensies invoeren, gescheiden door komma's, bv. htm, html" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr " Welke commando tekenreeks gebruiken? bv. kedit %s" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "Dit is het commando om een bestand te lanceren. Dat is meestal de programmanaam gevolgd door %s, wat het te lanceren bestand voorstelt. Dus als kedit uw standaard teksteditor is en het lanceercommando is kedit %s, dubbelklikken op foo.txt zal 'kedit 'foo.txt'' uitvoeren.\nAls dit niet werkt, zal u moeten RTFM'en voor het desbetreffende programma." #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr " Werkmap om het programma te draaien (optioneel)" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "Zet het programma in deze groep. Dus kwrite gaat in 'editors'." #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "Voeg een nieuwe groep toe om programma's te categoriseren" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "Voor welke extensie wilt u dat het programma de standaard is." #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "Dit zijn de extensies om uit te kiezen" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "U kan ofwel de eerste twee knoppen gebruiken of selecteer met de muis (& Ctrl-toets voor niet-aaneensluitende keuzes)" #: dialogs.xrc:3581 msgid "All of them" msgstr "Allemaal" #: dialogs.xrc:3582 msgid "Just the First" msgstr "Enkel de eerste" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "Selecteer met muis (+Shift-toets)" #: dialogs.xrc:3640 msgid "4Pane" msgstr "4Pane" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Template bewaren" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "Er is al een template geladen." #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "Wilt u dit overschrijven of bewaren als een nieuwe template?" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "&Overschrijven" #: dialogs.xrc:3775 msgid "&New Template" msgstr "&Nieuwe template" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "Voer de filter tekenreeks in" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "Voer tekenreeks in om als filter te gebruiken, of gebruik geschiedenis. Meerdere filters scheiden door '|' of ','. Bv. Pre*.txt or *.jpg | *.png or *htm,*html" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "Toon enkel bestanden, geen mappen" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "Toon enkel bestanden" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "Reset de filter zodat alle bestanden getoond worden bv. *" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "Reset filter naar *" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "Gebruik de geselecteerde filter op alle panelen in deze tab" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "Op alle zichtbare panelen toepassen" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "Meervoudig hernoemen" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "U kan ofwel foo.bar veranderen naar bv. foo1.bar of nieuw.foo.bar" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "of doe iets complexer met een regex" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr " Gebruik een reguliere expressie" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "&Regex help" #: dialogs.xrc:4043 msgid "Replace" msgstr "Vervangen" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "Tik de tekst of de reguliere expressie in die u wilt vervangen" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "Tik de tekst in die u wilt vervangen" #: dialogs.xrc:4076 msgid "With" msgstr "Met" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "Vervang alle overeenkomsten in een naam" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "Vervang de eerste" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "Gezien de naam 'foo-foo-foo' en vervangtekst 'bar', zou de teller op twee zetten 'bar-bar-foo' geven" #: dialogs.xrc:4175 msgid " matches in name" msgstr " overeenkomsten in namen" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "Veronderstel dat u alle bestanden in een map selecteert en een regex wil gebruiken om alle .jpeg bestanden te veranderen naar .jpg. Als u dit niet aanvinkt zullen alle andere bestanden in de selectie ook hernoemd worden door de niet-regex sectie; dat is waarschijnlijk niet wat u wilt." #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "Niet overeenkomende bestanden compleet negeren" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "Hoe (anders) nieuwe namen te creëren:" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "Als u hierboven met succes een regex hebt gebruikt, kan het dat dit niet nodig is. Deed u dat niet, of als er conflicten blijven, zullen deze zo overwonnen worden." #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "Welk deel van de naam veranderen?" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "Als de naam foo.something.bar is, 'ext' selecteren zal 'bar' beïnvloeden, niet 'something.bar'.\nAls u 'ext' kiest als er geen is, zal de body in de plaats daarvan verandered worden." #: dialogs.xrc:4246 msgid "Body" msgstr "Body" #: dialogs.xrc:4247 msgid "Ext" msgstr "Ext" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "Voorvoegsel (optioneel)" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "Tik een tekst in als voorvoegsel" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "Achtervoegsel (optioneel)" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "Tik een tekst in als achtervoegsel" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "Verhoog beginnend met:" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "Als er nog steeds een namenconflict is ondanks alles wat u boven gedaan heeft, dit voegt een letter/cijfer toe om een nieuwe naam te creëren. Dus joe.text zal joe0.txt worden (of joe.txt0 als u extensie veranderen koos)" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "Indien aangevinkt, wordt er enkel verhoogd als het nodig is om een namenconflict te vermijden. Indien niet, zal het toch gebeuren." #: dialogs.xrc:4392 msgid " Only if needed" msgstr " Enkel indien nodig" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "Verhoog met een" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "Bepaalt of 'joe' verandert in 'joe0' of 'joeA'" #: dialogs.xrc:4416 msgid "digit" msgstr "cijfer" #: dialogs.xrc:4417 msgid "letter" msgstr "letter" #: dialogs.xrc:4431 msgid "Case" msgstr "Hoofdlettergebruik" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "Wilt u dat 'joe' 'joeA' wordt of 'joea'" #: dialogs.xrc:4439 msgid "Upper" msgstr "Hoofdletters" #: dialogs.xrc:4440 msgid "Lower" msgstr "Kleine letters" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "Hernoemen bevestigen" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "Bent u zeker dat u deze veranderingen wilt maken?" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "Bestanden lokaliseren" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "Voer de zoek tekenreeks in bv. *foo[ab]r" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "Dit is het patroon waarmee overeen gekomen moet worden. Als u 'foo' intikt, zal zowel pad/foo als pad/foo/meerpad gevonden worden. Als alternatief kunt u de jokers *, ?, en [ ] gebruiken. Als u dat doet, zal 'lokaliseren' enkel exacte overeenkomsten teruggeven, U moet bv. *foo[ab]r* ingeven om pad/foobar/meerpad te vinden" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "Overeenkomst enkel met de laatste component v/e bestand, bv. het 'foo' stuk van /thuis/myname/bar/foo maar niet /thuis/myname/foo/bar" #: moredialogs.xrc:57 msgid " -b Basename" msgstr " -b Basisnaam" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "Indien aangevinkt, komt het patroon 'foo' zowel overeen met 'foo' als met 'Foo' (en met 'FoO' en ...)" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr " -i Negeer hoofdlettergebruik" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "Lokaliseren doorzoekt een database die normaal één keer per dag geüpdatet wordt. Indien aangevinkt, wordt voor elk resultaat gecontroleerd of het nog bestaat en niet verwijderd is sinds de laatste update. Als er veel resultaten zijn, kan dit veel tijd vergen." #: moredialogs.xrc:86 msgid " -e Existing" msgstr " -e Bestaand" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "Indien aangevinkt, behandel het patroon als een reguliere expressie, niet enkel de gewone glob" #: moredialogs.xrc:97 msgid " -r Regex" msgstr " -r Regex" #: moredialogs.xrc:158 msgid "Find" msgstr "Vind" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Pad" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "Dit is Volledig Vinden. Er is ook Snel Vinden dat\nvoldoet voor de meeste zoekopdrachten" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "Klik voor &Snel Vinden" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "Klik hier om naar de Snel Vinden dialoog te gaan" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "Vink aan om vanaf nu Snel Vinden de standaard te maken" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "Maak Snel Vinden de standaard" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "Voer het pad in van waaruit u wilt beginnen zoeken (of gebruik één van de sneltoetsen)" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "Tik het pad in van waaruit u wilt zoeken" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "Doorzoek de huidige map en lager" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "Huidige map" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "Doorzoek uw thuismap en lager" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "Doorzoek de hele mappenboom" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Root ( / )" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "&Voeg toe aan commandotekenreeks, omgeven door aanhalingstekens" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "Voeg toe aan de commandotekenreeks. Enkele aanhalingstekens zullen toegevoegd worden om metakarakters te beschermen." #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Opties" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "Deze opties worden aan het hele commando toegevoegd. Kies eender welke u wilt." #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "Meet tijden (voor -amin, -atime, -cmin, -ctime, -mmin, and -mtime) vanaf het begin van vandaag i.p.v. van 24 uur geleden" #: moredialogs.xrc:415 msgid "-daystart" msgstr "-daystart" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "Verwerk de inhoud van elke map voor de map zelf. Met andere woorden, Vind van de bodem naar boven toe." #: moredialogs.xrc:426 msgid "-depth" msgstr "-depth" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "Symbolische linken zonder referentie (kijk naar wat gelinkt is, niet de link zelf). Betekent -noleaf." #: moredialogs.xrc:437 msgid "-follow" msgstr "-follow" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "Daal maximaal het geselecteerd aantal mapniveaus af onder het startpad. '-maxdepth 0' betekent tests en acties enkel toepassen op de commandoregel argumenten." #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "-maxdepth" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "Niet beginnen zoeken voor de geselecteerde diepte in elke maptak. '-mindepth 1' betekent verwerk alle bestanden behalve de commandoregel argumenten." #: moredialogs.xrc:470 msgid "-mindepth" msgstr "-mindepth" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "Optimaliseer niet door te veronderstellen dat een map twee submappen minder heeft dan z'n hardlink weergeeft" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "-noleaf" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "Don't descend directories on other filesystems. -mount is a synonym" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "-xdev (-mount)" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "HEELLLP!!" #: moredialogs.xrc:542 msgid "-help" msgstr "-help" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "&Voeg toe aan commandotekenreeks" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "Voeg deze keuzes toe aan de commandotekenreeks" #: moredialogs.xrc:580 msgid "Operators" msgstr "Operatoren" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "Hier voor volledigheid maar het is gewoonlijk gemakkelijker ze direct in de commandotekenreeks te zetten." #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "Selecteer één per keer." #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "AND de twee omringende uitdrukkingen logisch. Aangezien dit de standaard is, is nadruk de enige reden om het te gebruiken." #: moredialogs.xrc:645 msgid "-and" msgstr "-and" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "OR de twee omringende uitdrukkingen logisch" #: moredialogs.xrc:656 msgid "-or" msgstr "-or" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "Maak de volgende uitdrukking nietig" #: moredialogs.xrc:667 msgid "-not" msgstr "-not" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "Gebruikt (met sluithaakje) om voorrang te veranderen, bv. zorg dat twee -pad uitdrukkingen lopen voor een -prune. Het wordt automatisch 'escaped' met een naar achteren hellend streepje." #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "Open haakje" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "Dit wordt automatisch 'escaped' met een naar achteren hellend streepje, net zoals 'open bracket'." #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "Sluit haakje" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "Scheidt lijstitems met een komma. Als u hier geen nut in ziet, bent u in goed gezelschap." #: moredialogs.xrc:707 msgid "List ( , )" msgstr "Oplijsten ( , )" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "Voer een zoekterm in, die mag jokers bevatten. Het mag ook een reguliere expressie zijn." #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "Gebruik pad of regex als er een '/' is in de term, anders naam." #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "Symbolische Link geeft enkel symlinks." #: moredialogs.xrc:812 msgid "Search term" msgstr "Zoekterm" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "Tik de naam in waarmee overeenkomst moet zijn. Bv. *.txt or /usr/s*" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "Hoofdlettergebruik negeren" #: moredialogs.xrc:852 msgid "This is a" msgstr "Dit is een" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "Selecteer één van deze alternatieven. Behalve reguliere expressie mogen ze jokers bevatten.\nSymbolische Link geeft enkel overeenkomende symlinks.\nReguliere expressie betekent dat de invoer een deftige regex is en zal alles teruggeven wat daarmee overeenkomt." #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "Reguliere expressie" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "Symbolische Link" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "Overeenkomsten teruggeven" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "Alle resultaten teruggeven (standaard gedrag)" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "Negeer overeenkomsten" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "Gewoonlijk WILT u de resultaten maar soms zal u bijv. een bepaalde map willen negeren. In dat geval, voer zijn pad in en selecteer 'pad' en 'negeer'." #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "Om op tijd te filteren, selecteer een van de volgende:" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "Bestanden die waren" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "Geopend" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "Veranderd" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "Status veranderd" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "Meer dan" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "Exact" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "Minder dan" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "Voer het aantal minuten of dagen in" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minuten geleden" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Dagen geleden" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "recenter dan het bestand:" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "Tik het pad in van het bestand waarmee vergeleken moet worden" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "Bestanden die het laatst geopend werden" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "Voer het aantal dagen in" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "dagen na veranderd te zijn" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "Aan de commandotekenreeks toevoegen." #: moredialogs.xrc:1325 msgid "Size and type" msgstr "Grootte en type" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "Kies maximaal één (per keer) van de volgende:" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "Bestanden van grootte" #: moredialogs.xrc:1435 msgid "bytes" msgstr "bytes" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "512-byte blokken" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "kilobytes" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "Lege bestanden" #: moredialogs.xrc:1511 msgid "Type" msgstr "Type" #: moredialogs.xrc:1531 msgid "File" msgstr "Bestand" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "Symlink" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Pijp" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "Blk Speciaal" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "Char Speciaal" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "Aan de commando tekenreeks toevoegen" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "Eigenaar en machtigingen" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Gebruiker" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Per naam" #: moredialogs.xrc:1675 msgid "By ID" msgstr "Per ID" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "Tik de naam in van de eigenaar waar overeenkomst mee moet zijn bv. root" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "Voer het ID in om tegen te vergelijken" #: moredialogs.xrc:1790 msgid "No User" msgstr "Geen gebruiker" #: moredialogs.xrc:1798 msgid "No Group" msgstr "Geen groep" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Anderen" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Lees" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Schrijf" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "Voer uit" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Speciaal" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "kleverig" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "of voer 8-tallig in" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "Tik de 8-tallige tekenreeks in om te matchen. bv. 0664" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "Alle overeenkomsten" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "Enkel exacte overeenkomsten" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "Overeenkomst voor elke gespecifieerde" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Acties" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "Wat moet er met de resultaten gebeuren? Standaard is printen." #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "Print de resultaten op de standaard uitvoer, ieder gevolgd door een nieuwe lijn" #: moredialogs.xrc:2200 msgid " print" msgstr " afdrukken" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "Hetzelfde als print maar voegt een terminal '\\0' toe aan elke tekenreeks i.p.v. een nieuwe lijn" #: moredialogs.xrc:2227 msgid " print0" msgstr " afdrukken0" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "Geef de resultaten in 'ls -dils' formaat op de standaard uitvoer" #: moredialogs.xrc:2254 msgid " ls" msgstr " ls" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "Voer het volgende commando uit voor elke overeenkomst" #: moredialogs.xrc:2292 msgid "exec" msgstr "uitvoeren" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "Voer het volgende commando uit, vraag eerst bij elke overeenkomst" #: moredialogs.xrc:2303 msgid "ok" msgstr "ok" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Commando om uit te voeren" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "Dit is het uit te voeren commando. De {} ; zullen automatisch toegevoegd worden" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "Voer elke tekenreeks uit als bij print maar gebruik het volgende formaat: zie 'man find(1)' voor de Byzantijnse details" #: moredialogs.xrc:2360 msgid "printf" msgstr "printf" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "Geef tekenreeks vorm" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "Voer uit als 'ls' maar naar het volgende bestand" #: moredialogs.xrc:2412 msgid "fls" msgstr "fls" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "Voer elke tekenreeks uit als print maar naar het volgende bestand" #: moredialogs.xrc:2423 msgid "fprint" msgstr "fprint" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "Hetzelfde als fprint maar null-terminated" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "fprint0" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "Doelbestand" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "Het pad naar het doelbestand. Het zal gemaakt/ingekort worden zoals nodig" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "Gedraagt zich als printf maar naar het volgende bestand" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "fprintf" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Commando:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Hier wordt de Vinden commando tekenreeks samengesteld. Gebruik ofwel de dialoog pagina's of tik de dingen rechtstreeks in" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "&ZOEKEN" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Algemene opties" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "Dit is het Full Grep notaboekje.\nEr is ook een Quick Grep dialoog\ndie voldoet voor het meeste zoeken" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "Klik voor &Quick Grep" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "Klik hier om naar de Quck Grep dialoog te gaan" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "Vink aan om Quick Grep vanaf nu als standaard in te stellen" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "Maak Quick Grep de standaard" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "Syntaxis: grep [opties] [PatroonOmMeeOvereenTeKomen] [Bestand(en) om te doorzoeken]" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "Selecteer eender welke opties u wilt van de eerste vier tabs, voer dan in de laatste twee het zoekpatroon in\nen het pad en de bestanden om te zoeken. Als alternatief kunt u direct in de commandobox schrijven." #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "Selecteer eender welke opties die u nodig hebt" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w enkel met volledige woorden overeenkomen" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "Negeer hoofdlettergebruik, zowel in patroon als in bestandsnamen" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i negeer hoofdlettergebruik" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "-x enkel volledig overeenkomende regels teruggeven" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "-v enkel regels die NIET overeenkomen teruggeven" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Mapopties" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "Opties om te doen met mappen" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr " Doe wat met mappen?" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "Probeer de namen te laten overeenkomen (standaard)" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr " -r recursie erin uitvoeren" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "Negeer ze compleet" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Bestandsopties" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "Opties wat te doen met bestanden" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr " Stop met zoeken i/e bestand na" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "Voer het maximaal aantal overeenkomsten in" #: moredialogs.xrc:3071 msgid "matches found" msgstr "overeenkomsten gevonden" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr " Wat te doen met binaire bestanden?" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "Toon diegenen met een overeenkomst (standaard)" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "Doorzoek het binair bestand, als uitvoer enkel een 'binair bestand overeenkomst' bericht, niet de overeenkomende regel" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "Behandel ze alsof het tekstbestanden waren" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "Doorzoek het binair bestand, als uitvoer elke regel die overeenkomt met het patroon. Dit geeft gewoonlijk rommel als resultaat" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr " -D skip Negeer toestellen, sockets, FIFO's" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr " Zoek niet in bestanden die overeenkomen met volgend patroon:" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr " Zoek enkel in bestanden die overeenkomen met volgend patroon:" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Output Opties" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "Opties in verband met de output" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "-c print alleen het aantal overeenkomsten" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "Print enkel de namen van de bestanden die overeenkomsten hebben, niet de overeenkomsten zelf" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "-l print enkel elke overeenkomst z'n bestandsnaam" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "-H print de bestandsnaam voor elke overeenkomst" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "-n laat een overeenkomst voorafgaan door z'n lijnnummer" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "-s print geen foutboodschappen" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "-B tonen" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "Voer het aantal regels context in dat u wilt zien" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "regels voorafgaande context" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "-o print enkel het overeenkomend stuk v/d lijn" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "Print enkel namen van bestanden die GEEN overeenkomsten bevatten" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "-L print enkel bestandsnamen zonder overeenkomsten" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "-h print geen bestandsnamen indien meerdere bestanden" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "Laat elke overeenkomst voorafgaan door de offset van z'n lijn in het bestand, in bytes" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "-b laat een overeenkomst voorafgaan door z'n byte offset" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "Totaal geen output, overeenkomsten noch fouten maar sluit af met 0 status bij de eerste overeenkomst" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "-q print totaal geen output" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "-A tonen" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "lijnen achteraan komende context" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "-C tonen" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "lijnen voorafgaande en achteraan komende context" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "Toont invoer die komt van een standaard invoer (of een pijp) als invoer van deze bestandsnaam, bv. bij tonen van de inhoud van een archief" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr " Laat het scherm doen alsof de invoer kwam van bestand:" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Patroon" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "Als uw zoekpatroon begint met een min-teken bv -foo, zal grep proberen een niet-bestaande optie '-foo' te vinden. De -e optie beschermt hier tegen." #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "-e gebruik dit als uw patroon met een min-teken begint" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "Reguliere expressies om mee overeen te komen" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "Tik de naam in waarnaar gezocht moet worden. bv. foobar of f.*r" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "&Regex\nHelp" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "Behandel het patroon niet als een reguliere expressie maar als een lijst van vaste tekenreeksen, gescheiden door nieuwe lijnen, waarbij elke moet overeenkomen als bij het gebruik van fgrep" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "-F behandel patroon zoals bij fgrep gebruik" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "-P behandel het patroon als een Perl regex" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "In plaats van het patroon in het hokje boven in te voeren, trek het uit dit bestand" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "-f laad in de plaats het patroon van bestand:" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "Aan de commandotekenreeks toevoegen. Het patroon krijgt enkele aanhalingstekens om metakarakters te beschermen." #: moredialogs.xrc:3835 msgid "Location" msgstr "Locatie" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "Voer het pad of de bestandslijst in om te zoeken (of gebruik één van de sneltoetsen)" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "Tik het pad in van waaruit te zoeken. Als u de sneltoetsen rechts gebruikt, kan u een /* toevoegen indien nodig" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "Dit wordt de grep commandotekenreeks" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "Hier wordt de Grep commando tekenreeks samengesteld. Gebruik ofwel de dialoog pagina's of tik de dingen rechtstreeks in" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "Indien aangevinkt zal de dialoog twee seconden na het maken van de laatste invoer automatisch sluiten" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "Automatisch afsluiten" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Archief bestanden" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "Bestand(en) om in het archief te bewaren" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "Voeg nog een bestand toe" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "Blader voor nog een bestand" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "&Toevoegen" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "Voeg het bestand of map in bovenstaand veld toe aan de lijst links" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "Naam voor het archief" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "Voer enkel het hoofddeel in van de bestandsnaam, niet de extensie, bv. foo, niet foo.tar.gz" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "(Voeg geen extensie toe)" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "Creëer in deze map" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "Blader voor een geschikte map" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "Creëer het archief met tar" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "Comprimeren met:" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "Welk programma gebruiken (of geen) om het archief te comprimeren. gzip en bzip2 zijn goede keuzes. Als het op uw systeem beschikbaar is, geeft xz de beste compressie." #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "bzip2" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "gzip" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "xz" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "lzma" #: moredialogs.xrc:4431 msgid "7z" msgstr "7z" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "lzop" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "niet comprimeren" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "Bewaar in het archief niet de naam van een symbolische link maar het bestand naar waar hij verwijst" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "Symlinks naspeuren" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Probeer de integriteit van het archief te verifiëren als het gemaakt is. Geen garanties maar beter dan niets. Duurt wel erg lang voor grote archieven." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "Verifieer naderhand" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "Verwijder de bronbestanden nadat ze aan het archief zijn toegevoegd. Enkel voor moedige gebruikers, tenzij de bestanden niet belangrijk zijn!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "Verwijder bronbestanden" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "Gebruik zip zowel om bestanden te archiveren als om ze te comprimeren. Het comprimeert niet zo goed als gzip of bzip2, gebruik het dus voor compatibiliteit met mindere besturingssystemen die deze programma's niet hebben." #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "Gebruik zip in de plaats" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "Bestanden aan bestaand archief toevoegen" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "&Aan lijst toevoegen" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "Archief om aan toe te voegen" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "Pad en naam van het archief. Indien nog niet op de invoerlijst, vul het in of blader." #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Bladeren" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "Symlinks naspeuren" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "Archief nadien verifiëren" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "Bronbestanden nadien wissen" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Bestanden comprimeren" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "Bestan(en) om te comprimeren" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "Met welk programma comprimeren? bzip2 zou harder knijpen (toch voor grote bestanden) maar duurt langer.\nAls je om één of andere reden zip wil gebruiken, dit is beschikbaar via Archief > Creëren." #: moredialogs.xrc:5054 msgid "'compress'" msgstr "'comprimeer'" #: moredialogs.xrc:5071 msgid "Faster" msgstr "Sneller" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "Geldt enkel voor gzip. Hoe hoger de waarde, hoe groter de compressie maar des te langer om uit te voeren" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Kleiner" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "Normaal gedrag is om geen bestaand gecomprimeerd bestand te overschrijven met dezelfde naam. Vink hier aan als u dit wilt negeren." #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "Elk bestaand bestand overschrijven" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "Indien aangevinkt worden alle bestanden in elke geselecteerde map (en hun submappen) gecomprimeerd. Indien niet worden mappen genegeerd." #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "Comprimeer recursief alle bestanden in elke geselecteerde map" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Gecomprimeerde bestanden uitpakken" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "Gecomprimeerd(e) bestand(en) om uit te pakken" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "Als een selectie een map is, decomprimeer elk gecomprimeerd bestand erin en in z'n submappen" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "Recursie in mappen uitvoeren" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "Heeft een bestand dezelfde naam als een uitgepakt bestand, automatisch overschrijven" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "Bestaande bestanden overschrijven" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "Decomprimeren geselecteerde archieven maar niet uitpakken. Indien niet aangevinkt worden archieven genegeerd" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Decomprimeer archieven ook" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Een archief uitpakken" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Archief om uit te pakken" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Map om naar uit te pakken" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "Als er al bestanden bestaan met dezelfde naam als die uitgepakt van het archief, overschrijf ze." #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Gecomprimeerde bestanden verifiëren" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Gecomprimeerd(e) bestand(en) om te verifiëren" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "&Verifieer gecomprimeerde bestanden" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Verifieer een archief" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Archief om te verifiëren" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Wilt u een archief uitpakken of bestanden decomprimeren?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "&Een archief uitpakken" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "&Bestand(en) decomprimeren" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "Wilt u een archief verifiëren of gecomprimeerde bestanden?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "Een &archief" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "&Gecomprimeerd(e) bestand(en)" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Eigenschappen" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Algemeen" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Naam:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Locatie:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Type:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Grootte:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Gewijzigd:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "Admin gewijzigd:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Gewijzigd:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "Machtigingen en eigendom" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Gebruiker:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Groep:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "Elke verandering in machtigingen of eigendom op elk inbegrepen bestand en submap toepassen" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "Veranderingen op alle afstammelingen toepassen" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "Esoterica" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "Toestel ID:" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode:" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "Aantal hardlinks:" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "Aantal 512B Blokken:" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "Blokmaat:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "Eigenaar ID:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "GroepID:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "Link doel:" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "Om het doel te veranderen, geef ofwel de naam in van een ander bestand of map, of gebruik de 'blader' knop" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "&Ga naar het link doel" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "Blader om een ander doel te selecteren voor de symlink" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "Eerste link doel:" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "Uiteindelijke doel:" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "Ga &naar het eerste link doel" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "Ga naar de link die het directe doel is van deze" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "Ga naar &het laatste linkdoel" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "Ga naar het bestand dat het uiteindelijke doel is van deze link" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "Mount een fstab partitie" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "Partitie om te mounten" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "Dit is de lijst van gekende, niet-gemounte partities in fstab" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "Mount-punt voor de partitie" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "Dit is het mount-punt van de geselecteerde partitie, gehaald bij fstab" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "&Mount een niet-fstab partitie" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "Als een partitie niet in fstab zit, zal ze hierboven niet in de lijst staan. Klik op deze knop voor alle gekende partities" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Mount een partitie" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "Dit is de lijst van gekende, niet gemounte partities. Als u denkt dat u er nog een kent, kan u ze invullen." #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "Als er een fstab entry is voor dit toestel zal het mount-punt automatisch ingevoerd zijn. Indien niet moet u zelf een invoeren (of bladeren)." #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "Blader naar een mount-punt" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Mount opties" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "Schrijven naar het bestandssysteem zal niet toegelaten zijn" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Alleen lezen" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "Alle schrijfacties naar het bestandssysteem terwijl het gemount is, zullen syncroon zijn" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "Syncrone schrijfacties" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "Bestand geopend tijd mag niet geüpdated worden als bestanden geopend worden" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "Geen update van de bestand geopend tijd" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "Bestanden van het bestandssysteem zullen niet uitgevoerd worden" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Bestanden niet uitvoerbaar" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "Geen speciale bestanden van toestellen in het bestandssysteem zullen toegankelijk zijn" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "Speciale bestanden van toestellen verbergen" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "Setuid en Setgid machtigingen van bestanden zullen genegeerd worden" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Setuid/Setgid negeren" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "Indien aangevinkt wordt er een passieve vertaler gecreëerd naast de actieve. De mount zal dan vast staan, zelfs na herstarten, tot u ervoor kiest hem te verwijderen." #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "Creëer ook een passieve vertaler" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "Mount met sshfs" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Gebruiker op afstand" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "Als optie, voer de naam in van de gebruiker op afstand. Als u het leeg laat, wordt uw lokale gebruikersnaam gebruikt" #: moredialogs.xrc:10212 msgid " @" msgstr " @" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Host naam" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "Voer de naam van de server in, bv. myserver.com" #: moredialogs.xrc:10248 msgid " :" msgstr " :" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Map op afstand" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "Als optie, voorzie een map om te mounten. Standaard de thuismap van de gebruiker op afstand" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "Lokaal mount-punt" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "Vertaal de uid en gid van de gebruiker van de host op afstand naar die van de lokale. Aanbevolen" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "idmap=gebruiker" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "mount alleen-lezen" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Andere opties:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "Voer elke optie in die u nodig hebt, bv. -p 1234 -o cache_timeout=2. Ik vertrouw erop dat u de syntax kent" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "Mount een DVD-RAM schijf" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "Toestel om te mounten" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "Dit is de device naam voor het DVD-RAM station" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "Dit zijn de geschikte mount-punten in fstab. U kan uw eigen punten voorzien als u wenst" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Mount een iso-image" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Image om te mounten" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Mount-punt voor de image" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Al\ngemount" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "Mount een NFS export" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Kies een server" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "Dit is de lijst met NSF servers nu actief op het netwerk. Als u er nog een kent, gebruik de knop rechts om toe te voegen." #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Manueel een andere server toevoegen" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "Export om te mounten" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "Dit zijn de beschikbare exports op de server hierboven" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr " al gemount" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "Wat als de server faalt. Een harde mount zal uw computer blokkeren tot de server weer reageert; een zachte zou zich snel moeten deblokkeren maar kan data verliezen" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "Harde Mount" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "Zachte Mount" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "Mount lezen-schrijven" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "Mount alleen-lezen" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "Een NFS server toevoegen" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "IP adres van de nieuwe server" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "Tik het adres in. Dat zou iets moeten zijn als 192.168.0.2" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "Bewaar dit adres voor later gebruik" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "Mount een Samba share" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "Beschikbare servers" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "IP Adres" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "Dit zijn de IP adressen van de bekende bronnen van Samba shares op het netwerk" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Host naam" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "Dit zijn de host-namen van de bekende bronnen van Samba shares op het netwerk" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "Share om te mounten" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "Dit zijn de beschikbare shares op de server hierboven" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "Deze naam en wachtwoord gebruiken" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Probeer anoniem te mounten" #: moredialogs.xrc:11695 msgid "Username" msgstr "Gebruikersnaam" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Voer uw Samba gebruikersnaam in voor deze share" #: moredialogs.xrc:11720 msgid "Password" msgstr "Wachtwoord" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Voer het overeenkomende wachtwoord in (als er een is)" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Een partitie unmounten" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr " Partitie om te unmounten" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "Dit is de lijst van gemounte partities van mtab" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "Mount-punt voor deze partitie" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "Dit is het mount-punt dat overeen komt met de geselecteerde partitie" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "Uitvoeren als superuser" #: moredialogs.xrc:12025 msgid "The command:" msgstr "Het commando:" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "vereist extra privileges" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "Voer aub het beheerderswachtwoord in:" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "Indien aangevinkt zal het wachtwoord bewaard worden voor, standaard, 15 minuten" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr " Onthoud dit wachtwoord voor een tijdje" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "Quick Grep" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "Dit is de Quick-Grep dialoog.\nHij voorziet enkel de maast basale\nvan de vele grep opties." #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "Klik voor &Full Grep" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "Klik hier om naar de volledige Grep dialoog te gaan" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "Aanvinken om Full Grep de standaard te maken in de toekomst" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "Stel Full Grep in als standaard" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "Voer het pad of een lijst van bestanden in om te zoeken\n(of gebruik een van de sneltoetsen)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "Enkel volledige woorden" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w Enkel volledige woorden" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "Zoek niet-hoofdlettergevoelig" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i Hoofdlettergebruik negeren" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "Doe niet de moeite in binaire bestanden te zoeken" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "-n laat match vooraf gaan door lijnnummer" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Binaire bestanden negeren" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "Niet proberen zoeken in toestellen, fifo's, sockets enzovoort" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "Negeer apparaten, fifo's enz." #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "Wat doen met mappen?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "Laat de namen overeenkomen" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "Recursie uitvoeren" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "Snel Vinden" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "Dit is de Snel Vinden dialoog.\nHet voorziet enkel de meest basale\nvan de vele vind opties." #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "Klik voor &Volledig vinden" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "Klik hier om naar de Volledig Vinden dialoog te gaan" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "Vink aan om Volledig vinden vanaf nu als standaard in te stellen" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "Maak van Volledig Vinden de standaard" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "Voer het pad in van waaruit het zoeken moet starten\n(of gebruik een van de sneltoetsen)" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "Zoekterm:" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "Tik de naam of het pad in waarnaar gezocht moet worden. Het kan wildcards bevatten bv. foobar of f.*r\nAnderzijds kan het ook een reguliere expressie zijn." #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "Hoofdlettergebruik negeren" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "Dit is een:" #: moredialogs.xrc:12769 msgid "name" msgstr "naam" #: moredialogs.xrc:12778 msgid "path" msgstr "pad" #: moredialogs.xrc:12787 msgid "regex" msgstr "regex" ./4pane-6.0/locale/es/0000755000175000017500000000000012250631520013325 5ustar daviddavid./4pane-6.0/locale/es/LC_MESSAGES/0000755000175000017500000000000013567054715015133 5ustar daviddavid./4pane-6.0/locale/es/LC_MESSAGES/es.po0000644000175000017500000064275313564777336016133 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Adolfo Jayme-Barrientos, 2014 # Adolfo Jayme-Barrientos, 2012-2013 # Adolfo Jayme-Barrientos, 2013 # Adolfo Jayme-Barrientos, 2014 # Alfonso Galindez, 2017 # Alonso Galvan , 2018 # Emi Rodríguez, 2019 # nemecis1000 , 2011 # Mario Rodriguez , 2011 # nemecis1000 , 2014 # Ricardo A. Hermosilla Carrillo , 2011-2012 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2019-03-19 18:18+0000\n" "Last-Translator: Emi Rodríguez\n" "Language-Team: Spanish (http://www.transifex.com/davidgh/4Pane/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: es\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Mayús" #: Accelerators.cpp:213 msgid "C&ut" msgstr "C&ortar" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Copiar" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Enviar a la &papelera" #: Accelerators.cpp:213 msgid "De&lete" msgstr "E&liminar" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Eliminar permanentemente" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Reno&mbrar" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Duplicar" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "Propi&edades" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Abrir" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Abrir &con…" #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Pegar" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "Crear un enlace &duro" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "Crear un enlace &simbólico" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "&Eliminar pestaña" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "&Renombrar pestaña" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Des&hacer" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Rehacer" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Seleccion&ar todo" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "Archivo o carpeta &nuevo" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "Pestaña &nueva" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&Insertar pestaña" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "D&uplicar esta pestaña" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "Mostrar siempre la &barra de pestañas" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "Dar misma &anchura a las pestañas" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "&Replicar en el Panel Opuesto" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "&Intercambiar los Paneles" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Dividir Paneles &Verticalmente" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Dividir Paneles &Horizontalmente" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "&Juntar Paneles" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Extensión" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Tamaño" #: Accelerators.cpp:217 msgid "&Time" msgstr "&Fecha" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Permisos" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Propietario" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Grupo" #: Accelerators.cpp:218 msgid "&Link" msgstr "En&lace" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Mostrar &todas las columnas" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&Ocultar todas las columnas" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "Guardar Configuraciones del &Panel" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "Guardar configuraciones del Panel al &salir" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "Guardar el Di&seño como Plantilla" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "&Eliminar una Plantilla" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Actualiza&r" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "Ejecutar &terminal" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "&Filtrar Vista" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Mostrar/Ocultar archivos y directorios ocultos" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "&Añadir a Marcadores" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "Ad&ministrar Marcadores" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "&Montar una Partición" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "&Desmontar una Partición" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "Montar una Imagen &ISO" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "Montar una exportación &NFS" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "Montar una compartición &Samba" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "Des&montar un punto de montaje de Red" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "&Desmontar" #: Accelerators.cpp:224 msgid "Unused" msgstr "Sin usar" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Mostrar Emulador de &Terminal" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Mostrar &Línea de Comandos" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "&Ir al archivo seleccionado" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "&Vaciar la Papelera" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "Eliminar permanentemente los archivos borra&dos" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "E&xtraer Archivo o Archivo(s) Comprimido(s)" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Crear un &Nuevo Archivo" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "&Añadir a un archivo existente" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "&Probar integridad del Archivo o archivos comprimidos" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "&Comprimir archivos" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "&Mostrar recursivamente los tamaños de los directorios" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "Conserva&r Destinos relativos de los Enlaces Simbólicos" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "&Configurar 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "&Salir" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "Ayuda contextual" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "&Contenido de la ayuda" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "&Preguntas frecuentes" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "&Acerca de 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "Configurar atajos" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Ir al destino del enlace simbólico" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Ir al destino final del enlace simbólico" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Editar" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Separador nuevo" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Repetir programa previo" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Navegar al panel opuesto" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Navegar al panel adyacente" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "Cambiar a los paneles" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Cambiar al emulador de terminal" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Cambiar a la línea de órdenes" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Cambiar a control de texto de barra de herramientas" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "Cambiar a la ventana anterior" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Ir a la pestaña anterior" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Ir a la pestaña siguiente" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Pegar como directorio&la plantilla " #: Accelerators.cpp:231 msgid "&First dot" msgstr "&Primer punto" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "&Penúltimo punto" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "&Ultimo punto" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "Montar con SSH mediante ssh&fs" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "Mostrar &previsualizaciones" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "C&ancelar Pegar" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Ordenamiento de archivo decimal" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Cortar la selección actual" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Copiar la selección actual" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Enviar a la papelera" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Matar, pero puede ser resucitable" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Eliminar con prejuicio extremo" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Pegar el contenido del portapapeles" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "Crear Enlace Duro de los contenidos del Portapapeles aquí" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "Crear Enlace Simbólico de los contenidos del Portapapeles aquí" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Eliminar la pestaña seleccionada" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Renombrar la pestaña seleccionada" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Anexar una nueva Pestaña" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Insertar una nueva Pestaña después de la seleccionada" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Esconder barra de pestañas si sólo hay una" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Copiar la ruta de este lado al panel opuesto" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "Intercambiar la ruta de este lado con el otro" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Guardar el diseño de los paneles en cada pestaña" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Siempre guardar el diseño de los paneles al salir" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Guardar estas pestañas como una plantilla recargable" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Añadir el elemento seleccionado a sus Marcadores" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "Reorganizar, renombrar o eliminar marcadores" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "Encontrar archivos coincidentes. Mucho más rápido que 'buscar'" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Buscar archivo(s) coincidentes(s)" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "Buscar en los archivos" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Mostrar/ocultar el emulador de terminal" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Mostrar/ocultar la línea de órdenes" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "Vaciar la papelera de 4Pane" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Eliminar la carpeta 'Borrados' de 4Pane" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Calcular los tamaños de los directorios recursivamente en las visas de archivos" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "Al mover un enlace simbólico, mantener el mismo destino" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Cerrar este programa" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "Pegar sólo la estructura de directorios del portapapeles" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "ext comienza al principio. en el nombre del archivo" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "ext comienza en última o penúltima uno. en el nombre del archivo" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "ext comienza al fin. en el nombre del archivo" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "Mostrar previsualizaciones de archivos de imágenes y texto" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Cancelar el proceso actual" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "Los archivos tales como foo1, foo2 deberían estar en orden Decimal" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "\n¡La matrices en ImplementDefaultShortcuts() no son del mismo tamaño!" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "Activar el modo de Ãrbol" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "¡No se puede cargar la configuración?" #: Accelerators.cpp:502 msgid "&File" msgstr "&Archivo" #: Accelerators.cpp:502 msgid "&Edit" msgstr "&Editar" #: Accelerators.cpp:502 msgid "&View" msgstr "&Ver" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "&Pestañas" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "&Marcadores" #: Accelerators.cpp:502 msgid "&Archive" msgstr "A&rchivador" #: Accelerators.cpp:502 msgid "&Mount" msgstr "&Montar" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "&Herramientas" #: Accelerators.cpp:502 msgid "&Options" msgstr "&Opciones" #: Accelerators.cpp:502 msgid "&Help" msgstr "Ay&uda" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "&Columnas que mostrar" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "&Cargar una Plantilla de Pestaña" #: Accelerators.cpp:673 msgid "Action" msgstr "Acción" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "Acceso directo" #: Accelerators.cpp:675 msgid "Default" msgstr "Predeterminado" #: Accelerators.cpp:694 msgid "Extension" msgstr "Extensión" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "Mostrar/Ocultar la columna Extensión de la vista de archivo" #: Accelerators.cpp:694 msgid "Size" msgstr "Tamaño" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "Mostrar/Ocultar columna de Tamaño en la vista de archivo" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "Fecha" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "Mostrar/Ocultar columna Fecha en la vista de archivo" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Permisos" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "Mostrar/Ocultar columna de Permisos en vista de archivo" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Propietario" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "Mostrar/Ocultar columna de Propietario en vista de archivo" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Grupo" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "Mostrar/Ocultar columna de Grupo en vista de archivo" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "Enlace" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "Mostrar/Ocultar columna de Enlace en la vista de archivo" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "Mostrar todas las columnas" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "Vista de Archivo: Mostrar todas las columnas" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Ocultar todas las columnas" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "Vista de Archivo: Ocultar todas las columnas" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Marcadores: editar" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Marcadores: separador nuevo" #: Accelerators.cpp:697 msgid "First dot" msgstr "Primer punto" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "Las extensiones comienzan a partir del primer punto" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "Penúltimo punto" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "Las extensiones comienzan a partir del penúltimo punto" #: Accelerators.cpp:698 msgid "Last dot" msgstr "Último punto" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "Las extensiones comienzan a partir del último punto" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "¿Perder los cambios?" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "¿Está seguro?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "Ninguno" #: Accelerators.cpp:939 msgid "Same" msgstr "Similar" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "Escriba en la nueva Etiqueta para mostrar en este elemento del menú" #: Accelerators.cpp:958 msgid "Change label" msgstr "Cambiar etiqueta" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "Escriba en la cadena Ayuda para mostrar la ayuda sobre este elemento\nCancelar limpiará la cadena" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "Cambiar cadena de Ayuda" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "Me parece que no puedo encontrar este archivo o directorio.\nIntente utilizar el botón Examinar" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "¡Vaya!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Elija los archivos o las carpetas" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "Elija la carpeta donde se guardará el archivo" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "Examine el archivador en el que se anexará" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "El directorio en el que quiere crear el archivo no parece existir.\n¿Utilizar el directorio actual?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "Parece que no existe el archivador en el que quiere anexar el archivo.\n¿Quiere intentarlo de nuevo?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "No se puede encontrar el programa binario de descompresión de 7z en el sistema" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "Vaya" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "No se puede encontrar un archivo válido a extraer.\n¿Intentarlo nuevamente?" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "No se seleccionó ningún archivo comprimido relevante.\n¿Quiere intentarlo de nuevo?" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "Examine el archivo para Comprobar" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Seleccione el Directorio en el cual Extraer el archivo" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "Fallo al crear el directorio de destino deseado.\n¿Intentarlo nuevamente?" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "No se puede encontrar el programa rpm2cpio en el sistema…" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "No se puede encontrar el programa ar en el sistema…" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "No se puede encontrar un archivo válido a extraer.\n¿Intentarlo nuevamente?" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "No se puede encontrar un archivo válido para comprobar.\n¿Intentarlo nuevamente?" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Archivos comprimidos" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Falló la compresión" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Archivos descomprimidos" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Falló la descompresión" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Archivos comprobados" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Falló la comprobación" #: Archive.cpp:1242 msgid "Archive created" msgstr "Se creó el archivador" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Falló la creación del archivador" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Archivos añadidos al archivador" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Falló la adición al archivador" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Archivador extraído" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Falló la extracción" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Archivador comprobado" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "¿En qué carpeta quiere extraer los archivos?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "¿En qué carpeta quiere extraer esto?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Extrayendo desde archivador" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "Me temo que no tiene permisos para Crear en este directorio\n ¿Intentarlo nuevamente?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "¡Sin entrada!" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Lo siento, %s ya existe\n ¿Intentarlo nuevamente?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "Me temo que no tiene Permisos para escribir en este Directorio" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "Me temo que no tiene permisos para Acceder a los archivos en este Directorio" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "¡Sin Salida!" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "Por alguna razón, la creación de la copia de seguridad ha fallado. ¡Lo siento!" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Lo siento, ha fallado la copia de seguridad" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Lo siento, no se han podido eliminar los elementos" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Pegar" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "Mover" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "Lo siento, necesita ser administrador para extraer o bloquear dispositivos" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "Me temo que su zlib es muy antigua para hacer esto :(" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "Falló la apertura del archivador por algún motivo :(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "No se puede hurgar en ese tipo de archivadores a menos que instale liblzma." #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "Falta una biblioteca" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "Este archivo está comprimido, pero no es un archivo, así que no puede mirar dentro." #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "Lo siento" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "No se puede hurgar en ese tipo de archivadores." #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "Carpetas de Marcadores" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Separador" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "Duplicado" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Movido" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Copiado" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Renombrar carpeta" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Editar marcador" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "SeparadorNuevo" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "CarpetaNueva" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Ocurrió un error al cargar la barra de menús." #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "No se encontró el menú." #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "Esta sección no existe en el archivo .ini." #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Marcadores" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "No se pudo ubicar esa carpeta" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Marcador añadido" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "¿Perder todos los cambios?" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "¿Qué Etiqueta quiere para esta nueva Carpeta?" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "Lo siento, ya existe una carpeta llamada %s\n ¿Intentarlo nuevamente?" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Carpeta añadida" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Separador añadido" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "Lo siento, ya existe una carpeta con el nombre %s\n ¿Quiere cambiar el nombre?" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "¿Oops?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "¿Cómo quiere llamar a esta Carpeta?" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "¿Qué Etiqueta quiere para esta Carpeta?" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Pegado" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "Modifique la Etiqueta de la Carpeta" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "Lo siento, no le está permitido mover la carpeta principal" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "Lo siento, no le está permitido eliminar la carpeta principal" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "¡Tsk tsk!" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "¿Eliminar la carpeta %s y todo su contenido?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Carpeta eliminada" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Marcador eliminado" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Bienvenido a 4Pane." #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "4Pane es un Administrador de Archivos que apunta a ser rápido y con varias características sin ahogarse." #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "Por favor, presione Siguiente para configurar 4Pane para su sistema." #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "O si ya existe un archivo de configuración que quiera copiar, presione" #: Configure.cpp:69 msgid "Here" msgstr "Aquí" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "Recursos localizados correctamente. Por favor, presione Siguiente" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "He echado un vistazo alrededor de su sistema y he creado una configuración que debería funcionar." #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "Puede realizar una configuración completa en cualquier momento, en Opciones > Configurar 4Pane." #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "Agregar un acceso directo de 4Pane en el escritorio" #: Configure.cpp:158 msgid "&Next >" msgstr "&Siguiente >" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "Examine en busca de un archivo de Configuración" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "Me temo que no tiene permisos para Copiar este archivo.\n¿Quiere intentarlo nuevamente?" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "Este no parece ser un archivo de configuración 4Pane válida \n¿Estás absolutamente seguro de que quieres usarlo?" #: Configure.cpp:198 msgid "Fake config file!" msgstr "Archivo de configuración Falso!" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "No se puede encontrar archivos de recursos de 4Pane. Debe haber algo mal con su instalación. :(\n ¿Quieres tratar de localizar de forma manual?" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "!Ah! No se pueden encontrar los recursos" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "Examine por ..../4Pane/rc/" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "No se pueden encontrar los mapas de bits de 4Pane. Debe haber algo mal con tu instalación :( ¿Desear intentar colocarlos manualmente?" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "!Ah! No se pueden encontrar los mapas de bits" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "Examine por ..../4Pane/bitmaps/" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "No se pueden encontrar los archivos de ayuda. Debe haber algo mal con tu intalación :( ¿Deseas intentar colocarlos manualmente?" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "!Ah! No se pueden encontrar los archivos de ayuda." #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "Examine por ..../4Pane/doc/" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "&Ejecutar un Programa" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "Instalar .deb(s) como administrador:" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "Eliminar el .deb nombrado como administrador:" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "Enlistar archivos provistos por un .deb particular:" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "Enlistar .deb(s) instalados que coincidan con el nombre:" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "Mostrar si el .deb nombrado está instalado:" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "Mostrar qué paquete instaló el archivo seleccionado." #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "Instalar rpm(s) como administrador:" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "Eliminar un rpm como administrador:" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "Consultar el rpm seleccionado" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "Enlistar los archivos provistos por el rpm seleccionado" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "Consultar el rpm nombrado" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "Enlistar los archivos provistos por el rpm nombrado" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "Crear un directorio como administrador" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Ir al directorio Principal" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "Ir al directorio Documentos" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "Si está viendo este mensaje (no debería), es porque el archivo de configuración no ha podido ser guardado.\nLas razones menos probables pueden ser: permisos incorrectos o una partición de Sólo Lectura" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "Accesos Directos" #: Configure.cpp:2041 msgid "Tools" msgstr "Herramientas" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Añadir una herramienta" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Editar una herramienta" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Eliminar una herramienta" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "Dispositivos" #: Configure.cpp:2052 msgid "Automount" msgstr "Automontar" #: Configure.cpp:2054 msgid "Mounting" msgstr "Montando" #: Configure.cpp:2056 msgid "Usb" msgstr "USB" #: Configure.cpp:2058 msgid "Removable" msgstr "Extraíble" #: Configure.cpp:2060 msgid "Fixed" msgstr "Fijo" #: Configure.cpp:2062 msgid "Advanced" msgstr "Avanzado" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "Avanzado fijo" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "Avanzado extraíble" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "lvm avanzado" #: Configure.cpp:2072 msgid "The Display" msgstr "La Pantalla" #: Configure.cpp:2074 msgid "Trees" msgstr "Ãrboles" #: Configure.cpp:2076 msgid "Tree font" msgstr "Fuente del árbol" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "Otros" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "Terminales" #: Configure.cpp:2083 msgid "Real" msgstr "Real" #: Configure.cpp:2085 msgid "Emulator" msgstr "Emulador" #: Configure.cpp:2088 msgid "The Network" msgstr "La Red" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "Misceláneo" #: Configure.cpp:2093 msgid "Numbers" msgstr "Números" #: Configure.cpp:2095 msgid "Times" msgstr "Fechas" #: Configure.cpp:2097 msgid "Superuser" msgstr "Súper-usuario" #: Configure.cpp:2099 msgid "Other" msgstr "Otro" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "Detener gtk2 el uso de la tecla F10" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "Si esto es desmarcado, gtk2 toma la tecla F10 y no se puede utilizar como acceso directo (es la predeterminada para \"Nuevo archivo o directorio\")." #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "Lo siento, no hay espacio para otro submenú\nLe sugiero que lo ponga en otro lugar" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "Ingrese el nombre del nuevo submenú para agregar a " #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "Lo siento, ya existe un menú con ese nombre\n ¿Intentarlo nuevamente?" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "Lo siento, no le es permitido eliminar el menú raíz" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "¿Eliminar el menú \"%s\" y todo su contenido?" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "No puedo encontrar el comando \"%s\" ejecutable.\n¿Continuar de todas formas?" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "No puedo encontrar el comando \"%s\" ejecutable en su PATH.\n¿Continuar de todas formas?" #: Configure.cpp:2471 msgid " Click when Finished " msgstr " Presione cuando Termine " #: Configure.cpp:2477 msgid " Edit this Command " msgstr " Editar este Comando " #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "¿Eliminar el comando \"%s\"?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "Seleccione un archivo" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "Herramientas definidas por el usuario" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "Dispositivos de Automontaje" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "Dispositivos de Montaje" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "Dispositivos USB" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "Dispositivos extraíbles" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "Dispositivos fijos" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "Dispositivos avanzados " #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "Dispositivos fijos avanzados " #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "Dispositivos removibles avanzados " #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "Dispositivos LVM avanzados " #: Configure.cpp:2739 msgid "Display" msgstr "Mostrar" #: Configure.cpp:2739 msgid "Display Trees" msgstr "Mostrar árboles" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "Mostrar Fuente de Ãrbol" #: Configure.cpp:2739 msgid "Display Misc" msgstr "Mostrar Misceláneos" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "Terminales reales" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "Emulador de terminal" #: Configure.cpp:2740 msgid "Networks" msgstr "Redes" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "Varios de superusuario" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "Hay cambios sin guardar en la página «%s».\n ¿Realmente quiere cerrarla?" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "Tipo de letra del árbol seleccionado" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "Tipo de letra del árbol predeterminado" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "(ignorado)" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "¿Quiere eliminar este dispositivo?" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "Tipo de letra seleccionado para el emulador de terminal" #: Configure.cpp:3829 msgid "Default Font" msgstr "Tipo de letra predeterminado" #: Configure.cpp:4036 msgid "Delete " msgstr "Eliminar" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "¿Está seguro?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "Eso no parece ser una dirección IP válida" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "Ese servidor ya está en la lista" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "Escriba la orden que se usará, incluyendo cualquier opción necesaria" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "Orden de un programa gráfico de «su» diferente" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "Cada patrón metakey debe ser único. Intentar de nuevo?" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "Usted eligió no exportar ningún tipo de dato! Abortando." #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "¿Quiere eliminar este botón de la barra de herramientas?" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "Examinar la ruta de archivo que añadir" #: Devices.cpp:221 msgid "Hard drive" msgstr "Disco rígido" #: Devices.cpp:221 msgid "Floppy disc" msgstr "Disquete" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "CD o DVDRom" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "Escritora de CD o DVD" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "tarjeta de memoria USB" #: Devices.cpp:221 msgid "USB card-reader" msgstr "lector de tarjetas USB" #: Devices.cpp:221 msgid "USB hard drive" msgstr "disco rígido USB" #: Devices.cpp:221 msgid "Unknown device" msgstr "Dispositivo desconocido" #: Devices.cpp:301 msgid " menu" msgstr " menú" #: Devices.cpp:305 msgid "&Display " msgstr "&Mostrar" #: Devices.cpp:306 msgid "&Undisplay " msgstr "&Ocultar" #: Devices.cpp:308 msgid "&Mount " msgstr "&Montar" #: Devices.cpp:308 msgid "&UnMount " msgstr "&Desmontar" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "Montar un DVD-&RAM " #: Devices.cpp:347 msgid "Display " msgstr "Mostrar" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "Desmontar DVD-&RAM " #: Devices.cpp:354 msgid "&Eject" msgstr "&Expulsar" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "¿Cuál montaje quieres remover?" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "Desmontar un disco DVD-RAM" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "Clic o Arrastrar aquí para invocar" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "Parece que no tiene permisos para leer este archivo" #: Devices.cpp:581 msgid "Failed" msgstr "Fallo" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "archivo(s) no pudieron ser abiertos debido a que no cuentas con permisos de Lectura" #: Devices.cpp:592 msgid "Warning" msgstr "Aviso" #: Devices.cpp:843 msgid "Floppy" msgstr "Floppy" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, ese dispositivo no parece estar disponible.\n\n¡Que tengas un buen día!" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "Oops, esa partición no parece estar disponible.\n\n¡Que tengas un buen día!" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Lo siento, necesitas ser root para desmontar particiones non-fstab" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "Lo siento, fallo al desmontar" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "\n(Necesitarás 'su' para root)" #: Devices.cpp:1435 msgid "The partition " msgstr "La partición" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "no tiene una entrada fstab.\n¿Dónde te gustaría montarla?" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "Montar partición non-fstab" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "El punto de montaje para este dispositivo no existe. ¿Crearlo?" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "Lo siento, necesitas ser root para montar particiones non-fstab" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "Oops, fallo al montar\nHubo un problema con /etc/mtab" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "Oops, fallo al montar\nIntenta insertar un disco funcional" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "Oops, fallo al montar debido a un error" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "Oops, fallo al montar.\n¿Tienes permisos para hacer esto?" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "No puedo encontrar el archivo con la lista de particiones." #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "\n\nNecesitas usar Configurar para ordenar las cosas" #: Devices.cpp:1662 msgid "File " msgstr "Archivo" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "No puedo encontrar el archivo con la lista de entradas scsi." #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "Debe introducir una orden válida. ¿Intentarlo de nuevo?" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "Ninguna aplicación ingresada" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "La ruta no parece existir.\n¿Usar de todas formas?" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "Aplicación no encontrada" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "¿Eliminar este editor?" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Cancelar" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "Seleccione el tipo de icono correcto" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "Me temo que no tienes permisos de Lectura para el archivo" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "Parece haber un problema: el directorio de destino no existe. Lo siento." #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "Parece haber un problema: el directorio no existe. Lo siento." #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "Ya existe un directorio en el archivo con el nombre" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "\nTe sugiero que renombres el archivo o el directorio" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "Por alguna razón, falló el intentar crear un directorio temporal. ¡Lo siento!" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "Ambos archivos tienen el mismo tiempo de modificación" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "El archivo actual fue modificado el " #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "El archivo fue modificado el " #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "Parece ser que quieres sobreescribir el mismo directorio" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "Lo siento, el nombre ya está tomado. Por favor, inténtalo nuevamente." #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "No, la idea es que tu CAMBIES el nombre" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "Lo siento, no pude duplicar el archivo. ¿Quizá un problema de permisos?" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "Lo siento, no pude crear un espacio para el directorio. ¿Quizá un problema de permisos?" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "Lo siento, ha ocurrido un error inesperado en el sistema de archivos :-(" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "Eliminación de enlace simbólico Fallada!?!" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "Múltiples duplicados" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "Confirmar duplicación " #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "Ayuda RegExp" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "Éxito\n" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "El proceso falló\n" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "Proceso correctamente abortado\n" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "SIGTERM ha fallado \nintentando SIGKILL\n" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "Proceso terminado satisfactoriamente\n" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "Lo sentimos, falló la cancelación\n" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "Falló la ejecución de «%s»." #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "Cerrar" #: Filetypes.cpp:346 msgid "Regular File" msgstr "Archivo normal" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "Enlace simbólico" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "Enlace simbólico roto" #: Filetypes.cpp:350 msgid "Character Device" msgstr "Dispositivo de Caracteres" #: Filetypes.cpp:351 msgid "Block Device" msgstr "Bloquear dispositivo" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "Carpeta" #: Filetypes.cpp:353 msgid "FIFO" msgstr "FIFO" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "¡¿Tipo desconocido?!" #: Filetypes.cpp:959 msgid "Applications" msgstr "Aplicaciones" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "Lo sentimos, no tiene permitido eliminar la carpeta raíz" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "¡Uf!" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "¿Eliminar la carpeta %s?" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "No se puede ubicar esa carpeta." #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "No se puede encontrar el programa ejecutable «%s».\n¿Continuar de todos modos?" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "No se puede encontrar el programa ejecutable «%s en su RUTA.\n¿Continuar de todos modos?" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "Lo sentimos, ya existe una aplicación llamada %s\n ¿Intentarlo de nuevo?" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "Confirmar" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "No introdujo una extensión." #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "¿Qué extensión(es) quiere asociar con esta aplicación?" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "¿Qué extensión(es) quiere asociar con %s?" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "¿Reemplazar %s\ncon %s\ncomo la orden predeterminada para archivos %s?" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "No se pudo ubicar la aplicación." #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "¿Eliminar %s?" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "Editar los datos de la aplicación" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "Lo sentimos, no tiene permisos para ejecutar este archivo." #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "No tiene permiso para ejecutar este archivo.\n¿Quiere intentar leerlo?" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "Actualmente sin utilizar %s como por defecto para los tipos de archivo %s?" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "Fallo al crear un directorio temporal" #: Misc.cpp:481 msgid "Show Hidden" msgstr "Mostrar ocultos" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "cortado" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "%zu elementos" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "No ha introducido un punto de montaje.\n¿Intentarlo de nuevo?" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "No existe el punto de montaje para esta partición. ¿Crearlo?" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "Ups, no se ha podido montar la partición." #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "El mensaje de error fue:" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "Se montó correctamente en" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "No se pudo crear la carpeta" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "Falló la creación de la carpeta" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "No hay permisos suficientes para crear la carpeta" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "Ups, no se ha podido crear el directorio." #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "¡Desmontar root es una MALÃSIMA idea!" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "Ups, no se ha podido desmontar la partición." #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "Fallo al desmontar" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "desmontado correctamente" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "No se pudo desmontar correctamente debido a un error" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "Fallo al desmontar" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "El punto de montaje solicitado no existe. ¿Crearlo?" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "Falló el montaje.\nAsegúrese de que la imagen es válida." #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "Fallo al montar exitosamente debido a un error" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "Fallo al montar exitosamente" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "Esta exportación ha sido montada en" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "El punto de montaje para esta Exportación es inexistente ¿Crearlo?" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "El punto de montaje para esta acción es inexistente ¿Crearlo?" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "Perdón, necesita ser superusuario para montar exportaciones que no se encuentren en fstab" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "Falló el montaje.\nAsegúrese de que NFS se está ejecutando." #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "El punto de montaje seleccionado no existe. ¿Crearlo?" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "El punto de montaje seleccionado no es un directorio" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "No se puede acceder al punto de montaje seleccionado" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "El punto de montaje seleccionado no esta vacío. ¿Intentar montar de todas formas?" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "Fallo al montar a través de ssh. El mensaje de error fué:" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "Fallo al montar a través de ssh debido a un error" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "Fallo al montar a través de ssh en %s" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "El recurso compartido ya está montado en" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "Este recurso compartido está montado actualmente en %s\n¿Desea montarlo en %s también?" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "Perdón, necesita ser superusuario para montar recursos compartidos que no se encuentren en fstab" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "Ups, fallo al montar correctamente. El mensaje de error fué:" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "No se encontraron Montajes de este tipo" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "Desmontar un punto de montaje de Red" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "Compartir o Exportar para Desmontar" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "Punto de Montaje" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "Desmontado correctamente" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "Falló el desmontaje con el mensaje:" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "Elija la carpeta que usar como punto de montaje" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "Elija una imagen a montar" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "No puedo encontrar la utilidad \"smbclient\". Esto probablemente se deba a que Samba no ha sido instalado apropiadamente.\nAlternativamente quizás haya un problema con el PATH o los permisos" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "No puedo lograr que la utilidad \"nmblookup\" funcione. Esto probablemente se deba a que Samba no se ha sido instalado apropiadamente.\nAlternativamente quizás haya un problema con el PATH o los permisos" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "No puedo encontrar la utilidad \"nmblookup\". Esto probablemente se deba a que Samba no ha sido instalado apropiadamente.\nAlternativamente quizás haya un problema con el PATH o los permisos" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "Buscando recursos compartidos de Samba…" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "No puedo encontrar un servidor samba activo. \nSi conoce alguno, por favor digame su dirección: ej. 192.168.0.3" #: Mounts.cpp:1315 msgid "No server found" msgstr "No se encontró ningún servidor" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "Me temo que no puedo encontrar la utilidad showmount. Por favor utilize Configurar > Red para ingresar su ruta" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "No puedo encontrar la utilidad \"shoumount\". Esto probablemente se deba a que NFS no ha sido instalado apropiadamente.\nAlternativamente quizás haya un problema con el PATH o los permisos" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "No conozco ningún servidor NFS en su red.\n¿Desea continuar e ingresar alguno usted mismo?" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "No se encontrar puntos de montajes actuales" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "No puede enlazar dentro de un directorio a menos que altere el nombre del enlace." #: MyDirs.cpp:118 msgid "Not possible" msgstr "No es posible" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "Volver al directorio anterior" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "Reingresar directorio" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "Seleccionar directorio previamente visitado" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "Mostrar árbol completo" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "Ir al directorio contenedor" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "Carpeta personal" #: MyDirs.cpp:499 msgid "Documents" msgstr "Documentos" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "Vaya, parece que ese directorio ya no existe." #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "Archivos, tamaño total" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "Subcarpetas" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "Por favor vuelva a intentar en un momento" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "Estoy ocupado ahora" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "Me temo que no puede Crear dentro de un archivo\nSin embargo, puede crear un nuevo elemento afuera, luego Moverlo adentro" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "Me temo que no posee permisos para Crear en este directorio" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "&No mostrar carpetas y archivos ocultos\tCtrl+H" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "&Mostrar carpetas y archivos ocultos\tCtrl+H" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "movido" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "duro" #: MyDirs.cpp:1033 msgid "Soft" msgstr "suave" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "Proporcione una extensión a adjuntar" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "Proporcione un nombre para llamar al enlace" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "Proporcione un nombre diferente para el enlace" #: MyDirs.cpp:1112 msgid "linked" msgstr "enlazado" #: MyDirs.cpp:1122 msgid "trashed" msgstr "movido a la papelera" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "eliminado" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "Me temo que no tiene permiso para borrar en este directorio" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "Al menos uno de los ítems que desea borrar parece no existir" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "Parece que no existe el elemento a eliminar" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "Elemento no encontrado" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "Mover a la papelera:" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Eliminar:" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "%zu elementos, de:" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "\n\n A:\n" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "Lo sentimos, falló la eliminación" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "La ruta de archivo no era válida." #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "Para" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "de los elementos, no tiene permisos para eliminar de este directorio." #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "No se pudo eliminar el elemento." #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "No se pudieron eliminar" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "elementos." #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "Falló el cortado" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "Falló la eliminación" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "Eliminar permanentemente (no se puede deshacer):" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "¿Está COMPLETAMENTE seguro?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "eliminado irrevocablemente" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "copiado" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "pegado" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "Crear un enlace s&imbólico" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "Extraer del archivador" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "E&liminar del archivador" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "Reno&mbrar directorio dentro del archivador" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "E&liminar el archivo" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "Enviar el archivo a la &papelera" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "Otros…" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "Abrir con privile&gios de administrador con…" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "Abrir con privile&gios de administrador" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "Abrir &con…" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "Reno&mbrar el archivo" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "&Duplicar el archivo" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "Crear un archivador nuevo" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "Añadir a un archivador existente" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "Comprobar integridad del archivador o los archivos comprimidos" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "Comprimir archivos" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "Definición de extensión…" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "Columnas a mostrar" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "Unir los paneles" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "Intercambiar los paneles" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "Directorio nuevo creado" #: MyFiles.cpp:588 msgid "New file created" msgstr "Archivo nuevo creado" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "Duplicar" #: MyFiles.cpp:665 msgid "Rename " msgstr "Renombrar" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "No, la idea es que proporcione un nombre NUEVO" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "duplicado" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "renombrado" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "Esa acción no funcionó. ¿Quiere intentarlo de nuevo?" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "Abrir con" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "de archivos y subdirectorios" #: MyFiles.cpp:1077 msgid " of files" msgstr "de archivos" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "El destino nuevo del elemento no existe.\n¿Quiere intentarlo de nuevo?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "Parece que no se pudo cambiar el destino del enlace simbólico por algún motivo." #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "" #: MyFiles.cpp:1693 msgid " failures" msgstr "fallos" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Aviso" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "" #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "" #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "" #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Deshacer varias acciones de una vez" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Rehacer varias acciones de una vez" #: MyFrame.cpp:743 msgid "Cut" msgstr "Cortar" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Pulse para cortar la selección" #: MyFrame.cpp:744 msgid "Copy" msgstr "Copiar" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Pulse para copiar la selección" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Pulse para pegar la selección" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Deshacer" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Deshacer una acción" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Rehacer" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Rehacer una acción deshecha anteriormente" #: MyFrame.cpp:755 msgid "New Tab" msgstr "Pestaña nueva" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Crear una pestaña nueva" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Eliminar pestaña" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Elimina la pestaña seleccionada actualmente" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Acerca de" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Error" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "Éxito" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Equipo" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Secciones" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "El nombre de archivo ya existe." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "Operación no permitida." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "¿Cuál plantilla quiere eliminar?" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "Eliminar plantilla" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "Cancelado" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "¿Cómo quiere llamar a esta plantilla?" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "Elija una etiqueta de plantilla" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "Ya ha abierto la cantidad máxima de pestañas permitidas." #: MyNotebook.cpp:346 msgid " again" msgstr "de nuevo" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "¿Cómo quiere llamar a esta pestaña?" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "Cambiar título de pestaña" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "Ãndice de columna no válido" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "Columna no válida" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr " *** Enlace simbólico roto ***" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr " Rehacer: " #: Redo.cpp:258 msgid " Undo: " msgstr " Deshacer: " #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr " (%zu elementos) " #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr " ---- MÃS ---- " #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "-- ANTERIOR --" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "deshecho" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "rehecho" #: Redo.cpp:590 msgid " actions " msgstr "acciones" #: Redo.cpp:590 msgid " action " msgstr "acción" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "acción" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "deshecho" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "rehecho" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "Papelera vaciada" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "Los archivos almacenados se eliminaron permanentemente" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "No se encontraron coincidencias." #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr " ¡Que tenga un buen día!\n" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Mostrar" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "Ocultar" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "Abrir el archivo seleccionado" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "Necesita iniciar cada orden con «sudo»" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "Puede hacer esto en su lugar: su -c \"\"" #: Tools.cpp:2880 msgid " items " msgstr "elementos" #: Tools.cpp:2880 msgid " item " msgstr "elemento" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Repetir:" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "Orden añadida" #: Tools.cpp:3267 msgid "first" msgstr "primero" #: Tools.cpp:3267 msgid "other" msgstr "otro" #: Tools.cpp:3267 msgid "next" msgstr "siguiente" #: Tools.cpp:3267 msgid "last" msgstr "último" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "parámetro" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "Herramienta definida por el usuario" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "Eliminar" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "Directorio nuevo" #: Redo.h:226 msgid "New File" msgstr "Archivo nuevo" #: Redo.h:242 msgid "Duplicate Directory" msgstr "Duplicar directorio" #: Redo.h:242 msgid "Duplicate File" msgstr "Duplicar archivo" #: Redo.h:261 msgid "Rename Directory" msgstr "Renombrar carpeta" #: Redo.h:261 msgid "Rename File" msgstr "Renombrar el archivo" #: Redo.h:281 msgid "Duplicate" msgstr "Duplicar" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "Renombrar" #: Redo.h:301 msgid "Extract" msgstr "Extraer" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "Desactivar información sobre herramientas" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "Aceptar" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "Pulse cuando termine" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "Pulse para cancelar" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "Se detectó un dispositivo nuevo" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "¿Quiere configurarlo?" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "No configurarlo ahora mismo, pero volver a preguntar cuando aparezca otra vez" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "Configurar dispositivo nuevo" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "Punto de montaje para el dispositivo" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "¿Cómo le gustaría llamarlo?" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "Tipo de dispositivo" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "El dispositivo es de solo lectura" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "Ignorar este dispositivo" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "Nombre del fabricante" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "Nombre del modelo" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "Punto de montaje para este dispositivo" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "Configurar tipo de dispositivo nuevo" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "Etiqueta que darle a este dispositivo" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "Configurar 4Pane" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "Pulse cuando termine de configurarlo" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "En las páginas siguientes puede añadir, editar o eliminar herramientas." #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "Finalmente, cuatro páginas de miscelánea." #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "De manera predeterminada, mostrar archivos y carpetas ocultos" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "Ordenar los archivos según la configuración regional" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "Mostrar líneas en el árbol de carpetas" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "Colorear líneas alternadas en las vistas de archivos" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "Pulse para seleccionar los colores que quiere para las líneas alternas" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "Resaltar el panel enfocado" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "Así luce el tipo de letra del emulador de terminal" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "Revertir al valor del sistema" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "Mostrar la ruta del archivo seleccionado en la barra de título" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr " Pedir confirmación antes de mover archivos a la papelera" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "Pedir confirmación antes de eliminar archivos" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "Elija la aplicación de terminal que se ejecutará al oprimir Ctrl+T" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Cambiar" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "Usar predeterminado" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "Escriba otra dirección de servidor" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "Escriba aquí la dirección de otro servidor (p.ek. 192.168.0.2), y pulse «Añadir»" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Añadir" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "Ruta a la carpeta de Samba" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "4Pane le permite deshacer (y rehacer) la mayoría de las operaciones." #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "Algunos mensajes se muestran brevemente y luego desaparecen." #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "¿Cuántos segundos deberían durar?" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "Mensajes de la barra de estado" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "El propio de 4Pane" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "Algunas distribuciones (Ubuntu y similares) usan sudo para acceder al superusuario; muchas otras usan su. Seleccione la opción apropiada para usted." #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "sudo" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "Almacenar contraseñas para:" #: configuredialogs.xrc:3233 msgid "min" msgstr "min" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "Un programa externo como gksu. Solo podrá seleccionar los que estén disponibles en su sistema" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "Un programa externo:" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr " kdesu" #: configuredialogs.xrc:3292 msgid " gksu" msgstr " gksu" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr " gnomesu" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "Otro…" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "Pulse para configurar el comportamiento de arrastrar y soltar" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "Pulse para configurar las secciones de la barra de estado" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "Orden a ejecutar:" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "Pulse para buscar la aplicación con la que ejecutarlo" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "Ejecutar en una terminal" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "Mantener la terminal abierta" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "Actualizar el panel después de" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "Actualizar el panel opuesto también" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "Ejecutar orden como administrador" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "Etiqueta a mostrar en el menú:" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "Añadirlo a este menú:" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "Éstos son los menús disponibles actualmente. Seleccione uno, o añada uno nuevo" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "Añadir un menú o submenú nuevo a la lista" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "Eliminar el menú o submenú seleccionado actualmente" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Pulse para añadir la herramienta nueva" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Seleccione una orden, y luego pulse «Editar esta orden»" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Etiqueta en el menú" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Seleccione la etiqueta de la orden que quiere editar. Puede modificar esto también, si lo desea." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Orden" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "La orden a editar" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "Seleccione un elemento y pulse en «Eliminar esta orden»" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Seleccione la etiqueta de la orden que quiere eliminar" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "La orden a eliminar" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Pulse dos veces en una entrada para cambiarla" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "Mostrar etiquetas sin mnemónicas" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "Seleccionar colores" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "1er. color actual" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "2.º color actual" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "Introduzca un atajo de teclado" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "Oprima las teclas que quiere usar para esta función:" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "Actual" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "Limpiar" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "Pulse si no quiere un atajo de teclado para esta acción" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "Predeterminado:" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "Ctrl+Mayús+Alt+M" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "Cambiar etiqueta" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "Duplicar acelerador" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "Esta combinación de teclas ya la usa:" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "¿Qué quiere hacer?" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "Elegir teclas diferentes" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "Rendirse" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "Montar automáticamente los disquetes" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "Montar automáticamente DVD-ROM, etc." #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "Disquetes" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "mtab" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "fstab" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "ninguno" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "CD-ROM, etc." #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "Dispositivos USB" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "segundos" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "¿Qué hacer si 4Pane ha montado un dispositivo USB?" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "¿Quiere desmontar antes de salir? Esto solo aplica a dispositivos extraíbles, si la distribución no monta automáticamente" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "Preguntar antes de desmontar al salir" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "¿Qué archivo contiene datos de la partición?" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "La lista de particiones conocidas. Predet.: /proc/partitions" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "Recargar valores predeterminados" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "¿Qué es el prefijo LVM?" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "Botones actuales" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "Configure, p.ej., un editor" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "Nombre" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "Icono a usar" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "Ejecutar orden" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "" #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "Por ejemplo, si pega varios archivos, GEdit puede abrirlos en pestañas." #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "Seleccionar icono" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "Selección\nactual" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "Icono nuevo" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "¿Añadir este icono?" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "Configurar editores, etc." #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "Editar este programa" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "Configurar un icono de barra de herramientas pequeña" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "Ruta del archivo" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "Pulse para buscar la ruta de archivo nueva" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "(Pulse para cambiar)" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "Configurar arrastrar y soltar" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "Elija qué teclas deberían realizar lo siguiente:" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "Mover:" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "Copiar:" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "Enlace duro:" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "Enlace suave:" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "Horizontal" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "Vertical" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "Ayuda del elemento del menú" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "(Predeterminado 5)" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "Mensajes de (a veces) ayuda cuando posa el ratón sobre un elemento del menú" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "Mensajes de éxito" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "Rutas de archivos" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "Información sobre el archivo o carpeta seleccionado actualmente; generalmente es su tipo, nombre y tamaño" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "Filtros" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "Exportar datos" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr " Datos de herramientas del usuario" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Cuáles editores (p.ej., gedit, kate…) mostrar en la barra de herramientas" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr " Datos de editores" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr " Datos de montaje de dispositivos" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr " Datos relacionados con la terminal" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "Exportar datos" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "Anchura máxima (px)" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "Altura máxima (px)" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "Imágenes:" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "Archivos de texto:" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "&Localizar" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "No se puede leer" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "Solo omitir este archivo" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "Omitir cualquier archivo del cual no tenga permiso de lectura" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Esto es sin duda ilegal, y probablemente inmoral" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Pulse para disculparse" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "¿Cómo quiere nombrarlo?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Escriba el nombre" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "Sobreescribir o renombrar" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "" #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "Omitir este elemento" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "Renombrar o cancelar" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "" #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Renombrar u omitir" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "Ya hay aquí una carpeta con este nombre" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "Ir al cuadro Renombrar para todos los conflictos de nombres" #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "Omitir todos los elementos con conflictos de nombres" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "Ya existe un archivo con este nombre en el archivador" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Añadir al archivador" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "Sobreescribir o añadir al archivador" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Interrumpir todo" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Esto quiere decir que:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "o:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Crear un enlace" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Esto es lo que quiere enlazar" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Crear el enlace en la carpeta siguiente:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "¿Cómo quiere nombrar al enlace?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Mantener el mismo nombre" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "Usar la siguiente extensión" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "Usar el siguiente nombre" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "Escriba la extensión que quiere añadir al nombre de archivo original" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "Aplicar a todo" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "Omitir" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "Elija un nombre para el elemento nuevo" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "¿Quiere un archivo nuevo o una carpeta nueva?" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "Crear un archivo nuevo" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "Crear una carpeta nueva" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "Añadir un marcador" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "Añadirlo a la carpeta siguiente:" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "Editar un marcador" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "Ruta actual:" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "Esta es la ruta actual" #: dialogs.xrc:2620 msgid "Current Label" msgstr "Etiqueta actual" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "Esta es la etiqueta actual" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "Gestionar los marcadores" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "Crear una carpeta nueva" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "Insertar un separador nuevo" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "Abrir con:" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "Editar la aplicación seleccionada" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "Añadir una carpeta al árbol siguiente" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "Quitar la carpeta seleccionada del árbol siguiente" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "Pulse en una aplicación para seleccionar" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "Marque la casilla para abrir el archivo con esta aplicación dentro de una terminal" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Abrir en la terminal" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Marque la casilla si quiere que esta aplicación abra de forma predeterminada este archivo en el futuro" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Siempre usar la aplicación seleccionada para este tipo de archivo" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Añadir una aplicación" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "Este es el comando a utilzar para iniciar un archivo. Es generalmente el nombre del programa seguido de 1%s, que representa al archivo que será iniciado. Entonces si kedit es tu editor de texto de cabecera, y el comando de inicio es kedit 1%s, al hacer doble clic en el archivo foo.txt se ejecutará ' kedit 'foo.txt' '\nSi esto no funciona, necesitarás leer el manual de la aplicación en cuestión." #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "Todas" #: dialogs.xrc:3582 msgid "Just the First" msgstr "Solo la primera" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "Seleccionar con el ratón (+tecla Mayús)" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "Guardar plantilla" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "Ya hay una plantilla cargada." #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "¿Quiere sobreescribir esto, o guardarlo como una plantilla nueva?" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "Escriba la cadena del filtro" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "Mostrar solamente los archivos, no los directorios" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "Solo mostrar archivos" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "Aplicar a todos los paneles visibles" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "Renombrado múltiple" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "Usar una expresión regular" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "Reemplazar" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "Escriba el texto que quiere sustituir" #: dialogs.xrc:4076 msgid "With" msgstr "Con" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr " coincidencias en el nombre" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "Cómo (también) crear nombres:" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "Solo si es necesario" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "Determina si «juan» cambia a «juan0» o «juanA»" #: dialogs.xrc:4416 msgid "digit" msgstr "dígito" #: dialogs.xrc:4417 msgid "letter" msgstr "letra" #: dialogs.xrc:4431 msgid "Case" msgstr "Mayúscula" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "¿Quiere que «juan» se vuelva «juanA» o «juana»?" #: dialogs.xrc:4439 msgid "Upper" msgstr "Mayúscula" #: dialogs.xrc:4440 msgid "Lower" msgstr "Minúscula" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "Confirmar renombrado" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "¿Está seguro de que quiere hacer estos cambios?" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "Ubicar archivos" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "Escriba la cadena de búsqueda; p. ej., *foo[ab]r" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "Buscar" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "Ruta" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "Raíz ( / )" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "Opciones" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "¡¡AYUDAAA!!" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "Operadores" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "Seleccione uno a la vez." #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "Ignorar uso de mayúsculas" #: moredialogs.xrc:852 msgid "This is a" msgstr "Hay un(a)" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "expresión regular" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "enlace simbólico" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "Archivos que fueron" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "Accedidos" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "Modificados" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "Estado modificado" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "Hace más de" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "Exactamente" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "Menor que" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "Escriba la cantidad de minutos o días" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "Minutos" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "Días" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "más recientemente que el archivo:" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "Tamaño y tipo" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "bytes" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "Bloques de 512 bytes" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "kilobytes" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "Archivos vacíos" #: moredialogs.xrc:1511 msgid "Type" msgstr "Tipo" #: moredialogs.xrc:1531 msgid "File" msgstr "Archivo" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "Enlace simbólico" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "Tubería" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "Propietario y permisos" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "Usuario" #: moredialogs.xrc:1662 msgid "By Name" msgstr "Por nombre" #: moredialogs.xrc:1675 msgid "By ID" msgstr "Por identificador" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "Otros" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "Lectura" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "Escritura" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "Ejecución" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "Especial" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "suid" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "sgid" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "persistente" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "Acciones" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "Orden que ejecutar" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "Orden:" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "Grep" #: moredialogs.xrc:2685 msgid "General Options" msgstr "Opciones generales" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "-w coincidir solo con palabras completas" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "-i Ignorar uso de mayúsculas" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "-x devolver solo coincidencias de líneas completas" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "-v devolver solo líneas que NO coinciden" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "Opciones de la carpeta" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "¿Qué hacer con las carpetas?" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "Opciones de archivos" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "Escriba la cantidad máxima de coincidencias" #: moredialogs.xrc:3071 msgid "matches found" msgstr "coincidencias encontradas" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "¿Qué hacer con los archivos binarios?" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "Opciones de salida" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "Patrón" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "Expresión regular con la que coincidir" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "Ubicación" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "Cerrar automáticamente" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Archivadores" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "Archivos que almacenar en el archivador" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "Añadir otro archivo" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "Buscar otro archivo" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "" #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "Comprimir usando:" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "" #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "bzip2" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "gzip" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "xz" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "lzma" #: moredialogs.xrc:4431 msgid "7z" msgstr "7z" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "lzop" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "no comprimir" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "" #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "" #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "" #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "Examinar" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "" #: moredialogs.xrc:5054 msgid "'compress'" msgstr "" #: moredialogs.xrc:5071 msgid "Faster" msgstr "" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "" #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "" #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Extraer un archivador" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Archivador que extraer" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Carpeta en la que se extraerá" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "" #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Comprobar archivos comprimidos" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Archivos comprimidos que comprobar" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Comprobar un archivador" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Archivador que comprobar" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "¿Quiere extraer un archivador o descomprimir los archivos?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "¿Quiere comprobar un archivador o los archivos comprimidos?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "Propiedades" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Generales" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "Nombre:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Ubicación:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Tipo:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Tamaño:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Accedido el:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "Administrador cambiado:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Modificado el:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "Permisos y propietario" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Usuario:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Grupo:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "" #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "" #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "Montar usando sshfs" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Usuario remoto" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "" #: moredialogs.xrc:10212 msgid " @" msgstr "" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Nombre de equipo" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "Escriba el nombre del servidor, p.ej.: miservidor.com" #: moredialogs.xrc:10248 msgid " :" msgstr "" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Carpeta remota" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "" #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "Punto de montaje local" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "montar en modo de solo lectura" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Otras opciones:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "Montar un disco DVD-RAM" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "Dispositivo que montar" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "" #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Montar una imagen ISO" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Imagen que montar" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Punto de montaje de la imagen" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Ya se\nmontó" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "Montar una exportación NFS" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Elija un servidor" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "" #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "" #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "Usar este usuario y contraseña" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Intentar montar anónimamente" #: moredialogs.xrc:11695 msgid "Username" msgstr "Nombre de usuario" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Escriba el nombre de usuario para este recurso" #: moredialogs.xrc:11720 msgid "Password" msgstr "Contraseña" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Escriba la contraseña correspondiente (si la hay)" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Desmontar una partición" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "Partición que desmontar" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "Ejecutar como superusuario" #: moredialogs.xrc:12025 msgid "The command:" msgstr "La orden:" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "requiere privilegios adicionales" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "Escriba la contraseña del administrador:" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "Recordar esta contraseña por un rato" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "" #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Ignorar archivos binarios" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "" #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "¿Qué hacer con las carpetas?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "" #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "" #: moredialogs.xrc:12769 msgid "name" msgstr "" #: moredialogs.xrc:12778 msgid "path" msgstr "" #: moredialogs.xrc:12787 msgid "regex" msgstr "" ./4pane-6.0/locale/ru/0000777000175000017500000000000013565000366013360 5ustar daviddavid./4pane-6.0/locale/ru/LC_MESSAGES/0000777000175000017500000000000013567054715015156 5ustar daviddavid./4pane-6.0/locale/ru/LC_MESSAGES/ru.po0000644000175000017500000064141713565000400016131 0ustar daviddavid# 4Pane pot file # Copyright (C) 2017 David Hart # This file is distributed under the same license as the 4Pane package. # # Translators: # Aleksandr Tereshchuk, 2019 # Aleksei Korshunov , 2019 # Deid2 , 2019 # Jane K , 2018 msgid "" msgstr "" "Project-Id-Version: 4Pane\n" "Report-Msgid-Bugs-To: david@4Pane.co.uk\n" "POT-Creation-Date: 2017-06-23 12:30+0100\n" "PO-Revision-Date: 2019-04-09 16:17+0000\n" "Last-Translator: Deid2 \n" "Language-Team: Russian (http://www.transifex.com/davidgh/4Pane/language/ru/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: ru\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" # Translators: You should probably not translate 'ctrl' etc # in menu shortcuts, as apparently it stops them working # e.g. in "Cut\tCtrl+X" just translate the "Cut" # # In MyDirs.cpp near line 660 and MyFiles.cpp near 1040: # 'D' is the initial of Directory # 'F' is the initial of File # 'H' is the initial of Hidden # 'R' is the initial of Recursive #: Accelerators.cpp:123 configuredialogs.xrc:7613 msgid "Ctrl" msgstr "Ctrl" #: Accelerators.cpp:124 configuredialogs.xrc:7620 msgid "Alt" msgstr "Alt" #: Accelerators.cpp:125 configuredialogs.xrc:7606 msgid "Shift" msgstr "Shift" #: Accelerators.cpp:213 msgid "C&ut" msgstr "Ð’&ырезать" #: Accelerators.cpp:213 msgid "&Copy" msgstr "&Копировать" #: Accelerators.cpp:213 msgid "Send to &Trash-can" msgstr "Отправить в &корзину" #: Accelerators.cpp:213 msgid "De&lete" msgstr "Уд&алить" #: Accelerators.cpp:213 msgid "Permanently Delete" msgstr "Удалить навÑегда" #: Accelerators.cpp:213 msgid "Rena&me" msgstr "Пере&именовать" #: Accelerators.cpp:213 msgid "&Duplicate" msgstr "&Дублировать" #: Accelerators.cpp:214 msgid "Prop&erties" msgstr "Св&ойÑтва" #: Accelerators.cpp:214 msgid "&Open" msgstr "&Открыть" #: Accelerators.cpp:214 msgid "Open &with..." msgstr "Открыть Ñ &помощью" #: Accelerators.cpp:214 msgid "&Paste" msgstr "&Ð’Ñтавить" #: Accelerators.cpp:214 msgid "Make a &Hard-Link" msgstr "" #: Accelerators.cpp:214 msgid "Make a &Symlink" msgstr "" #: Accelerators.cpp:215 msgid "&Delete Tab" msgstr "&Удалить вкладку" #: Accelerators.cpp:215 msgid "&Rename Tab" msgstr "&Переименовать вкладку" #: Accelerators.cpp:215 msgid "Und&o" msgstr "Ðаз&ад" #: Accelerators.cpp:215 msgid "&Redo" msgstr "&Вперед" #: Accelerators.cpp:215 msgid "Select &All" msgstr "Выбрать &вÑе" #: Accelerators.cpp:215 msgid "&New File or Dir" msgstr "&Ðовый файл или директориÑ" #: Accelerators.cpp:215 msgid "&New Tab" msgstr "&ÐÐ¾Ð²Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ°" #: Accelerators.cpp:215 msgid "&Insert Tab" msgstr "&Ð’Ñтавить вкладку" #: Accelerators.cpp:216 msgid "D&uplicate this Tab" msgstr "Д&ублировать Ñту вкладку" #: Accelerators.cpp:216 msgid "Show even single Tab &Head" msgstr "" #: Accelerators.cpp:216 msgid "Give all Tab Heads equal &Width" msgstr "" #: Accelerators.cpp:216 msgid "&Replicate in Opposite Pane" msgstr "" #: Accelerators.cpp:216 msgid "&Swap the Panes" msgstr "" #: Accelerators.cpp:216 msgid "Split Panes &Vertically" msgstr "Разделить панели &вертикально" #: Accelerators.cpp:217 msgid "Split Panes &Horizontally" msgstr "Разделить панели &горизонтально" #: Accelerators.cpp:217 msgid "&Unsplit Panes" msgstr "&Открепить панели" #: Accelerators.cpp:217 msgid "&Extension" msgstr "&Дополнение" #: Accelerators.cpp:217 msgid "&Size" msgstr "&Размер" #: Accelerators.cpp:217 msgid "&Time" msgstr "&ВремÑ" #: Accelerators.cpp:217 msgid "&Permissions" msgstr "&Права доÑтупа" #: Accelerators.cpp:218 msgid "&Owner" msgstr "&Владелец" #: Accelerators.cpp:218 msgid "&Group" msgstr "&Группа" #: Accelerators.cpp:218 msgid "&Link" msgstr "&СÑылка" #: Accelerators.cpp:218 msgid "Show &all columns" msgstr "Показать &вÑе колонки" #: Accelerators.cpp:218 msgid "&Unshow all columns" msgstr "&Скрыть вÑе колонки" #: Accelerators.cpp:218 msgid "Save &Pane Settings" msgstr "" #: Accelerators.cpp:219 msgid "Save Pane Settings on &Exit" msgstr "" #: Accelerators.cpp:219 msgid "&Save Layout as Template" msgstr "&Сохранить как шаблон" #: Accelerators.cpp:219 msgid "D&elete a Template" msgstr "Удалить шаблон" #: Accelerators.cpp:220 msgid "&Refresh the Display" msgstr "Обновить диÑплей" #: Accelerators.cpp:220 msgid "Launch &Terminal" msgstr "ЗапуÑтить терминал" #: Accelerators.cpp:220 msgid "&Filter Display" msgstr "Фильтр" #: Accelerators.cpp:220 msgid "Show/Hide Hidden dirs and files" msgstr "Показать/Скрыть Ñкрытые директории и файлы" #: Accelerators.cpp:220 msgid "&Add To Bookmarks" msgstr "Добавить в закладки" #: Accelerators.cpp:220 msgid "&Manage Bookmarks" msgstr "Управление закладками" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "&Mount a Partition" msgstr "" #: Accelerators.cpp:222 msgid "&Unmount a Partition" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &ISO image" msgstr "" #: Accelerators.cpp:222 Accelerators.cpp:224 msgid "Mount an &NFS export" msgstr "" #: Accelerators.cpp:222 msgid "Mount a &Samba share" msgstr "" #: Accelerators.cpp:222 msgid "U&nmount a Network mount" msgstr "" #: Accelerators.cpp:224 msgid "&Unmount" msgstr "" #: Accelerators.cpp:224 msgid "Unused" msgstr "Ðе иÑпользуетÑÑ" #: Accelerators.cpp:226 msgid "Show &Terminal Emulator" msgstr "Показать терминал" #: Accelerators.cpp:226 msgid "Show Command-&line" msgstr "Показать командную Ñтроку" #: Accelerators.cpp:226 msgid "&GoTo selected file" msgstr "Перейти к выбранному файлу" #: Accelerators.cpp:226 msgid "Empty the &Trash-can" msgstr "ОчиÑтить корзину" #: Accelerators.cpp:226 msgid "Permanently &delete 'Deleted' files" msgstr "" #: Accelerators.cpp:227 msgid "E&xtract Archive or Compressed File(s)" msgstr "Разархивировать архив или Ñжатый файл(Ñ‹)" #: Accelerators.cpp:227 msgid "Create a &New Archive" msgstr "Создать новый архив" #: Accelerators.cpp:227 msgid "&Add to an Existing Archive" msgstr "" #: Accelerators.cpp:227 msgid "&Test integrity of Archive or Compressed Files" msgstr "" #: Accelerators.cpp:227 msgid "&Compress Files" msgstr "Сжать файлы" #: Accelerators.cpp:228 msgid "&Show Recursive dir sizes" msgstr "" #: Accelerators.cpp:228 msgid "&Retain relative Symlink Targets" msgstr "" #: Accelerators.cpp:228 msgid "&Configure 4Pane" msgstr "ÐаÑтроить 4Pane" #: Accelerators.cpp:228 msgid "E&xit" msgstr "Выйти" #: Accelerators.cpp:228 msgid "Context-sensitive Help" msgstr "КонтекÑтно-завиÑÐ¸Ð¼Ð°Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒ" #: Accelerators.cpp:228 msgid "&Help Contents" msgstr "" #: Accelerators.cpp:228 msgid "&FAQ" msgstr "ЧÐВО" #: Accelerators.cpp:228 msgid "&About 4Pane" msgstr "О 4Pane" #: Accelerators.cpp:228 Accelerators.cpp:602 Configure.cpp:2736 msgid "Configure Shortcuts" msgstr "ÐаÑтройка Ñрлыков" #: Accelerators.cpp:229 msgid "Go to Symlink Target" msgstr "Перейти по ÑÑылке" #: Accelerators.cpp:229 msgid "Go to Symlink Ultimate Target" msgstr "Перейти к поÑледней цели ÑÑылки" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "Edit" msgstr "Редактировать" #: Accelerators.cpp:229 Accelerators.cpp:697 msgid "New Separator" msgstr "Ðовый разделитель" #: Accelerators.cpp:229 Tools.cpp:2919 msgid "Repeat Previous Program" msgstr "Повторить предыдущую программу" #: Accelerators.cpp:229 msgid "Navigate to opposite pane" msgstr "Перейти на противоположную панель" #: Accelerators.cpp:229 msgid "Navigate to adjacent pane" msgstr "Перейти к ÑоÑедней панели" #: Accelerators.cpp:230 msgid "Switch to the Panes" msgstr "ПереключитьÑÑ Ð½Ð° панели" #: Accelerators.cpp:230 msgid "Switch to the Terminal Emulator" msgstr "Переключить на ÑмулÑтор терминала" #: Accelerators.cpp:230 msgid "Switch to the Command-line" msgstr "Переключить на командную Ñтроку" #: Accelerators.cpp:230 msgid "Switch to the toolbar Textcontrol" msgstr "Переключить на панель ввода Ñтроки" #: Accelerators.cpp:230 msgid "Switch to the previous window" msgstr "ПереключитьÑÑ Ð½Ð° предыдущее окно" #: Accelerators.cpp:231 msgid "Go to Previous Tab" msgstr "Перейти к предыдущей таблице" #: Accelerators.cpp:231 msgid "Go to Next Tab" msgstr "Перейти к Ñледующей таблице" #: Accelerators.cpp:231 msgid "Paste as Director&y Template" msgstr "Ð’Ñтавить как шаблон папки" #: Accelerators.cpp:231 msgid "&First dot" msgstr "" #: Accelerators.cpp:231 msgid "&Penultimate dot" msgstr "" #: Accelerators.cpp:231 msgid "&Last dot" msgstr "" #: Accelerators.cpp:232 msgid "Mount over Ssh using ssh&fs" msgstr "" #: Accelerators.cpp:232 msgid "Show &Previews" msgstr "ПредпроÑмотр" #: Accelerators.cpp:232 msgid "C&ancel Paste" msgstr "Отменить вÑтавку" #: Accelerators.cpp:232 msgid "Decimal-aware filename sort" msgstr "Сортировка файлов по именам Ñ ÑƒÑ‡Ñ‘Ñ‚Ð¾Ð¼ деÑÑтичных чиÑел" #: Accelerators.cpp:267 msgid "Cuts the current selection" msgstr "Вырезает текущий выбор" #: Accelerators.cpp:267 msgid "Copies the current selection" msgstr "Копирует текущий выбор" #: Accelerators.cpp:267 msgid "Send to the Trashcan" msgstr "Отправить в муÑорную корзину" #: Accelerators.cpp:267 msgid "Kill, but may be resuscitatable" msgstr "Убиваем, но может быть реанимирован" #: Accelerators.cpp:267 msgid "Delete with extreme prejudice" msgstr "Удалить Ñ ÐºÑ€Ð°Ð¹Ð½Ð¸Ð¼ предубеждением" #: Accelerators.cpp:268 msgid "Paste the contents of the Clipboard" msgstr "Ð’Ñтавить Ñодержимое буфера" #: Accelerators.cpp:268 msgid "Hardlink the contents of the Clipboard to here" msgstr "ЖёÑткую ÑÑылку Ñодержимого буфера Ñюда" #: Accelerators.cpp:268 msgid "Softlink the contents of the Clipboard to here" msgstr "МÑÐ³ÐºÐ°Ñ ÑÑылка Ñ ÐºÐ¾Ð½Ñ‚ÐµÐ½Ñ‚Ð° в буфере Ñюда" #: Accelerators.cpp:269 msgid "Delete the currently-selected Tab" msgstr "Удалить выбранную вкладку" #: Accelerators.cpp:269 msgid "Rename the currently-selected Tab" msgstr "Переименовать выбранную вкладку" #: Accelerators.cpp:269 msgid "Append a new Tab" msgstr "Добавить новую вкладку" #: Accelerators.cpp:269 msgid "Insert a new Tab after the currently selected one" msgstr "Ð’Ñтавить новую вкладку поÑле выбранной" #: Accelerators.cpp:270 msgid "Hide the head of a solitary tab" msgstr "Скрыть заголовок одиночной вкладки" #: Accelerators.cpp:270 msgid "Copy this side's path to the opposite pane" msgstr "Скопировать путь Ñ Ñтой Ñтороны на противоположную панель" #: Accelerators.cpp:270 msgid "Swap one side's path with the other" msgstr "ПоменÑть путь Ñ Ñтой Ñтороны Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼" #: Accelerators.cpp:272 msgid "Save the layout of panes within each tab" msgstr "Сохранить раÑположение панелей на каждой вкладке" #: Accelerators.cpp:273 msgid "Always save the layout of panes on exit" msgstr "Ð’Ñегда ÑохранÑть раÑположение панелей при выходе" #: Accelerators.cpp:273 msgid "Save these tabs as a reloadable template" msgstr "Загрузить Ñту вкладку как загружаемый шаблон" #: Accelerators.cpp:274 msgid "Add the currently-selected item to your bookmarks" msgstr "Добавить выбранный пункт в ваши закладки" #: Accelerators.cpp:274 msgid "Rearrange, Rename or Delete bookmarks" msgstr "ПереÑтроить, переименовать или удалить закладки" #: Accelerators.cpp:276 msgid "Locate matching files. Much faster than 'find'" msgstr "ПроÑмотрите подобранные файлы. Подобрать быÑтрее чем 'иÑкать'" #: Accelerators.cpp:276 msgid "Find matching file(s)" msgstr "Ðайдите подходÑщие файлы" #: Accelerators.cpp:276 msgid "Search Within Files" msgstr "ПоиÑк в Файлах" #: Accelerators.cpp:276 msgid "Show/Hide the Terminal Emulator" msgstr "Показать/Скрыть ЭмулÑтор Терминала" #: Accelerators.cpp:276 msgid "Show/Hide the Command-line" msgstr "Показать/Скрыть Командную Ñтроку" #: Accelerators.cpp:276 msgid "Empty 4Pane's in-house trash-can" msgstr "ОÑвободить домашнюю муÑорную корзину 4Pane" #: Accelerators.cpp:276 msgid "Delete 4Pane's 'Deleted' folder" msgstr "Удалить папку 'удалённые' в 4Pane" #: Accelerators.cpp:278 msgid "Whether to calculate dir sizes recursively in fileviews" msgstr "Ðужно ли рекурÑивно поÑчитать размеры Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð² образах файлов" #: Accelerators.cpp:278 msgid "On moving a relative symlink, keep its target the same" msgstr "При перемещении отноÑительной ÑÑылки Ñохраните её цель" #: Accelerators.cpp:278 msgid "Close this program" msgstr "Закрыть Ñту программу" #: Accelerators.cpp:281 msgid "Paste only the directory structure from the clipboard" msgstr "Ð’Ñтавить только Ñтруктуру папки Ñ Ð±ÑƒÑ„ÐµÑ€Ð°" #: Accelerators.cpp:281 msgid "An ext starts at first . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last or last-but-one . in the filename" msgstr "" #: Accelerators.cpp:281 msgid "An ext starts at last . in the filename" msgstr "" #: Accelerators.cpp:282 msgid "Show previews of image and text files" msgstr "ПредпроÑмотр картинки и текÑтовых файлов" #: Accelerators.cpp:282 msgid "Cancel the current process" msgstr "Завершить текущий процеÑÑ" #: Accelerators.cpp:282 msgid "Should files like foo1, foo2 be in Decimal order" msgstr "" #: Accelerators.cpp:287 msgid "" "\n" "The arrays in ImplementDefaultShortcuts() aren't of equal size!" msgstr "" #: Accelerators.cpp:303 msgid "Toggle Fulltree mode" msgstr "" #: Accelerators.cpp:317 Archive.cpp:1400 Archive.cpp:1423 Archive.cpp:1450 #: Archive.cpp:1471 Bookmarks.cpp:432 Configure.cpp:1846 Devices.cpp:199 #: Filetypes.cpp:1067 MyFrame.cpp:1158 MyFrame.cpp:2493 MyFrame.cpp:2564 #: MyNotebook.cpp:140 MyNotebook.cpp:157 Tools.cpp:333 Tools.cpp:401 #: Tools.cpp:2249 Tools.cpp:2272 Tools.cpp:2936 msgid "Couldn't load configuration!?" msgstr "Ðе получаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ наÑтройки?!" #: Accelerators.cpp:502 msgid "&File" msgstr "Файл" #: Accelerators.cpp:502 msgid "&Edit" msgstr "Редактировать" #: Accelerators.cpp:502 msgid "&View" msgstr "ПроÑмотр" #: Accelerators.cpp:502 msgid "&Tabs" msgstr "Табы" #: Accelerators.cpp:502 msgid "&Bookmarks" msgstr "Избранное" #: Accelerators.cpp:502 msgid "&Archive" msgstr "Ðрхив" #: Accelerators.cpp:502 msgid "&Mount" msgstr "Монтировать" #: Accelerators.cpp:502 msgid "Too&ls" msgstr "ИнÑтрументы" #: Accelerators.cpp:502 msgid "&Options" msgstr "Опции" #: Accelerators.cpp:502 msgid "&Help" msgstr "Помощь" #: Accelerators.cpp:506 msgid "&Columns to Display" msgstr "" #: Accelerators.cpp:506 msgid "&Load a Tab Template" msgstr "Загрузить шаблон вкладки" #: Accelerators.cpp:673 msgid "Action" msgstr "ДейÑтвие" #: Accelerators.cpp:674 msgid "Shortcut" msgstr "ГорÑÑ‡Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°" #: Accelerators.cpp:675 msgid "Default" msgstr "По умолчанию" #: Accelerators.cpp:694 msgid "Extension" msgstr "Дополнение" #: Accelerators.cpp:694 msgid "(Un)Show fileview Extension column" msgstr "" #: Accelerators.cpp:694 msgid "Size" msgstr "Размер" #: Accelerators.cpp:694 msgid "(Un)Show fileview Size column" msgstr "" #: Accelerators.cpp:694 moredialogs.xrc:923 msgid "Time" msgstr "ВремÑ" #: Accelerators.cpp:694 msgid "(Un)Show fileview Time column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1831 msgid "Permissions" msgstr "Права доÑтупа" #: Accelerators.cpp:695 msgid "(Un)Show fileview Permissions column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1613 msgid "Owner" msgstr "Владелец" #: Accelerators.cpp:695 msgid "(Un)Show fileview Owner column" msgstr "" #: Accelerators.cpp:695 moredialogs.xrc:1636 moredialogs.xrc:1859 #: moredialogs.xrc:6551 moredialogs.xrc:7724 moredialogs.xrc:8913 msgid "Group" msgstr "Группа" #: Accelerators.cpp:695 msgid "(Un)Show fileview Group column" msgstr "" #: Accelerators.cpp:696 Redo.h:173 msgid "Link" msgstr "СÑылка" #: Accelerators.cpp:696 msgid "(Un)Show fileview Link column" msgstr "" #: Accelerators.cpp:696 msgid "Show all columns" msgstr "" #: Accelerators.cpp:696 msgid "Fileview: Show all columns" msgstr "ПредпроÑмотр: показать вÑе колонки" #: Accelerators.cpp:696 msgid "Unshow all columns" msgstr "Скрыть вÑе колонки" #: Accelerators.cpp:696 msgid "Fileview: Unshow all columns" msgstr "ПредпроÑмотр: Ñкрыть вÑе колонки" #: Accelerators.cpp:697 msgid "Bookmarks: Edit" msgstr "Избранное: редактировать" #: Accelerators.cpp:697 msgid "Bookmarks: New Separator" msgstr "Избранное: новый разделитель" #: Accelerators.cpp:697 msgid "First dot" msgstr "" #: Accelerators.cpp:697 msgid "Extensions start at the First dot" msgstr "" #: Accelerators.cpp:698 msgid "Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Penultimate dot" msgstr "" #: Accelerators.cpp:698 msgid "Last dot" msgstr "" #: Accelerators.cpp:698 msgid "Extensions start at the Last dot" msgstr "" #: Accelerators.cpp:873 msgid "Lose changes?" msgstr "" #: Accelerators.cpp:873 Bookmarks.cpp:637 Bookmarks.cpp:1034 #: Bookmarks.cpp:1105 Configure.cpp:2389 Configure.cpp:2443 Configure.cpp:2506 #: Configure.cpp:2766 Configure.cpp:3562 Configure.cpp:4812 Devices.cpp:3233 #: Filetypes.cpp:1171 Filetypes.cpp:1213 Filetypes.cpp:1418 Filetypes.cpp:1563 #: Filetypes.cpp:1841 Filetypes.cpp:2135 Tools.cpp:1187 Tools.cpp:1697 msgid "Are you sure?" msgstr "Ð’Ñ‹ уверены?" #: Accelerators.cpp:938 Accelerators.cpp:939 msgid "None" msgstr "" #: Accelerators.cpp:939 msgid "Same" msgstr "Такой же" #: Accelerators.cpp:958 msgid "Type in the new Label to show for this menu item" msgstr "" #: Accelerators.cpp:958 msgid "Change label" msgstr "" #: Accelerators.cpp:965 msgid "" "Type in the Help string to show for this menu item\n" "Cancel will Clear the string" msgstr "" #: Accelerators.cpp:965 msgid "Change Help String" msgstr "" #: Archive.cpp:119 msgid "" "I can't seem to find this file or directory.\n" "Try using the Browse button." msgstr "" #: Archive.cpp:119 ArchiveStream.cpp:458 ArchiveStream.cpp:725 #: ArchiveStream.cpp:730 Bookmarks.cpp:670 Configure.cpp:2355 #: Configure.cpp:2383 MyDirs.cpp:1213 MyDirs.cpp:1323 MyDirs.cpp:1392 #: MyDirs.cpp:1470 MyFiles.cpp:635 MyFiles.cpp:772 MyFiles.cpp:854 #: MyFiles.cpp:866 MyFiles.cpp:879 MyFiles.cpp:893 MyFiles.cpp:905 #: MyFiles.cpp:931 msgid "Oops!" msgstr "УпÑ!" #: Archive.cpp:132 msgid "Choose file(s) and/or directories" msgstr "Выберите файл(Ñ‹) и/или папки" #: Archive.cpp:258 msgid "Choose the Directory in which to store the Archive" msgstr "" #: Archive.cpp:263 msgid "Browse for the Archive to which to Append" msgstr "" #: Archive.cpp:318 msgid "" "The directory in which you want to create the archive doesn't seem to exist.\n" "Use the current directory?" msgstr "ДиректориÑ, в которой вы хотите Ñоздать архив, кажетÑÑ Ð½Ðµ ÑущеÑтвует. \nИÑпользовать текущую директорию?" #: Archive.cpp:353 msgid "" "The archive to which you want to append doesn't seem to exist.\n" "Try again?" msgstr "Ðрхив, который вы хотите добавить, не ÑущеÑтвует.\nПопробовать еще раз?" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:1136 Archive.cpp:1142 msgid "Can't find a 7z binary on your system" msgstr "7z в вашей ÑиÑтеме не найден" #: Archive.cpp:394 Archive.cpp:404 Archive.cpp:407 Archive.cpp:996 #: Archive.cpp:1002 Archive.cpp:1005 Archive.cpp:1136 Archive.cpp:1142 #: Archive.cpp:1152 Bookmarks.cpp:859 Configure.cpp:4270 MyFiles.cpp:700 msgid "Oops" msgstr "УпÑ!" #: Archive.cpp:407 msgid "Can't find a valid archive to which to append" msgstr "" #: Archive.cpp:706 Archive.cpp:1061 msgid "" "No relevant compressed files were selected.\n" "Try again?" msgstr "" #: Archive.cpp:821 msgid "Browse for the Archive to Verify" msgstr "ПоиÑк архива Ð´Ð»Ñ Ð²ÐµÑ€Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ð¸" #: Archive.cpp:837 msgid "Choose the Directory in which to Extract the archive" msgstr "Выберите директорию в которую хотите разархивировать" #: Archive.cpp:926 msgid "" "Failed to create the desired destination directory.\n" "Try again?" msgstr "" #: Archive.cpp:996 Archive.cpp:1152 msgid "Can't find rpm2cpio on your system..." msgstr "rpm2cpio в вашей ÑиÑтеме не найден" #: Archive.cpp:1002 Archive.cpp:1005 msgid "Can't find ar on your system..." msgstr "ar в вашей ÑиÑтеме не найден" #: Archive.cpp:1014 msgid "" "Can't find a valid archive to extract.\n" "Try again?" msgstr "" #: Archive.cpp:1164 msgid "" "Can't find a valid archive to verify.\n" "Try again?" msgstr "" #: Archive.cpp:1228 msgid "File(s) compressed" msgstr "Файл(Ñ‹) Ñжаты" #: Archive.cpp:1228 msgid "Compression failed" msgstr "Ошибка ÑжатиÑ" #: Archive.cpp:1232 msgid "File(s) decompressed" msgstr "Файл(Ñ‹) раÑпакованы" #: Archive.cpp:1232 msgid "Decompression failed" msgstr "Ошибка раÑпаковки" #: Archive.cpp:1236 msgid "File(s) verified" msgstr "Файл(Ñ‹) проверенны" #: Archive.cpp:1236 Archive.cpp:1256 Archive.cpp:1298 msgid "Verification failed" msgstr "Ошибка проверки" #: Archive.cpp:1242 msgid "Archive created" msgstr "Ðрхив Ñоздан" #: Archive.cpp:1242 msgid "Archive creation failed" msgstr "Ошибка при Ñоздании архива" #: Archive.cpp:1247 msgid "File(s) added to Archive" msgstr "Файл(Ñ‹) добавлен(Ñ‹) в архив" #: Archive.cpp:1247 msgid "Archive addition failed" msgstr "Ошибка Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð°" #: Archive.cpp:1252 msgid "Archive extracted" msgstr "Ðрхив извлечен" #: Archive.cpp:1252 msgid "Extraction failed" msgstr "Ошибка извлечениÑ" #: Archive.cpp:1256 msgid "Archive verified" msgstr "Ðрхив проверен" #: ArchiveStream.cpp:440 msgid "To which directory would you like these files extracted?" msgstr "Ð’ какую директорию Ð’Ñ‹ бы хотели извлечь Ñти файлы?" #: ArchiveStream.cpp:441 msgid "To which directory would you like this extracted?" msgstr "Ð’ какую директорию Ð’Ñ‹ хотите разархивировать?" #: ArchiveStream.cpp:442 msgid "Extracting from archive" msgstr "Извлечение из архива" #: ArchiveStream.cpp:449 msgid "" "I'm afraid you don't have permission to Create in this directory\n" " Try again?" msgstr "БоюÑÑŒ, у Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð¡Ð¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð² Ñтой директории.\nПопробовать еще раз?" #: ArchiveStream.cpp:449 ArchiveStream.cpp:612 MyDirs.cpp:707 MyDirs.cpp:869 #: MyDirs.cpp:1018 MyDirs.cpp:1362 MyDirs.cpp:1870 MyFiles.cpp:559 #: MyFiles.cpp:652 MyFiles.cpp:760 msgid "No Entry!" msgstr "" #: ArchiveStream.cpp:457 #, c-format msgid "" "Sorry, %s already exists\n" " Try again?" msgstr "Извините, %s уже Ñодержит \nПопробовать еще раз?" #: ArchiveStream.cpp:612 MyDirs.cpp:869 MyDirs.cpp:1870 msgid "I'm afraid you don't have Permission to write to this Directory" msgstr "БоюÑÑŒ, у Ð²Ð°Ñ Ð½ÐµÑ‚ прав Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи в Ñтой директории" #: ArchiveStream.cpp:661 MyDirs.cpp:1876 msgid "" "I'm afraid you don't have permission to access files from this Directory" msgstr "" #: ArchiveStream.cpp:661 Configure.cpp:188 MyDirs.cpp:881 MyDirs.cpp:886 #: MyDirs.cpp:1876 msgid "No Exit!" msgstr "" #: ArchiveStream.cpp:721 msgid "" "For some reason, trying to create a dir to receive the backup failed. " "Sorry!" msgstr "" #: ArchiveStream.cpp:725 msgid "Sorry, backing up failed" msgstr "Извините, воÑÑтановление провалено" #: ArchiveStream.cpp:730 msgid "Sorry, removing items failed" msgstr "Извините, удаление объектов провалено" #: ArchiveStream.cpp:764 ArchiveStream.cpp:900 MyFrame.cpp:745 Redo.h:150 #: Redo.h:316 msgid "Paste" msgstr "Ð’Ñтавить" #: ArchiveStream.cpp:894 ArchiveStream.cpp:900 Redo.h:124 Redo.h:352 #: Redo.h:373 msgid "Move" msgstr "ПеремеÑтить" #: ArchiveStream.cpp:1328 msgid "Sorry, you need to be root to extract character or block devices" msgstr "" #: ArchiveStream.cpp:1525 msgid "I'm afraid your zlib is too old to be able to do this :(" msgstr "" #: ArchiveStream.cpp:1679 ArchiveStream.cpp:1690 ArchiveStream.cpp:1701 #: ArchiveStream.cpp:1712 ArchiveStream.cpp:1727 msgid "For some reason, the archive failed to open :(" msgstr "По каким то причинам, ошибка при открытии архива :(" #: ArchiveStream.cpp:1719 msgid "I can't peek inside that sort of archive unless you install liblzma." msgstr "" #: ArchiveStream.cpp:1719 msgid "Missing library" msgstr "" #: ArchiveStream.cpp:1733 MyGenericDirCtrl.cpp:1760 msgid "" "This file is compressed, but it's not an archive so you can't peek inside." msgstr "" #: ArchiveStream.cpp:1733 ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1760 #: MyGenericDirCtrl.cpp:1761 msgid "Sorry" msgstr "ПроÑтите" #: ArchiveStream.cpp:1734 MyGenericDirCtrl.cpp:1761 msgid "I'm afraid I can't peek inside that sort of archive." msgstr "" #: Bookmarks.cpp:113 msgid "Bookmark Folders" msgstr "" #: Bookmarks.cpp:143 Bookmarks.cpp:231 Bookmarks.cpp:269 Bookmarks.cpp:722 #: Bookmarks.cpp:927 Bookmarks.cpp:932 Bookmarks.cpp:1011 msgid "Separator" msgstr "Разделитель" #: Bookmarks.cpp:200 Bookmarks.cpp:942 msgid "Duplicated" msgstr "" #: Bookmarks.cpp:204 msgid "Moved" msgstr "Перемещено" #: Bookmarks.cpp:215 msgid "Copied" msgstr "Скопировано" #: Bookmarks.cpp:233 msgid "Rename Folder" msgstr "Переименовать папку" #: Bookmarks.cpp:234 msgid "Edit Bookmark" msgstr "Редактировать закладку" #: Bookmarks.cpp:236 msgid "NewSeparator" msgstr "Ðовый разделитель" #: Bookmarks.cpp:237 msgid "NewFolder" msgstr "ÐÐ¾Ð²Ð°Ñ Ð¿Ð°Ð¿ÐºÐ°" #: Bookmarks.cpp:335 Bookmarks.cpp:440 msgid "Couldn't load Menubar!?" msgstr "Ðе получаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ Меню?!" #: Bookmarks.cpp:343 Bookmarks.cpp:444 msgid "Couldn't find menu!?" msgstr "Ðе получаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ меню?!" #: Bookmarks.cpp:360 msgid "This Section doesn't exist in ini file!?" msgstr "" #: Bookmarks.cpp:367 Bookmarks.cpp:481 Bookmarks.cpp:494 msgid "Bookmarks" msgstr "Закладки" #: Bookmarks.cpp:514 msgid "Sorry, couldn't locate that folder" msgstr "" #: Bookmarks.cpp:525 msgid "Bookmark added" msgstr "Закладка добавлена" #: Bookmarks.cpp:637 Filetypes.cpp:1841 msgid "Lose all changes?" msgstr "" #: Bookmarks.cpp:660 Filetypes.cpp:1161 msgid "What Label would you like for the new Folder?" msgstr "" #: Bookmarks.cpp:669 Bookmarks.cpp:1033 Filetypes.cpp:1170 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Try again?" msgstr "" #: Bookmarks.cpp:705 msgid "Folder added" msgstr "Папка добавлена" #: Bookmarks.cpp:743 msgid "Separator added" msgstr "Разделитель добавлен" #: Bookmarks.cpp:841 Bookmarks.cpp:858 #, c-format msgid "" "Sorry, there is already a folder called %s\n" " Change the name?" msgstr "" #: Bookmarks.cpp:842 msgid "Oops?" msgstr "УпÑ?" #: Bookmarks.cpp:847 msgid "What would you like to call the Folder?" msgstr "" #: Bookmarks.cpp:847 msgid "What Label would you like for the Folder?" msgstr "" #: Bookmarks.cpp:943 msgid "Pasted" msgstr "Ð’Ñтавлено" #: Bookmarks.cpp:1021 msgid "Alter the Folder Label below" msgstr "" #: Bookmarks.cpp:1096 msgid "Sorry, you're not allowed to move the main folder" msgstr "" #: Bookmarks.cpp:1097 msgid "Sorry, you're not allowed to delete the main folder" msgstr "" #: Bookmarks.cpp:1098 msgid "Tsk tsk!" msgstr "" #: Bookmarks.cpp:1104 Filetypes.cpp:1211 #, c-format msgid "Delete folder %s and all its contents?" msgstr "Удалить папку %s и вÑе ее Ñодержимое?" #: Bookmarks.cpp:1115 msgid "Folder deleted" msgstr "Папка удалена" #: Bookmarks.cpp:1126 msgid "Bookmark deleted" msgstr "Закладка удалена" #: Configure.cpp:52 Configure.cpp:54 msgid "Welcome to 4Pane." msgstr "Добро пожаловать в 4Pane" #: Configure.cpp:61 msgid "" "4Pane is a File Manager that aims to be fast and full-featured without " "bloat." msgstr "" #: Configure.cpp:64 msgid "Please click Next to configure 4Pane for your system." msgstr "ПожалуйÑта, нажмите \" Далее \" Ð´Ð»Ñ Ð½Ð°Ñтройки 4Pane под вашу ÑиÑтему" #: Configure.cpp:67 msgid "" "Or if there's already a configuration file that you'd like to copy, click" msgstr "" #: Configure.cpp:69 msgid "Here" msgstr "" #: Configure.cpp:88 msgid "Resources successfully located. Please press Next" msgstr "" #: Configure.cpp:108 msgid "" "I've had a look around your system, and created a configuration that should " "work." msgstr "" #: Configure.cpp:111 msgid "" "You can do much fuller configuration at any time from Options > Configure " "4Pane." msgstr "" #: Configure.cpp:120 msgid "Put a 4Pane shortcut on the desktop" msgstr "" #: Configure.cpp:158 msgid "&Next >" msgstr "" #: Configure.cpp:178 msgid "Browse for the Configuration file to copy" msgstr "" #: Configure.cpp:187 msgid "" "I'm afraid you don't have permission to Copy this file.\n" "Do you want to try again?" msgstr "" #: Configure.cpp:197 msgid "" "This file doesn't seem to be a valid 4Pane configuration file.\n" "Are you absolutely sure you want to use it?" msgstr "" #: Configure.cpp:198 msgid "Fake config file!" msgstr "" #: Configure.cpp:343 msgid "" "Can't find 4Pane's resource files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:344 msgid "Eek! Can't find resources." msgstr "" #: Configure.cpp:352 msgid "Browse for ..../4Pane/rc/" msgstr "" #: Configure.cpp:360 msgid "" "Can't find 4Pane's bitmaps. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:361 msgid "Eek! Can't find bitmaps." msgstr "" #: Configure.cpp:369 msgid "Browse for ..../4Pane/bitmaps/" msgstr "" #: Configure.cpp:377 msgid "" "Can't find 4Pane's Help files. There must be something wrong with your installation. :(\n" "Do you want to try to locate them manually?" msgstr "" #: Configure.cpp:378 msgid "Eek! Can't find Help files." msgstr "" #: Configure.cpp:386 msgid "Browse for ..../4Pane/doc/" msgstr "" #: Configure.cpp:1109 msgid "&Run a Program" msgstr "" #: Configure.cpp:1136 msgid "Install .deb(s) as root:" msgstr "" #: Configure.cpp:1140 msgid "Remove the named.deb as root:" msgstr "" #: Configure.cpp:1144 msgid "List files provided by a particular .deb" msgstr "" #: Configure.cpp:1149 msgid "List installed .debs matching the name:" msgstr "" #: Configure.cpp:1154 msgid "Show if the named .deb is installed:" msgstr "" #: Configure.cpp:1159 msgid "Show which package installed the selected file" msgstr "" #: Configure.cpp:1168 msgid "Install rpm(s) as root:" msgstr "" #: Configure.cpp:1172 msgid "Remove an rpm as root:" msgstr "" #: Configure.cpp:1176 msgid "Query the selected rpm" msgstr "" #: Configure.cpp:1181 msgid "List files provided by the selected rpm" msgstr "" #: Configure.cpp:1186 msgid "Query the named rpm" msgstr "" #: Configure.cpp:1191 msgid "List files provided by the named rpm" msgstr "" #: Configure.cpp:1200 msgid "Create a directory as root:" msgstr "" #: Configure.cpp:1631 msgid "Go to Home directory" msgstr "Перейти в директорию \"Home\"" #: Configure.cpp:1642 msgid "Go to Documents directory" msgstr "" #: Configure.cpp:1698 msgid "" "If you are seeing this message (and you shouldn't!), it's because the configuration file couldn't be saved.\n" "The least-unlikely reasons would be incorrect permissions or a Read Only partition." msgstr "" #: Configure.cpp:2038 moredialogs.xrc:292 moredialogs.xrc:3886 #: moredialogs.xrc:12331 moredialogs.xrc:12639 msgid "Shortcuts" msgstr "" #: Configure.cpp:2041 msgid "Tools" msgstr "ИнÑтрументы" #: Configure.cpp:2043 msgid "Add a tool" msgstr "Добавить инÑтрумент" #: Configure.cpp:2045 msgid "Edit a tool" msgstr "Редактировать инÑтрумент" #: Configure.cpp:2047 msgid "Delete a tool" msgstr "Удалить инÑтрумент" #: Configure.cpp:2050 Configure.cpp:2737 msgid "Devices" msgstr "УÑтройÑтва" #: Configure.cpp:2052 msgid "Automount" msgstr "ÐвтоматичеÑкое монтирование " #: Configure.cpp:2054 msgid "Mounting" msgstr "Монтирование" #: Configure.cpp:2056 msgid "Usb" msgstr "" #: Configure.cpp:2058 msgid "Removable" msgstr "" #: Configure.cpp:2060 msgid "Fixed" msgstr "" #: Configure.cpp:2062 msgid "Advanced" msgstr "" #: Configure.cpp:2064 msgid "Advanced fixed" msgstr "" #: Configure.cpp:2066 msgid "Advanced removable" msgstr "" #: Configure.cpp:2068 msgid "Advanced lvm" msgstr "" #: Configure.cpp:2072 msgid "The Display" msgstr "" #: Configure.cpp:2074 msgid "Trees" msgstr "" #: Configure.cpp:2076 msgid "Tree font" msgstr "" #: Configure.cpp:2078 Configure.cpp:2741 msgid "Misc" msgstr "" #: Configure.cpp:2081 Configure.cpp:2740 msgid "Terminals" msgstr "" #: Configure.cpp:2083 msgid "Real" msgstr "" #: Configure.cpp:2085 msgid "Emulator" msgstr "ЭмулÑтор" #: Configure.cpp:2088 msgid "The Network" msgstr "" #: Configure.cpp:2091 msgid "Miscellaneous" msgstr "" #: Configure.cpp:2093 msgid "Numbers" msgstr "" #: Configure.cpp:2095 msgid "Times" msgstr "" #: Configure.cpp:2097 msgid "Superuser" msgstr "" #: Configure.cpp:2099 msgid "Other" msgstr "" #: Configure.cpp:2308 msgid " Stop gtk2 grabbing the F10 key" msgstr "" #: Configure.cpp:2309 msgid "" "If this is unticked, gtk2 grabs the F10 key-press, so you can't use it as a " "shortcut (it's the default one for \"New file or dir\")." msgstr "" #: Configure.cpp:2341 msgid "" "Sorry, there's no room for another submenu here\n" "I suggest you try putting it elsewhere" msgstr "" #: Configure.cpp:2345 msgid "Enter the name of the new submenu to add to " msgstr "" #: Configure.cpp:2355 msgid "" "Sorry, a menu with this name already exists\n" " Try again?" msgstr "" #: Configure.cpp:2383 msgid "Sorry, you're not allowed to delete the root menu" msgstr "" #: Configure.cpp:2388 #, c-format msgid "Delete menu \"%s\" and all its contents?" msgstr "" #: Configure.cpp:2441 #, c-format msgid "" "I can't find an executable command \"%s\".\n" "Continue anyway?" msgstr "" #: Configure.cpp:2442 #, c-format msgid "" "I can't find an executable command \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Configure.cpp:2471 msgid " Click when Finished " msgstr "" #: Configure.cpp:2477 msgid " Edit this Command " msgstr "" #: Configure.cpp:2505 #, c-format msgid "Delete command \"%s\"?" msgstr "Удалить команду \"%s\"?" #: Configure.cpp:2521 Filetypes.cpp:1745 msgid "Choose a file" msgstr "" #: Configure.cpp:2736 msgid "User-defined tools" msgstr "" #: Configure.cpp:2737 msgid "Devices Automounting" msgstr "" #: Configure.cpp:2737 msgid "Devices Mount" msgstr "" #: Configure.cpp:2737 msgid "Devices Usb" msgstr "" #: Configure.cpp:2737 msgid "Removable Devices" msgstr "" #: Configure.cpp:2737 msgid "Fixed Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Fixed" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices Removable" msgstr "" #: Configure.cpp:2738 msgid "Advanced Devices LVM" msgstr "" #: Configure.cpp:2739 msgid "Display" msgstr "" #: Configure.cpp:2739 msgid "Display Trees" msgstr "" #: Configure.cpp:2739 msgid "Display Tree Font" msgstr "" #: Configure.cpp:2739 msgid "Display Misc" msgstr "" #: Configure.cpp:2740 msgid "Real Terminals" msgstr "" #: Configure.cpp:2740 msgid "Terminal Emulator" msgstr "" #: Configure.cpp:2740 msgid "Networks" msgstr "" #: Configure.cpp:2741 msgid "Misc Undo" msgstr "" #: Configure.cpp:2741 msgid "Misc Times" msgstr "" #: Configure.cpp:2741 msgid "Misc Superuser" msgstr "" #: Configure.cpp:2741 msgid "Misc Other" msgstr "" #: Configure.cpp:2765 #, c-format msgid "" "There are unsaved changes on the \"%s\" page.\n" " Really close?" msgstr "" #: Configure.cpp:2922 msgid "Selected tree Font" msgstr "" #: Configure.cpp:2924 msgid "Default tree Font" msgstr "" #: Configure.cpp:3501 msgid " (Ignored)" msgstr "" #: Configure.cpp:3562 msgid "Delete this Device?" msgstr "" #: Configure.cpp:3827 msgid "Selected terminal emulator Font" msgstr "" #: Configure.cpp:3829 msgid "Default Font" msgstr "" #: Configure.cpp:4036 msgid "Delete " msgstr "Удалить" #: Configure.cpp:4036 MyDirs.cpp:1202 Redo.cpp:1365 Redo.cpp:1376 msgid "Are you SURE?" msgstr "Ð’Ñ‹ УВЕРЕÐЫ?" #: Configure.cpp:4047 msgid "That doesn't seem to be a valid ip address" msgstr "" #: Configure.cpp:4050 msgid "That server is already on the list" msgstr "" #: Configure.cpp:4217 msgid "Please enter the command to use, including any required options" msgstr "" #: Configure.cpp:4218 msgid "Command for a different gui su program" msgstr "" #: Configure.cpp:4270 msgid "Each metakey pattern must be unique. Try again?" msgstr "" #: Configure.cpp:4315 msgid "You chose not to export any data type! Aborting." msgstr "" #: Configure.cpp:4812 msgid "Delete this toolbar button?" msgstr "" #: Configure.cpp:4902 msgid "Browse for the Filepath to Add" msgstr "" #: Devices.cpp:221 msgid "Hard drive" msgstr "" #: Devices.cpp:221 msgid "Floppy disc" msgstr "" #: Devices.cpp:221 msgid "CD or DVDRom" msgstr "" #: Devices.cpp:221 msgid "CD or DVD writer" msgstr "" #: Devices.cpp:221 msgid "USB Pen" msgstr "" #: Devices.cpp:221 msgid "USB memory card" msgstr "" #: Devices.cpp:221 msgid "USB card-reader" msgstr "" #: Devices.cpp:221 msgid "USB hard drive" msgstr "" #: Devices.cpp:221 msgid "Unknown device" msgstr "" #: Devices.cpp:301 msgid " menu" msgstr "меню" #: Devices.cpp:305 msgid "&Display " msgstr "" #: Devices.cpp:306 msgid "&Undisplay " msgstr "" #: Devices.cpp:308 msgid "&Mount " msgstr "Монтировать" #: Devices.cpp:308 msgid "&UnMount " msgstr "Извлечь" #: Devices.cpp:344 msgid "Mount a DVD-&RAM" msgstr "Монтировать DVD-RAM" #: Devices.cpp:347 msgid "Display " msgstr "" #: Devices.cpp:348 msgid "UnMount DVD-&RAM" msgstr "Извлечь DVD-RAM" #: Devices.cpp:354 msgid "&Eject" msgstr "" #: Devices.cpp:451 msgid "Which mount do you wish to remove?" msgstr "" #: Devices.cpp:451 msgid "Unmount a DVD-RAM disc" msgstr "" #: Devices.cpp:529 msgid "Click or Drag here to invoke " msgstr "" #: Devices.cpp:581 msgid "I'm afraid you don't have permission to Read this file" msgstr "" #: Devices.cpp:581 msgid "Failed" msgstr "" #: Devices.cpp:591 msgid "file(s) couldn't be opened due to lack of Read permission" msgstr "" #: Devices.cpp:592 msgid "Warning" msgstr "Внимание" #: Devices.cpp:843 msgid "Floppy" msgstr "" #: Devices.cpp:1382 msgid "" "Oops, that drive doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1394 msgid "" "Oops, that partition doesn't seem to be available.\n" "\n" " Have a nice day!" msgstr "" #: Devices.cpp:1414 msgid "Sorry, you need to be root to unmount non-fstab partitions" msgstr "Ðужны права ÑуперпользователÑ, чтобы извлечь раздел non-fstab" #: Devices.cpp:1419 msgid "Sorry, failed to unmount" msgstr "ПроÑтите! Ошибка при извлечении" #: Devices.cpp:1434 msgid "" "\n" "(You'll need to su to root)" msgstr "" #: Devices.cpp:1435 msgid "The partition " msgstr "" #: Devices.cpp:1435 msgid "" " doesn't have an fstab entry.\n" "Where would you like to mount it?" msgstr "" #: Devices.cpp:1439 msgid "Mount a non-fstab partition" msgstr "" #: Devices.cpp:1446 msgid "The mount-point for this device doesn't exist. Create it?" msgstr "" #: Devices.cpp:1490 Mounts.cpp:142 Mounts.cpp:364 msgid "Sorry, you need to be root to mount non-fstab partitions" msgstr "" #: Devices.cpp:1497 Devices.cpp:1504 Mounts.cpp:373 msgid "" "Oops, failed to mount successfully\n" "There was a problem with /etc/mtab" msgstr "" #: Devices.cpp:1498 Devices.cpp:1505 msgid "" "Oops, failed to mount successfully\n" " Try inserting a functioning disc" msgstr "" #: Devices.cpp:1499 Devices.cpp:1506 Mounts.cpp:375 Mounts.cpp:476 #: Mounts.cpp:707 msgid "Oops, failed to mount successfully due to error " msgstr "" #: Devices.cpp:1502 Mounts.cpp:372 Mounts.cpp:474 msgid "" "Oops, failed to mount successfully\n" "Do you have permission to do this?" msgstr "" #: Devices.cpp:1644 msgid "I can't find the file with the list of partitions, " msgstr "" #: Devices.cpp:1644 Devices.cpp:2155 msgid "" "\n" "\n" "You need to use Configure to sort things out" msgstr "" #: Devices.cpp:1662 msgid "File " msgstr "Файл" #: Devices.cpp:2155 msgid "I can't find the file with the list of scsi entries, " msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "You must enter a valid command. Try again?" msgstr "" #: Devices.cpp:3176 Devices.cpp:3208 msgid "No app entered" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "" "That filepath doesn't seem currently to exist.\n" " Use it anyway?" msgstr "" #: Devices.cpp:3182 Devices.cpp:3214 msgid "App not found" msgstr "" #: Devices.cpp:3233 msgid "Delete this Editor?" msgstr "" #: Devices.cpp:3449 msgid "png" msgstr "png" #: Devices.cpp:3449 msgid "xpm" msgstr "xpm" #: Devices.cpp:3449 msgid "bmp" msgstr "bmp" #: Devices.cpp:3449 Devices.cpp:3451 dialogs.xrc:3787 msgid "Cancel" msgstr "Отменить" #: Devices.cpp:3450 msgid "Please select the correct icon-type" msgstr "" #: Dup.cpp:46 msgid "I'm afraid you don't have Read permission for the file" msgstr "" #: Dup.cpp:134 msgid "" "There seems to be a problem: the destination directory doesn't exist! " "Sorry." msgstr "" #: Dup.cpp:147 Dup.cpp:220 msgid "" "There seems to be a problem: the incoming directory doesn't exist! Sorry." msgstr "" #: Dup.cpp:251 msgid "There's already a directory in the archive with the name " msgstr "" #: Dup.cpp:252 msgid "" "\n" "I suggest you rename either it, or the incoming directory" msgstr "" #: Dup.cpp:328 msgid "" "For some reason, trying to create a dir to temporarily-save the overwritten " "file failed. Sorry!" msgstr "" #: Dup.cpp:423 msgid "Both files have the same Modification time" msgstr "" #: Dup.cpp:429 msgid "The current file was modified on " msgstr "" #: Dup.cpp:430 msgid "The incoming file was modified on " msgstr "" #: Dup.cpp:451 msgid "You seem to want to overwrite this directory with itself" msgstr "" #: Dup.cpp:493 msgid "Sorry, that name is already taken. Please try again." msgstr "" #: Dup.cpp:496 MyFiles.cpp:678 msgid "No, the idea is that you CHANGE the name" msgstr "Ðет, Ð¸Ð´ÐµÑ Ð² том что вы ИЗМЕÐЯЕТЕ имÑ" #: Dup.cpp:520 msgid "Sorry, I couldn't duplicate the file. A permissions problem maybe?" msgstr "" #: Dup.cpp:552 msgid "" "Sorry, I couldn't make room for the incoming directory. A permissions " "problem maybe?" msgstr "" #: Dup.cpp:555 msgid "Sorry, an implausible filesystem error occurred :-(" msgstr "" #: Dup.cpp:603 msgid "Symlink Deletion Failed!?!" msgstr "" #: Dup.cpp:618 msgid "Multiple Duplicate" msgstr "" #: Dup.cpp:668 msgid "Confirm Duplication" msgstr "" #: Dup.cpp:922 Tools.cpp:1815 Tools.cpp:2109 msgid "RegEx Help" msgstr "" #: ExecuteInDialog.cpp:70 msgid "Success\n" msgstr "" #: ExecuteInDialog.cpp:72 msgid "Process failed\n" msgstr "" #: ExecuteInDialog.cpp:90 Tools.cpp:194 msgid "Process successfully aborted\n" msgstr "" #: ExecuteInDialog.cpp:95 Tools.cpp:197 msgid "" "SIGTERM failed\n" "Trying SIGKILL\n" msgstr "" #: ExecuteInDialog.cpp:98 Tools.cpp:201 msgid "Process successfully killed\n" msgstr "" #: ExecuteInDialog.cpp:103 Tools.cpp:204 msgid "Sorry, Cancel failed\n" msgstr "" #: ExecuteInDialog.cpp:130 #, c-format msgid "Execution of '%s' failed." msgstr "" #: ExecuteInDialog.cpp:188 msgid "Close" msgstr "" #: Filetypes.cpp:346 msgid "Regular File" msgstr "" #: Filetypes.cpp:347 msgid "Symbolic Link" msgstr "" #: Filetypes.cpp:348 msgid "Broken Symbolic Link" msgstr "" #: Filetypes.cpp:350 msgid "Character Device" msgstr "" #: Filetypes.cpp:351 msgid "Block Device" msgstr "" #: Filetypes.cpp:352 moredialogs.xrc:1530 msgid "Directory" msgstr "" #: Filetypes.cpp:353 msgid "FIFO" msgstr "" #: Filetypes.cpp:354 moredialogs.xrc:1534 msgid "Socket" msgstr "" #: Filetypes.cpp:355 msgid "Unknown Type?!" msgstr "" #: Filetypes.cpp:959 msgid "Applications" msgstr "" #: Filetypes.cpp:1204 msgid "Sorry, you're not allowed to delete the root folder" msgstr "" #: Filetypes.cpp:1205 msgid "Sigh!" msgstr "" #: Filetypes.cpp:1212 #, c-format msgid "Delete folder %s?" msgstr "" #: Filetypes.cpp:1224 msgid "Sorry, I couldn't find that folder!?" msgstr "" #: Filetypes.cpp:1277 #, c-format msgid "" "I can't find an executable program \"%s\".\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1278 #, c-format msgid "" "I can't find an executable program \"%s\" in your PATH.\n" "Continue anyway?" msgstr "" #: Filetypes.cpp:1285 Filetypes.cpp:1671 #, c-format msgid "" "Sorry, there is already an application called %s\n" " Try again?" msgstr "" #: Filetypes.cpp:1316 msgid "Please confirm" msgstr "" #: Filetypes.cpp:1318 msgid "You didn't enter an Extension!" msgstr "" #: Filetypes.cpp:1319 msgid "For which extension(s) do you wish this application to be the default?" msgstr "" #: Filetypes.cpp:1367 #, c-format msgid "For which Extensions do you want %s to be default" msgstr "" #: Filetypes.cpp:1399 #, c-format msgid "" "Replace %s\n" "with %s\n" "as the default command for files of type %s?" msgstr "" #: Filetypes.cpp:1560 Filetypes.cpp:1609 msgid "Sorry, I couldn't find the application!?" msgstr "" #: Filetypes.cpp:1562 #, c-format msgid "Delete %s?" msgstr "" #: Filetypes.cpp:1620 msgid "Edit the Application data" msgstr "" #: Filetypes.cpp:1931 msgid "Sorry, you don't have permission to execute this file." msgstr "" #: Filetypes.cpp:1933 msgid "" "Sorry, you don't have permission to execute this file.\n" "Would you like to try to Read it?" msgstr "" #: Filetypes.cpp:2134 #, c-format msgid "No longer use %s as the default command for files of type %s?" msgstr "" #: Misc.cpp:244 msgid "Failed to create a temporary directory" msgstr "" #: Misc.cpp:481 msgid "Show Hidden" msgstr "" #: Misc.cpp:1289 MyDirs.cpp:1121 MyDirs.cpp:1296 msgid "cut" msgstr "" #: Misc.cpp:1294 Misc.cpp:1296 #, c-format msgid "%zu items " msgstr "" #: Mounts.cpp:74 msgid "" "You haven't entered a mount-point.\n" "Try again?" msgstr "" #: Mounts.cpp:115 msgid "The mount-point for this partition doesn't exist. Create it?" msgstr "" #: Mounts.cpp:167 msgid "Oops, failed to mount the partition." msgstr "" #: Mounts.cpp:170 Mounts.cpp:218 Mounts.cpp:279 msgid " The error message was:" msgstr "" #: Mounts.cpp:180 Mounts.cpp:395 Mounts.cpp:504 Mounts.cpp:571 Mounts.cpp:595 #: Mounts.cpp:698 msgid "Mounted successfully on " msgstr "" #: Mounts.cpp:187 msgid "Impossible to create directory " msgstr "" #: Mounts.cpp:198 msgid "Oops, failed to create the directory" msgstr "" #: Mounts.cpp:212 msgid "Oops, I don't have enough permission to create the directory" msgstr "" #: Mounts.cpp:215 msgid "Oops, failed to create the directory." msgstr "" #: Mounts.cpp:245 Mounts.cpp:748 msgid "Unmounting root is a SERIOUSLY bad idea!" msgstr "" #: Mounts.cpp:276 msgid "Oops, failed to unmount the partition." msgstr "" #: Mounts.cpp:287 Mounts.cpp:299 msgid "Failed to unmount " msgstr "" #: Mounts.cpp:290 Mounts.cpp:314 Mounts.cpp:755 Mounts.cpp:806 msgid " unmounted successfully" msgstr "" #: Mounts.cpp:293 Mounts.cpp:310 msgid "Oops, failed to unmount successfully due to error " msgstr "" #: Mounts.cpp:295 Mounts.cpp:798 msgid "Oops, failed to unmount" msgstr "" #: Mounts.cpp:336 msgid "The requested mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:374 msgid "" "Oops, failed to mount successfully\n" "Are you sure the file is a valid Image?" msgstr "" #: Mounts.cpp:387 Mounts.cpp:495 Mounts.cpp:496 msgid "Failed to mount successfully due to error " msgstr "" #: Mounts.cpp:388 msgid "Failed to mount successfully" msgstr "" #: Mounts.cpp:415 Mounts.cpp:417 msgid "This export is already mounted at " msgstr "" #: Mounts.cpp:438 msgid "The mount-point for this Export doesn't exist. Create it?" msgstr "" #: Mounts.cpp:450 Mounts.cpp:652 Mounts.cpp:665 msgid "The mount-point for this share doesn't exist. Create it?" msgstr "" #: Mounts.cpp:466 msgid "Sorry, you need to be root to mount non-fstab exports" msgstr "" #: Mounts.cpp:475 msgid "" "Oops, failed to mount successfully\n" "Is NFS running?" msgstr "" #: Mounts.cpp:524 msgid "The selected mount-point doesn't exist. Create it?" msgstr "" #: Mounts.cpp:535 msgid "The selected mount-point isn't a directory" msgstr "" #: Mounts.cpp:536 msgid "The selected mount-point can't be accessed" msgstr "" #: Mounts.cpp:538 msgid "The selected mount-point is not empty. Try to mount there anyway?" msgstr "" #: Mounts.cpp:577 msgid "Failed to mount over ssh. The error message was:" msgstr "" #: Mounts.cpp:580 msgid "Failed to mount over ssh due to error " msgstr "" #: Mounts.cpp:602 #, c-format msgid "Failed to mount over ssh on %s" msgstr "" #: Mounts.cpp:624 msgid "This share is already mounted at " msgstr "" #: Mounts.cpp:626 #, c-format msgid "" "This share is already mounted at %s\n" "Do you want to mount it at %s too?" msgstr "" #: Mounts.cpp:688 msgid "Sorry, you need to be root to mount non-fstab shares" msgstr "" #: Mounts.cpp:704 msgid "Oops, failed to mount successfully. The error message was:" msgstr "" #: Mounts.cpp:734 msgid "No Mounts of this type found" msgstr "" #: Mounts.cpp:738 msgid "Unmount a Network mount" msgstr "" #: Mounts.cpp:739 msgid "Share or Export to Unmount" msgstr "" #: Mounts.cpp:740 moredialogs.xrc:10531 moredialogs.xrc:11066 #: moredialogs.xrc:11585 msgid "Mount-Point" msgstr "" #: Mounts.cpp:767 msgid " Unmounted successfully" msgstr "" #: Mounts.cpp:795 msgid "Unmount failed with the message:" msgstr "" #: Mounts.cpp:870 msgid "Choose a Directory to use as a Mount-point" msgstr "" #: Mounts.cpp:941 msgid "Choose an Image to Mount" msgstr "" #: Mounts.cpp:1256 msgid "" "I can't find the utility \"smbclient\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1277 msgid "" "I can't get the utility \"nmblookup\" to work. This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1286 msgid "" "I can't find the utility \"nmblookup\". This probably means that Samba isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1290 msgid "Searching for samba shares..." msgstr "" #: Mounts.cpp:1314 msgid "" "I can't find an active samba server.\n" "If you know of one, please tell me its address e.g. 192.168.0.3" msgstr "" #: Mounts.cpp:1315 msgid "No server found" msgstr "" #: Mounts.cpp:1444 msgid "" "I'm afraid I can't find the showmount utility. Please use Configure > " "Network to enter its filepath" msgstr "" #: Mounts.cpp:1513 msgid "" "I can't find the utility \"showmount\". This probably means that NFS isn't properly installed.\n" "Alternatively there may be a PATH or permissions problem" msgstr "" #: Mounts.cpp:1554 msgid "" "I don't know of any NFS servers on your network.\n" "Do you want to continue, and write some in yourself?" msgstr "" #: Mounts.cpp:1555 msgid "No current mounts found" msgstr "" #: MyDirs.cpp:118 msgid "You can't link within a directory unless you alter the link's name." msgstr "" #: MyDirs.cpp:118 msgid "Not possible" msgstr "Ðевозможно" #: MyDirs.cpp:467 msgid "Back to previous directory" msgstr "" #: MyDirs.cpp:470 msgid "Re-enter directory" msgstr "" #: MyDirs.cpp:474 MyDirs.cpp:475 msgid "Select previously-visited directory" msgstr "" #: MyDirs.cpp:480 msgid "Show Full Tree" msgstr "" #: MyDirs.cpp:481 msgid "Up to Higher Directory" msgstr "" #: MyDirs.cpp:495 moredialogs.xrc:319 moredialogs.xrc:3907 #: moredialogs.xrc:12352 moredialogs.xrc:12660 msgid "Home" msgstr "" #: MyDirs.cpp:499 msgid "Documents" msgstr "Документы" #: MyDirs.cpp:641 msgid "Hmm. It seems that directory no longer exists!" msgstr "" #: MyDirs.cpp:664 msgid " D H " msgstr "" #: MyDirs.cpp:664 msgid " D " msgstr "" #: MyDirs.cpp:672 msgid "Dir: " msgstr "" #: MyDirs.cpp:673 msgid "Files, total size" msgstr "" #: MyDirs.cpp:674 msgid "Subdirectories" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "Please try again in a moment" msgstr "" #: MyDirs.cpp:681 MyDirs.cpp:808 MyDirs.cpp:819 MyDirs.cpp:1763 #: MyFrame.cpp:1188 MyFrame.cpp:1196 MyFrame.cpp:1204 MyFrame.cpp:1212 #: MyFrame.cpp:1220 MyFrame.cpp:1235 MyFrame.cpp:1292 msgid "I'm busy right now" msgstr "" #: MyDirs.cpp:705 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you could create the new element outside, then Move it in." msgstr "" #: MyDirs.cpp:706 MyFiles.cpp:558 msgid "I'm afraid you don't have permission to Create in this directory" msgstr "" #: MyDirs.cpp:764 msgid "&Hide hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:764 msgid "&Show hidden dirs and files\tCtrl+H" msgstr "" #: MyDirs.cpp:846 MyDirs.cpp:852 MyDirs.cpp:932 msgid "moved" msgstr "" #: MyDirs.cpp:880 msgid "" "I'm afraid you don't have the right permissions to make this Move.\n" "Do you want to try to Copy instead?" msgstr "" #: MyDirs.cpp:886 msgid "I'm afraid you don't have the right permissions to make this Move" msgstr "" #: MyDirs.cpp:1016 msgid "" "I'm afraid you can't create links inside an archive.\n" "However you could create the new link outside, then Move it in." msgstr "" #: MyDirs.cpp:1017 msgid "I'm afraid you don't have permission to create links in this directory" msgstr "" #: MyDirs.cpp:1033 #, c-format msgid "Create a new %s Link from:" msgstr "" #: MyDirs.cpp:1033 msgid "Hard" msgstr "" #: MyDirs.cpp:1033 msgid "Soft" msgstr "" #: MyDirs.cpp:1065 msgid "Please provide an extension to append" msgstr "" #: MyDirs.cpp:1071 msgid "Please provide a name to call the link" msgstr "" #: MyDirs.cpp:1075 msgid "Please provide a different name for the link" msgstr "" #: MyDirs.cpp:1112 msgid "linked" msgstr "" #: MyDirs.cpp:1122 msgid "trashed" msgstr "" #: MyDirs.cpp:1122 MyDirs.cpp:1296 msgid "deleted" msgstr "удалено" #: MyDirs.cpp:1135 MyDirs.cpp:1362 msgid "I'm afraid you don't have permission to Delete from this directory" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "At least one of the items to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1149 MyDirs.cpp:1352 msgid "The item to be deleted seems not to exist" msgstr "" #: MyDirs.cpp:1150 MyDirs.cpp:1353 msgid "Item not found" msgstr "" #: MyDirs.cpp:1162 msgid "I'm afraid you don't have permission to move these items to a 'can'." msgstr "" #: MyDirs.cpp:1162 MyDirs.cpp:1170 msgid "" "\n" "However you could 'Permanently delete' them." msgstr "" #: MyDirs.cpp:1163 MyDirs.cpp:1171 #, c-format msgid "I'm afraid you don't have permission to move %s to a 'can'." msgstr "" #: MyDirs.cpp:1164 MyDirs.cpp:1172 msgid "" "\n" "However you could 'Permanently delete' it." msgstr "" #: MyDirs.cpp:1169 #, c-format msgid "" "I'm afraid you don't have permission to move %u of these %u items to a " "'can'." msgstr "" #: MyDirs.cpp:1173 msgid "" "\n" "\n" "Do you wish to delete the other item(s)?" msgstr "" #: MyDirs.cpp:1186 msgid "Discard to Trash: " msgstr "" #: MyDirs.cpp:1187 msgid "Delete: " msgstr "Удалить:" #: MyDirs.cpp:1195 MyDirs.cpp:1377 #, c-format msgid "%zu items, from: " msgstr "" #: MyDirs.cpp:1198 MyDirs.cpp:1380 msgid "" "\n" "\n" " To:\n" msgstr "" #: MyDirs.cpp:1208 msgid "" "For some reason, trying to create a dir to receive the deletion failed. " "Sorry!" msgstr "" #: MyDirs.cpp:1213 MyDirs.cpp:1392 msgid "Sorry, Deletion failed" msgstr "" #: MyDirs.cpp:1305 MyDirs.cpp:1452 msgid "" " You don't have permission to Delete from this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1306 MyDirs.cpp:1453 msgid "" " You don't have permission to Delete from a subdirectory of this directory.\n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1307 MyDirs.cpp:1454 msgid " The filepath was invalid." msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1311 MyDirs.cpp:1312 MyDirs.cpp:1457 #: MyDirs.cpp:1458 MyDirs.cpp:1459 msgid "For " msgstr "" #: MyDirs.cpp:1310 MyDirs.cpp:1457 msgid "" " of the items, you don't have permission to Delete from this directory." msgstr "" #: MyDirs.cpp:1311 MyDirs.cpp:1458 msgid "" " of the items, you don't have permission to Delete from a subdirectory of " "this directory." msgstr "" #: MyDirs.cpp:1312 MyDirs.cpp:1459 msgid " of the items, the filepath was invalid." msgstr "" #: MyDirs.cpp:1314 MyDirs.cpp:1461 msgid "" " \n" "You could try deleting piecemeal." msgstr "" #: MyDirs.cpp:1317 MyDirs.cpp:1464 msgid "I'm afraid the item couldn't be deleted." msgstr "" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid "I'm afraid " msgstr "Я боюÑÑŒ" #: MyDirs.cpp:1318 MyDirs.cpp:1465 msgid " items could not be deleted." msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid "I'm afraid only " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " of the " msgstr "" #: MyDirs.cpp:1321 MyDirs.cpp:1468 msgid " items could be deleted." msgstr "" #: MyDirs.cpp:1326 msgid "Cut failed" msgstr "" #: MyDirs.cpp:1326 MyDirs.cpp:1473 msgid "Deletion failed" msgstr "" #: MyDirs.cpp:1384 msgid "Permanently delete (you can't undo this!): " msgstr "" #: MyDirs.cpp:1385 msgid "Are you ABSOLUTELY sure?" msgstr "Ð’Ñ‹ ÐБСОЛЮТÐО уверены?" #: MyDirs.cpp:1398 MyDirs.cpp:1475 msgid "irrevocably deleted" msgstr "" #: MyDirs.cpp:1494 MyDirs.cpp:1500 msgid "Deletion Failed!?!" msgstr "" #: MyDirs.cpp:1498 msgid "? Never heard of it!" msgstr "" #: MyDirs.cpp:1517 msgid "Directory deletion Failed!?!" msgstr "" #: MyDirs.cpp:1530 msgid "The File seems not to exist!?!" msgstr "" #: MyDirs.cpp:1757 msgid "copied" msgstr "" #: MyDirs.cpp:1843 MyDirs.cpp:1851 MyDirs.cpp:1930 msgid "Directory skeleton pasted" msgstr "" #: MyDirs.cpp:1844 MyDirs.cpp:1852 MyDirs.cpp:1921 msgid "pasted" msgstr "" #: MyFiles.cpp:371 msgid "Make a S&ymlink" msgstr "" #: MyFiles.cpp:371 msgid "Make a Hard-Lin&k" msgstr "" #: MyFiles.cpp:379 msgid "Extract from archive" msgstr "" #: MyFiles.cpp:380 msgid "De&lete from archive" msgstr "" #: MyFiles.cpp:382 msgid "Rena&me Dir within archive" msgstr "" #: MyFiles.cpp:383 msgid "Duplicate Dir within archive" msgstr "" #: MyFiles.cpp:386 msgid "Rena&me File within archive" msgstr "" #: MyFiles.cpp:387 msgid "Duplicate File within archive" msgstr "" #: MyFiles.cpp:395 msgid "De&lete Dir" msgstr "" #: MyFiles.cpp:395 msgid "Send Dir to &Trashcan" msgstr "" #: MyFiles.cpp:396 msgid "De&lete Symlink" msgstr "" #: MyFiles.cpp:396 msgid "Send Symlink to &Trashcan" msgstr "" #: MyFiles.cpp:397 msgid "De&lete File" msgstr "" #: MyFiles.cpp:397 msgid "Send File to &Trashcan" msgstr "" #: MyFiles.cpp:419 MyFiles.cpp:433 msgid "Other . . ." msgstr "" #: MyFiles.cpp:420 msgid "Open using root privile&ges with . . . . " msgstr "" #: MyFiles.cpp:423 msgid "Open using root privile&ges" msgstr "" #: MyFiles.cpp:434 msgid "Open &with . . . . " msgstr "" #: MyFiles.cpp:445 msgid "Rena&me Dir" msgstr "" #: MyFiles.cpp:446 msgid "&Duplicate Dir" msgstr "" #: MyFiles.cpp:449 msgid "Rena&me File" msgstr "" #: MyFiles.cpp:450 msgid "&Duplicate File" msgstr "" #: MyFiles.cpp:466 msgid "Create a New Archive" msgstr "" #: MyFiles.cpp:467 msgid "Add to an Existing Archive" msgstr "" #: MyFiles.cpp:468 msgid "Test integrity of Archive or Compressed Files" msgstr "" #: MyFiles.cpp:469 msgid "Compress Files" msgstr "" #: MyFiles.cpp:475 msgid "&Hide hidden dirs and files" msgstr "" #: MyFiles.cpp:477 msgid "&Show hidden dirs and files" msgstr "" #: MyFiles.cpp:480 msgid "&Sort filenames ending in digits normally" msgstr "" #: MyFiles.cpp:482 msgid "&Sort filenames ending in digits in Decimal order" msgstr "" #: MyFiles.cpp:498 MyTreeCtrl.cpp:867 msgid "An extension starts at the filename's..." msgstr "" #: MyFiles.cpp:504 MyTreeCtrl.cpp:872 msgid "Extension definition..." msgstr "" #: MyFiles.cpp:506 msgid "Columns to Display" msgstr "" #: MyFiles.cpp:510 msgid "Unsplit Panes" msgstr "" #: MyFiles.cpp:510 msgid "Repl&icate in Opposite Pane" msgstr "" #: MyFiles.cpp:510 msgid "Swap the Panes" msgstr "" #: MyFiles.cpp:557 msgid "" "I'm afraid you can't Create inside an archive.\n" "However you can create the new element outside, then Move it in." msgstr "" #: MyFiles.cpp:588 msgid "New directory created" msgstr "" #: MyFiles.cpp:588 msgid "New file created" msgstr "Ðовый файл Ñоздан" #: MyFiles.cpp:633 MyFiles.cpp:770 msgid "I don't think you really want to duplicate root, do you" msgstr "" #: MyFiles.cpp:634 MyFiles.cpp:771 msgid "I don't think you really want to rename root, do you" msgstr "" #: MyFiles.cpp:650 MyFiles.cpp:758 msgid "I'm afraid you don't have permission to Duplicate in this directory" msgstr "" #: MyFiles.cpp:651 MyFiles.cpp:759 msgid "I'm afraid you don't have permission to Rename in this directory" msgstr "" #: MyFiles.cpp:664 msgid "Duplicate " msgstr "" #: MyFiles.cpp:665 msgid "Rename " msgstr "" #: MyFiles.cpp:677 msgid "No, the idea is that you supply a NEW name" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:723 MyFiles.cpp:792 MyFiles.cpp:848 msgid "duplicated" msgstr "" #: MyFiles.cpp:697 MyFiles.cpp:741 MyFiles.cpp:792 MyFiles.cpp:848 msgid "renamed" msgstr "" #: MyFiles.cpp:700 msgid "Sorry, that didn't work. Try again?" msgstr "" #: MyFiles.cpp:854 MyFiles.cpp:893 msgid "" "Sorry, this name is Illegal\n" " Try again?" msgstr "" #: MyFiles.cpp:866 msgid "" "Sorry, One of these already exists\n" " Try again?" msgstr "" #: MyFiles.cpp:879 MyFiles.cpp:931 msgid "" "Sorry, for some reason this operation failed\n" "Try again?" msgstr "" #: MyFiles.cpp:905 msgid "" "Sorry, that name is already taken.\n" " Try again?" msgstr "" #: MyFiles.cpp:1020 msgid "Open with " msgstr "" #: MyFiles.cpp:1043 msgid " D F" msgstr "" #: MyFiles.cpp:1044 msgid " R" msgstr "" #: MyFiles.cpp:1045 msgid " H " msgstr "" #: MyFiles.cpp:1077 msgid " of files and subdirectories" msgstr "" #: MyFiles.cpp:1077 msgid " of files" msgstr "" #: MyFiles.cpp:1623 msgid "" "The new target for the link doesn't seem to exist.\n" "Try again?" msgstr "ÐÐ¾Ð²Ð°Ñ Ñ†ÐµÐ»ÑŒ Ð´Ð»Ñ ÑÑылки похоже не ÑущеÑтвует.\nПопробовать Ñнова?" #: MyFiles.cpp:1629 msgid "" "For some reason, changing the symlink's target seems to have failed. Sorry!" msgstr "По какой-то причине изменение цели ÑимволичеÑкой ÑÑылки, похоже, не удалоÑÑŒ. Сожалею!" #: MyFiles.cpp:1693 msgid " alterations successfully made, " msgstr "Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑƒÑпешно выполнены," #: MyFiles.cpp:1693 msgid " failures" msgstr "неудачи" #: MyFiles.cpp:1762 msgid "Choose a different file or dir to be the new target" msgstr "Выберите другой файл или директорий как новую цель" #: MyFrame.cpp:149 MyFrame.cpp:154 MyFrame.cpp:164 MyFrame.cpp:175 msgid "Warning!" msgstr "Предупреждение!" #: MyFrame.cpp:308 msgid "" "Sorry, failed to create the directory for your chosen configuration-file; " "aborting." msgstr "К Ñожалению, не удалоÑÑŒ Ñоздать директорий Ð´Ð»Ñ Ð²Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð¾Ð³Ð¾ Вами файла конфигурации; отмена." #: MyFrame.cpp:311 msgid "" "Sorry, you don't have permission to write to the directory containing your " "chosen configuration-file; aborting." msgstr "К Ñожалению, у Ð’Ð°Ñ Ð½ÐµÑ‚ прав запиÑывать в директорий Ñодержащий выбранный Вами конфигурационный файл; отмена." #: MyFrame.cpp:587 msgid "Cannot initialize the help system; aborting." msgstr "Ðе получаетÑÑ Ð·Ð°Ð¿ÑƒÑтить ÑиÑтему помощи; отмена." #: MyFrame.cpp:740 msgid "Undo several actions at once" msgstr "Отменить неÑколько дейÑтвий одновременно" #: MyFrame.cpp:741 msgid "Redo several actions at once" msgstr "Повторить неÑколько дейÑтвий одновременно" #: MyFrame.cpp:743 msgid "Cut" msgstr "Вырезать" #: MyFrame.cpp:743 msgid "Click to Cut Selection" msgstr "Кликните Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° что вырезать" #: MyFrame.cpp:744 msgid "Copy" msgstr "Копировать" #: MyFrame.cpp:744 msgid "Click to Copy Selection" msgstr "Кликните Ð´Ð»Ñ ÐºÐ¾Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð²Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð¾Ð³Ð¾" #: MyFrame.cpp:745 msgid "Click to Paste Selection" msgstr "Кликните Ð´Ð»Ñ Ð²Ñтавки выбранного" #: MyFrame.cpp:749 msgid "UnDo" msgstr "Отменить" #: MyFrame.cpp:749 msgid "Undo an action" msgstr "Отменить выполненое" #: MyFrame.cpp:751 msgid "ReDo" msgstr "Переделать" #: MyFrame.cpp:751 msgid "Redo a previously-Undone action" msgstr "Выполнить повторно отменённое ранее дейÑтвие" #: MyFrame.cpp:755 msgid "New Tab" msgstr "ÐÐ¾Ð²Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ°" #: MyFrame.cpp:755 msgid "Create a new Tab" msgstr "Создать новую вкладку" #: MyFrame.cpp:756 msgid "Delete Tab" msgstr "Удалить вкладаку" #: MyFrame.cpp:756 msgid "Deletes the currently-selected Tab" msgstr "Удалить выбранную ÑÐµÐ¹Ñ‡Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÑƒ" #: MyFrame.cpp:757 msgid "Preview tooltips" msgstr "Предварительные подÑказки" #: MyFrame.cpp:757 msgid "Shows previews of images and text files in a 'tooltip'" msgstr "Показывает превью изображений и текÑтовых файлов во «вÑплывающей подÑказке»" #: MyFrame.cpp:1045 dialogs.xrc:91 msgid "About" msgstr "Об Ñтом" #: MyFrame.cpp:1916 MyGenericDirCtrl.cpp:830 MyGenericDirCtrl.cpp:848 #: MyGenericDirCtrl.cpp:859 msgid "Error" msgstr "Ошибка" #: MyFrame.cpp:1920 MyNotebook.cpp:190 MyNotebook.cpp:225 MyNotebook.cpp:239 #: Tools.cpp:3077 msgid "Success" msgstr "УÑпех" #: MyGenericDirCtrl.cpp:644 msgid "Computer" msgstr "Компьютер" #: MyGenericDirCtrl.cpp:646 msgid "Sections" msgstr "Разделы" #: MyGenericDirCtrl.cpp:830 msgid "Illegal directory name." msgstr "" #: MyGenericDirCtrl.cpp:848 msgid "File name exists already." msgstr "Ð˜Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° уже ÑущеÑтвует." #: MyGenericDirCtrl.cpp:859 msgid "Operation not permitted." msgstr "ДейÑтвие не разрешено." #: MyNotebook.cpp:168 msgid "Which Template do you wish to Delete?" msgstr "" #: MyNotebook.cpp:168 msgid "Delete Template" msgstr "" #: MyNotebook.cpp:222 msgid "Template Save cancelled" msgstr "" #: MyNotebook.cpp:222 MyNotebook.cpp:232 msgid "Cancelled" msgstr "" #: MyNotebook.cpp:231 msgid "What would you like to call this template?" msgstr "" #: MyNotebook.cpp:231 msgid "Choose a template label" msgstr "" #: MyNotebook.cpp:232 msgid "Save Template cancelled" msgstr "" #: MyNotebook.cpp:284 MyNotebook.cpp:343 msgid "Sorry, the maximum number of tabs are already open." msgstr "" #: MyNotebook.cpp:346 msgid " again" msgstr "" #: MyNotebook.cpp:401 msgid "&Append Tab" msgstr "" #: MyNotebook.cpp:417 msgid "What would you like to call this tab?" msgstr "" #: MyNotebook.cpp:417 msgid "Change tab title" msgstr "" #: MyTreeCtrl.cpp:716 msgid "Invalid column index" msgstr "" #: MyTreeCtrl.cpp:730 MyTreeCtrl.cpp:744 msgid "Invalid column" msgstr "" #: MyTreeCtrl.cpp:1544 msgid " *** Broken symlink ***" msgstr "" #: Otherstreams.cpp:121 msgid "Decompressing a lzma stream failed" msgstr "" #: Otherstreams.cpp:214 Otherstreams.cpp:255 msgid "xz compression failure" msgstr "" #: Redo.cpp:258 msgid " Redo: " msgstr "" #: Redo.cpp:258 msgid " Undo: " msgstr "" #: Redo.cpp:276 #, c-format msgid " (%zu Items) " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " ---- MORE ---- " msgstr "" #: Redo.cpp:297 Redo.cpp:383 msgid " -- PREVIOUS -- " msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "undone" msgstr "" #: Redo.cpp:539 Redo.cpp:591 msgid "redone" msgstr "" #: Redo.cpp:590 msgid " actions " msgstr "" #: Redo.cpp:590 msgid " action " msgstr "" #: Redo.cpp:758 Redo.cpp:773 Redo.cpp:786 Redo.cpp:799 Redo.cpp:813 #: Redo.cpp:827 Redo.cpp:855 Redo.cpp:870 Redo.cpp:887 Redo.cpp:906 #: Redo.cpp:929 Redo.cpp:952 Redo.cpp:979 Redo.cpp:1005 Redo.cpp:1042 #: Redo.cpp:1066 Redo.cpp:1078 Redo.cpp:1091 Redo.cpp:1104 Redo.cpp:1117 #: Redo.cpp:1149 Redo.cpp:1190 Redo.cpp:1236 Redo.cpp:1279 msgid "action" msgstr "" #: Redo.cpp:758 Redo.cpp:786 Redo.cpp:813 Redo.cpp:855 Redo.cpp:887 #: Redo.cpp:929 Redo.cpp:979 Redo.cpp:1042 Redo.cpp:1078 Redo.cpp:1104 #: Redo.cpp:1149 Redo.cpp:1236 msgid " undone" msgstr "" #: Redo.cpp:773 Redo.cpp:799 Redo.cpp:827 Redo.cpp:870 Redo.cpp:906 #: Redo.cpp:952 Redo.cpp:1005 Redo.cpp:1066 Redo.cpp:1091 Redo.cpp:1117 #: Redo.cpp:1190 Redo.cpp:1279 msgid " redone" msgstr "" #: Redo.cpp:1296 msgid "Failed to create a directory to store deletions" msgstr "" #: Redo.cpp:1336 msgid "" "Sorry, can't create your selected Trashed subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location" msgstr "" #: Redo.cpp:1345 msgid "" "Sorry, can't create your selected Deleted subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1354 msgid "" "Sorry, can't create your selected temporary file subdirectory. A permissions problem perhaps?\n" "I suggest you use Configure to choose another location." msgstr "" #: Redo.cpp:1364 msgid "" "Emptying 4Pane's Trash-can will permanently delete any files that have been saved there!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1371 msgid "Trashcan emptied" msgstr "" #: Redo.cpp:1375 msgid "" "Emptying 4Pane's Deleted-can happens automatically when 4Pane is closed\n" "Doing it prematurely will delete any files stored there. All Undo-Redo data will be lost!\n" "\n" " Continue?" msgstr "" #: Redo.cpp:1384 msgid "Stored files permanently deleted" msgstr "" #: Tools.cpp:46 msgid "There is already a file with this name in the destination path. Sorry" msgstr "" #: Tools.cpp:52 msgid "" "I'm afraid you lack permission to write to the destination directory. Sorry" msgstr "" #: Tools.cpp:57 msgid "You cannot make a hardlink to a directory." msgstr "" #: Tools.cpp:58 msgid "You cannot make a hardlink to a different device or partition." msgstr "" #: Tools.cpp:60 msgid "" "\n" "Would you like to make a symlink instead?" msgstr "" #: Tools.cpp:60 msgid "No can do" msgstr "" #: Tools.cpp:177 msgid "Sorry, no match found." msgstr "" #: Tools.cpp:179 msgid " Have a nice day!\n" msgstr "" #: Tools.cpp:261 msgid "Run the 'locate' dialog" msgstr "" #: Tools.cpp:263 msgid "Run the 'find' dialog" msgstr "" #: Tools.cpp:265 msgid "Run the 'grep' dialog" msgstr "" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Show" msgstr "Показать" #: Tools.cpp:303 Tools.cpp:459 Tools.cpp:465 Tools.cpp:639 msgid "Hide" msgstr "СпрÑтать" #: Tools.cpp:1186 msgid "" "You haven't added this page's choices to the 'find' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:1696 msgid "" "You haven't added this page's choices to the 'grep' command. If the page changes, they'll be ignored.\n" "Ignore the choices?" msgstr "" #: Tools.cpp:2448 msgid "GoTo selected filepath" msgstr "" #: Tools.cpp:2449 msgid "Open selected file" msgstr "" #: Tools.cpp:2673 msgid "Sorry, becoming superuser like this isn't possible here.\n" msgstr "" #: Tools.cpp:2674 msgid "You need to start each command with 'sudo'" msgstr "" #: Tools.cpp:2675 msgid "You can instead do: su -c \"\"" msgstr "" #: Tools.cpp:2880 msgid " items " msgstr "" #: Tools.cpp:2880 msgid " item " msgstr "" #: Tools.cpp:2913 Tools.cpp:3197 msgid "Repeat: " msgstr "Повторить:" #: Tools.cpp:3059 msgid "" "Sorry, there's no room for another command here\n" "I suggest you try putting it in a different submenu" msgstr "" #: Tools.cpp:3077 msgid "Command added" msgstr "" #: Tools.cpp:3267 msgid "first" msgstr "" #: Tools.cpp:3267 msgid "other" msgstr "" #: Tools.cpp:3267 msgid "next" msgstr "" #: Tools.cpp:3267 msgid "last" msgstr "" #: Tools.cpp:3283 #, c-format msgid "" "Malformed user-defined command: using the modifier '%c' with 'b' doesn't " "make sense. Aborting" msgstr "" #: Tools.cpp:3287 msgid "" "Malformed user-defined command: you can use only one modifier per parameter." " Aborting" msgstr "" #: Tools.cpp:3291 #, c-format msgid "" "Malformed user-defined command: the modifier '%c' must be followed by " "'s','f','d' or'a'. Aborting" msgstr "" #: Tools.cpp:3337 msgid "Please type in the" msgstr "" #: Tools.cpp:3342 msgid "parameter" msgstr "" #: Tools.cpp:3355 msgid "ran successfully" msgstr "" #: Tools.cpp:3358 msgid "User-defined tool" msgstr "" #: Tools.cpp:3359 msgid "returned with exit code" msgstr "" #: Devices.h:432 msgid "Browse for new Icons" msgstr "" #: Misc.h:60 msgid "File and Dir Select Dialog" msgstr "" #: Misc.h:265 msgid "completed" msgstr "" #: Redo.h:124 Redo.h:334 configuredialogs.xrc:2660 msgid "Delete" msgstr "" #: Redo.h:150 msgid "Paste dirs" msgstr "" #: Redo.h:190 msgid "Change Link Target" msgstr "" #: Redo.h:207 msgid "Change Attributes" msgstr "" #: Redo.h:226 dialogs.xrc:2299 msgid "New Directory" msgstr "" #: Redo.h:226 msgid "New File" msgstr "" #: Redo.h:242 msgid "Duplicate Directory" msgstr "" #: Redo.h:242 msgid "Duplicate File" msgstr "" #: Redo.h:261 msgid "Rename Directory" msgstr "" #: Redo.h:261 msgid "Rename File" msgstr "" #: Redo.h:281 msgid "Duplicate" msgstr "" #: Redo.h:281 dialogs.xrc:299 msgid "Rename" msgstr "" #: Redo.h:301 msgid "Extract" msgstr "" #: Redo.h:317 msgid " dirs" msgstr "" #: configuredialogs.xrc:4 msgid "Enter Tooltip Delay" msgstr "" #: configuredialogs.xrc:35 msgid "Set desired Tooltip delay, in seconds" msgstr "" #: configuredialogs.xrc:62 msgid "Turn off Tooltips" msgstr "" #: configuredialogs.xrc:86 configuredialogs.xrc:456 configuredialogs.xrc:694 #: configuredialogs.xrc:893 configuredialogs.xrc:1071 #: configuredialogs.xrc:2146 configuredialogs.xrc:2242 #: configuredialogs.xrc:2338 configuredialogs.xrc:4415 #: configuredialogs.xrc:4569 configuredialogs.xrc:4770 #: configuredialogs.xrc:4953 configuredialogs.xrc:6946 #: configuredialogs.xrc:7077 configuredialogs.xrc:7172 #: configuredialogs.xrc:7535 configuredialogs.xrc:7864 #: configuredialogs.xrc:8094 configuredialogs.xrc:8418 #: configuredialogs.xrc:8546 dialogs.xrc:354 dialogs.xrc:2156 dialogs.xrc:2262 #: dialogs.xrc:2346 dialogs.xrc:2520 dialogs.xrc:2654 dialogs.xrc:2822 #: dialogs.xrc:3119 dialogs.xrc:3490 dialogs.xrc:3603 dialogs.xrc:3897 #: dialogs.xrc:4461 dialogs.xrc:4578 moredialogs.xrc:121 moredialogs.xrc:4521 #: moredialogs.xrc:4863 moredialogs.xrc:5146 moredialogs.xrc:5387 #: moredialogs.xrc:5640 moredialogs.xrc:5952 moredialogs.xrc:6460 #: moredialogs.xrc:6868 moredialogs.xrc:7163 moredialogs.xrc:7623 #: moredialogs.xrc:8039 moredialogs.xrc:8349 moredialogs.xrc:8812 #: moredialogs.xrc:9236 moredialogs.xrc:9550 moredialogs.xrc:9789 #: moredialogs.xrc:10123 moredialogs.xrc:10427 moredialogs.xrc:10574 #: moredialogs.xrc:10828 moredialogs.xrc:11193 moredialogs.xrc:11329 #: moredialogs.xrc:11772 moredialogs.xrc:11962 moredialogs.xrc:12133 msgid "OK" msgstr "" #: configuredialogs.xrc:89 configuredialogs.xrc:459 configuredialogs.xrc:697 #: configuredialogs.xrc:896 configuredialogs.xrc:1074 #: configuredialogs.xrc:1659 configuredialogs.xrc:1809 #: configuredialogs.xrc:2021 configuredialogs.xrc:2375 #: configuredialogs.xrc:2570 configuredialogs.xrc:2774 #: configuredialogs.xrc:2920 configuredialogs.xrc:3097 #: configuredialogs.xrc:3345 configuredialogs.xrc:3484 #: configuredialogs.xrc:3778 configuredialogs.xrc:4007 #: configuredialogs.xrc:4167 configuredialogs.xrc:4274 #: configuredialogs.xrc:4418 configuredialogs.xrc:4572 #: configuredialogs.xrc:4773 configuredialogs.xrc:4956 #: configuredialogs.xrc:5243 configuredialogs.xrc:5486 #: configuredialogs.xrc:5658 configuredialogs.xrc:5857 #: configuredialogs.xrc:6055 configuredialogs.xrc:6208 #: configuredialogs.xrc:6363 configuredialogs.xrc:6533 #: configuredialogs.xrc:6699 configuredialogs.xrc:6949 #: configuredialogs.xrc:7080 configuredialogs.xrc:7175 #: configuredialogs.xrc:7341 configuredialogs.xrc:7538 #: configuredialogs.xrc:7867 configuredialogs.xrc:8097 #: configuredialogs.xrc:8241 configuredialogs.xrc:8421 #: configuredialogs.xrc:8549 dialogs.xrc:357 dialogs.xrc:2159 dialogs.xrc:2265 #: dialogs.xrc:2349 dialogs.xrc:2523 dialogs.xrc:2657 dialogs.xrc:2825 #: dialogs.xrc:3122 dialogs.xrc:3493 dialogs.xrc:3606 dialogs.xrc:3685 #: dialogs.xrc:3900 dialogs.xrc:4464 dialogs.xrc:4581 dialogs.xrc:4598 #: moredialogs.xrc:124 moredialogs.xrc:2633 moredialogs.xrc:4018 #: moredialogs.xrc:4524 moredialogs.xrc:4866 moredialogs.xrc:5149 #: moredialogs.xrc:5390 moredialogs.xrc:5643 moredialogs.xrc:5822 #: moredialogs.xrc:5955 moredialogs.xrc:6463 moredialogs.xrc:6871 #: moredialogs.xrc:7166 moredialogs.xrc:7626 moredialogs.xrc:8042 #: moredialogs.xrc:8352 moredialogs.xrc:8815 moredialogs.xrc:9239 #: moredialogs.xrc:9553 moredialogs.xrc:9792 moredialogs.xrc:10126 #: moredialogs.xrc:10430 moredialogs.xrc:10577 moredialogs.xrc:10831 #: moredialogs.xrc:11196 moredialogs.xrc:11332 moredialogs.xrc:11775 #: moredialogs.xrc:11965 moredialogs.xrc:12136 moredialogs.xrc:12496 #: moredialogs.xrc:12817 msgid "Click when finished" msgstr "" #: configuredialogs.xrc:104 configuredialogs.xrc:1673 #: configuredialogs.xrc:1823 configuredialogs.xrc:2035 #: configuredialogs.xrc:2389 configuredialogs.xrc:2584 #: configuredialogs.xrc:2788 configuredialogs.xrc:2934 #: configuredialogs.xrc:3111 configuredialogs.xrc:3359 #: configuredialogs.xrc:3498 configuredialogs.xrc:3791 #: configuredialogs.xrc:4020 configuredialogs.xrc:4180 #: configuredialogs.xrc:4288 configuredialogs.xrc:5257 #: configuredialogs.xrc:5499 configuredialogs.xrc:5671 #: configuredialogs.xrc:5871 configuredialogs.xrc:6069 #: configuredialogs.xrc:6222 configuredialogs.xrc:6377 #: configuredialogs.xrc:6547 dialogs.xrc:52 dialogs.xrc:522 dialogs.xrc:745 #: dialogs.xrc:828 dialogs.xrc:976 dialogs.xrc:1048 dialogs.xrc:1124 #: dialogs.xrc:1279 dialogs.xrc:1503 dialogs.xrc:1669 dialogs.xrc:1773 #: dialogs.xrc:4478 msgid "&Cancel" msgstr "" #: configuredialogs.xrc:107 configuredialogs.xrc:477 configuredialogs.xrc:715 #: configuredialogs.xrc:914 configuredialogs.xrc:1092 #: configuredialogs.xrc:1676 configuredialogs.xrc:1826 #: configuredialogs.xrc:2038 configuredialogs.xrc:2392 #: configuredialogs.xrc:2587 configuredialogs.xrc:2791 #: configuredialogs.xrc:2937 configuredialogs.xrc:3114 #: configuredialogs.xrc:3362 configuredialogs.xrc:3501 #: configuredialogs.xrc:3794 configuredialogs.xrc:4023 #: configuredialogs.xrc:4183 configuredialogs.xrc:4291 #: configuredialogs.xrc:4435 configuredialogs.xrc:4589 #: configuredialogs.xrc:4790 configuredialogs.xrc:4979 #: configuredialogs.xrc:5260 configuredialogs.xrc:5502 #: configuredialogs.xrc:5674 configuredialogs.xrc:5874 #: configuredialogs.xrc:6072 configuredialogs.xrc:6225 #: configuredialogs.xrc:6380 configuredialogs.xrc:6550 #: configuredialogs.xrc:6967 configuredialogs.xrc:7098 #: configuredialogs.xrc:7193 configuredialogs.xrc:7556 #: configuredialogs.xrc:7885 configuredialogs.xrc:8115 #: configuredialogs.xrc:8254 configuredialogs.xrc:8439 #: configuredialogs.xrc:8567 dialogs.xrc:375 dialogs.xrc:525 dialogs.xrc:748 #: dialogs.xrc:831 dialogs.xrc:979 dialogs.xrc:1051 dialogs.xrc:1127 #: dialogs.xrc:1282 dialogs.xrc:1506 dialogs.xrc:1672 dialogs.xrc:1876 #: dialogs.xrc:2176 dialogs.xrc:2194 dialogs.xrc:2283 dialogs.xrc:2367 #: dialogs.xrc:2541 dialogs.xrc:2675 dialogs.xrc:2844 dialogs.xrc:3140 #: dialogs.xrc:3511 dialogs.xrc:3624 dialogs.xrc:3698 dialogs.xrc:3790 #: dialogs.xrc:3918 dialogs.xrc:4481 dialogs.xrc:4616 moredialogs.xrc:142 #: moredialogs.xrc:2649 moredialogs.xrc:4034 moredialogs.xrc:4105 #: moredialogs.xrc:4541 moredialogs.xrc:4882 moredialogs.xrc:5167 #: moredialogs.xrc:5409 moredialogs.xrc:5661 moredialogs.xrc:5840 #: moredialogs.xrc:5973 moredialogs.xrc:6064 moredialogs.xrc:6150 #: moredialogs.xrc:6476 moredialogs.xrc:6884 moredialogs.xrc:7179 #: moredialogs.xrc:7644 moredialogs.xrc:8060 moredialogs.xrc:8370 #: moredialogs.xrc:8833 moredialogs.xrc:9257 moredialogs.xrc:9571 #: moredialogs.xrc:9810 moredialogs.xrc:10144 moredialogs.xrc:10448 #: moredialogs.xrc:10595 moredialogs.xrc:10850 moredialogs.xrc:11209 #: moredialogs.xrc:11350 moredialogs.xrc:11788 moredialogs.xrc:11983 #: moredialogs.xrc:12152 moredialogs.xrc:12513 moredialogs.xrc:12834 msgid "Click to abort" msgstr "" #: configuredialogs.xrc:125 msgid "New device detected" msgstr "" #: configuredialogs.xrc:147 msgid "A device has been attached that I've not yet met." msgstr "" #: configuredialogs.xrc:154 msgid "Would you like to configure it?" msgstr "" #: configuredialogs.xrc:174 msgid "&Yes" msgstr "" #: configuredialogs.xrc:188 msgid " N&ot now" msgstr "" #: configuredialogs.xrc:191 msgid "Don't configure it right now, but ask again each time it appears" msgstr "" #: configuredialogs.xrc:205 msgid "&Never" msgstr "" #: configuredialogs.xrc:208 msgid "" "\"I don't want to be nagged about this device\". If you change your mind, " "it can be configured from Configure." msgstr "" #: configuredialogs.xrc:226 configuredialogs.xrc:495 configuredialogs.xrc:733 msgid "Configure new device" msgstr "" #: configuredialogs.xrc:268 msgid "Devicenode" msgstr "" #: configuredialogs.xrc:305 msgid "Mount-point for the device" msgstr "" #: configuredialogs.xrc:341 dialogs.xrc:2429 msgid "What would you like to call it?" msgstr "" #: configuredialogs.xrc:377 configuredialogs.xrc:615 configuredialogs.xrc:814 msgid "Device type" msgstr "" #: configuredialogs.xrc:418 configuredialogs.xrc:656 configuredialogs.xrc:855 msgid "Device is read-only" msgstr "" #: configuredialogs.xrc:427 configuredialogs.xrc:665 configuredialogs.xrc:864 msgid "Neither prompt about the device nor load it" msgstr "" #: configuredialogs.xrc:430 configuredialogs.xrc:668 configuredialogs.xrc:867 msgid "Ignore this device" msgstr "" #: configuredialogs.xrc:474 configuredialogs.xrc:712 configuredialogs.xrc:911 #: configuredialogs.xrc:1089 configuredialogs.xrc:4432 #: configuredialogs.xrc:4586 configuredialogs.xrc:4787 #: configuredialogs.xrc:4976 configuredialogs.xrc:5139 #: configuredialogs.xrc:6964 configuredialogs.xrc:7095 #: configuredialogs.xrc:7190 configuredialogs.xrc:7553 #: configuredialogs.xrc:7882 configuredialogs.xrc:8112 #: configuredialogs.xrc:8251 configuredialogs.xrc:8436 #: configuredialogs.xrc:8564 dialogs.xrc:372 dialogs.xrc:2191 dialogs.xrc:2280 #: dialogs.xrc:2364 dialogs.xrc:2538 dialogs.xrc:2672 dialogs.xrc:2841 #: dialogs.xrc:3137 dialogs.xrc:3508 dialogs.xrc:3621 dialogs.xrc:3915 #: dialogs.xrc:4613 moredialogs.xrc:139 moredialogs.xrc:2646 #: moredialogs.xrc:4031 moredialogs.xrc:4102 moredialogs.xrc:4538 #: moredialogs.xrc:4879 moredialogs.xrc:5164 moredialogs.xrc:5406 #: moredialogs.xrc:5658 moredialogs.xrc:5837 moredialogs.xrc:5970 #: moredialogs.xrc:6061 moredialogs.xrc:6147 moredialogs.xrc:6473 #: moredialogs.xrc:6881 moredialogs.xrc:7176 moredialogs.xrc:7641 #: moredialogs.xrc:8057 moredialogs.xrc:8367 moredialogs.xrc:8830 #: moredialogs.xrc:9254 moredialogs.xrc:9568 moredialogs.xrc:9807 #: moredialogs.xrc:10141 moredialogs.xrc:10445 moredialogs.xrc:10592 #: moredialogs.xrc:10847 moredialogs.xrc:11206 moredialogs.xrc:11347 #: moredialogs.xrc:11785 moredialogs.xrc:11980 moredialogs.xrc:12149 #: moredialogs.xrc:12510 moredialogs.xrc:12831 msgid "&CANCEL" msgstr "" #: configuredialogs.xrc:537 msgid "Manufacturer's name" msgstr "" #: configuredialogs.xrc:555 configuredialogs.xrc:595 msgid "" "This is the name (or, if none, the ID) supplied by the device. You can " "change it to something more memorable if you wish" msgstr "" #: configuredialogs.xrc:577 msgid "Model name" msgstr "" #: configuredialogs.xrc:775 msgid "Mount-point for this device" msgstr "" #: configuredialogs.xrc:793 msgid "" "What is the name of the directory onto which this device is auto-mounted? " "It will probably look something like /mnt/usb-[MyPenName]-FlashDisk:0:0:0p1" msgstr "" #: configuredialogs.xrc:932 msgid "Configure new device type" msgstr "" #: configuredialogs.xrc:973 msgid "Label to give this device" msgstr "" #: configuredialogs.xrc:991 msgid "" "If this is an unusual type of device that's not on the standard list, type " "the name that best describes it" msgstr "" #: configuredialogs.xrc:1012 msgid "Which is the best-matching description?" msgstr "" #: configuredialogs.xrc:1030 msgid "" "Select the nearest equivalent to the new type. This determines which icon " "appears on the toolbar" msgstr "" #: configuredialogs.xrc:1112 msgid "Configure 4Pane" msgstr "ÐаÑтроить 4Pane" #: configuredialogs.xrc:1140 configuredialogs.xrc:6696 #: configuredialogs.xrc:7338 dialogs.xrc:104 msgid "&Finished" msgstr "" #: configuredialogs.xrc:1143 msgid "Click when finished configuring" msgstr "" #: configuredialogs.xrc:1170 #, c-format msgid "" "User-defined commands are external programs that you can\n" "launch from 4Pane. They may be utilities like 'df', or any other\n" "available program or executable script.\n" "e.g. 'gedit %f' launches the currently-selected file in gedit." msgstr "" #: configuredialogs.xrc:1181 msgid "" "The following parameters are available:\n" "%s will pass the selected file or folder to the application\n" "%f (%d) will pass the selected file (directory) only\n" "%a passes all of the active pane's selected items\n" "%b will pass one selection from both fileview panes.\n" "%p will prompt for a parameter to pass to the application.\n" "\n" "To try to run a command as superuser, prefix e.g. gksu or sudo" msgstr "" #: configuredialogs.xrc:1196 msgid "On the following sub-pages you can Add, Edit or Delete tools." msgstr "" #: configuredialogs.xrc:1225 msgid "" "This section deals with devices. These may be either\n" "fixed e.g. dvdrw drives, or removable e.g. usb pens.\n" "\n" "4Pane can usually deduce a distro's behaviour and\n" "configure itself to match. If this fails, or you want to make\n" "changes, you can do so on the following sub-pages." msgstr "" #: configuredialogs.xrc:1259 msgid "" "This is where you can try to make things work\n" "if something fails because you have a very old,\n" "or a very modern, setup.\n" "\n" "You are unlikely to need to use this section\n" "but, if you do, read the tooltips." msgstr "" #: configuredialogs.xrc:1293 msgid "" "This is where you can configure 4Pane's appearance.\n" "\n" "The first sub-page deals with the directory and file trees,\n" " the second the font, and the third miscellaneous things." msgstr "" #: configuredialogs.xrc:1325 msgid "" "These two sub-pages deal with terminals. The first is\n" "for real terminals, the second the terminal emulator." msgstr "" #: configuredialogs.xrc:1355 msgid "Finally, four pages of miscellany." msgstr "" #: configuredialogs.xrc:1384 msgid "These items deal with the directory and file trees" msgstr "" #: configuredialogs.xrc:1401 msgid "Pixels between the parent" msgstr "" #: configuredialogs.xrc:1408 msgid "dir and the Expand box" msgstr "" #: configuredialogs.xrc:1417 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the parent directory and the triangle." msgstr "" #: configuredialogs.xrc:1440 msgid "Pixels between the" msgstr "ПикÑелей между" #: configuredialogs.xrc:1447 msgid "Expand box and name" msgstr "" #: configuredialogs.xrc:1456 msgid "" "There is an 'expand box' (in gtk2 actually a triangle) between the parent " "directory and the filename. This spincontrol sets the number of pixels " "between the triangle and the filename" msgstr "" #: configuredialogs.xrc:1476 msgid "" "Show hidden files and dirs in the panes of a newly-created tab view. You " "can change this for individual panes from the context menu, or Ctrl-H" msgstr "" #: configuredialogs.xrc:1479 msgid " By default, show hidden files and directories" msgstr "" #: configuredialogs.xrc:1487 msgid "" "If ticked, displayed files/dirs are sorted in a way appropriate for the " "language to which your locale is set. However, this may result in hidden " "files (when displayed) not being shown separately" msgstr "" #: configuredialogs.xrc:1490 msgid " Sort files in a locale-aware way" msgstr "" #: configuredialogs.xrc:1498 msgid "" "Show a symlink-to-a-directory with the ordinary directories in the file-" "view, not beneath with the files" msgstr "" #: configuredialogs.xrc:1501 msgid " Treat a symlink-to-directory as a normal directory" msgstr "" #: configuredialogs.xrc:1509 msgid "" "Do you want visible lines between each directory and its subdirectories? " "Choose whichever you prefer, but the normal style is 'Yes' in gtk1, but 'No'" " in some versions of gtk2" msgstr "" #: configuredialogs.xrc:1512 msgid " Show lines in the directory tree" msgstr "" #: configuredialogs.xrc:1528 msgid "" "Choose colours to use as a pane's background. You can have different colours" " for dir-views and file-views" msgstr "" #: configuredialogs.xrc:1531 msgid " Colour the background of a pane" msgstr "" #: configuredialogs.xrc:1543 msgid "&Select Colours" msgstr "" #: configuredialogs.xrc:1546 msgid "Click to select the background colours to use" msgstr "" #: configuredialogs.xrc:1564 msgid "" "In a fileview, give alternate lines different background colours, resulting " "in a striped appearance" msgstr "" #: configuredialogs.xrc:1567 msgid " Colour alternate lines in a fileview" msgstr "" #: configuredialogs.xrc:1579 msgid "Se&lect Colours" msgstr "" #: configuredialogs.xrc:1582 msgid "Click to select the colours in which to paint alternate lines" msgstr "" #: configuredialogs.xrc:1599 msgid "" "Slightly highlight the column header of a file-view, or above the toolbar of" " a dir-view, to flag which pane currently has focus. Click the 'Configure' " "button to alter the amount of highlighting" msgstr "" #: configuredialogs.xrc:1602 msgid " Highlight the focused pane" msgstr "" #: configuredialogs.xrc:1613 msgid "C&onfigure" msgstr "" #: configuredialogs.xrc:1616 msgid "Click to alter the amount of any highlighting for each pane type" msgstr "" #: configuredialogs.xrc:1629 msgid "" "Before version 1.1, 4Pane used to update its display when it itself altered files/directories, but didn't react to any alterations made outside it.\n" "Now 4Pane can use inotify to inform it of both internal and external changes. Untick the box if you prefer the old method." msgstr "" #: configuredialogs.xrc:1632 msgid " Use inotify to watch the filesystem" msgstr "" #: configuredialogs.xrc:1656 configuredialogs.xrc:1806 #: configuredialogs.xrc:2018 configuredialogs.xrc:2372 #: configuredialogs.xrc:2567 configuredialogs.xrc:2771 #: configuredialogs.xrc:2917 configuredialogs.xrc:3094 #: configuredialogs.xrc:3342 configuredialogs.xrc:3481 #: configuredialogs.xrc:3775 configuredialogs.xrc:4004 #: configuredialogs.xrc:4164 configuredialogs.xrc:4271 #: configuredialogs.xrc:5240 configuredialogs.xrc:5483 #: configuredialogs.xrc:5655 configuredialogs.xrc:5854 #: configuredialogs.xrc:6052 configuredialogs.xrc:6205 #: configuredialogs.xrc:6360 configuredialogs.xrc:6530 msgid "&Apply" msgstr "&Применить" #: configuredialogs.xrc:1713 msgid "Here you can configure the font used by the tree" msgstr "" #: configuredialogs.xrc:1721 msgid "Click the 'Change' button to select a different font or size" msgstr "" #: configuredialogs.xrc:1728 msgid "The 'Use Default' button will reset it to the system default" msgstr "" #: configuredialogs.xrc:1747 configuredialogs.xrc:2486 msgid "This is how the terminal emulator font looks" msgstr "" #: configuredialogs.xrc:1754 msgid "C&hange" msgstr "" #: configuredialogs.xrc:1757 configuredialogs.xrc:2497 msgid "Change to a font of your choice" msgstr "" #: configuredialogs.xrc:1768 configuredialogs.xrc:2524 msgid "The appearance using the default font" msgstr "" #: configuredialogs.xrc:1775 msgid "Use &Default" msgstr "" #: configuredialogs.xrc:1778 configuredialogs.xrc:2535 msgid "Revert to the system default font" msgstr "" #: configuredialogs.xrc:1867 msgid "" "If the currently-selected path in the active dirview is " "/home/david/Documents, make the titlebar show '4Pane [Documents]' instead of" " just '4Pane'" msgstr "" #: configuredialogs.xrc:1870 msgid " Show the currently-selected filepath in the titlebar" msgstr "" #: configuredialogs.xrc:1878 msgid "" "This is where you can see which file or directory is selected. You can also " "use Ctrl-C to copy it for use in external applications. Changes to this " "option won't take effect until 4Pane is restarted" msgstr "" #: configuredialogs.xrc:1881 msgid " Show the currently-selected filepath in the toolbar" msgstr "" #: configuredialogs.xrc:1889 msgid "" "4Pane supplies default icons for things like 'Copy' and 'Undo'. Tick this " "box to use your theme's icons instead" msgstr "" #: configuredialogs.xrc:1892 msgid " Whenever possible, use stock icons" msgstr "" #: configuredialogs.xrc:1900 msgid "" "4Pane stores 'trashed' files and directories, rather than deleting them. " "Even so, you may wish to be asked each time you try to do this; in which " "case, tick this box" msgstr "" #: configuredialogs.xrc:1903 msgid " Ask for confirmation before 'Trashcan'-ing files" msgstr "" #: configuredialogs.xrc:1911 msgid "4Pane stores 'deleted' files and directories in its own delete-bin" msgstr "" #: configuredialogs.xrc:1914 msgid " Ask for confirmation before Deleting files" msgstr "" #: configuredialogs.xrc:1926 msgid "Make the cans for trashed/deleted files in this directory" msgstr "" #: configuredialogs.xrc:1951 msgid "Configure &toolbar editors" msgstr "" #: configuredialogs.xrc:1954 msgid "" "This is where you can add/remove the icons on the toolbar that represent " "editors and similar apps. These open when clicked, or you can drag file(s) " "onto one to open them in that app." msgstr "" #: configuredialogs.xrc:1963 msgid "Configure &Previews" msgstr "" #: configuredialogs.xrc:1966 msgid "" "Here you can configure the dimensions of the image and text previews, and " "their trigger time" msgstr "" #: configuredialogs.xrc:1975 msgid "Configure &small-toolbar Tools" msgstr "" #: configuredialogs.xrc:1978 msgid "" "This is where you can add/remove buttons from the small toolbar at the top " "of each dir-view" msgstr "" #: configuredialogs.xrc:1987 msgid "Configure Too<ips" msgstr "" #: configuredialogs.xrc:1990 msgid "" "Configures whether and for how long tooltips are displayed. This is only " "partly effective: it currently doesn't work for toolbar tooltips." msgstr "" #: configuredialogs.xrc:2079 msgid "Select the Terminal application to be launched by Ctrl-T" msgstr "" #: configuredialogs.xrc:2094 configuredialogs.xrc:2190 #: configuredialogs.xrc:2286 msgid "Either one of the following" msgstr "" #: configuredialogs.xrc:2123 configuredialogs.xrc:2219 #: configuredialogs.xrc:2315 msgid "Or enter your own choice" msgstr "" #: configuredialogs.xrc:2138 msgid "" "Type in the exact command that will launch a terminal.\n" "Choose one that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2175 msgid "Which Terminal application should launch other programs?" msgstr "" #: configuredialogs.xrc:2234 msgid "" "Type in the exact command that will launch another program inside a terminal.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2271 msgid "Which Terminal program should launch a User-Defined Tool?" msgstr "" #: configuredialogs.xrc:2330 msgid "" "Type in the exact command that will launch another program inside a terminal, keeping the terminal open when the program exits.\n" "Choose a terminal that exists on your system ;)" msgstr "" #: configuredialogs.xrc:2433 msgid "Configure the Prompt and Font for the terminal emulator" msgstr "" #: configuredialogs.xrc:2441 msgid "Prompt. See the tooltip for details" msgstr "" #: configuredialogs.xrc:2459 msgid "" "This is the prompt for the in-house 'terminal' accessed by Ctrl-M or Ctrl-F6. You can use normal characters, but there are also the following options:\n" "%H = hostname %h = hostname up to the dot\n" "%u = username\n" "%w = cwd %W = the last segment only of cwd\n" "%$ gives either $, or # if root" msgstr "" #: configuredialogs.xrc:2494 configuredialogs.xrc:4356 #: configuredialogs.xrc:4394 configuredialogs.xrc:4501 #: configuredialogs.xrc:4539 msgid "Change" msgstr "Изменить" #: configuredialogs.xrc:2532 configuredialogs.xrc:4918 msgid "Use Default" msgstr "" #: configuredialogs.xrc:2637 msgid "Currently-known possible nfs servers" msgstr "" #: configuredialogs.xrc:2647 msgid "" "These are ip addresses of servers that are known to be, or have been, on " "your network" msgstr "" #: configuredialogs.xrc:2663 msgid "Delete the highlit server" msgstr "" #: configuredialogs.xrc:2678 msgid "Enter another server address" msgstr "" #: configuredialogs.xrc:2687 msgid "" "Write in the address of another server here (e.g. 192.168.0.2), then click " "'Add'" msgstr "" #: configuredialogs.xrc:2698 msgid "Add" msgstr "Добавить" #: configuredialogs.xrc:2714 msgid "Filepath for showmount" msgstr "" #: configuredialogs.xrc:2723 msgid "" "What is the filepath to the nfs helper showmount? Probably " "/usr/sbin/showmount" msgstr "" #: configuredialogs.xrc:2744 msgid "Path to samba dir" msgstr "" #: configuredialogs.xrc:2753 msgid "" "Where are files like smbclient and findsmb stored? Probably in /usr/bin/ (or" " symlinked from there)" msgstr "" #: configuredialogs.xrc:2832 msgid "4Pane allows you undo (and redo) most operations." msgstr "" #: configuredialogs.xrc:2839 msgid "What is the maximum number that can be undone?" msgstr "" #: configuredialogs.xrc:2846 msgid "(NB. See the tooltip)" msgstr "" #: configuredialogs.xrc:2855 msgid "" "Whenever you Paste/Move/Rename/Delete/etc files, the process is stored so that it can later be undone, and then redone if desired. This is the maximum number of such Undo's\n" "Note that if you delete the contents of a dir containing 100 files, this counts as 100 procedures! So I suggest that the number here should be fairly large: at least 10000" msgstr "" #: configuredialogs.xrc:2872 msgid "The number of items at a time on a drop-down menu." msgstr "" #: configuredialogs.xrc:2879 msgid "(See the tooltip)" msgstr "" #: configuredialogs.xrc:2888 msgid "" "This refers to the Undo and Redo drop-down buttons, and the dir-view toolbar ones for navigating to recently visited directories.\n" "What is the maximum number items to display per menu page? I suggest 15. You can get to earlier items a page-worth at a time." msgstr "" #: configuredialogs.xrc:2976 msgid "Some messages are shown briefly, then disappear." msgstr "" #: configuredialogs.xrc:2983 msgid "For how many seconds should they last?" msgstr "" #: configuredialogs.xrc:3002 msgid "'Success' message dialogs" msgstr "" #: configuredialogs.xrc:3011 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a \"Success\" message" msgstr "" #: configuredialogs.xrc:3027 msgid "'Failed because...' dialogs" msgstr "" #: configuredialogs.xrc:3036 msgid "" "There are some dialogs that provide a message, such as \"Success\" or " "\"Oops, that didn't work\", and close themselves automatically after a few " "seconds. This figure is the number of seconds to show a Failure message, " "which needs to be longer than a Success one to give you a chance to read it" msgstr "" #: configuredialogs.xrc:3052 msgid "Statusbar messages" msgstr "" #: configuredialogs.xrc:3061 msgid "" "Some procedures e.g. mounting a partition, give a success message in the " "statusbar. This determines how long such a message persists" msgstr "" #: configuredialogs.xrc:3155 msgid "Which front-end do you wish to use to perform tasks as root?" msgstr "" #: configuredialogs.xrc:3177 msgid "" "Tick this box to have 4Pane manage running commands as root, either by " "calling su or sudo (depending on your distro or setup)" msgstr "" #: configuredialogs.xrc:3180 msgid " 4Pane's own one" msgstr "" #: configuredialogs.xrc:3188 msgid "It should call:" msgstr "" #: configuredialogs.xrc:3191 msgid "" "Some distros (ubuntu and similar) use sudo to become superuser; most others " "use su. Select which is appropriate for you." msgstr "" #: configuredialogs.xrc:3196 msgid "su" msgstr "" #: configuredialogs.xrc:3197 msgid "sudo" msgstr "" #: configuredialogs.xrc:3212 msgid "" "Check the box if you want 4Pane to store the password and provide it " "automatically if needed. For security reasons the longest permitted time is " "60 minutes" msgstr "" #: configuredialogs.xrc:3215 msgid " Store passwords for:" msgstr "" #: configuredialogs.xrc:3233 msgid "min" msgstr "" #: configuredialogs.xrc:3244 msgid "" "If this box is checked, every time the password is supplied the time-limit " "will be renewed" msgstr "" #: configuredialogs.xrc:3247 msgid " Restart time with each use" msgstr "" #: configuredialogs.xrc:3268 msgid "" "An external program e.g. gksu. Only ones available on your system will be " "selectable" msgstr "" #: configuredialogs.xrc:3271 msgid " An external program:" msgstr "" #: configuredialogs.xrc:3284 msgid " kdesu" msgstr "" #: configuredialogs.xrc:3292 msgid " gksu" msgstr "" #: configuredialogs.xrc:3300 msgid " gnomesu" msgstr "" #: configuredialogs.xrc:3308 msgid " Other..." msgstr "" #: configuredialogs.xrc:3310 msgid "" "Enter your own choice of application, including any necessary options. It " "would be best if it were available on your system..." msgstr "" #: configuredialogs.xrc:3399 msgid "" "The first 3 buttons configure File-opening, D'n'D and the statusbar\n" "The fourth exports 4Pane's configuration: see the tooltip" msgstr "" #: configuredialogs.xrc:3415 msgid "Configure &Opening Files" msgstr "" #: configuredialogs.xrc:3418 msgid "Click to tell 4Pane how you prefer it to open files" msgstr "" #: configuredialogs.xrc:3427 msgid "Configure &Drag'n'Drop" msgstr "" #: configuredialogs.xrc:3430 msgid "Click to configure the behaviour of Drag and Drop" msgstr "" #: configuredialogs.xrc:3439 msgid "Configure &Statusbar" msgstr "" #: configuredialogs.xrc:3442 msgid "Click to configure the statusbar sections" msgstr "" #: configuredialogs.xrc:3451 msgid "&Export Configuration File" msgstr "" #: configuredialogs.xrc:3454 msgid "" "Click to save bits of your configuration as ~/4Pane.conf. Very few people " "will need to do this; probably only distro packagers. For more details, " "press F1 after clicking." msgstr "" #: configuredialogs.xrc:3555 msgid "Command to be run:" msgstr "" #: configuredialogs.xrc:3564 msgid "" "Type in the name of the application or script to be run. If it is in your PATH, you should get away with just the name e.g. 'df'. Otherwise you will need the full filepath e.g. '/usr/X11R6/bin/foo'\n" "\n" "Parameters: \n" "%s will pass the selected file or folder to the application, %f (%d) a file (directory) only.\n" "%a will pass all of the active pane's selected items, %b one selection from both fileview panes.\n" "%p will prompt you for a parameter to pass to the application" msgstr "" #: configuredialogs.xrc:3578 msgid "Click to browse for the application to run" msgstr "" #: configuredialogs.xrc:3596 configuredialogs.xrc:3912 msgid "Tick if you want the tool to be run in a Terminal" msgstr "" #: configuredialogs.xrc:3599 configuredialogs.xrc:3915 msgid "Run in a Terminal" msgstr "" #: configuredialogs.xrc:3607 configuredialogs.xrc:3923 msgid "" "Some programs need a terminal both to run in, and to display the results. If" " you tick this checkbox, the terminal will stay visible when the program is " "finished, to give you a chance to look at the output." msgstr "" #: configuredialogs.xrc:3610 configuredialogs.xrc:3926 msgid "Keep terminal open" msgstr "" #: configuredialogs.xrc:3618 configuredialogs.xrc:3934 msgid "" "Tick if you want the current pane to be automatically updated when the tool " "has finished" msgstr "" #: configuredialogs.xrc:3621 configuredialogs.xrc:3937 msgid "Refresh pane after" msgstr "" #: configuredialogs.xrc:3629 configuredialogs.xrc:3945 msgid "Tick if you want the other pane to be updated too" msgstr "" #: configuredialogs.xrc:3632 configuredialogs.xrc:3948 msgid "Refresh opposite pane too" msgstr "" #: configuredialogs.xrc:3640 configuredialogs.xrc:3956 msgid "" "Tick if you want the tool to be run with superuser privileges, but not in a " "terminal (in a terminal, you can use 'sudo' or 'su -c' anyway)" msgstr "" #: configuredialogs.xrc:3643 configuredialogs.xrc:3959 msgid "Run command as root" msgstr "" #: configuredialogs.xrc:3666 msgid "Label to display in the menu:" msgstr "" #: configuredialogs.xrc:3689 msgid "Add it to this menu:" msgstr "" #: configuredialogs.xrc:3698 msgid "" "These are the menus that are currently available. Select one, or add a new " "one" msgstr "" #: configuredialogs.xrc:3710 msgid "&New Menu" msgstr "" #: configuredialogs.xrc:3713 msgid "Add a new menu or submenu to the list" msgstr "" #: configuredialogs.xrc:3723 msgid "&Delete Menu" msgstr "" #: configuredialogs.xrc:3726 msgid "Delete the currently-selected menu or submenu" msgstr "" #: configuredialogs.xrc:3746 msgid "Add the &Tool" msgstr "" #: configuredialogs.xrc:3749 msgid "Click to add the new tool" msgstr "Кликните Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ инÑтрумента" #: configuredialogs.xrc:3840 msgid "Select a command, then click 'Edit this Command'" msgstr "Выберите команду и затем кликните 'Edit this Command' (редактировать)" #: configuredialogs.xrc:3862 configuredialogs.xrc:4088 msgid "Label in menu" msgstr "Метка в меню" #: configuredialogs.xrc:3871 msgid "" "Select the label of the command you want to edit. You can edit this too if " "you wish." msgstr "Отметьте метку команды которую Ð’Ñ‹ хотите редактировать. Ð’Ñ‹ можете её редактировать когда захотите." #: configuredialogs.xrc:3886 configuredialogs.xrc:4112 msgid "Command" msgstr "Команда" #: configuredialogs.xrc:3895 msgid "The command to be edited" msgstr "Команда Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ" #: configuredialogs.xrc:3975 msgid "&Edit this Command" msgstr "" #: configuredialogs.xrc:4065 msgid "Select an item, then click 'Delete this Command'" msgstr "" #: configuredialogs.xrc:4097 msgid "Select the label of the command you want to delete" msgstr "Выберите метку команды которую хотите удалить" #: configuredialogs.xrc:4121 msgid "The command to be deleted" msgstr "Команда Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ" #: configuredialogs.xrc:4137 msgid "&Delete this Command" msgstr "" #: configuredialogs.xrc:4221 msgid "Double-click an entry to change it" msgstr "Двойной щелчёк по запиÑи Ð´Ð»Ñ ÐµÑ‘ удалениÑ" #: configuredialogs.xrc:4234 msgid "" "Show the labels below without any mnemonic e.g. show 'Cut' instead of " "'C&ut'. You can still see and edit the mnemonic when you edit an item's " "label" msgstr "" #: configuredialogs.xrc:4237 msgid "Display labels without mnemonics" msgstr "Отображать метки без мнемоники" #: configuredialogs.xrc:4308 configuredialogs.xrc:4452 msgid "Select Colours" msgstr "" #: configuredialogs.xrc:4321 msgid "The colours shown below will be used alternately in a file-view pane" msgstr "" #: configuredialogs.xrc:4340 msgid " Current 1st Colour" msgstr "" #: configuredialogs.xrc:4379 msgid " Current 2nd Colour" msgstr "" #: configuredialogs.xrc:4465 msgid "" "Select the colour to use as the background for a pane.\n" "You can choose one colour for dir-views and another for file-views.\n" "Alternatively, tick the box to use the same one in both." msgstr "" #: configuredialogs.xrc:4486 msgid " Current Dir-view Colour" msgstr "" #: configuredialogs.xrc:4524 msgid " Current File-view Colour" msgstr "" #: configuredialogs.xrc:4552 msgid " Use the same colour for both types of pane" msgstr "" #: configuredialogs.xrc:4606 msgid "Select Pane Highlighting" msgstr "" #: configuredialogs.xrc:4619 msgid "" "A pane can optionally be highlit when focused. Here you can alter the degree" " of highlighting." msgstr "" #: configuredialogs.xrc:4626 msgid "For a dir-view, the highlight is in a narrow line above the toolbar." msgstr "" #: configuredialogs.xrc:4633 msgid "" "For a file-view, the colour change is to the header, which is much thicker." msgstr "" #: configuredialogs.xrc:4640 msgid "" "So I suggest you make the file-view 'offset' smaller, as the difference is " "more obvious" msgstr "" #: configuredialogs.xrc:4682 msgid " Dir-view focused" msgstr "" #: configuredialogs.xrc:4704 msgid "Baseline" msgstr "" #: configuredialogs.xrc:4726 msgid "File-view focused" msgstr "" #: configuredialogs.xrc:4807 msgid "Enter a Shortcut" msgstr "" #: configuredialogs.xrc:4826 msgid "Press the keys that you want to use for this function:" msgstr "" #: configuredialogs.xrc:4834 msgid " Dummy" msgstr "" #: configuredialogs.xrc:4859 msgid "Current" msgstr "" #: configuredialogs.xrc:4875 msgid "Clear" msgstr "" #: configuredialogs.xrc:4878 msgid "Click this if you don't want a shortcut for this action" msgstr "" #: configuredialogs.xrc:4902 msgid " Default:" msgstr "" #: configuredialogs.xrc:4910 msgid "Ctrl+Shift+Alt+M" msgstr "" #: configuredialogs.xrc:4921 msgid "Clicking this will enter the default accelerator seen above" msgstr "" #: configuredialogs.xrc:5002 msgid "Change Label" msgstr "" #: configuredialogs.xrc:5012 msgid " Change Help String" msgstr "" #: configuredialogs.xrc:5027 msgid "Duplicate Accelerator" msgstr "" #: configuredialogs.xrc:5045 msgid "This combination of keys is already used by:" msgstr "" #: configuredialogs.xrc:5053 msgid " Dummy" msgstr "" #: configuredialogs.xrc:5061 dialogs.xrc:489 dialogs.xrc:652 dialogs.xrc:790 #: dialogs.xrc:904 dialogs.xrc:1021 dialogs.xrc:1240 dialogs.xrc:1407 #: dialogs.xrc:1570 dialogs.xrc:1722 msgid "What would you like to do?" msgstr "" #: configuredialogs.xrc:5081 msgid "Choose different keys" msgstr "" #: configuredialogs.xrc:5089 msgid "Steal the other shortcut's keys" msgstr "" #: configuredialogs.xrc:5097 msgid "Give up" msgstr "" #: configuredialogs.xrc:5112 dialogs.xrc:4595 msgid "&Try Again" msgstr "" #: configuredialogs.xrc:5115 msgid "Return to the dialog to make another choice of keys" msgstr "" #: configuredialogs.xrc:5126 msgid "&Override" msgstr "" #: configuredialogs.xrc:5129 msgid "" "Use your selection anyway. You will be given the opportunity to make a new " "choice for the shortcut that is currently using them." msgstr "" #: configuredialogs.xrc:5142 msgid "The shortcut will revert to its previous value, if any" msgstr "" #: configuredialogs.xrc:5177 msgid "How are plugged-in devices detected?" msgstr "" #: configuredialogs.xrc:5180 msgid "" "Until the 2.4 kernel, usb pens and similar weren't detected at all. 2.4 " "kernels introduced the usb-storage method. More recent distros with 2.6 " "kernels usually use the udev/hal system. In between a few distros (e.g. SuSE" " 9.2) did something odd involving /etc/mtab" msgstr "" #: configuredialogs.xrc:5185 msgid "The original, usb-storage, method" msgstr "" #: configuredialogs.xrc:5186 msgid "By looking in mtab" msgstr "" #: configuredialogs.xrc:5187 msgid "The new, udev/hal, method" msgstr "" #: configuredialogs.xrc:5196 msgid "Floppy drives mount automatically" msgstr "" #: configuredialogs.xrc:5205 msgid "DVD-ROM etc drives mount automatically" msgstr "" #: configuredialogs.xrc:5214 msgid "Removable devices mount automatically" msgstr "" #: configuredialogs.xrc:5306 msgid "Which file (if any) holds data about a newly-inserted device?" msgstr "" #: configuredialogs.xrc:5326 msgid "Floppies" msgstr "" #: configuredialogs.xrc:5336 configuredialogs.xrc:5383 #: configuredialogs.xrc:5429 msgid "" "This applies mostly to non-automounting distros, some of which insert " "information about devices directly into either /etc/mtab or /etc/fstab." msgstr "" #: configuredialogs.xrc:5341 configuredialogs.xrc:5388 #: configuredialogs.xrc:5434 msgid "mtab" msgstr "" #: configuredialogs.xrc:5342 configuredialogs.xrc:5389 #: configuredialogs.xrc:5435 msgid "fstab" msgstr "" #: configuredialogs.xrc:5343 configuredialogs.xrc:5390 #: configuredialogs.xrc:5436 msgid "none" msgstr "" #: configuredialogs.xrc:5352 configuredialogs.xrc:5399 #: configuredialogs.xrc:5445 msgid "" "Some distros (eg Mandriva 10.1) use Supermount to help manage disk-changes." " If so, a device's fstab entry may start with 'none' instead of the device " "name. In which case, check this box." msgstr "" #: configuredialogs.xrc:5355 configuredialogs.xrc:5402 #: configuredialogs.xrc:5448 msgid "Supermounts" msgstr "" #: configuredialogs.xrc:5373 msgid "CDRoms etc" msgstr "" #: configuredialogs.xrc:5419 msgid "USB devices" msgstr "" #: configuredialogs.xrc:5550 msgid "Check how often for newly-attached usb devices?" msgstr "" #: configuredialogs.xrc:5564 msgid "" "4Pane checks to see if any removable devices have been removed, or new ones " "added. How often should this happen?" msgstr "" #: configuredialogs.xrc:5575 msgid "seconds" msgstr "" #: configuredialogs.xrc:5591 msgid "How should multicard usb readers be displayed?" msgstr "" #: configuredialogs.xrc:5600 msgid "" "Multicard readers usually register as a separate device for each slot.\n" "By default only slots with a card inserted are displayed.\n" "If you tick here, each empty slot will get a button too, so a 13-slot device will always have 13 buttons!" msgstr "" #: configuredialogs.xrc:5603 msgid " Add buttons even for empty slots" msgstr "" #: configuredialogs.xrc:5616 msgid "What to do if 4Pane has mounted a usb device?" msgstr "" #: configuredialogs.xrc:5625 msgid "" "Do you want to unmount before exiting? This only applies to removable " "devices, and only if your distro is non-automounting" msgstr "" #: configuredialogs.xrc:5628 msgid " Ask before unmounting it on exit" msgstr "" #: configuredialogs.xrc:5715 configuredialogs.xrc:5914 #: configuredialogs.xrc:6112 msgid "For information, please read the tooltips" msgstr "" #: configuredialogs.xrc:5734 msgid "Which file contains partition data?" msgstr "" #: configuredialogs.xrc:5743 msgid "The list of known partitions. Default: /proc/partitions" msgstr "" #: configuredialogs.xrc:5757 msgid "Which dir contains device data?" msgstr "" #: configuredialogs.xrc:5766 msgid "Holds 'files' like hda1, sda1. Currently /dev/" msgstr "" #: configuredialogs.xrc:5779 msgid "Which file(s) contains Floppy info" msgstr "" #: configuredialogs.xrc:5788 msgid "" "Floppy info can usually be found in /sys/block/fd0, /sys/block/fd1 etc.\n" "Don't put the 0, 1 bit in here, only /sys/block/fd or whatever" msgstr "" #: configuredialogs.xrc:5801 msgid "Which file contains CD/DVDROM info" msgstr "" #: configuredialogs.xrc:5810 msgid "" "Information about fixed devices like cdroms can usually be found in " "/proc/sys/dev/cdrom/info. Alter it if that has changed" msgstr "" #: configuredialogs.xrc:5828 configuredialogs.xrc:6026 #: configuredialogs.xrc:6179 msgid "Reload Defaults" msgstr "" #: configuredialogs.xrc:5933 msgid "2.4 kernels: usb-storage" msgstr "" #: configuredialogs.xrc:5942 msgid "" "2.4 kernels detect removable devices and add a dir called /proc/scsi/usb-storage-0, storage-1 etc.\n" "Just put the /proc/scsi/usb-storage- bit here" msgstr "" #: configuredialogs.xrc:5955 msgid "2.4 kernels: removable device list" msgstr "" #: configuredialogs.xrc:5964 msgid "" "2.4 kernels keep a list of attached/previously-attached removable devices.\n" "Probably /proc/scsi/scsi" msgstr "" #: configuredialogs.xrc:5977 msgid "Node-names for removable devices" msgstr "" #: configuredialogs.xrc:5986 msgid "" "What device node is given to removable devices like usb-pens? Probably /dev/sda, sdb1 etc\n" "Just put the /dev/sd bit here" msgstr "" #: configuredialogs.xrc:5999 msgid "2.6 kernels: removable device info dir" msgstr "" #: configuredialogs.xrc:6008 msgid "" "In 2.6 kernels some removable-device info is found here\n" "Probably /sys/bus/scsi/devices" msgstr "" #: configuredialogs.xrc:6130 msgid "What is the LVM prefix?" msgstr "" #: configuredialogs.xrc:6139 msgid "" "By what name are Logical Volume Management 'partitions' called e.g. dm-0\n" "Only put in the dm- bit" msgstr "" #: configuredialogs.xrc:6152 msgid "More LVM stuff. See the tooltip" msgstr "" #: configuredialogs.xrc:6161 msgid "" "Where are the proc 'block' files? This is needed to help manage LVM stuff.\n" "Probably /dev/.udevdb/block@foo. Just enter the '/dev/.udevdb/block@' bit" msgstr "" #: configuredialogs.xrc:6279 msgid "" "Pick a Drive to configure\n" "Or 'Add a Drive' to add" msgstr "" #: configuredialogs.xrc:6311 configuredialogs.xrc:6480 msgid "Add a Dri&ve" msgstr "" #: configuredialogs.xrc:6321 configuredialogs.xrc:6490 msgid "&Edit this Drive" msgstr "" #: configuredialogs.xrc:6330 configuredialogs.xrc:6500 msgid "&Delete this Drive" msgstr "" #: configuredialogs.xrc:6421 msgid "" "Fixed drives should have been found automatically,\n" "but if one was missed or you want to alter some data\n" "you can do so here." msgstr "" #: configuredialogs.xrc:6448 msgid "" "Select a drive to configure\n" "Or 'Add a Drive' to add one" msgstr "" #: configuredialogs.xrc:6571 msgid "Fake, used to test for this version of the file" msgstr "" #: configuredialogs.xrc:6576 msgid "Configure dir-view toolbar buttons" msgstr "" #: configuredialogs.xrc:6598 msgid "" "These are the buttons on the right-hand side of the small toolbar in each dir-view.\n" "They act as bookmarks: clicking one 'goes to' its destination filepath" msgstr "" #: configuredialogs.xrc:6628 configuredialogs.xrc:7264 msgid "Current Buttons" msgstr "" #: configuredialogs.xrc:6659 msgid "&Add a Button" msgstr "" #: configuredialogs.xrc:6669 msgid "&Edit this Button" msgstr "" #: configuredialogs.xrc:6678 msgid "&Delete this Button" msgstr "" #: configuredialogs.xrc:6714 msgid "Configure e.g. an Editor" msgstr "" #: configuredialogs.xrc:6762 moredialogs.xrc:745 moredialogs.xrc:860 msgid "Name" msgstr "" #: configuredialogs.xrc:6780 msgid "This is just a label so you will be able to recognise it. e.g. kwrite" msgstr "" #: configuredialogs.xrc:6800 configuredialogs.xrc:7449 msgid "Icon to use" msgstr "" #: configuredialogs.xrc:6817 msgid "Launch Command" msgstr "" #: configuredialogs.xrc:6835 msgid "" "This is the string that invokes the program. e.g. kwrite or " "/opt/gnome/bin/gedit" msgstr "" #: configuredialogs.xrc:6856 msgid "Working Directory to use (optional)" msgstr "" #: configuredialogs.xrc:6874 dialogs.xrc:3353 msgid "" "You can optionally provide a working directory. If you do, it will be 'cd'ed" " to before running the command. Most commands won't need this; in " "particular, it won't be needed for any commands that can be launched without" " a Path e.g. kwrite" msgstr "У Ð’Ð°Ñ ÐµÑть возможноÑть уÑтановить рабочий директорий. ЕÑли Ð’Ñ‹ Ñто Ñделаете, перед запуÑком команды Ð’Ñ‹ окажетеÑÑŒ там через cd. Ð”Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð½Ñтва команд в Ñтом нет необходимоÑти; в чаÑтноÑти, Ñто Вам не требуетÑÑ Ð´Ð»Ñ Ð»ÑŽÐ±Ð¾Ð¹ команды выполнÑемой без пути, например kwrite." #: configuredialogs.xrc:6903 msgid "" "For example, if pasted with several files, GEdit can open them in tabs." msgstr "" #: configuredialogs.xrc:6906 msgid "Accepts Multiple Input" msgstr "" #: configuredialogs.xrc:6915 msgid "" "Don't load the icon for this program. Its configuration is retained, and you" " can 'unignore' it in the future" msgstr "" #: configuredialogs.xrc:6918 msgid "Ignore this program" msgstr "" #: configuredialogs.xrc:6985 msgid "Select Icon" msgstr "" #: configuredialogs.xrc:7009 msgid "" "Current\n" "Selection" msgstr "" #: configuredialogs.xrc:7036 msgid "" "Click an icon to Select it\n" "or Browse to search for others" msgstr "" #: configuredialogs.xrc:7051 msgid "&Browse" msgstr "" #: configuredialogs.xrc:7116 msgid "New Icon" msgstr "" #: configuredialogs.xrc:7148 msgid "Add this Icon?" msgstr "" #: configuredialogs.xrc:7211 msgid "Configure Editors etc" msgstr "" #: configuredialogs.xrc:7233 msgid "" "These programs can be launched by clicking a button\n" "on the toolbar or by dragging a file onto the button.\n" "An obvious example would be a text editor such as\n" "kwrite, but it can be any program you wish." msgstr "" #: configuredialogs.xrc:7295 msgid "&Add a Program" msgstr "" #: configuredialogs.xrc:7305 msgid "&Edit this Program" msgstr "" #: configuredialogs.xrc:7315 msgid "&Delete this Program" msgstr "" #: configuredialogs.xrc:7356 msgid "Configure a small-toolbar icon" msgstr "" #: configuredialogs.xrc:7402 msgid "Filepath" msgstr "" #: configuredialogs.xrc:7411 msgid "Enter the filepath that you want to go to when the button is clicked" msgstr "" #: configuredialogs.xrc:7428 msgid "Click to browse for the new filepath" msgstr "" #: configuredialogs.xrc:7456 msgid "(Click to change)" msgstr "" #: configuredialogs.xrc:7474 msgid "Label e.g. 'Music' or '/usr/share/'" msgstr "" #: configuredialogs.xrc:7483 msgid "" "Supplying a label is optional, and won't display most of the time. However " "when in gtk3 there's not enough space to display all the icons, the overflow" " panel shows only the label, not the icon; so without a label there's a " "blank space." msgstr "" #: configuredialogs.xrc:7503 msgid "Optional Tooltip Text" msgstr "" #: configuredialogs.xrc:7574 msgid "Configure Drag and Drop" msgstr "" #: configuredialogs.xrc:7588 msgid "Choose which keys should do the following:" msgstr "" #: configuredialogs.xrc:7628 msgid "Move:" msgstr "" #: configuredialogs.xrc:7660 msgid "Copy:" msgstr "" #: configuredialogs.xrc:7692 msgid "Hardlink:" msgstr "" #: configuredialogs.xrc:7724 msgid "Softlink:" msgstr "" #: configuredialogs.xrc:7758 msgid "Alter these values to change D'n'D triggering sensitivity" msgstr "" #: configuredialogs.xrc:7776 msgid "Horizontal" msgstr "" #: configuredialogs.xrc:7785 msgid "" "How far left and right should the mouse move before D'n'D is triggered? " "Default value 10" msgstr "" #: configuredialogs.xrc:7804 msgid "Vertical" msgstr "" #: configuredialogs.xrc:7813 msgid "" "How far up and down should the mouse move before D'n'D is triggered? Default" " value 15" msgstr "" #: configuredialogs.xrc:7832 msgid "How many lines to scroll per mouse-wheel click" msgstr "" #: configuredialogs.xrc:7841 msgid "" "If it can't be found from your system settings, this determines how " "sensitive the mouse-wheel is, during Drag-and-Drop only" msgstr "" #: configuredialogs.xrc:7903 msgid "Configure the Statusbar" msgstr "" #: configuredialogs.xrc:7917 msgid "The statusbar has four sections. Here you can adjust their proportions" msgstr "" #: configuredialogs.xrc:7925 msgid "(Changes won't take effect until you restart 4Pane)" msgstr "" #: configuredialogs.xrc:7945 msgid "Menu-item help" msgstr "" #: configuredialogs.xrc:7953 configuredialogs.xrc:8059 msgid "(Default 5)" msgstr "" #: configuredialogs.xrc:7963 msgid "Occasionally-helpful messages when you hover over a menu item" msgstr "" #: configuredialogs.xrc:7981 msgid "Success Messages" msgstr "" #: configuredialogs.xrc:7989 msgid "(Default 3)" msgstr "" #: configuredialogs.xrc:7999 msgid "" "Messages like \"Successfully deleted 15 files\". These messages disappear " "after a configurable number of seconds" msgstr "" #: configuredialogs.xrc:8016 msgid "Filepaths" msgstr "" #: configuredialogs.xrc:8024 msgid "(Default 8)" msgstr "" #: configuredialogs.xrc:8034 msgid "" "Information about the currently-selected file or directory; usually its " "type, name and size" msgstr "" #: configuredialogs.xrc:8051 msgid "Filters" msgstr "" #: configuredialogs.xrc:8069 msgid "" "What is the focused pane showing: D=directories F=files H=hidden files R=recursive subdirectory size.\n" "Any filter is also shown e.g. f*.txt for textfiles beginning with 'f'" msgstr "" #: configuredialogs.xrc:8133 msgid "Export Data" msgstr "" #: configuredialogs.xrc:8147 msgid "" "This is where, should you wish, you can export part of your configuration " "data to a file called 4Pane.conf." msgstr "" #: configuredialogs.xrc:8155 msgid "If you're tempted, press F1 for more details." msgstr "" #: configuredialogs.xrc:8163 msgid "Deselect any types of data you don't want to export" msgstr "" #: configuredialogs.xrc:8176 msgid "" "Tools e.g. 'df -h' to supply by default. See the manual for more details" msgstr "" #: configuredialogs.xrc:8179 msgid " User-defined Tools data" msgstr "" #: configuredialogs.xrc:8187 msgid "" "Which editor(s) e.g. gedit, kwrite, should have an icon added to the toolbar" " by default" msgstr "Иконки каких редакторов, например gedit, kwrite, необходимо добавить в панель ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию" #: configuredialogs.xrc:8190 msgid " Editors data" msgstr "Редакторы данных" #: configuredialogs.xrc:8198 msgid "" "Things from 'Configure 4Pane > Devices'. See the manual for more details" msgstr "Параметры из 'Configure 4Pane > Devices'. Смотрите руководÑтво Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… Ñведений" #: configuredialogs.xrc:8201 msgid " Device-mounting data" msgstr "Данные по монтированию уÑтройÑтва" #: configuredialogs.xrc:8209 msgid "" "Things from 'Configure 4Pane > Terminals'. See the manual for more details" msgstr "Параметры из 'Configure 4Pane > Terminals'. Смотрите руководÑтво Ð´Ð»Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… Ñведений" #: configuredialogs.xrc:8212 msgid " Terminal-related data" msgstr "Данные завиÑÑщие от терминала" #: configuredialogs.xrc:8220 msgid "" "The contents of the 'Open With...' dialog, and which programs should open " "which MIME types" msgstr "" #: configuredialogs.xrc:8223 msgid "'Open With' data" msgstr "Данные 'открыть Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ'" #: configuredialogs.xrc:8238 msgid " Export Data" msgstr "Отправка данных" #: configuredialogs.xrc:8267 msgid "Configure Previews" msgstr "ÐаÑтроить предварительное изображение" #: configuredialogs.xrc:8306 msgid "Maximum width (px)" msgstr "МакÑимальный размер по ширине (px)" #: configuredialogs.xrc:8314 msgid "Maximum height (px)" msgstr "МакÑимальный размер по выÑоте (px)" #: configuredialogs.xrc:8322 msgid "Images:" msgstr "ИзображениÑ:" #: configuredialogs.xrc:8350 msgid "Text files:" msgstr "ТекÑтовые файлы" #: configuredialogs.xrc:8385 msgid "Preview trigger delay, in tenths of seconds:" msgstr "Задержка запуÑка предварительного проÑмотра в деÑÑтых долÑÑ… Ñекунды:" #: configuredialogs.xrc:8457 msgid "Configure File Opening" msgstr "ÐаÑтроить открытие файла" #: configuredialogs.xrc:8471 msgid "" "How do you want 4Pane to try to open e.g. a text file in an editor.\n" "Use either the system way, 4Pane's built-in way, or both.\n" "If both, which should be tried first?" msgstr "" #: configuredialogs.xrc:8491 msgid "Use your system's method" msgstr "" #: configuredialogs.xrc:8500 msgid "Use 4Pane's method" msgstr "" #: configuredialogs.xrc:8515 msgid "Prefer the system way" msgstr "" #: configuredialogs.xrc:8524 msgid "Prefer 4Pane's way" msgstr "" #: dialogs.xrc:42 msgid "&Locate" msgstr "" #: dialogs.xrc:66 msgid "Clea&r" msgstr "" #: dialogs.xrc:76 msgid "Cl&ose" msgstr "" #: dialogs.xrc:116 msgid "Can't Read" msgstr "" #: dialogs.xrc:134 msgid "I'm afraid you don't have Read permission for" msgstr "" #: dialogs.xrc:143 msgid "a Pretend q" msgstr "" #: dialogs.xrc:164 dialogs.xrc:711 dialogs.xrc:940 dialogs.xrc:1469 #: dialogs.xrc:1633 msgid "&Skip" msgstr "" #: dialogs.xrc:167 msgid "Skip just this file" msgstr "ПропуÑтить только Ñтот файл" #: dialogs.xrc:182 msgid "Skip &All" msgstr "" #: dialogs.xrc:185 msgid "Skip any other files where I don't have Read permission" msgstr "ПропуÑтить вÑе другие файлы, Ð´Ð»Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… не разрешено чтение" #: dialogs.xrc:200 msgid "Tsk Tsk!" msgstr "" #: dialogs.xrc:218 msgid "You seem to be trying to join" msgstr "" #: dialogs.xrc:226 dialogs.xrc:249 dialogs.xrc:1943 dialogs.xrc:1983 #: dialogs.xrc:2476 msgid "Pretend" msgstr "" #: dialogs.xrc:241 msgid "to one of its descendants" msgstr "" #: dialogs.xrc:257 msgid "This is certainly illegal and probably immoral" msgstr "Это определенно незаконно и, возможно, аморально" #: dialogs.xrc:279 msgid " I'm &Sorry :-(" msgstr "" #: dialogs.xrc:282 msgid "Click to apologise" msgstr "Ðажмите, чтобы извинитьÑÑ" #: dialogs.xrc:321 msgid "What would you like the new name to be?" msgstr "Как бы Ð’Ñ‹ хотели назвать файл?" #: dialogs.xrc:331 msgid "Type in the new name" msgstr "Введите новое название" #: dialogs.xrc:391 dialogs.xrc:540 msgid "Overwrite or Rename" msgstr "" #: dialogs.xrc:423 dialogs.xrc:571 dialogs.xrc:1328 msgid "There is already a file here with the name" msgstr "Файл Ñ Ñ‚Ð°ÐºÐ¸Ð¼ названием уже ÑущеÑтвует здеÑÑŒ " #: dialogs.xrc:504 dialogs.xrc:669 dialogs.xrc:1255 dialogs.xrc:1424 #: dialogs.xrc:1585 msgid "&Overwrite it" msgstr "" #: dialogs.xrc:513 dialogs.xrc:690 msgid "&Rename Incoming File" msgstr "Переименовать входÑщий файл" #: dialogs.xrc:678 dialogs.xrc:1433 msgid " Overwrite &All" msgstr "" #: dialogs.xrc:681 dialogs.xrc:1436 msgid "Overwrite all files when there is a name clash" msgstr "" #: dialogs.xrc:699 msgid " Re&name All" msgstr "" #: dialogs.xrc:702 msgid "Go straight to the RENAME dialog when there is a name clash" msgstr "" #: dialogs.xrc:714 dialogs.xrc:943 dialogs.xrc:1472 dialogs.xrc:1636 #: dialogs.xrc:1740 msgid "Skip this item" msgstr "" #: dialogs.xrc:723 dialogs.xrc:952 dialogs.xrc:1481 dialogs.xrc:1645 msgid "S&kip All" msgstr "" #: dialogs.xrc:726 dialogs.xrc:1484 msgid "Skip all files where there is a name clash" msgstr "" #: dialogs.xrc:759 msgid "Rename or cancel" msgstr "" #: dialogs.xrc:782 msgid "There is already a directory here with this name." msgstr "Уже ÑущеÑтвует Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем." #: dialogs.xrc:813 dialogs.xrc:919 msgid "&Rename Incoming Dir" msgstr "" #: dialogs.xrc:851 dialogs.xrc:1683 msgid "Rename or skip" msgstr "Переименовать или пропуÑтить" #: dialogs.xrc:874 dialogs.xrc:1540 msgid "There is already a Directory here with the name" msgstr "" #: dialogs.xrc:928 msgid "Rename &All" msgstr "" #: dialogs.xrc:931 msgid "Go straight to the RENAME dialog for all conflicting names" msgstr "Ðачать Ñмену названий Ð´Ð»Ñ Ð²Ñех конфликтных имен " #: dialogs.xrc:955 dialogs.xrc:1648 dialogs.xrc:1752 msgid "Skip all items where there is a name clash" msgstr "" #: dialogs.xrc:990 msgid "Query duplicate in archive" msgstr "" #: dialogs.xrc:1013 msgid "There is already a file with this name in the archive" msgstr "Файл Ñ Ñ‚Ð°ÐºÐ¸Ð¼ названием уже ÑущеÑтвует в Ñтом архиве" #: dialogs.xrc:1036 msgid "&Store a duplicate of it" msgstr "Сохранить копию Ñтого" #: dialogs.xrc:1039 msgid "" "Inside an archive you're allowed to have two identical items with the same " "name. If that's what you want (and you'll presumably have a good reason :/ )" " click this button" msgstr "Внутри архива Ð’Ñ‹ разрешаете раÑположение двух идентичных объектов Ñ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñ‹Ð¼ названием. ЕÑли Ñто то, чего вы хотите ( и вероÑтно имеете хорошую причину Ð´Ð»Ñ Ñтого :/ ) - нажмите Ñту кнопку" #: dialogs.xrc:1066 msgid "Duplicate by Renaming in archive" msgstr "" #: dialogs.xrc:1089 msgid "Sorry, you can't do a direct duplication within an archive" msgstr "" #: dialogs.xrc:1097 msgid "Would you like to duplicate by renaming instead?" msgstr "" #: dialogs.xrc:1112 msgid "&Rename" msgstr "" #: dialogs.xrc:1115 msgid "Make a copy of each item or items, using a different name" msgstr "" #: dialogs.xrc:1142 msgid "Add to archive" msgstr "Добавить в архив" #: dialogs.xrc:1174 dialogs.xrc:1706 msgid "There is already an item here with the name" msgstr "Уже ÑущеÑтвует объект Ñ Ñ‚Ð°ÐºÐ¸Ð¼ названием" #: dialogs.xrc:1258 msgid "" "Delete the original file from the archive, and replace it with the incoming " "one" msgstr "" #: dialogs.xrc:1267 msgid "&Store both items" msgstr "" #: dialogs.xrc:1270 msgid "" "It's allowed inside an archive to have multiple files with the same name. " "Click this button if that's what you want (you'll presumably have a good " "reason :/ )" msgstr "" #: dialogs.xrc:1297 dialogs.xrc:1517 msgid "Overwrite or add to archive" msgstr "" #: dialogs.xrc:1445 dialogs.xrc:1609 msgid "S&tore both items" msgstr "" #: dialogs.xrc:1448 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1457 dialogs.xrc:1621 msgid " Store A&ll" msgstr "" #: dialogs.xrc:1460 msgid "" "Inside an archive you're allowed to have two files with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "" #: dialogs.xrc:1588 msgid "Replace the current dir with the incoming one" msgstr "" #: dialogs.xrc:1597 msgid "Overwrite &All" msgstr "" #: dialogs.xrc:1600 msgid "" "Replace the current dir with the incoming one, and do this for any other " "clashes" msgstr "" #: dialogs.xrc:1612 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's what you want (and you'll presumably have a good reason :/ ) click " "this button" msgstr "" #: dialogs.xrc:1624 msgid "" "Inside an archive you're allowed to have two dirs with the same name. If " "that's always what you want (and you'll presumably have a good reason :/ ) " "click this button" msgstr "Внутри архива Вам разрешено иметь два Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñ‹Ð¼Ð¸ именами. ЕÑли Ñто вÑÑ‘ что Ð’Ñ‹ хотите (и у Ð’Ð°Ñ Ð´Ð»Ñ Ñтого еÑть хороший резон :/ ) кликните по Ñтой кнопке" #: dialogs.xrc:1737 msgid "&Skip it" msgstr "" #: dialogs.xrc:1749 msgid "Skip &All Clashes" msgstr "" #: dialogs.xrc:1776 msgid "Abort all items" msgstr "Отменить вÑе пункты" #: dialogs.xrc:1810 msgid "You seem to want to overwrite this file with itself" msgstr "Похоже Ð’Ñ‹ хотите перезапиÑать Ñтот файл на Ñамого ÑебÑ" #: dialogs.xrc:1818 msgid "Does this mean:" msgstr "Это подразумевает:" #: dialogs.xrc:1840 msgid "I want to &DUPLICATE it" msgstr "" #: dialogs.xrc:1856 msgid "or:" msgstr "или:" #: dialogs.xrc:1873 msgid "&Oops, I didn't mean it" msgstr "" #: dialogs.xrc:1895 msgid "Make a Link" msgstr "Ñделать ÑÑылку" #: dialogs.xrc:1921 msgid " Create a new Link from:" msgstr "Создать новую ÑÑылку Ñ:" #: dialogs.xrc:1946 dialogs.xrc:1986 dialogs.xrc:2479 msgid "This is what you are trying to Link to" msgstr "Это то на что Ð’Ñ‹ пыталиÑÑŒ ÑоÑлатьÑÑ" #: dialogs.xrc:1967 msgid "Make the link in the following Directory:" msgstr "Сделать Ñту ÑÑылку на Ñледующий директорий:" #: dialogs.xrc:2011 msgid "What would you like to call the Link?" msgstr "Что Ð’Ñ‹ хотите вызвать Ñтой ÑÑылкой?" #: dialogs.xrc:2028 msgid "Keep the same name" msgstr "Сохранить то-же имÑ" #: dialogs.xrc:2037 msgid "Use the following Extension" msgstr "ИÑпользовать Ñледующее раÑширение" #: dialogs.xrc:2045 msgid "Use the following Name" msgstr "ИÑпользовать Ñледующее имÑ" #: dialogs.xrc:2067 msgid "Enter the extension you would like to add to the original filename" msgstr "ВвеÑти раÑширение которое Ð’Ñ‹ хотели бы добавить к оригинальному имени файла" #: dialogs.xrc:2077 msgid "Enter the name you would like to give this link" msgstr "ВвеÑти Ð¸Ð¼Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ðµ Ð’Ñ‹ хотели бы дать ÑÑылке" #: dialogs.xrc:2094 msgid "" "Check this box if you wish to make relative symlink(s) e.g. to ../../foo " "instead of /path/to/foo" msgstr "УÑтановите Ñтот флажок, еÑли вы хотите Ñоздать отноÑительную ÑимволичеÑкую ÑÑылку (и), например ../../foo вмеÑто /path/to/foo" #: dialogs.xrc:2097 msgid "Make Relative" msgstr "" #: dialogs.xrc:2105 msgid "" "Check this box if you wish these choices to be applied automatically to the " "rest of the items selected" msgstr "" #: dialogs.xrc:2108 dialogs.xrc:3669 msgid "Apply to all" msgstr "" #: dialogs.xrc:2128 msgid "" "If you've changed your mind about which type of link you want, chose again " "here." msgstr "" #: dialogs.xrc:2133 msgid "I want to make a Hard Link" msgstr "" #: dialogs.xrc:2134 msgid "I want to make a Soft link" msgstr "" #: dialogs.xrc:2173 msgid "Skip" msgstr "" #: dialogs.xrc:2210 msgid "Choose a name for the new item" msgstr "" #: dialogs.xrc:2228 msgid "Do you want a new File or a new Directory?" msgstr "" #: dialogs.xrc:2233 msgid "Make a new File" msgstr "" #: dialogs.xrc:2234 msgid "Make a new Directory" msgstr "" #: dialogs.xrc:2318 msgid "Choose a name for the new Directory" msgstr "" #: dialogs.xrc:2383 msgid "Add a Bookmark" msgstr "" #: dialogs.xrc:2404 msgid "Add the following to your Bookmarks:" msgstr "" #: dialogs.xrc:2415 msgid "This is the bookmark that will be created" msgstr "" #: dialogs.xrc:2440 msgid "What label would you like to give this bookmark?" msgstr "" #: dialogs.xrc:2460 dialogs.xrc:3383 msgid "Add it to the following folder:" msgstr "" #: dialogs.xrc:2493 msgid "Change &Folder" msgstr "" #: dialogs.xrc:2496 msgid "" "Click if you want to save this bookmark in a different folder, or to create " "a new folder" msgstr "" #: dialogs.xrc:2557 msgid "Edit a Bookmark" msgstr "" #: dialogs.xrc:2573 msgid "Make any required alterations below" msgstr "" #: dialogs.xrc:2595 msgid "Current Path" msgstr "" #: dialogs.xrc:2606 msgid "This is current Path" msgstr "" #: dialogs.xrc:2620 msgid "Current Label" msgstr "" #: dialogs.xrc:2631 msgid "This is the current Label" msgstr "" #: dialogs.xrc:2691 msgid "Manage Bookmarks" msgstr "" #: dialogs.xrc:2717 dialogs.xrc:3415 msgid "&New Folder" msgstr "" #: dialogs.xrc:2720 msgid "Create a new Folder" msgstr "" #: dialogs.xrc:2734 msgid "New &Separator" msgstr "" #: dialogs.xrc:2737 msgid "Insert a new Separator" msgstr "" #: dialogs.xrc:2751 msgid "&Edit Selection" msgstr "" #: dialogs.xrc:2754 msgid "Edit the highlit item" msgstr "" #: dialogs.xrc:2768 msgid "&Delete" msgstr "" #: dialogs.xrc:2771 msgid "Delete the highlit item" msgstr "" #: dialogs.xrc:2860 msgid "Open with:" msgstr "" #: dialogs.xrc:2880 msgid "" "Type in the path & name of the application to use, if you know it. If not, " "browse, or choose from the list below." msgstr "" #: dialogs.xrc:2895 dialogs.xrc:3253 msgid "Click to browse for the application to use" msgstr "" #: dialogs.xrc:2927 msgid "&Edit Application" msgstr "" #: dialogs.xrc:2930 msgid "Edit the selected Application" msgstr "" #: dialogs.xrc:2944 msgid "&Remove Application" msgstr "" #: dialogs.xrc:2947 msgid "Remove the selected Application from the folder" msgstr "" #: dialogs.xrc:2970 msgid "&Add Application" msgstr "" #: dialogs.xrc:2973 msgid "Add the Application to the selected folder below" msgstr "" #: dialogs.xrc:3001 msgid " Add &Folder" msgstr "" #: dialogs.xrc:3004 msgid "Add a folder to the tree below" msgstr "" #: dialogs.xrc:3018 msgid "Remove F&older" msgstr "" #: dialogs.xrc:3021 msgid "Remove the selected folder from the tree below" msgstr "" #: dialogs.xrc:3054 msgid "Click an application to select" msgstr "" #: dialogs.xrc:3078 dialogs.xrc:3449 msgid "Tick the box to open the file with this application within a terminal" msgstr "" #: dialogs.xrc:3081 dialogs.xrc:3452 msgid "Open in terminal" msgstr "Открыть в терминале" #: dialogs.xrc:3089 dialogs.xrc:3460 msgid "" "Tick the box if in the future you want this application to be called " "automatically to launch this type of file" msgstr "Взведите флажок, еÑли хотите что-бы Ñто приложение вызывалоÑÑŒ автоматичеÑки Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñка файлов такого типа" #: dialogs.xrc:3092 dialogs.xrc:3463 msgid "Always use the selected application for this kind of file" msgstr "Ð’Ñегда иÑпользовать выбранное приложение Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² такого типа" #: dialogs.xrc:3156 msgid "Add an Application" msgstr "Добавить приложение" #: dialogs.xrc:3174 msgid "Label to give the Application (optional)" msgstr "" #: dialogs.xrc:3194 msgid "" "This name must be unique. If you don't enter one, the end of the filepath will be used.\n" "eg /usr/local/bin/foo will be called 'foo'" msgstr "Это Ð¸Ð¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ быть уникальным. ЕÑли не введёте то будет иÑпользоватьÑÑ Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ðµ пути к файлу.\nнапример /usr/local/bin/foo будет называтьÑÑ 'foo'" #: dialogs.xrc:3217 msgid "" "Where is the Application? eg /usr/local/bin/gs\n" "(sometimes just the filename will work)" msgstr "Где приложение? например /usr/local/bin/gs\n(иногда только Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° будет работать)" #: dialogs.xrc:3237 msgid "" "Type in the name of the application. If it is in your PATH, you should get " "away with just the name eg kwrite. Otherwise you will need the full pathname" " eg /usr/X11R6/bin/foo" msgstr "Ðаберите Ð¸Ð¼Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ. ЕÑли оно Ñ Ð’Ð°ÑˆÐ¸Ð¼ путём, Ð’Ñ‹ вÑегда должны отобрать только Ð¸Ð¼Ñ Ð½Ð°Ð¿Ñ€Ð¸Ð¼Ðµ kwrite. Ð’ другом Ñлучае Вам нужен полный путь, например /usr/X11R6/bin/foo" #: dialogs.xrc:3274 msgid "Extension(s) that it should launch? e.g. txt or htm,html" msgstr "" #: dialogs.xrc:3290 msgid "" "This is optional. If you enter one or more extensions, this application will be offered when you right-click on files with such extensions. You must also enter one if you will want this application to be the default for launching this type of file. So if you will want all files with the extension 'txt', on double-clicking, to be launched with this application, write txt here.\n" "You may enter more than one extension, separated by commas. eg htm,html" msgstr "" #: dialogs.xrc:3306 #, c-format msgid " What is the Command String to use? e.g. kedit %s" msgstr "" #: dialogs.xrc:3321 #, c-format msgid "" "This is the command to use to launch a file. It is generally the program name followed by %s, which represents the file to be launched. So if kedit is your default text editor, and the launch Command is kedit %s, double-clicking the file foo.txt will execute ' kedit 'foo.txt' '\n" "If this doesn't work, you'll need to RTFM for the application in question." msgstr "" #: dialogs.xrc:3338 msgid " Working directory in which to run the app (optional)" msgstr "" #: dialogs.xrc:3405 msgid "Put the application in this group. So kwrite goes in Editors." msgstr "" #: dialogs.xrc:3418 msgid "Add a new group to categorise applications" msgstr "" #: dialogs.xrc:3544 msgid "For which Extensions do you want the application to be default." msgstr "" #: dialogs.xrc:3563 msgid "These are the extensions to choose from" msgstr "" #: dialogs.xrc:3576 msgid "" "You can either use the first two buttons, or select using the mouse (& Ctrl-" "key for non-contiguous choices)" msgstr "" #: dialogs.xrc:3581 msgid "All of them" msgstr "" #: dialogs.xrc:3582 msgid "Just the First" msgstr "" #: dialogs.xrc:3583 msgid "Select with Mouse (+shift key)" msgstr "" #: dialogs.xrc:3640 msgid "4Pane" msgstr "" #: dialogs.xrc:3709 msgid "Save Template" msgstr "" #: dialogs.xrc:3737 msgid "There is a Template loaded already." msgstr "" #: dialogs.xrc:3745 msgid "Do you want to Overwrite this, or Save as a new Template?" msgstr "" #: dialogs.xrc:3760 msgid "&Overwrite" msgstr "" #: dialogs.xrc:3775 msgid "&New Template" msgstr "" #: dialogs.xrc:3803 msgid "Enter the Filter String" msgstr "" #: dialogs.xrc:3829 msgid "" "Enter a string to use as a filter, or use the history. Multiple filters can" " be separated by either | or a comma. eg Pre*.txt or *.jpg | *.png or " "*htm,*html" msgstr "" #: dialogs.xrc:3848 msgid "Show only files, not dirs" msgstr "" #: dialogs.xrc:3851 msgid "Display only Files" msgstr "" #: dialogs.xrc:3860 msgid "Reset the filter, so that all files are shown ie *" msgstr "" #: dialogs.xrc:3863 msgid "Reset filter to *" msgstr "" #: dialogs.xrc:3872 msgid "Use the selected filter on all panes in this Tab" msgstr "" #: dialogs.xrc:3875 msgid "Apply to All visible panes" msgstr "" #: dialogs.xrc:3934 msgid "Multiple Rename" msgstr "" #: dialogs.xrc:3957 msgid "You can either change foo.bar to, e.g., foo1.bar or new.foo.bar" msgstr "" #: dialogs.xrc:3965 msgid "or do something more complex with a regex" msgstr "" #: dialogs.xrc:4000 msgid " Use a Regular Expression" msgstr "" #: dialogs.xrc:4011 moredialogs.xrc:12253 msgid "&Regex Help" msgstr "" #: dialogs.xrc:4043 msgid "Replace" msgstr "" #: dialogs.xrc:4046 dialogs.xrc:4279 msgid "Type in the text or regular expression that you want to be substituted" msgstr "" #: dialogs.xrc:4056 msgid "Type in the text that you want to substitute" msgstr "" #: dialogs.xrc:4076 msgid "With" msgstr "" #: dialogs.xrc:4140 msgid "Replace all matches in a name" msgstr "" #: dialogs.xrc:4155 msgid "Replace the first" msgstr "" #: dialogs.xrc:4165 msgid "" "Given the name 'foo-foo-foo' and replacement text 'bar', setting the count " "to 2 would result in 'bar-bar-foo'" msgstr "" #: dialogs.xrc:4175 msgid " matches in name" msgstr "" #: dialogs.xrc:4197 msgid "" "Suppose you select all the files in a directory and want to use a regex to " "change any .jpeg files to .jpg. If you don't tick this box, all other files " "in the selection will also be renamed by the non-regex section; which is " "probably not what you want." msgstr "" #: dialogs.xrc:4200 msgid "Completely ignore non-matching files" msgstr "" #: dialogs.xrc:4221 msgid "How (else) to create new names:" msgstr "" #: dialogs.xrc:4224 msgid "" "If you have successfully used a regex above, this may not be necessary. But " "if you didn't, or some clashes remain, this is how they will be overcome." msgstr "" #: dialogs.xrc:4238 msgid "Change which part of the name?" msgstr "" #: dialogs.xrc:4241 msgid "" "If the name is foo.something.bar, selecting 'Ext' will affect 'bar', not 'something.bar'.\n" "If you choose 'Ext' when there isn't one, the body will be altered instead." msgstr "" #: dialogs.xrc:4246 msgid "Body" msgstr "" #: dialogs.xrc:4247 msgid "Ext" msgstr "" #: dialogs.xrc:4276 msgid "Prepend text (optional)" msgstr "" #: dialogs.xrc:4288 msgid "Type in any text to Prepend" msgstr "" #: dialogs.xrc:4308 msgid "Append text (optional)" msgstr "" #: dialogs.xrc:4317 msgid "Type in any text to Append" msgstr "" #: dialogs.xrc:4350 msgid "Increment starting with:" msgstr "" #: dialogs.xrc:4367 dialogs.xrc:4377 msgid "" "If there's still a name-clash despite anything you've done above, this adds " "a digit or a letter to create a new name. So joe.txt will become joe0.txt " "(or joe.txt0 if you've chosen to change the ext)" msgstr "" #: dialogs.xrc:4389 msgid "" "If this box is ticked, an Increment will only happen if it's needed to avoid" " a name-clash. If it's not, it will happen anyway." msgstr "" #: dialogs.xrc:4392 msgid " Only if needed" msgstr "" #: dialogs.xrc:4408 msgid "Increment with a" msgstr "" #: dialogs.xrc:4411 msgid "Determines whether 'joe' changes to 'joe0' or 'joeA'" msgstr "" #: dialogs.xrc:4416 msgid "digit" msgstr "" #: dialogs.xrc:4417 msgid "letter" msgstr "" #: dialogs.xrc:4431 msgid "Case" msgstr "" #: dialogs.xrc:4434 msgid "Do you want 'joe' become 'joeA' or joea'" msgstr "" #: dialogs.xrc:4439 msgid "Upper" msgstr "" #: dialogs.xrc:4440 msgid "Lower" msgstr "" #: dialogs.xrc:4501 msgid "Confirm Rename" msgstr "" #: dialogs.xrc:4514 msgid "Are you sure that you want to make these changes?" msgstr "" #: moredialogs.xrc:4 msgid "Locate Files" msgstr "" #: moredialogs.xrc:22 msgid "Enter the search string. eg *foo[ab]r" msgstr "" #: moredialogs.xrc:32 msgid "" "This is the pattern to be matched. If you type in 'foo', both path/foo and " "path/foobar/morepath will be found. Alternatively you can use the wildcards" " *, ? and [ ]. If you do, Locate will only return exact matches, i.e. you " "need to enter *foo[ab]r* to find path/foobar/morepath" msgstr "" #: moredialogs.xrc:54 msgid "" "Match only the final component of a file e.g. the 'foo' bit of " "/home/myname/bar/foo but not /home/myname/foo/bar" msgstr "" #: moredialogs.xrc:57 msgid " -b Basename" msgstr "" #: moredialogs.xrc:65 msgid "" "If checked, the pattern 'foo' matches both foo and Foo (and FoO and...)" msgstr "" #: moredialogs.xrc:68 msgid " -i Ignore case" msgstr "" #: moredialogs.xrc:83 msgid "" "Locate searches a database, which is usually updated only once a day. If " "this box is ticked, each result is checked to make sure it still exists, and" " hasn't been deleted since the last update. If there are lots of results, " "this may take a noticeable time to do." msgstr "" #: moredialogs.xrc:86 msgid " -e Existing" msgstr "" #: moredialogs.xrc:94 msgid "" "If checked, treat the pattern as a Regular Expression, not just the usual " "glob" msgstr "" #: moredialogs.xrc:97 msgid " -r Regex" msgstr "" #: moredialogs.xrc:158 msgid "Find" msgstr "" #: moredialogs.xrc:179 moredialogs.xrc:266 moredialogs.xrc:861 msgid "Path" msgstr "" #: moredialogs.xrc:194 msgid "" "This is Full Find. There is also a Quick Find\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:208 msgid "Click for &Quick Find" msgstr "" #: moredialogs.xrc:211 msgid "Click here to go to the Quick Find dialog" msgstr "" #: moredialogs.xrc:222 msgid "Tick the checkbox to make Quick Find the default in the future" msgstr "" #: moredialogs.xrc:225 msgid "Make Quick Find the default" msgstr "" #: moredialogs.xrc:241 msgid "" "Enter the Path from which to start searching (or use one of the shortcuts)" msgstr "" #: moredialogs.xrc:276 moredialogs.xrc:12623 msgid "Type in the Path from which to search" msgstr "" #: moredialogs.xrc:305 msgid "Search the current directory and below" msgstr "" #: moredialogs.xrc:308 moredialogs.xrc:3899 moredialogs.xrc:12344 #: moredialogs.xrc:12652 msgid "Current Directory" msgstr "" #: moredialogs.xrc:316 msgid "Search your Home directory and below" msgstr "" #: moredialogs.xrc:327 msgid "Search the whole directory tree" msgstr "" #: moredialogs.xrc:330 moredialogs.xrc:3915 moredialogs.xrc:12360 #: moredialogs.xrc:12668 msgid "Root ( / )" msgstr "" #: moredialogs.xrc:346 moredialogs.xrc:906 msgid "&Add To Command String, surrounded by Quotes" msgstr "" #: moredialogs.xrc:349 moredialogs.xrc:909 moredialogs.xrc:3938 msgid "" "Add to the Command string. Single quotes will be provided to protect " "metacharacters." msgstr "" #: moredialogs.xrc:365 moredialogs.xrc:10353 msgid "Options" msgstr "" #: moredialogs.xrc:380 msgid "These options are applied to the whole command. Select any you wish." msgstr "" #: moredialogs.xrc:412 msgid "" "Measure times (for -amin, -atime, -cmin, -ctime, -mmin, and -mtime) from the" " beginning of today rather than from 24 hours ago" msgstr "" #: moredialogs.xrc:415 msgid "-daystart" msgstr "" #: moredialogs.xrc:423 msgid "" "Process each directory's contents before the directory itself. In other " "words, Find from the bottom upwards." msgstr "" #: moredialogs.xrc:426 msgid "-depth" msgstr "" #: moredialogs.xrc:434 msgid "" "Dereference symbolic links (ie look at what is linked to, not the link " "itself). Implies -noleaf." msgstr "" #: moredialogs.xrc:437 msgid "-follow" msgstr "" #: moredialogs.xrc:456 msgid "" "Descend at most the selected number of levels of directories below the start" " path. `-maxdepth 0' means only apply the tests and actions to the command " "line arguments." msgstr "" #: moredialogs.xrc:459 msgid "-maxdepth" msgstr "" #: moredialogs.xrc:467 msgid "" "Don't start searching until the selected depth down each directory branch. " "`-mindepth 1' means process all files except the command line arguments." msgstr "" #: moredialogs.xrc:470 msgid "-mindepth" msgstr "" #: moredialogs.xrc:517 msgid "" "Don't optimise by assuming that directories contain 2 fewer subdirectories " "than their hard link count" msgstr "" #: moredialogs.xrc:520 msgid "-noleaf" msgstr "" #: moredialogs.xrc:528 msgid "Don't descend directories on other filesystems. -mount is a synonym" msgstr "" #: moredialogs.xrc:531 msgid "-xdev (-mount)" msgstr "" #: moredialogs.xrc:539 msgid "HEELLLP!!" msgstr "" #: moredialogs.xrc:542 msgid "-help" msgstr "" #: moredialogs.xrc:565 moredialogs.xrc:730 moredialogs.xrc:1306 #: moredialogs.xrc:1554 moredialogs.xrc:2132 moredialogs.xrc:2556 #: moredialogs.xrc:2861 moredialogs.xrc:2971 moredialogs.xrc:3260 #: moredialogs.xrc:3636 moredialogs.xrc:3820 moredialogs.xrc:3935 msgid "&Add To Command String" msgstr "" #: moredialogs.xrc:568 moredialogs.xrc:733 moredialogs.xrc:2559 #: moredialogs.xrc:2864 moredialogs.xrc:2974 moredialogs.xrc:3263 #: moredialogs.xrc:3639 msgid "Add these choices to the Command string" msgstr "" #: moredialogs.xrc:580 msgid "Operators" msgstr "" #: moredialogs.xrc:600 msgid "" "Here for completeness, but it's usually easier to write them direct into the" " Command String." msgstr "" #: moredialogs.xrc:608 msgid "Select one at a time." msgstr "" #: moredialogs.xrc:642 msgid "" "Logically AND the two surrounding expressions. Since this is the default, " "the only reason explicitly to use it is for emphasis." msgstr "" #: moredialogs.xrc:645 msgid "-and" msgstr "" #: moredialogs.xrc:653 msgid "Logically OR the surrounding expressions" msgstr "" #: moredialogs.xrc:656 msgid "-or" msgstr "" #: moredialogs.xrc:664 msgid "Negate the following expression" msgstr "" #: moredialogs.xrc:667 msgid "-not" msgstr "" #: moredialogs.xrc:682 msgid "" "Used (with Close Bracket) to alter precedence eg ensure two -path " "expressions are run before a -prune. It is automatically 'escaped' with a " "backslash." msgstr "" #: moredialogs.xrc:685 msgid "Open Bracket" msgstr "" #: moredialogs.xrc:693 msgid "Like Open Bracket, this is automatically 'escaped' with a backslash." msgstr "" #: moredialogs.xrc:696 msgid "Close Bracket" msgstr "" #: moredialogs.xrc:704 msgid "" "Separates list items with a comma. If you can't think of a use for this, " "you're in good company." msgstr "" #: moredialogs.xrc:707 msgid "List ( , )" msgstr "" #: moredialogs.xrc:764 msgid "" "Enter a search term, which may include wildcards. It may instead be a " "Regular Expression." msgstr "" #: moredialogs.xrc:771 msgid "Use Path or Regex if there is a '/' in the term, otherwise Name." msgstr "" #: moredialogs.xrc:778 msgid "Symbolic-Link returns only symlinks." msgstr "" #: moredialogs.xrc:812 msgid "Search term" msgstr "" #: moredialogs.xrc:823 msgid "Type in the name to match. eg *.txt or /usr/s*" msgstr "" #: moredialogs.xrc:834 msgid "Ignore Case" msgstr "" #: moredialogs.xrc:852 msgid "This is a" msgstr "" #: moredialogs.xrc:855 msgid "" "Select one of these alternatives. Apart from 'Regular Expression' they may contain wildcards.\n" "Symbolic-Link will return only matching symlinks.\n" "Regular Expression means the entry is a proper regex and will return anything it matches." msgstr "" #: moredialogs.xrc:862 msgid "Regular Expression" msgstr "" #: moredialogs.xrc:863 msgid "Symbolic-Link" msgstr "" #: moredialogs.xrc:882 msgid "Return Matches" msgstr "" #: moredialogs.xrc:884 msgid "Return any results (the default behaviour)" msgstr "" #: moredialogs.xrc:893 msgid "Ignore Matches" msgstr "" #: moredialogs.xrc:895 msgid "" "Usually you WANT the results, but sometimes you'll wish to ignore eg a " "particular directory. If so, enter its path, then select Path and Ignore." msgstr "" #: moredialogs.xrc:946 msgid "To filter by Time, select one of the following:" msgstr "" #: moredialogs.xrc:971 moredialogs.xrc:1117 msgid "Files that were" msgstr "" #: moredialogs.xrc:989 moredialogs.xrc:1135 msgid "Accessed" msgstr "" #: moredialogs.xrc:997 moredialogs.xrc:1143 msgid "Modified" msgstr "" #: moredialogs.xrc:1005 moredialogs.xrc:1151 msgid "Status changed" msgstr "" #: moredialogs.xrc:1023 moredialogs.xrc:1238 moredialogs.xrc:1383 #: moredialogs.xrc:1722 msgid "More than" msgstr "" #: moredialogs.xrc:1031 moredialogs.xrc:1246 moredialogs.xrc:1391 #: moredialogs.xrc:1730 msgid "Exactly" msgstr "" #: moredialogs.xrc:1039 moredialogs.xrc:1254 moredialogs.xrc:1399 #: moredialogs.xrc:1738 msgid "Less than" msgstr "" #: moredialogs.xrc:1056 msgid "Enter the number of minutes or days" msgstr "" #: moredialogs.xrc:1078 msgid "Minutes ago" msgstr "" #: moredialogs.xrc:1086 msgid "Days ago" msgstr "" #: moredialogs.xrc:1169 msgid "more recently than the file:" msgstr "" #: moredialogs.xrc:1182 moredialogs.xrc:3196 moredialogs.xrc:3239 #: moredialogs.xrc:3617 msgid "Type in the pathname of the file to compare with" msgstr "" #: moredialogs.xrc:1220 msgid "Files that were last accessed" msgstr "" #: moredialogs.xrc:1271 msgid "Enter the number of days" msgstr "" #: moredialogs.xrc:1289 msgid "days after being modified" msgstr "" #: moredialogs.xrc:1309 msgid "Add to the Command string." msgstr "" #: moredialogs.xrc:1325 msgid "Size and type" msgstr "" #: moredialogs.xrc:1339 moredialogs.xrc:1587 msgid "Choose up to one (at a time) of the following:" msgstr "" #: moredialogs.xrc:1365 msgid "Files of size" msgstr "" #: moredialogs.xrc:1435 msgid "bytes" msgstr "" #: moredialogs.xrc:1443 msgid "512-byte blocks" msgstr "" #: moredialogs.xrc:1451 msgid "kilobytes" msgstr "" #: moredialogs.xrc:1478 msgid "Empty files" msgstr "" #: moredialogs.xrc:1511 msgid "Type" msgstr "" #: moredialogs.xrc:1531 msgid "File" msgstr "" #: moredialogs.xrc:1532 msgid "SymLink" msgstr "" #: moredialogs.xrc:1533 msgid "Pipe" msgstr "" #: moredialogs.xrc:1535 msgid "Blk Special" msgstr "" #: moredialogs.xrc:1536 msgid "Char Special" msgstr "" #: moredialogs.xrc:1557 moredialogs.xrc:2135 msgid "Add to the Command string" msgstr "" #: moredialogs.xrc:1573 msgid "Owner and permissions" msgstr "" #: moredialogs.xrc:1628 moredialogs.xrc:1850 moredialogs.xrc:6543 #: moredialogs.xrc:7716 moredialogs.xrc:8905 msgid "User" msgstr "" #: moredialogs.xrc:1662 msgid "By Name" msgstr "" #: moredialogs.xrc:1675 msgid "By ID" msgstr "" #: moredialogs.xrc:1696 msgid "Type in the owner name to match. eg root" msgstr "" #: moredialogs.xrc:1755 msgid "Enter the ID to compare against" msgstr "" #: moredialogs.xrc:1790 msgid "No User" msgstr "" #: moredialogs.xrc:1798 msgid "No Group" msgstr "" #: moredialogs.xrc:1868 moredialogs.xrc:6559 moredialogs.xrc:7732 #: moredialogs.xrc:8921 msgid "Others" msgstr "" #: moredialogs.xrc:1883 moredialogs.xrc:6573 moredialogs.xrc:7746 #: moredialogs.xrc:8935 msgid "Read" msgstr "" #: moredialogs.xrc:1928 moredialogs.xrc:6614 moredialogs.xrc:7787 #: moredialogs.xrc:8976 msgid "Write" msgstr "" #: moredialogs.xrc:1973 moredialogs.xrc:6655 moredialogs.xrc:7828 #: moredialogs.xrc:9017 msgid "Exec" msgstr "" #: moredialogs.xrc:2018 moredialogs.xrc:6696 moredialogs.xrc:7869 #: moredialogs.xrc:9058 msgid "Special" msgstr "" #: moredialogs.xrc:2028 moredialogs.xrc:6704 moredialogs.xrc:7877 #: moredialogs.xrc:9066 msgid "suid" msgstr "" #: moredialogs.xrc:2037 moredialogs.xrc:6712 moredialogs.xrc:7885 #: moredialogs.xrc:9074 msgid "sgid" msgstr "" #: moredialogs.xrc:2046 moredialogs.xrc:6720 moredialogs.xrc:7893 #: moredialogs.xrc:9082 msgid "sticky" msgstr "" #: moredialogs.xrc:2064 msgid "or Enter Octal" msgstr "" #: moredialogs.xrc:2075 msgid "Type in the octal string to match. eg 0664" msgstr "" #: moredialogs.xrc:2098 msgid "Match Any" msgstr "" #: moredialogs.xrc:2106 msgid "Exact Match only" msgstr "" #: moredialogs.xrc:2114 msgid "Match Each Specified" msgstr "" #: moredialogs.xrc:2151 msgid "Actions" msgstr "" #: moredialogs.xrc:2170 msgid "What to do with the results. The default is to Print them." msgstr "" #: moredialogs.xrc:2197 msgid "Print the results on the standard output, each followed by a newline" msgstr "" #: moredialogs.xrc:2200 msgid " print" msgstr "" #: moredialogs.xrc:2224 msgid "" "The same as 'Print', but adds a terminal '\\0' to each string instead of a " "newline" msgstr "" #: moredialogs.xrc:2227 msgid " print0" msgstr "" #: moredialogs.xrc:2251 msgid "List the results in `ls -dils' format on the standard output" msgstr "" #: moredialogs.xrc:2254 msgid " ls" msgstr "" #: moredialogs.xrc:2289 msgid "Execute the following command for each match" msgstr "" #: moredialogs.xrc:2292 msgid "exec" msgstr "" #: moredialogs.xrc:2300 msgid "Execute the following command, asking first for each match" msgstr "" #: moredialogs.xrc:2303 msgid "ok" msgstr "" #: moredialogs.xrc:2317 msgid "Command to execute" msgstr "" #: moredialogs.xrc:2329 msgid "" "This is the command to be executed. The {} ; will be added automatically" msgstr "" #: moredialogs.xrc:2357 msgid "" "Output each string as in print, but using the following format: see 'man " "find(1)' for the byzantine details" msgstr "" #: moredialogs.xrc:2360 msgid "printf" msgstr "" #: moredialogs.xrc:2374 moredialogs.xrc:2510 msgid "Format String" msgstr "" #: moredialogs.xrc:2409 msgid "Output as ls, but to the following file" msgstr "" #: moredialogs.xrc:2412 msgid "fls" msgstr "" #: moredialogs.xrc:2420 msgid "Output each string as print, but to the following file" msgstr "" #: moredialogs.xrc:2423 msgid "fprint" msgstr "" #: moredialogs.xrc:2431 msgid "Same as fprint, but null-terminated" msgstr "" #: moredialogs.xrc:2434 msgid "fprint0" msgstr "" #: moredialogs.xrc:2448 moredialogs.xrc:2525 msgid "Destination File" msgstr "" #: moredialogs.xrc:2460 moredialogs.xrc:2535 msgid "" "The filepath of the destination file. It will be created/truncated as " "appropriate" msgstr "" #: moredialogs.xrc:2486 msgid "Behaves like printf, but to the following file" msgstr "" #: moredialogs.xrc:2489 msgid "fprintf" msgstr "" #: moredialogs.xrc:2586 msgid "Command:" msgstr "" #: moredialogs.xrc:2597 msgid "" "This is where the Find command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "" #: moredialogs.xrc:2630 moredialogs.xrc:4015 moredialogs.xrc:12493 #: moredialogs.xrc:12814 msgid "&SEARCH" msgstr "" #: moredialogs.xrc:2664 msgid "Grep" msgstr "" #: moredialogs.xrc:2685 msgid "General Options" msgstr "" #: moredialogs.xrc:2700 msgid "" "This is the Full-Grep notebook.\n" "There's also a Quick-Grep dialog\n" "that will suffice for most searches" msgstr "" #: moredialogs.xrc:2715 msgid "Click for &Quick Grep" msgstr "" #: moredialogs.xrc:2718 msgid "Click here to go to the Quick-Grep dialog" msgstr "" #: moredialogs.xrc:2729 msgid "Tick the checkbox to make Quick Grep the default in the future" msgstr "" #: moredialogs.xrc:2732 msgid "Make Quick Grep the default" msgstr "" #: moredialogs.xrc:2756 msgid "Syntax: grep [options] [PatternToMatch] [File(s) to search]" msgstr "" #: moredialogs.xrc:2764 msgid "" "Select any options you wish from the first 4 tabs, then in the last 2 enter the search pattern\n" "and the path or files to search. Alternatively you can write direct into the Command box." msgstr "" #: moredialogs.xrc:2788 msgid "Select whichever options you need" msgstr "" #: moredialogs.xrc:2808 msgid "-w match Whole words only" msgstr "" #: moredialogs.xrc:2816 msgid "Ignore case, both in the pattern and in filenames" msgstr "" #: moredialogs.xrc:2819 msgid "-i Ignore case" msgstr "" #: moredialogs.xrc:2834 msgid "-x return whole Line matches only" msgstr "" #: moredialogs.xrc:2842 msgid "-v return only lines that DON'T match" msgstr "" #: moredialogs.xrc:2876 msgid "Directory Options" msgstr "" #: moredialogs.xrc:2893 msgid "Options to do with Directories" msgstr "" #: moredialogs.xrc:2919 msgid " Do what with Directories?" msgstr "" #: moredialogs.xrc:2937 msgid "Try to match the names (the default)" msgstr "" #: moredialogs.xrc:2945 msgid " -r Recurse into them" msgstr "" #: moredialogs.xrc:2953 moredialogs.xrc:3133 moredialogs.xrc:12466 msgid "Ignore them altogether" msgstr "" #: moredialogs.xrc:2990 msgid "File Options" msgstr "" #: moredialogs.xrc:3004 msgid "Options to do with Files" msgstr "" #: moredialogs.xrc:3036 msgid " Stop searching a file after" msgstr "" #: moredialogs.xrc:3053 msgid "Enter the maximum number of matches" msgstr "" #: moredialogs.xrc:3071 msgid "matches found" msgstr "" #: moredialogs.xrc:3093 msgid " Do what with Binary Files?" msgstr "" #: moredialogs.xrc:3111 msgid "Report those containing a match (the default)" msgstr "" #: moredialogs.xrc:3113 msgid "" "Search through the binary file, outputting only a 'Binary file matches' " "message, not the matching line" msgstr "" #: moredialogs.xrc:3122 msgid "Treat them as if they were textfiles" msgstr "" #: moredialogs.xrc:3124 msgid "" "Search through the binary file, outputting any line that matches the " "pattern. This usually results in garbage" msgstr "" #: moredialogs.xrc:3155 msgid " -D skip Ignore devices, sockets, FIFOs" msgstr "" #: moredialogs.xrc:3178 msgid " Don't search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3221 msgid " Only search in files that match the following pattern:" msgstr "" #: moredialogs.xrc:3275 msgid "Output Options" msgstr "" #: moredialogs.xrc:3290 msgid "Options relating to the Output" msgstr "" #: moredialogs.xrc:3319 msgid "-c print only Count of matches" msgstr "" #: moredialogs.xrc:3327 msgid "" "Print only the names of the files that contain matches, not the matches " "themselves" msgstr "" #: moredialogs.xrc:3330 msgid "-l print just each match's Filename" msgstr "" #: moredialogs.xrc:3338 msgid "-H print the Filename for each match" msgstr "" #: moredialogs.xrc:3346 msgid "-n prefix a match with its line-Number" msgstr "" #: moredialogs.xrc:3354 msgid "-s don't print Error messages" msgstr "" #: moredialogs.xrc:3371 msgid "-B Show" msgstr "" #: moredialogs.xrc:3387 moredialogs.xrc:3497 moredialogs.xrc:3556 msgid "Enter the number of lines of context you want to see" msgstr "" #: moredialogs.xrc:3404 msgid "lines of leading context" msgstr "" #: moredialogs.xrc:3423 msgid "-o print only Matching section of line" msgstr "" #: moredialogs.xrc:3431 msgid "Print only the names of those files that contain NO matches" msgstr "" #: moredialogs.xrc:3434 msgid "-L Print only filenames with no match" msgstr "" #: moredialogs.xrc:3442 msgid "-h Don't print filenames if multiple files" msgstr "" #: moredialogs.xrc:3450 msgid "Prefix each match with its line's offset within the file, in bytes" msgstr "" #: moredialogs.xrc:3453 msgid "-b prefix a match with its Byte offset" msgstr "" #: moredialogs.xrc:3461 msgid "" "No output at all, either matches or errors, but exit with 0 status at first " "match" msgstr "" #: moredialogs.xrc:3464 msgid "-q print No output at all" msgstr "" #: moredialogs.xrc:3481 msgid "-A Show" msgstr "" #: moredialogs.xrc:3514 msgid "lines of trailing context" msgstr "" #: moredialogs.xrc:3539 msgid "-C Show" msgstr "" #: moredialogs.xrc:3574 msgid "lines of both leading and trailing context" msgstr "" #: moredialogs.xrc:3596 msgid "" "Displays input actually coming from standard input (or a pipe) as input " "coming from this filename. eg if displaying the contents of an Archive" msgstr "" #: moredialogs.xrc:3599 msgid " Make the display pretend the input came from File:" msgstr "" #: moredialogs.xrc:3651 msgid "Pattern" msgstr "" #: moredialogs.xrc:3671 msgid "" "If your search pattern begins with a minus sign eg -foo grep will try to " "find a non-existant option '-foo'. The -e option protects against this." msgstr "" #: moredialogs.xrc:3674 msgid "-e Use this if your pattern begins with a minus sign" msgstr "" #: moredialogs.xrc:3690 moredialogs.xrc:12245 msgid "Regular Expression to be matched" msgstr "" #: moredialogs.xrc:3703 moredialogs.xrc:12268 msgid "Type in the name for which to search. eg foobar or f.*r" msgstr "" #: moredialogs.xrc:3718 msgid "" "&Regex\n" "Help" msgstr "" #: moredialogs.xrc:3743 msgid "" "Treat the pattern not as a Regular Expression but as a list of fixed " "strings, separated by newlines, any of which is to be matched ie as though " "using fgrep" msgstr "" #: moredialogs.xrc:3746 msgid "-F Treat pattern as if using fgrep" msgstr "" #: moredialogs.xrc:3761 msgid "-P treat pattern as a Perl regex" msgstr "" #: moredialogs.xrc:3783 msgid "" "Instead of entering the pattern in the box above, extract it from this file" msgstr "" #: moredialogs.xrc:3786 msgid "-f instead load the pattern from File:" msgstr "" #: moredialogs.xrc:3823 msgid "" "Add to the Command string. The Pattern will be given single quotes to " "protect metacharacters." msgstr "" #: moredialogs.xrc:3835 msgid "Location" msgstr "МеÑто раÑположениÑ" #: moredialogs.xrc:3848 msgid "" "Enter the Path or list of Files to search (or use one of the shortcuts)" msgstr "Введите путь или ÑпиÑок файлов Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка (или воÑпользуйтеÑÑŒ одним из Ñрлыков)" #: moredialogs.xrc:3872 moredialogs.xrc:12315 msgid "" "Type in the Path from which to search. If you use the shortcuts on the " "right, you can then append a /* if needed" msgstr "Ðапечатайте путь от которого иÑкать. ЕÑли вы иÑпользуете Ñрлыки Ñправа, вы можете добавить /\" при необходимоÑти" #: moredialogs.xrc:3965 msgid "This will be the grep command string" msgstr "ЗдеÑÑŒ будет Ñтрока команды grep" #: moredialogs.xrc:3990 msgid "" "This is where the grep command string will be built. Either use the dialog " "pages, or type things in direct" msgstr "ЗдеÑÑŒ будет формироватьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° grep. Или иÑпользуйте Ñтраницу диалога или непоÑреÑтвенно пишите" #: moredialogs.xrc:4085 msgid "" "If checked, the dialog will automatically close 2 seconds after the last " "entry is made" msgstr "При проверке диалог будет автоматичеÑки закрыватьÑÑ Ñ‡ÐµÑ€ÐµÐ· 2 Ñекунды поÑле поÑледнего ÑообщениÑ" #: moredialogs.xrc:4088 msgid "Auto-Close" msgstr "ÐвтоматичеÑкое закрытие" #: moredialogs.xrc:4128 msgid "Archive Files" msgstr "Файловый архив" #: moredialogs.xrc:4169 moredialogs.xrc:4595 msgid "File(s) to store in the Archive" msgstr "Файл(Ñ‹) Ñохранённый в архиве" #: moredialogs.xrc:4208 moredialogs.xrc:4634 moredialogs.xrc:4969 #: moredialogs.xrc:5248 moredialogs.xrc:5746 msgid "Add another File" msgstr "Добавить другой файл" #: moredialogs.xrc:4241 msgid "Browse for another file" msgstr "ПоиÑкать Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ файла" #: moredialogs.xrc:4255 moredialogs.xrc:5015 moredialogs.xrc:10943 msgid "&Add" msgstr "" #: moredialogs.xrc:4258 moredialogs.xrc:4682 moredialogs.xrc:5018 #: moredialogs.xrc:5296 moredialogs.xrc:5795 msgid "Add the file or directory in the above box to the list on the left" msgstr "Добавить файл или директорий в поле Ñверху в ÑпиÑок Ñлева " #: moredialogs.xrc:4297 msgid "Name to give the Archive" msgstr "Ð˜Ð¼Ñ Ð¿Ñ€Ð¸Ñвоенное архиву" #: moredialogs.xrc:4307 msgid "" "Enter just the main part of the name, not the extension eg foo, not " "foo.tar.gz" msgstr "ВвеÑти только оÑновную чаÑть имени, без раÑширениÑ, например Ð¸Ð¼Ñ foo, а не foo.tar.gz" #: moredialogs.xrc:4316 msgid "(Don't add an ext)" msgstr "(не добавлÑть раÑширение файла (ext))" #: moredialogs.xrc:4335 msgid "Create in this folder" msgstr "Создать в Ñтой папке" #: moredialogs.xrc:4371 msgid "Browse for a suitable folder" msgstr "Подобрать подходÑщую папку" #: moredialogs.xrc:4407 msgid "Create the archive using Tar" msgstr "Создать архив иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Tar" #: moredialogs.xrc:4419 moredialogs.xrc:5041 msgid "Compress using:" msgstr "ИÑпользование ÑжатиÑ:" #: moredialogs.xrc:4422 msgid "" "Which program to use (or none) to compress the Archive. gzip and bzip2 are " "good choices. If it's available on your system, xz gives the best " "compression." msgstr "Какие программы иÑпользуютÑÑ (или нет) Ð´Ð»Ñ ÑÐ¶Ð°Ñ‚Ð¸Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð°. Хороший выбор Ñто gzip и bzip2. ЕÑли Ñто доÑтупно на Вашей ÑиÑтеме, xz даёт лучшее Ñжатие." #: moredialogs.xrc:4427 moredialogs.xrc:5049 msgid "bzip2" msgstr "bzip2" #: moredialogs.xrc:4428 moredialogs.xrc:5050 msgid "gzip" msgstr "gzip" #: moredialogs.xrc:4429 moredialogs.xrc:5051 msgid "xz" msgstr "xz" #: moredialogs.xrc:4430 moredialogs.xrc:5052 msgid "lzma" msgstr "lzma" #: moredialogs.xrc:4431 msgid "7z" msgstr "7z" #: moredialogs.xrc:4432 moredialogs.xrc:5053 msgid "lzop" msgstr "lzop" #: moredialogs.xrc:4433 msgid "don't compress" msgstr "Ðе Ñжимать" #: moredialogs.xrc:4446 moredialogs.xrc:4812 msgid "" "Don't store in the archive the Name of a symbolic link, store the file to " "which it points" msgstr "Ðе ÑохранÑть в архиве наименование Ñимвольной ÑÑылки, Ñохранить Ñам файл на который она показывает" #: moredialogs.xrc:4449 msgid "Dereference symlinks" msgstr "Переопределить Ñимволные ÑÑылки" #: moredialogs.xrc:4458 moredialogs.xrc:4823 msgid "" "Try to verify the integrity of the archive once it's made. Not guaranteed, " "but better than nothing. Takes a long time for very large archives, though." msgstr "Попробовать проверить целоÑтноÑть архива как только он Ñоздан. Без гарантий, но Ñто лучше чем ничего. Ðеобходимо длительное Ð²Ñ€ÐµÐ¼Ñ ÐµÑли архив очень большой." #: moredialogs.xrc:4461 msgid "Verify afterwards" msgstr "Проверка потом" #: moredialogs.xrc:4469 moredialogs.xrc:4834 msgid "" "Delete the source files once they have been added to the archive. For " "courageous users only, unless the files are unimportant!" msgstr "УдалÑть иÑходные файлы как только они были добавлены в архив. Только Ð´Ð»Ñ Ñмелых пользователей в Ñлучае еÑли файлы не очень важны!" #: moredialogs.xrc:4472 msgid "Delete source files" msgstr "УдалÑть иÑходные файлы" #: moredialogs.xrc:4500 msgid "" "Use zip both to archive the file(s) and compress them. It compresses less " "well than gzip or bzip2, so use it for compatability with lesser operating " "systems that don't have these programs." msgstr "ИÑпользовать zip как Ð´Ð»Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð°(ов) так и Ð´Ð»Ñ Ñжатие их. При Ñжатии Ñлабее чем gzip или bzip2 поÑтому иÑпользуйте его Ð´Ð»Ñ ÑовмеÑтимоÑти Ñ Ð¼ÐµÐ½ÐµÐµ мощными операционными ÑиÑтемами, в которых нет Ñтих программ." #: moredialogs.xrc:4503 msgid "Use zip instead" msgstr "ИÑпользовать zip вмеÑто" #: moredialogs.xrc:4554 msgid "Append files to existing Archive" msgstr "Добавить файлы к ÑущеÑтвующему архиву" #: moredialogs.xrc:4679 moredialogs.xrc:5293 moredialogs.xrc:5792 msgid "&Add to List" msgstr "" #: moredialogs.xrc:4725 msgid "Archive to which to Append" msgstr "Ðрхив к которому добавить" #: moredialogs.xrc:4747 moredialogs.xrc:5547 msgid "" "Path and name of the archive. If not already in the entry list, write it in" " or Browse." msgstr "Путь и Ð¸Ð¼Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð°. ЕÑли нет в предÑтавленном ÑпиÑке, напишите его или найдите в Ñети." #: moredialogs.xrc:4764 moredialogs.xrc:5564 msgid "Browse" msgstr "" #: moredialogs.xrc:4815 msgid "Dereference Symlinks" msgstr "Ðе переназначать Ñимвольные ÑÑылки" #: moredialogs.xrc:4826 msgid "Verify archive afterwards" msgstr "Ð’ поÑледÑтвии проверить архив" #: moredialogs.xrc:4837 msgid "Delete Source Files afterwards" msgstr "Ð’ поÑледÑтвии удалить иÑходные файлы" #: moredialogs.xrc:4899 msgid "Compress files" msgstr "Сжать файлы" #: moredialogs.xrc:4933 msgid "File(s) to Compress" msgstr "Файл(Ñ‹) Ð´Ð»Ñ ÑжатиÑ" #: moredialogs.xrc:5044 msgid "" "Which program to compress with. Bzip2 is said to squeeze harder (at least for large files) but takes longer.\n" "If for some reason you want to use Zip, this is available from Archive > Create." msgstr "Какую программу иÑпользовать Ð´Ð»Ñ ÑжатиÑ. ГоворÑÑ‚, что Bzip2 Ñжимает Ñильнее (по крайней мере, Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐ¸Ñ… файлов), но занимает больше времени.\nЕÑли по какой-либо причине Ð’Ñ‹ хотите иÑпользовать Zip, Ñто возможно через Archive > Create." #: moredialogs.xrc:5054 msgid "'compress'" msgstr "'Ñжать'" #: moredialogs.xrc:5071 msgid "Faster" msgstr "БыÑтрее" #: moredialogs.xrc:5081 msgid "" "Applies only to gzip. The higher the value, the greater the compression but" " the longer it takes to do" msgstr "ОтноÑитÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ к gzip. Чем больше чиÑло, тем Ñильнее Ñжатие но дольше процеÑÑ" #: moredialogs.xrc:5091 msgid "Smaller" msgstr "Меньший" #: moredialogs.xrc:5112 msgid "" "Normal behaviour is not to overwrite an existing compressed file with the " "same name. Check this box if you want to override this." msgstr "ПринÑто не перезапиÑывать ÑущеÑтвующие Ñжатые файлы Ñ Ñ‚ÐµÐ¼Ð¸ же именами. Проверьте Ñтот Ñщик еÑли хотите перезапиÑать его." #: moredialogs.xrc:5115 msgid "Overwrite any existing files" msgstr "ПерезапиÑать любой из ÑущеÑтвующих файлоа" #: moredialogs.xrc:5123 msgid "" "If checked, all files in any selected directories (and their subdirectories)" " will be compressed. If unchecked, directories are ignored." msgstr "Ð’ Ñлучае проверки вÑе файлы в любом из выбранных директориев (и поддиректориев) будут Ñжаты. Без проверки директории игнорируютÑÑ." #: moredialogs.xrc:5126 msgid "Recursively compress all files in any selected directories" msgstr "РекурÑивно Ñжать вÑе файлы в любом выбранном директории" #: moredialogs.xrc:5180 msgid "Extract Compressed Files" msgstr "Извлечь Ñжатые файлы" #: moredialogs.xrc:5214 msgid "Compressed File(s) to Extract" msgstr "Сжатые файлы Ð´Ð»Ñ Ð¸Ð·Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ" #: moredialogs.xrc:5334 msgid "" "If a selection is a directory, uncompress any compressed files within it and" " its subdirectories" msgstr "ЕÑли выбран директорий, то разархивировать вÑе Ñжатые файлы в нём и его поддиректории" #: moredialogs.xrc:5337 msgid "Recurse into Directories" msgstr "ЗапиÑатьÑÑ Ð² каталоги" #: moredialogs.xrc:5346 msgid "" "If a file has the same name as an extracted file, automatically overwrite it" msgstr "ЕÑли файл имеет то же имÑ, что и извлечённый файл, автоматичеÑки перезапиÑать его" #: moredialogs.xrc:5349 moredialogs.xrc:5614 msgid "Overwrite existing files" msgstr "ПерезапиÑать ÑущеÑтувующие файлы" #: moredialogs.xrc:5358 msgid "" "Uncompress, but don't extract, any selected archives. If unchecked, " "archives are ignored" msgstr "РаÑпаковать но не извлекать любой выбранный архив. ЕÑли не проверены, архивы игнорированы" #: moredialogs.xrc:5361 msgid "Uncompress Archives too" msgstr "Ðе Ñжатые архивы тоже" #: moredialogs.xrc:5427 msgid "Extract an Archive" msgstr "Извлечь архив" #: moredialogs.xrc:5466 msgid "Archive to Extract" msgstr "Ðрхив Ð´Ð»Ñ Ð¸Ð·Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ" #: moredialogs.xrc:5525 msgid "Directory into which to Extract" msgstr "Директорий в который извлечь" #: moredialogs.xrc:5611 msgid "" "If there already exist files with the same name as any of those extracted " "from the archive, overwrite them." msgstr "ЕÑли ÑущеÑтвуют файлы Ñ Ñ‚Ð°ÐºÐ¸Ð¼Ð¸ же именами как и у извлечённых из архива, перезапиÑать их." #: moredialogs.xrc:5679 msgid "Verify Compressed Files" msgstr "Проверить Ñжатые файлы" #: moredialogs.xrc:5712 msgid "Compressed File(s) to Verify" msgstr "Сжатые файлы на проверку" #: moredialogs.xrc:5819 msgid "&Verify Compressed Files" msgstr "" #: moredialogs.xrc:5858 msgid "Verify an Archive" msgstr "Проверить архив" #: moredialogs.xrc:5892 msgid "Archive to Verify" msgstr "Ðрхив Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸" #: moredialogs.xrc:6019 msgid "Do you wish to Extract an Archive, or Decompress files?" msgstr "Ð’Ñ‹ желаете развернуть архив или файлы?" #: moredialogs.xrc:6034 msgid "&Extract an Archive" msgstr "" #: moredialogs.xrc:6049 msgid "&Decompress File(s)" msgstr "" #: moredialogs.xrc:6105 msgid "Do you wish to Verify an Archive, or Compressed files?" msgstr "Ð’Ñ‹ желаете проверить архив или Ñжатый файл?" #: moredialogs.xrc:6120 msgid "An &Archive" msgstr "" #: moredialogs.xrc:6135 msgid "Compressed &File(s)" msgstr "" #: moredialogs.xrc:6164 moredialogs.xrc:7201 moredialogs.xrc:8397 msgid "Properties" msgstr "СобÑтвенноÑть" #: moredialogs.xrc:6175 moredialogs.xrc:7212 moredialogs.xrc:8408 msgid "General" msgstr "Общие" #: moredialogs.xrc:6215 moredialogs.xrc:7253 moredialogs.xrc:8447 msgid "Name:" msgstr "ИмÑ:" #: moredialogs.xrc:6231 moredialogs.xrc:7269 moredialogs.xrc:8463 msgid "Location:" msgstr "Размещение:" #: moredialogs.xrc:6246 moredialogs.xrc:7284 moredialogs.xrc:8478 msgid "Type:" msgstr "Тип:" #: moredialogs.xrc:6331 moredialogs.xrc:7489 moredialogs.xrc:8680 msgid "Size:" msgstr "Размер:" #: moredialogs.xrc:6346 moredialogs.xrc:7504 moredialogs.xrc:8694 msgid "Accessed:" msgstr "Входил:" #: moredialogs.xrc:6360 moredialogs.xrc:7518 moredialogs.xrc:8708 msgid "Admin Changed:" msgstr "ÐдминиÑтратор изменён:" #: moredialogs.xrc:6375 moredialogs.xrc:7533 moredialogs.xrc:8722 msgid "Modified:" msgstr "Изменён:" #: moredialogs.xrc:6490 moredialogs.xrc:7663 moredialogs.xrc:8852 msgid "Permissions and Ownership" msgstr "Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¸ ÑобÑтвенноÑть" #: moredialogs.xrc:6762 moredialogs.xrc:7932 moredialogs.xrc:9125 msgid "User:" msgstr "Пользователь:" #: moredialogs.xrc:6778 moredialogs.xrc:7948 moredialogs.xrc:9141 msgid "Group:" msgstr "Группа:" #: moredialogs.xrc:6846 moredialogs.xrc:8012 moredialogs.xrc:9209 msgid "" "Apply any change in permissions or ownership to each contained file and " "subdirectory" msgstr "ПринÑть любые Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² правах или владельцах Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ включённого файла и поддиректориÑ" #: moredialogs.xrc:6849 moredialogs.xrc:8015 moredialogs.xrc:9212 msgid "Apply changes to all descendants" msgstr "Применить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ¾ вÑем потомкам" #: moredialogs.xrc:6898 moredialogs.xrc:8079 moredialogs.xrc:9276 msgid "Esoterica" msgstr "Изотерика" #: moredialogs.xrc:6943 moredialogs.xrc:8124 moredialogs.xrc:9321 msgid "Device ID:" msgstr "ID уÑтройÑтва:" #: moredialogs.xrc:6958 moredialogs.xrc:8139 moredialogs.xrc:9336 msgid "Inode:" msgstr "Inode:" #: moredialogs.xrc:6973 moredialogs.xrc:8154 moredialogs.xrc:9351 msgid "No. of Hard Links:" msgstr "ЧиÑло жёÑтких ÑвÑзей:" #: moredialogs.xrc:6988 moredialogs.xrc:8169 moredialogs.xrc:9366 msgid "No. of 512B Blocks:" msgstr "ЧиÑло блоков по 512Ð’:" #: moredialogs.xrc:7003 moredialogs.xrc:8184 moredialogs.xrc:9381 msgid "Blocksize:" msgstr "Размер блока:" #: moredialogs.xrc:7017 moredialogs.xrc:8198 moredialogs.xrc:9395 msgid "Owner ID:" msgstr "ID владельца:" #: moredialogs.xrc:7032 moredialogs.xrc:8213 moredialogs.xrc:9410 msgid "Group ID:" msgstr "ID группы:" #: moredialogs.xrc:7300 msgid "Link Target:" msgstr "Цель ÑÑылки:" #: moredialogs.xrc:7367 moredialogs.xrc:8581 msgid "" "To change the target, either write in the name of a different file or dir, " "or use the Browse button" msgstr "Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ†ÐµÐ»Ð¸ либо напишите Ð¸Ð¼Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ файла или Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð»Ð¸ иÑпользуйте кнопку Browse" #: moredialogs.xrc:7382 msgid "&Go To Link Target" msgstr "" #: moredialogs.xrc:7454 moredialogs.xrc:8592 msgid "Browse to select a different target for the symlink" msgstr "Поищите в Ñети Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° другой цели Ð´Ð»Ñ Ñтой ÑимволичеÑкой ÑÑылки" #: moredialogs.xrc:8494 msgid "First Link Target:" msgstr "ÐŸÐµÑ€Ð²Ð°Ñ Ñ†ÐµÐ»ÑŒ ÑÑылки:" #: moredialogs.xrc:8508 msgid "Ultimate Target:" msgstr "ÐšÐ¾Ð½ÐµÑ‡Ð½Ð°Ñ Ñ†ÐµÐ»ÑŒ:" #: moredialogs.xrc:8606 msgid "&Go To First Link Target" msgstr "" #: moredialogs.xrc:8609 msgid "Go to the link that is the immediate target of this one" msgstr "Перейти к ÑÑылке ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑвлÑетÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенной целью" #: moredialogs.xrc:8638 msgid "Go To &Ultimate Target" msgstr "" #: moredialogs.xrc:8641 msgid "Go to the file that is the ultimate target of this link" msgstr "Перейти к файлу ÑвлÑющемуÑÑ Ð¿Ð¾Ñледней целью Ñтой ÑÑылки" #: moredialogs.xrc:9598 msgid "Mount an fstab partition" msgstr "Монтирование раздела fstab" #: moredialogs.xrc:9635 moredialogs.xrc:9865 msgid "Partition to Mount" msgstr "Раздел Ð´Ð»Ñ Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ" #: moredialogs.xrc:9658 msgid "This is the list of known, unmounted partitions in fstab" msgstr "Это ÑпиÑок извеÑтных непримонтированных разделов в fstab" #: moredialogs.xrc:9705 moredialogs.xrc:9935 msgid "Mount-Point for the Partition" msgstr "Точка монтировани раздела" #: moredialogs.xrc:9728 msgid "" "This is the mount-point corresponding to the selected partition, taken from " "fstab" msgstr "Эта точка Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑоответÑтвует выбранному разделу взÑтому из fstab" #: moredialogs.xrc:9762 msgid "&Mount a non-fstab partition" msgstr "" #: moredialogs.xrc:9765 msgid "" "If a partition is not in fstab, it won't be listed above. Click this button " "for all known partitions" msgstr "ЕÑли раздел не в fstab то он не можеть быть запиÑан далее. Кликните Ñту кнопку Ð´Ð»Ñ Ð²Ñех извеÑтных разделов" #: moredialogs.xrc:9828 msgid "Mount a Partition" msgstr "Монтировать раздел" #: moredialogs.xrc:9888 msgid "" "This is the list of known, unmounted partitions. If you think that you know " "another, you may write it in." msgstr "Это ÑпиÑок извеÑтных непримонтированных разделов. ЕÑли Ð’Ñ‹ думаете, что знаете другие, то можете напиÑать их здеÑÑŒ." #: moredialogs.xrc:9958 moredialogs.xrc:10313 moredialogs.xrc:10673 #: moredialogs.xrc:10776 moredialogs.xrc:11089 moredialogs.xrc:11608 msgid "" "If there is an fstab entry for this device, the mount-point will " "automatically have been entered. If not, you must enter one yourself (or " "browse)." msgstr "ЕÑли ÑущеÑтвуют наÑтройки fstab Ð´Ð»Ñ Ñтого уÑтройÑтва точки Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ добавлены автоматичеÑки. ЕÑли нет, то Ð’Ñ‹ должны ввеÑти её ÑамоÑтоÑтельно (или найти в Ñети)" #: moredialogs.xrc:9976 moredialogs.xrc:10331 moredialogs.xrc:10689 #: moredialogs.xrc:10794 moredialogs.xrc:11107 moredialogs.xrc:11626 msgid "Browse for a mount-point" msgstr "Перейти на точку монтированиÑ" #: moredialogs.xrc:10002 moredialogs.xrc:11133 moredialogs.xrc:11652 msgid "Mount Options" msgstr "Точки монтированиÑ" #: moredialogs.xrc:10020 msgid "No writing to the filesystem shall be allowed" msgstr "Ðе должно быть разрешено запиÑывать в файловую ÑиÑтему" #: moredialogs.xrc:10023 msgid "Read Only" msgstr "Только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ" #: moredialogs.xrc:10031 msgid "All writes to the filesystem while it is mounted shall be synchronous" msgstr "Ð’Ñе запиÑи в файловую ÑиÑтему при её монтировании должны быть Ñинхронны" #: moredialogs.xrc:10034 msgid "Synchronous Writes" msgstr "Ð¡Ð¸Ð½Ñ…Ñ€Ð¾Ð½Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ" #: moredialogs.xrc:10042 msgid "Access times of files shall not be updated when the files are accessed" msgstr "Ðе должно обновлÑтьÑÑ Ð²Ñ€ÐµÐ¼Ñ Ð´Ð¾Ñтупа файлов при доÑтупе к файлам" #: moredialogs.xrc:10045 msgid "No File Access-time update" msgstr "Ðе обновлÑть Ð²Ñ€ÐµÐ¼Ñ Ð´Ð¾Ñтупа файлов" #: moredialogs.xrc:10059 msgid "No files in the filesystem shall be executed" msgstr "Ðе должно выполнÑтьÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¸Ñ… файлов в файловой ÑиÑтеме" #: moredialogs.xrc:10062 msgid "Files not executable" msgstr "Файлы не иÑполнÑемы" #: moredialogs.xrc:10070 msgid "No device special files in the filesystem shall be accessible" msgstr "Специальные файлы уÑтройÑтв в файловой ÑиÑтеме не должны быть доÑтупны" #: moredialogs.xrc:10073 msgid "Hide device special files" msgstr "Скрыть Ñпециальные файлы уÑтройÑтв" #: moredialogs.xrc:10081 msgid "" "Setuid and Setgid permissions on files in the filesystem shall be ignored" msgstr "Права setid и setgid Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð² в файловой ÑиÑтеме должны игнорироватьÑÑ" #: moredialogs.xrc:10084 msgid "Ignore Setuid/Setgid" msgstr "Игнорировать setuid/segid" #: moredialogs.xrc:10097 msgid "" "If ticked, a passive translator will be created in addition to an active " "one. The mount will then persist, even after a reboot, until you choose to " "remove it." msgstr "ЕÑли взведёте то паÑÑивный переводчик будет Ñоздан в добавление к активному. Монтирование ÑохранитÑÑ Ð´Ð°Ð¶Ðµ поÑле перезагрузки, до тех пор пока не решите удалить его." #: moredialogs.xrc:10101 msgid "Create a Passive Translator too" msgstr "Создать паÑÑивный переводчик too" #: moredialogs.xrc:10162 msgid "Mount using sshfs" msgstr "Примонтируйте иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ sshfs" #: moredialogs.xrc:10190 msgid "Remote user" msgstr "Удалённый пользователь" #: moredialogs.xrc:10200 msgid "" "Optionally, enter the name of the remote user. If you leave it blank, your " "local username will be used" msgstr "Возможно уÑтановить Ð¸Ð¼Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½Ð½Ð¾Ð³Ð¾ пользователÑ. ЕÑли оÑтавите не заполненным будет иÑпользован локальный пользователь" #: moredialogs.xrc:10212 msgid " @" msgstr " @" #: moredialogs.xrc:10225 msgid "Host name" msgstr "Ð˜Ð¼Ñ Ñ…Ð¾Ñта" #: moredialogs.xrc:10235 msgid "Enter the name of the server e.g. myserver.com" msgstr "Введите Ð¸Ð¼Ñ Ñервера, наприме myserver.com" #: moredialogs.xrc:10248 msgid " :" msgstr " :" #: moredialogs.xrc:10261 msgid "Remote directory" msgstr "Удалённый директорий" #: moredialogs.xrc:10271 msgid "" "Optionally, supply a directory to mount. The default is the remote user's " "home dir" msgstr "Как вариант можно уÑтановить директорий Ð´Ð»Ñ Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ. По умолчанию Ñто домашний директорий удалённого пользователÑ." #: moredialogs.xrc:10292 msgid "Local mount-point" msgstr "Ð›Ð¾ÐºÐ°Ð»ÑŒÐ½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ° монтированиÑ" #: moredialogs.xrc:10363 msgid "" "Translate the uid and gid of the remote host user to those of the local one." " Recommended" msgstr "Переведите uid и gid удалённого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ…Ð¾Ñта в локальный. РекомендуетÑÑ" #: moredialogs.xrc:10366 msgid "idmap=user" msgstr "idmap=user" #: moredialogs.xrc:10378 msgid "mount read-only" msgstr "Пиримонтировать только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ" #: moredialogs.xrc:10401 msgid "Other options:" msgstr "Другие варианты:" #: moredialogs.xrc:10410 msgid "" "Enter any other options you need e.g. -p 1234 -o cache_timeout=2. I'll trust" " you to get the syntax right" msgstr "Введите необходимые Вам Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ -p 1234 -o cache_timeout=2 . Верю что Ð’Ñ‹ Ñделаете Ñто ÑинтакÑичеÑки грамотно" #: moredialogs.xrc:10461 msgid "Mount a DVD-RAM Disc" msgstr "Примонтировать диÑк DVD-RAM" #: moredialogs.xrc:10483 msgid "Device to Mount" msgstr "УÑтройÑтво Ð´Ð»Ñ Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ" #: moredialogs.xrc:10506 msgid "This is the device-name for the dvdram drive" msgstr "Это Ð¸Ð¼Ñ ÑƒÑтройÑтва Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð¾Ð´Ð° dvdram" #: moredialogs.xrc:10549 msgid "" "These are the appropriate mount-points in fstab. You can supply your own if " "you wish" msgstr "Это ÑоответÑтветÑтвующие точки монтированиа в fstab. При желании Ð’Ñ‹ можете уÑтановить Ñвои." #: moredialogs.xrc:10613 msgid "Mount an iso-image" msgstr "Монтировать как образ iso" #: moredialogs.xrc:10650 msgid "Image to Mount" msgstr "Примонтировать образ" #: moredialogs.xrc:10734 msgid "Mount-Point for the Image" msgstr "Точка Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ð·Ð°" #: moredialogs.xrc:10753 msgid "" "Already\n" "Mounted" msgstr "Уже\nПримонтирован" #: moredialogs.xrc:10868 msgid "Mount an NFS export" msgstr "Примонтирование передачи NFS" #: moredialogs.xrc:10904 msgid "Choose a Server" msgstr "Выбор Ñервера" #: moredialogs.xrc:10927 msgid "" "This is the list of NFS servers currently active on the network. If you know" " of another, use the button on the right to add it." msgstr "Это ÑпиÑок активных в Ñети в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ñерверов NFS. ЕÑли Вам извеÑтен другой, иÑпользуйте кнопку Ñправа Ð´Ð»Ñ ÐµÐ³Ð¾ добавлениÑ." #: moredialogs.xrc:10946 msgid "Manually add another server" msgstr "Другой Ñервер поключить в ручную" #: moredialogs.xrc:10979 msgid "Export to Mount" msgstr "Передача подключённому" #: moredialogs.xrc:11005 msgid "These are the Exports available on the above Server" msgstr "Возможна передача на указанный Ñервер" #: moredialogs.xrc:11021 moredialogs.xrc:11542 msgid " already mounted" msgstr "уже примонтирован" #: moredialogs.xrc:11148 msgid "" "What to do if the server fails. A Hard mount will freeze your computer " "until the server recovers; a Soft should quickly unfreeze itself, but may " "lose data" msgstr "Что делать при падении Ñервера. При жёÑтком монтировании Ваш компьютер завиÑнет до воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñервера; при мÑгком он должен быÑтро воÑÑтановитьÑÑ ÑамоÑтоÑтельно но может потерÑть данные." #: moredialogs.xrc:11153 msgid "Hard Mount" msgstr "ЖёÑткое монтирование" #: moredialogs.xrc:11154 msgid "Soft Mount" msgstr "МÑгкое монтирование" #: moredialogs.xrc:11173 moredialogs.xrc:11750 msgid "Mount read-write" msgstr "Мотирование запиÑÑŒ-чтение" #: moredialogs.xrc:11174 moredialogs.xrc:11751 msgid "Mount read-only" msgstr "Монтирование только чтение" #: moredialogs.xrc:11222 msgid "Add an NFS server" msgstr "Добавить Ñервер NFS" #: moredialogs.xrc:11259 msgid "IP address of the new Server" msgstr "IP Ð°Ð´Ñ€ÐµÑ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñервера" #: moredialogs.xrc:11282 msgid "Type in the address. It should be something like 192.168.0.2" msgstr "Введите адреÑ. Он должен выглÑдить подобно 192.168.0.2" #: moredialogs.xrc:11303 msgid "Store this address for future use" msgstr "Сохрани Ñтот Ð°Ð´Ñ€ÐµÑ Ð´Ð»Ñ Ð¿Ð¾Ñледующего иÑпользованиÑ" #: moredialogs.xrc:11368 msgid "Mount a Samba Share" msgstr "Подключить ÑовмеÑтное иÑпользование samba" #: moredialogs.xrc:11404 msgid "Available Servers" msgstr "ДоÑтупные Ñерверы" #: moredialogs.xrc:11427 msgid "IP Address" msgstr "Ð°Ð´Ñ€ÐµÑ IP" #: moredialogs.xrc:11438 msgid "" "These are the IP addresses of the known sources of samba shares on the " "network" msgstr "Это IP адреÑа извеÑтных иÑточников подключений samba в Ñети" #: moredialogs.xrc:11455 msgid "Host Name" msgstr "Ð˜Ð¼Ñ Ñ…Ð¾Ñта" #: moredialogs.xrc:11466 msgid "" "These are the host-names of the known sources of samba shares on the network" msgstr "Это имена хоÑтов извеÑтных иÑточников подключений samba в Ñети" #: moredialogs.xrc:11503 msgid "Share to Mount" msgstr "ИÑпользуйте ÑовмеÑтно монтирование" #: moredialogs.xrc:11526 msgid "These are the shares available on the above Server" msgstr "Возможно ÑовмеÑтное иÑпользование на Ñледующем Ñервере" #: moredialogs.xrc:11669 msgid "Use this Name and Password" msgstr "ИÑпользуйте Ð¸Ð¼Ñ Ð¸ пароль" #: moredialogs.xrc:11670 msgid "Try to Mount Anonymously" msgstr "Попробуйте подмонтироватьÑÑ Ð°Ð½Ð¾Ð½Ð¸Ð¼Ð½Ð¾" #: moredialogs.xrc:11695 msgid "Username" msgstr "Пользователь" #: moredialogs.xrc:11704 msgid "Enter your samba username for this share" msgstr "Введите Ваше Ð¸Ð¼Ñ Ð² samba Ð´Ð»Ñ Ñтого подключениÑ" #: moredialogs.xrc:11720 msgid "Password" msgstr "Пароль" #: moredialogs.xrc:11729 msgid "Enter the corresponding password (if there is one)" msgstr "Введите ÑоответÑтвующий пароль (еÑли он еÑть)" #: moredialogs.xrc:11801 msgid "Unmount a partition" msgstr "Отмонтировать раздел" #: moredialogs.xrc:11838 msgid " Partition to Unmount" msgstr "Раздел отмонтирован" #: moredialogs.xrc:11861 msgid "This is the list of mounted partitions from mtab" msgstr "Это ÑпиÑок точек Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ñ‚ mtab" #: moredialogs.xrc:11908 msgid "Mount-Point for this Partition" msgstr "Точка Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ Ñтого раздела" #: moredialogs.xrc:11931 msgid "This is the mount-point corresponding to the selected partition" msgstr "Эта точка Ð¼Ð¾Ð½Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑоответÑвует выбранному разделу" #: moredialogs.xrc:12001 msgid "Execute as superuser" msgstr "ДейÑтвуйте как Ñуперпользователь" #: moredialogs.xrc:12025 msgid "The command:" msgstr "Команда:" #: moredialogs.xrc:12040 msgid "requires extra privileges" msgstr "Ðужны дополнительные полномочиÑ" #: moredialogs.xrc:12067 msgid "Please enter the administrator password:" msgstr "ПожалуйÑта введите пароль админиÑтратора" #: moredialogs.xrc:12098 msgid "If ticked the password will be saved for, by default, 15 minutes" msgstr "ЕÑли флажок взведён пароль ÑохранитÑÑ Ð½Ð° 15 минут по умолчанию" #: moredialogs.xrc:12101 msgid " Remember this password for a while" msgstr "Запомните Ñтот пароль на некоторое времÑ" #: moredialogs.xrc:12163 msgid "Quick Grep" msgstr "быÑтрый grep" #: moredialogs.xrc:12182 msgid "" "This is the Quick-Grep dialog.\n" "It provides only the commonest\n" "of the many grep options." msgstr "Это диалог полного grep.\nОн предлагает только обычные\nиз множеÑтва возможноÑтей grep." #: moredialogs.xrc:12197 msgid "Click for &Full Grep" msgstr "" #: moredialogs.xrc:12200 msgid "Click here to go to the Full Grep dialog" msgstr "Кликните здеÑÑŒ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° в диалог полного grep" #: moredialogs.xrc:12211 msgid "Tick the checkbox to make Full Grep the default in the future" msgstr "УÑтановить флажок Ñделав по умолчанию в будущем полный grep" #: moredialogs.xrc:12214 msgid "Make Full Grep the default" msgstr "Сделать по умолчанию полный grep" #: moredialogs.xrc:12304 msgid "" "Enter the Path or list of Files to search\n" "(or use one of the shortcuts)" msgstr "ВвеÑти путь или ÑпиÑок файлов Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка\n(или иÑпользовать одно из Ñокращений)" #: moredialogs.xrc:12398 msgid "Only match whole words" msgstr "Только ÑопоÑтовлÑть полные Ñлова" #: moredialogs.xrc:12401 msgid "-w match Whole words only" msgstr "-w ÑопоÑтовлÑет только полные Ñлова" #: moredialogs.xrc:12409 moredialogs.xrc:12733 msgid "Do a case-insensitive search" msgstr "Выполнить региÑтронезавиÑимый поиÑк" #: moredialogs.xrc:12412 msgid "-i Ignore case" msgstr "-i игнорировать региÑтр" #: moredialogs.xrc:12420 moredialogs.xrc:12431 msgid "Don't bother searching inside binary files" msgstr "Ðе пытатьÑÑ Ð¸Ñкать в нутри двоичных файлов" #: moredialogs.xrc:12423 msgid "-n prefix match with line-number" msgstr "Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ -n определÑет чиÑло Ñтрок" #: moredialogs.xrc:12434 msgid "Ignore binary files" msgstr "Игнорировать бинарные файлы" #: moredialogs.xrc:12442 msgid "Don't try to search in devices, fifos, sockets and the like" msgstr "Ðе пытатьÑÑ Ð¸Ñкать в уÑтройÑтвах, fifo, Ñокетах и подобных." #: moredialogs.xrc:12445 msgid "Ignore devices, fifos etc" msgstr "Игнорировать уÑтройÑтва, например fifo" #: moredialogs.xrc:12459 msgid "Do what with directories?" msgstr "Это Ñделать в директориÑÑ…?" #: moredialogs.xrc:12464 msgid "Match the names" msgstr "СопоÑтавить имена" #: moredialogs.xrc:12465 msgid "Recurse into them" msgstr "Обратный порÑдок в Ñтих" #: moredialogs.xrc:12531 msgid "Quick Find" msgstr "БыÑтрый поиÑк" #: moredialogs.xrc:12550 msgid "" "This is the Quick-Find dialog.\n" "It provides only the commonest\n" "of the many find options." msgstr "Это диалог по быÑтрому поиÑку.\nОн иÑпользует только обычные\nиз вÑех функций поиÑка." #: moredialogs.xrc:12565 msgid "Click for &Full Find" msgstr "" #: moredialogs.xrc:12568 msgid "Click here to go to the full Find dialog" msgstr "Кликните здеÑÑŒ Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° в диалог полного поиÑка" #: moredialogs.xrc:12579 msgid "Tick the checkbox to make Full Find the default in the future" msgstr "Взведите флажок Ð´Ð»Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð³Ð¾ пиÑка в будущем по умолчанию" #: moredialogs.xrc:12582 msgid "Make Full Find the default" msgstr "Делает полный поиÑк по умолчанию" #: moredialogs.xrc:12612 msgid "" "Enter the Path from which to start searching\n" "(or use one of the shortcuts)" msgstr "Введите путь от которого начинать поиÑк (или иÑпользуйте ÑÑылки)" #: moredialogs.xrc:12706 msgid "Search term:" msgstr "ПоиÑк термина:" #: moredialogs.xrc:12721 msgid "" "Type in the name or path for which to search. It can include wild-cards e.g. foobar or f.*r\n" "Alternatively it can be a regular expression." msgstr "Ðаберите Ð¸Ð¼Ñ Ð¸Ð»Ð¸ путь Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка. Это может включать подÑтановки Ñ‚.е. foobar или f.*r . С другой Ñтороны Ñто может быть регулÑрное выражение" #: moredialogs.xrc:12736 msgid "Ignore case" msgstr "Игнорировать региÑтр" #: moredialogs.xrc:12760 msgid "This is a:" msgstr "Это:" #: moredialogs.xrc:12769 msgid "name" msgstr "ИмÑ" #: moredialogs.xrc:12778 msgid "path" msgstr "путь" #: moredialogs.xrc:12787 msgid "regex" msgstr "regex" ./4pane-6.0/rc/0000755000175000017500000000000013567002412012067 5ustar daviddavid./4pane-6.0/rc/configuredialogs.xrc0000644000175000017500000131351213561560226016145 0ustar daviddavid Enter Tooltip Delay 1 wxVERTICAL wxALL|wxEXPAND 12 wxVERTICAL wxTOP|wxEXPAND 15 wxVERTICAL